IRC channel logs

2017-10-27.log

back to list of logs

***Digitteknohippie is now known as Digit
<taohansen>correct me if i'm wrong but it looks like there's no implementation of the Java Runtime Environment available for Guix at all?
<buenouanq>taohansen: icedtea I think is what you want
<taohansen>buenouanq: that would be it! thanks
<buenouanq>np
<civodul>hello!
<fusion809>Howdy folks after a 12 hour installation process I was able to install GuixSD to a VM. The problem is booting it. grub-install --target=i386-pc /dev/sdb (which was run by the installer) returned: `grub-install: error: failed to get canonical path of `unionfs`.` I've DuckDuckGo searched this error but all the results seem to pertain to Windows. I have only a root partition on my GuixSD installation is that problematic?
<fusion809>Windows dual-boots^
<fusion809>Like I have no separate boot partition.
<taohansen>civodul: hello!
<civodul>we're so fast at applying patches these days that sometimes it's already been applied by the time you push :-)
<mb[m]1>Oops ;)
<civodul>mb[m]1: that's fine, i prefer it this way :-)
<mb[m]1>:)
<civodul>ACTION moves on
<civodul>later!
<mb[m]1>gn!
<fusion809>So no one has the foggiest how to fix this bootloader issue?
<db48x>ACTION sighs
<db48x>#{\\x1f;\\x8b\\x8;\\x0;\\x0;\\x0;\\x0;\\x0;\\x2;\\x3;i=ksÛF\\x92;þ*ẏ\\x8a;}# is not the precise symbol I was looking for
<db48x>fusion809: it doesn't sound like your problem has anything to do with a bootloader, but without more information it's hard to say
<fusion809>How do I get that more information?
<db48x>well
<fusion809>Is it possible creating a BIOS boot partition might fix this error?
<db48x>no, that's unrelated as well
<db48x>what does mount say?
<fusion809>[2315.140627] EXT4-fs (sdb1): mounted filesystem with ordered data mode. Opts: (null)"
<db48x>no, run the program "mount" and paste the result into paste.lisp.org
<db48x>it sounds like grub-install is trying to figure out what to do, and doesn't know what to do with one of your currently-mounted filesystems
<fusion809>One mo gotta install wgetpaste so I can paste the output
<db48x>which could be because you're booted off of a livecd or some similar contrivance, which often have interesting mounts
<db48x>:)
<fusion809>Using the live USB .img file per the VM installation guide
<db48x>hrm. I used that the other day and it worked fine :)
<fusion809>Would my configuration file (i.e. the one used by guix system init to build the system) help? wgetpaste doesn't seem to want to work for me. Ran mount | wgetpaste and it gave "Apparently nothing was received. Perhaps the connection failed..." Then wrote mount output to output.log file and then ran cat output.log | wgetpaste and it gave the same error. My net is working fine as I managed to install wgetpaste without a problem
<fusion809>Oh rofl wget command wasn't found. Ran with --verbose and that's apparently the cause of the problem. Odd that wgetpaste doesn't draw wget in as a dependency or so it seems
<fusion809>That's odd I installed wget and still wgetpaste is failing... Trying to diagnose the problem with the --verbose option
<fusion809>Certificate of paste.pound-python.org is not trusted.
<fusion809>Any ideas of how to fix this?
<db48x>same way you would fix that error in any piece of software
<fusion809>That is? I ran wgetpaste --help hoping there was a --force option to ignore this but unfortunately no.
<db48x>either by modifying the set of trusted root certificates so that this site's certificate has a valid chain of trust, or by turning off the validation
<db48x>guix includes packages which install the trusted root certificates, and wget certainly has an option for the latter
<db48x>though I don't know much about the former and I don't know how to tell wgetpaste to use the latter
<db48x>have fun :)
<fusion809>You wouldn't happen to a know a less painful way to paste output would ya? Because this is turning into a headache
<db48x>take a picture with your camera, print the picture, scan the picture, put it in a word document, upload the word document to your google drive, share the preview link in the irc channel ;)
<db48x>or scp it to another computer
<fusion809>Well this is close https://imgur.com/LRX7KhO
<db48x>yea, your root partition is a unionfs
<db48x>try grub-install --root-directory=/mnt /dev/sdb
<fusion809>Now this error is definitely BIOS boot partition-related -- https://imgur.com/nLt7HKj
<db48x>but if you ran 'guix system init' then it should have done this correctly for you
<db48x>oh yes :)
<fusion809>I did run guix system init to set up my system.
<fusion809>It failed, that's why I'm here.
<fusion809>It failed at the GRUB stage
<fusion809>A BIOS boot partition can be at the end of a disk right? I've only ever had them at the start of the disk but in order for me to keep my existing data I'm going to have to reduce the size of the existing root partition and place the BIOS boot partition at the end of the disk
<taohansen>does Guix have https://leiningen.org/?
<taohansen>for Clojure projects
<taohansen>nevermind, this log is bringing me up to speed on current state of Java/Leiningen/Clojure compat: https://gnunet.org/bot/log/guix/2015-08-11
<db48x>taohansen: the right way to go is to write an importer so that 'guix import leiningen' can import the packages you want, then you can install them with the normal 'guix package -i'
<taohansen>db48x: i've installed Nix locally which has been a huge boon for pulling in packages Guix doesn't have. in this case i just "nix-env -i leiningen" and boom instant package available.
<taohansen>i wish Nixxers came over to "our" side of things when it came to packaging but i'm happy to benefit from their work in the interim.
<db48x>(as I recall leiningen does have other features as well, such as creating new projects from templates, starting them, etc; for those you might want the actual leiningen executable)
<xelxebar>I'm attempting to import a nixpkgs package that requires me to override a variable.
<xelxebar>However, I'm not very familiar with the nix syntax. guix import nix path/to/nixpkgs ATTRIBUTE. What should I be putting in the attribute field?
<db48x>xelxebar: taking a look at snix.scm, I can see that it corresponds to nix instantiate -A
<xelxebar>db48x: Thanks
<db48x>xelxebar: you're welcome
<xelxebar>db48x: Would you happen to know how to set arguments (?) for the corresponding derivation?
<xelxebar>I need to set nixpkgs.config.permitInsecurePackages = [...] in order to build it.
<db48x>how would you do it with nix?
<xelxebar>Set the variable in ~/.config/nixpkgs/config.nix
<db48x>hmm
<db48x>which nix command would read that file?
<xelxebar>Well, typically nix-env -i foo would read it somewhere in the process of installation
<xelxebar>I don't grok nix all that well yet so can't say exactly what's happening
<db48x>well, this code just runs nix-instantiate
<xelxebar>Yeah, I'm looking at snix.scm, since you pointed me to it. I'm guessing that there's some nix-instantiate clause that would do the trick.
<xelxebar>I can't tell if the nix importer allows for doing anything fancier than passing an arg to the -A flag
<db48x>it does not
<db48x>but you could extend it :)
<db48x>maybe you could do something with nix-instantiate --eval
<db48x>but the examples (https://nixos.org/nix/manual/#examples-20) are very basic
<xelxebar>db48x: Hehe. That's exactly what I'm playing with at the moment :)
<xelxebar>Unfortunately, I don't properly know scheme. A big motivation for me trying out guix was to give me a "scheme system" to hack on.
<db48x>:)
<db48x>the easiest thing to do would be to modify snix.scm to put in a hard-coded "--eval" flag
<db48x>and then later extend guix/scripts/import/nix.scm to accept more arguments and pass them along
<db48x>well, I think I've successfully written an importer for quicklisp packages
<db48x>except the generated base32 hash string apparently has invalid characters in it?
<db48x>I don't know how (base32 ,(bytevector->base32-string (base16-string->bytevector hash))) could be wrong, but I require comestibles
<xelxebar>Oh whoa, a quicklisp importer. That's nifty
<xelxebar>Oh no! SSAX.scm parser error when trying to import
<xelxebar> http://ix.io/BNE
<xelxebar>And a potential stack overflow
<clacke[m]>Tao Hansen: are you running Nix on GuixSD, or are you on a third distro running Nix and Guix on top?
<clacke[m]>I'm curious if anyone is running Nix on GuixSD or Guix on NixOS.
<taohansen>clacke: Nix on GuixSD
<taohansen>as long as the Nix package doesn’t rely on libgl, everything seems to work fine for me
<buenouanq>w.. why would you do that though?
<taohansen>buenouanq: Nix has packages Guix doesn't have. i need to get my work done. Nix was the easiest drop-in for getting those packages to get work done.
<taohansen>i love hacking on my system as much as the next guy but i still don't know enough Scheme to package my own stuff.
<bavier1>taohansen: do you mind if I ask which packages?
<taohansen>IceCat breaks a LOT of the web for me, i have no idea why but it does. and qtwebengine isn't packaged yet for Qutebrowser so i have two pretty-broken web-implementations to choose from.
<taohansen>bavier1: not at all. one moment...
<xelxebar>clacke[m]: fwiw, I'm runing both guix and nix on a void system :P
<xelxebar>I plan on migrating away from void, so for now am just playing around with things.
<clacke[m]>That's probably what I would do next.
<bavier1>taohansen: yes, qtwebengine would be nice. It's a bit of a mess to package.
<clacke[m]>I'm on Ubuntu usually so far.
<taohansen>bavier1: dtrx (so i can extract all the things), leiningen (for Clojure hacking), and the other furry animal who shall not be named (for web browsing).
<xelxebar>taohansen: If you needed a nix package, was there a reason nix import didn't work for you?
<clacke[m]>Tao Hansen: How are you running the nix daemon?
<buenouanq>taohansen: no, a lot of the web is unhelpably broken - Icecat (with ublockorigin and umatrix) just helps you to see that more clearly ;3
<bavier1>taohansen: thanks
<taohansen>i'm missing a video editor but ng0 is working on Pitivi as we speak so that should hopefully be solved soon.
<sneek>I'll keep that in mind.
<clacke[m]>Or so you run no-daemon single-user Nix?
<bavier1>taohansen: btw, a few people maintain an unofficial package wishlist at https://libreplanet.org/wiki/Group:Guix/Wishlist
<taohansen>xelxebar: you mean guix import? i tried and it just hung.
<xelxebar>Whoops. Yeah, guix import
<taohansen>clacke: here are the steps i took to get a single-user Nix running: https://gist.github.com/taohansen/6dcd419cc7a81d761588c6cbfda4838b
<xelxebar>Huh. I just tried it for the first time and got a stack overflow after a few minutes. Maybe the issue is somewhat prevalent
<taohansen>bavier1: thanks! i'll be sure to add to that. :-)
<clacke[m]>interesting. Is coreutils in /usr really necessary?
<clacke[m]>is that for /usr/bin/env?
<clacke[m]>I haven't even tried single-user nix because it makes me feel iffy all over :-)
<clacke[m]>but it does solve your problem without having to run a guix service that would run a nix daemon that would be updated by nix ...
<clacke[m]>I run both daemons under s6, but I still haven't bothered to make s6 a service in GuixSD or NixOS.
<taohansen>i'm pretty sure civodul called my (which is not mine, it's someone's from the mailing list) hack fixing it with a sledgehammer.
<taohansen>:-)
<taohansen>it's for /bin/bash, yeah
<civodul>hey hey!
<bavier1>do we have a pascal compiler package?
<bavier1>hey civodul
<civodul>i think we don't
<civodul>i vaguely remember discussions around gpc though
<civodul>maybe there was an initial submission?
<bavier1>I almost thought this package was going to be too easy
<bavier1>I'll check the ML
<bavier1>ah, yes, in June
<bavier1>oh, bootstrapping
<bavier1>seems mb[m]1 has already worked on hedgewars
<bavier1>too big of a rabbit hole
<brendyn>im finding my nm-connetion-editor settings not saving. when i close and reopen them they have reset
<civodul>brendyn: oh? you might want to email guix-devel
<civodul>i think it works for me
<brendyn>Now I'm getting "Insufficient Privileges" when I try to add a new connectin
<db48x>HRM
<db48x>err, hrm
<civodul>brendyn: maybe you need to be root
<brendyn>well i made this connection in the first place without root
<db48x>is there a demo of guix import somewhere?
<civodul>db48x: no, but if you have guix installed, maybe you can make your own personal demo? :-)
<civodul>or did you fail to get it working?
<db48x>I already write an impoter :)
<db48x>wrote
<db48x>but I think I misunderstood how to use the feature
<civodul>oh? in what sense?
<db48x>well, I ran guix import quicklisp zsort, and it printed out the package definition for sbcl-zsort, as I expected
<db48x>I put that in a file, with some use-package stuff at the top, and tried to guix package -f it
<civodul>yes, sounds good so far
<db48x>it didn't print any errors, but the pacakge doesn't show up in guix package -A either
<civodul>so show in "guix package -A", it must be in $GUIX_PACKAGE_PATH
<civodul>s/so show/to show up/
<db48x>GUIX_PACKAGE_PATH is empty
<bavier1>are there currently known failures in check-system?
<bavier1>nvm, dependency build failures
<db48x> http://paste.lisp.org/display/359560 is the file I created
<db48x>civodul: what is GUIX_PACKAGE_PATH supposed to be? this is a vm with guixsd on it
<civodul>db48x: perfect; now, if you want it to be known to Guix, you must either drop it in your checkout, or add its directory to GUIX_PACKAGE_PATH
<civodul>does that make sense?
<civodul>the manual has more info about GUIX_PACKAGE_PATH, but it's basically a colon-separated search path
<db48x>ah, hmm
<db48x>db48x@carrock ~$ GUIX_PACKAGE_PATH=~/test-packages guix package -s sbcl-zsort
<db48x>guix package: warning: failed to load '(zsort)':
<db48x>ERROR: no code for module (zsort)
<db48x>I guess that's progress
<civodul>db48x: the file needs to be called gnu/packages/zsort.scm relative to the search path
<civodul>see https://www.gnu.org/software/guix/manual/html_node/Package-Modules.html#index-GUIX_005fPACKAGE_005fPATH
<db48x>hmm
<db48x>ERROR: no code for module (gnu packages zsort)
<civodul>the module you pasted is not called that way
<db48x>oh I see
<db48x>that error message should say that .../gnu/packages/zsort.scm doesn't contain any code for the module (gnu packages zsort)
<db48x>ah, real progress now:
<db48x>ERROR: In procedure %resolve-variable:
<db48x>ERROR: Unbound variable: sbcl-alexandria
<db48x>success
<db48x>well, can't install it, but I think I just need to figure out the inputs
<brendyn>This code here refers to /usr/share/... but I need it to refer to <profile-dir>/share/... https://github.com/goldendict/goldendict/blob/master/config.cc#L335
<brendyn>GuixSD doesn't seem to set any $GUIX_PROFILE dir so I'm not sure how to refer to it
<efraim>If its (assoc-ref %outputs "out")/share/... then when you install it in your profile it'll be in the right spot
<brendyn>But what I need to support are optional packages, something with guix makes exceedingly difficult
<brendyn>There is a dictionary reader, and then you can install dictionary files, so they will not be in the output
<civodul>brendyn: i don't follow what the problem is, but you might have more luck emailing help-guix@gnu.org
<civodul>adding dictionary packages and all works well
<civodul>so there might be a misunderstanding here
<civodul>also, GUIX_PROFILE is usually unset, but that's fine: the default profile is always ~/.guix-profile
<brendyn>Last I saw on the mailing list it's not recommended to hard code ~/.guix-profile into packages
<brendyn>I haven't found any dictionary packages in guix
<brendyn>Hmm ok, looks like fontcoinfig hardcodes ~/.guix-profile for finding fonts so I guess I will just do it
<civodul>brendyn: ah yes, in packages it's not great to hardcode ~/.guix-profile
<civodul>sorry, i hadn't understand you were talking about package recipes
<brendyn>I cannot think of any other way to do it?
<civodul>dunno i think i lack context :-)
<civodul>for aspell and hunspell, for instance, there are environment variables
<brendyn>When Goldendict loads up, it checks /usr/share/stardict/dic/ for dictionaries but guix doesn't install them there, so I need to tell it to look in ~/.guix-profile/share/stardict/dic/
<brendyn>and /run/current-system/profile/share/stardict/dic/
<civodul>i'd suggest checking how the hunspell and aspell packages deal with that
<civodul>ACTION -> zZz
<civodul>later!
<brendyn>looks like it uses this thing 'native-search-paths' somehow but there isn't much documentation on it
***urbain1 is now known as numerobis
<fusion809>Due to my bootloader issues last time I reinstalled Guix with a BIOS boot partition this time and while the installer runs with no errors reported (including the GRUB install at the end) GuixSD won't boot. The GRUB dialog where it says "Booting from hard disk... GRUB Loading" does appear for a second before it disappears at that point nothing happens the system doesn't start.
<fusion809>Any ideas what to do? I'm kinda stuck here. Got no "error message" to report and search DuckDuckGo with
<thomassgn>fusion809: just wild guesses, but check the arguments and whether the root= and such point to correct FSs. I had some trouble with that when I installed guix ca. a year ago.
<thomassgn>cause you get into grub?
<fusion809>could I get in? The GRUB loading message appears for a fraction of a second then disappears so I don't think so. I can boot my live USB image and check
<fusion809>the GRUB settings
<thomassgn>mm, right. Then I don't know. Like, check your pointing at the right device in config. But you already did that, probably. Don't think it should be a problem but you could use one of the stable paths instead of the numbered paths that might change. e.g. /dev/disk/by-id/ instead of /dev/sda
<fusion809>The grub config refers to the root filesystem by its label not its location (i.e. /dev/sdb)
<fusion809>How do I check if I set the label on my /dev/sdb1 partition right?
<fusion809>I think I set it to my-label per the guide but I could be wrong
<fusion809>Nvm found out how and it's set right
<db48x>dumpe2fs
<thomassgn>cool, good luck. got to go :)
<fusion809>Goodbye.
<fusion809>Well if anyone has any epiphanies on how to fix I'll be here and eager to try 'em
<xelxebar>fusion809: Here's my mental checklist when debugging boot issues, in order boot order: Is my bios/uefi pointing at the device where grub resides? Is grub correctly installed on said device? Is the grub menu failing to display? Can grub see the device that the kernel and initramfs are on? Is grub.cfg pointing at the correct device? Is the root=<device> kernel cmdline parameter correctly set? Is the initramfs screwed up?
<xelxebar>You seem to be stuck somewhere in between "is grub installed correctly?" and "is the grub menu failing to display?" questions
<fusion809>Ya it's failing to display. But it displays fine when booting from USB image so it's not like a graphics issue. GRUB is giving no errors when I run grub-install.
<fusion809>From what I can tell I can't chroot into my GuixSD system from the live USB image can I? To chroot I mount up the file systems (root, proc, dev, sys) and then chroot in. But proc, dev and sys file systems do not exist, by default, in the GuixSD root partition.
<xelxebar>Well, if you're really wanting to work in a chroot environment, you'll have to bind mount proc dev and sys from the host system
<xelxebar>I would check your grub.cfg to make sure you haven't disabled the menu by accident
<xelxebar>If that checks out, then you really should make sure that the correct grub got installed to the correct location
<xelxebar>Are you running uefi?
<fusion809>Ya I know that's how I do so on other distros but when I mount my root partition on /mnt, /mnt/proc doesn't exist, it does for other distros though, likewise /mnt/dev and /mnt/sys don't exist.
<fusion809>No UEFI. Ya it's installed to the correct location /boot/grub I noticed that earlier when I was checking where to look for grub.cfg
<fusion809>I'll check the grub.cfg
<rekado_>is berlin.guixsd.org working for you or do you get a Bad Read-Header-Line error?
<fusion809>Is that question directed at me? If so I haven't the foggiest what ya talking about TBH, lol.
<rekado_>no, sorry, that’s a question to anyone who knows what I mean :)
<fusion809>xelxebar: what am I looking for in grub.cfg? What line would pertain to whether the menu is shown?
<fusion809>None of the lines I've seen so far are obviously menu-related
<fusion809>Aside from menuentry and menu color options
<xelxebar>fusion809: If you want to chroot, then you have to create the /mnt/{proc,sys,dev} directories and then mount --rbind them from the host system.
<xelxebar>The /boot/grub directory just contains a bunch of auxilary files that grub uses. Grub itself is installed into the mbr (or on the efi partition)
<fusion809>I had tried that before and it had succeeded I just assumed I had done it wrong as the PATH seems undefined. See ls isn't found nor is ln.
<xelxebar>Sometimes, the mbr can contain just enough code to display "GRUB..." or whatever even after nuking all your partitions.
<fusion809>(the choorting)^
<fusion809>I assume you mean the GRUB has to be installed on my BIOS boot partition. It is. My BIOS boot partition is mounted on /boot and that's where grub is.
<fusion809>the grub folder^
<xelxebar>On my system, for example, I used to have grub installed, but nuked it in favor of a different boot method. However, if my bios tries to boot my drive, it'll still show "Loading GRUB" or something and just hang there
<xelxebar>bios boot partition?
<rekado_>oh… berlin.guixsd.org ran out of space!
<xelxebar>Is your drive gpt or mbr?
<fusion809>MBR
<fusion809>I think, one mo I used cfdisk
<fusion809>Ah no it's GPT
<xelxebar>with a protective mbr, right?
<xelxebar>What does gdisk -l /dev/your-drive say?
<fusion809>Nope. Guessing that's the problem
<fusion809>Oh goodie protective MBR does exist according to gdisk
<xelxebar>Okay. And how'd you go about installing grub? What command did you issue?
<fusion809>Well at first I just let guix system init do it. But after that I tried to ensure it was installed so I had the BIOS partition mounted to /boot and I ran grub-install --target=i386-pc --root-directory=/mnt /dev/sdb
<xelxebar>Hmmm... Are you sure your bios knows about GPT?
<fusion809>How would I check if it did?
<fusion809>I noticed that /mnt/root/.guix-profile doesn't exist, that's probably why when I chroot into the root partition coreutils commands aren't found in the PATH
<xelxebar>fusion809: Unfortunately, there's no easy way to check bios features, but in general if your system isn't quite old, then gpt is probably supported
<fusion809>I'm running in a QEMU VM, they don't emulate older hardware do they? My PC is 2015ish so no it's not very old
<xelxebar>Can you pastebin the output of your gdisk -l /dev/your-disk somewhere?
<laz>fusion809: qemu needs UEFI firmware to boot from GPT disk
<laz>it is provided by ovmf project https://github.com/tianocore/tianocore.github.io/wiki/OVMF
<fusion809>Ah. Guessing since you're providing a link instead of just saying install with Guix I'm going to have to manually install OMVF to the VM from source?
<laz>sorry, I'm not using guix yet, just looking at it, so I'm not sure if it is already packaged
<xelxebar>laz: You can totally boot a gpt disk in qemu without the need for ovfm
<fusion809> https://github.com/tianocore/tianocore.github.io/wiki/How-to-run-OVMF#run-qemu-using-ovmf seems to suggest that I install OVMF to my host system instead of to the VM
<mb[m]1>fusion809: OVMF is in Guix, you can `guix build ovmf` and pass the firmware file to `qemu -bios`.
<fusion809>xelxebar: So I can just disregard what laz is saying? If so how do I set up UEFI for the VM
<fusion809>mb[m]1 So I do have to install OVMF to the VM and not to my host (which is Arch Linux)?
<xelxebar>If you want uefi support in qemu, then you do need the ovmf.bin (qemu -bios ovfm.bin <whatever>)
<fusion809>That's something I run on my host right? Silly question, sorry as I run QEMU from my host
<mb[m]1>If you want to use EFI in the VM, you'll need to pass the firmware file to qemus "-bios" argument. But GPT works with both EFI and BIOS modes.
<xelxebar>Maybe, I'm lying. I thought I had booted a gpt drive in qemu before without ovfm, but I might be confused.
<xelxebar>Anyway, isn't that a red herring. What you really want is a guix system, no?
<xelxebar>You can just use an mbr instead and forego all the uefi hassle
<mb[m]1>GPT does not require UEFI.
<fusion809>Where do I get this ovfm.bin? That link that was provided earlier suggested this was the download page https://sourceforge.net/projects/edk2/files/OVMF/. I downloaded OVMF-X64-r15214.zip, extracted its contents and the closest file inside is OVMF.fd
<laz>or just download prebuilt vm image
<xelxebar>fusion809: Why do you want ovfm, now?
<xelxebar>What are you trying to do?
<mb[m]1>ACTION goes afk
<fusion809>You said I needed it (`qemu -bios ovfm.bin <whatever>` remember)
<laz>as I understand, uefi is needed if you use efi system partition with efi bootloader
<fusion809>How do I use MBR? Please tell me I don't have to reinstall GuixSD for a third time?
<fusion809>Didn't read your later messages xelxebar, that's why you just came up with MBR question
<xelxebar>fusion809: I think gdisk can convert gpt to mbr
<xelxebar>Yeah. It can
<xelxebar>gdisk /dev/whatever
<xelxebar>Then use the 'r' command to access the "recovery and transformation options"
<xelxebar>From there the 'g' command will convert your gpt to mbr
<xelxebar>And then 'w' will write those changes to disk
<xelxebar>You might want to save a backup of the partition table before doing that, just in case
<fusion809>Thanks, I actually found the answer using DuckDuckGo and it matched yours so that's a good sign, the thing about search engines is they've got no brains and sometimes they give you wrong results
<xelxebar>gdisk -b disk-partition-table-backup.gpt /dev/whatever
<fusion809>So to have a human verify it is helpful
<xelxebar>Hehe. Well, it helps to know thy tools
<xelxebar>I've spent inordinate amounts of time debugging and hacking around with boot stuff
<xelxebar>fusion809: Once you convert, let us know if qemu is booting for you
<fusion809>Well I rebooted afterwards and I'm still getting that problem
<xelxebar>Ummm... Are you booting hardware or booting qemu?
<xelxebar>All the vm and uefi talk got me confused on what you're doing
<fusion809>Booting a VM in QEMU. Now I'm confused could I boot hardware in a VM?
<xelxebar>No, I didn't know if you had some separate machine you were banging on or something
<xelxebar>Anyway, after converting to mbr, you probably also want to unmark kill the boot flag on that special boot partition
<xelxebar>And then reinstall grub, so it gets shoved into the mbr
<xelxebar>On gpt grub gets installed into the special boot partition. On mbr it gets installed into the mbr space.
<fusion809>How do I "unmark kill the boot flag"?
<xelxebar>Oh, I fumbled that sentence.
<fusion809>I'll be ....ed I re-installed grub no boot flag thing and now it's booting fine!
<xelxebar>What does gdisk -l /dev/your-disk show?
<xelxebar>Oh. There you go
<xelxebar>I guess gdisk did the right thing and didn't assume your efi partition bootable.
<xelxebar>fusion809: High five!
<fusion809>Thanks a million!
<xelxebar>No worries
<fusion809>Just goes to show that persistence pays off. I honestly thought it was doomed to failure. Btw when GuixSD 1.0 comes out (I know that's probably a decade or so away) do yas plan to have a graphical installer or do yas want it to always be an advanced OS, including in its install like Gentoo is.
<fusion809>advanced OS without an installer^
<xelxebar>I'm not actually a guix developer. Just been futzing with it for a few days
<xelxebar>If anything, I'd suspect nixos to roll some gui installer before guix did
<xelxebar>My endgame would be to run guix on the hurd or something
<fusion809>Probably, GuixSD is laggy as anything atm though with the GNOME DE. GNOME runs natively on my system (i.e. outside a VM) without a problem though
<fusion809>I've allocated 8GB RAM and 3 cores to it though
<fusion809>So it being laggy is odd
<xelxebar>Um, running gnome under qemu is likely to be slow. You did enable kvm, right?
<fusion809>How do I enable KVM? Rofl sorry for how much of a noob I am honestly VirtualBox is my preferred virtualization technique only using QEMU as it's what's recommended at the manual
<xelxebar>Hey, everyone starts off as a noob. No worries.
<xelxebar>Pass the -enable-kvm flag to qemu
<xelxebar>It should make things a lot faster
<fusion809>Ah thanks. I'll reboot the VM with that.
<fusion809>Thanks it's now working far faster. I'm gonna write this down as I've installed GuixSD and set it up properly in the past but I had forgotten a lot of what got it to work.
<xelxebar>Good to hear.
<castilma>fusion809: using kvm instead of qemu in the cli should work too.
<xelxebar>Yeah. Advice I would give is to read the man pages for all the cli tools you use
<xelxebar>You don't have to read them all at once and probably won't understand everything, but if you take the time to futz around with the tools, you'll learn stuff pretty fast
<xelxebar>There are all kinds of cool man pages. You can search through them with man -k <something>
<fusion809>Thanks. Ya that's usually what I do, but yeah a lot of the times some of it I don't quite get, the phrasing of man pages isn't always all that clear, to me at least.
<xelxebar>There's even man boot which gives a high level overview of the boot process
<xelxebar>Yeah, the man pages can be really dense. They're not immediately useful, so don't worry about not understanding everything (none of us do :P). Just try to understand what you can and dig into the things that you don't but are curious about.
<xelxebar>The nice think about man pages is that you will pick up a lot of the lingo quickly which makes searching for answers to problems a lot easier
<rama_dan_>i noticed guix has a lot of packages for Java libs like Apache Commons .. and i can't see how it would be a good idea for Guix maintainers to work on that stuff too
<shiranaihito>i noticed guix has a lot of packages for Java libs like Apache Commons .. and i can't see how it would be a good idea for Guix maintainers to work on that stuff too
<shiranaihito>considering people use Maven to manage Java dependencies, and it's a big ole mess anyway
<rekado_>shiranaihito: is there another way to obtain reproducibly built Java packages?
<rekado_>we’re treating Java sources like any other packages.
<shiranaihito>rekado_ oh.. well, i guess not..
<rekado_>we cannot just download binaries from maven
<shiranaihito>well, are you planning on making a package from everything in Maven? :)
<rekado_>and not packaging these things means that we won’t be able to package software like axoloti-patcher
<shiranaihito>i just get the feeling that something is a bit off there :)
<rekado_>not all of it
<rekado_>just like we don’t package all of CPAN
<rekado_>or all of CRAN
<shiranaihito>yeah
<rekado_>or all of Pypi
<shiranaihito>so what's the plan then?
<rekado_>we usually add packages when they are needed
<shiranaihito>plenty of apps needs plenty of libs you won't have, right? so what would they do?
<rekado_>but the plan is to extend the importers
<rekado_>currently the importers are used only by developers
<shiranaihito>"importers"?
<rekado_>but we could extend them such that a user could say “guix build --magic https://some/url” and it would recursively import and build the packages.
<rekado_>“guix import” is the command
<rekado_>it downloads infromation from upstream distributions and generates Guix package expressions.
<shiranaihito>obviously, i'm new to guix and all, but i don't see why someone's application could not be "reproducible" in the sense you espouse
<shiranaihito>i mean.. what's the problem?
<shiranaihito>for example i have a SaaS app that i'm considering running on GuixSD
<shiranaihito>i bet it uses a lib Guix doesn't have
<rekado_>sure, a binary is reproducible if all you do is copy the binary around, bit for bit.
<shiranaihito>so.. what problem does that constitute for me?
<rekado_>with Guix we build packages from source.
<rekado_>and traditionally that doesn’t result in the same binary
<shiranaihito>yes? :)
<rekado_>sorry, gotta run
<shiranaihito>mm
<shiranaihito>this seems like a discussion worth having though
<shiranaihito>so maybe later then :)
<jlicht>hi guix
<fusion809>Hey is there a command to make guix perform tasks (e.g. download tasks) in parallel therefore speeding it up? At the moment even installing icecat takes a matter of hours, mostly due low download speeds. This is despite my network being perfectly capable of >3 MiB/s download rates. If Guix allowed download jobs to run in parallel this wouldn't be quite so problematic.
<fusion809>I've checked guix package's man page of course.
<fusion809>Nothing there.
<shiranaihito>fusion809 so you're getting a way slower download than your connection could handle? maybe the server can't upload any faster? .. but then parallelism wouldn't help either, right?
<fusion809>Most packages download faster though, so I'd imagine for some packages the download would go faster.
<shiranaihito>fusion809 that doesn't make sense
<fusion809>Well if I'm downloading a slow package and downloads occur in parallel a faster package might download at the same time and get a better speed.
<fusion809>and therefore while this slow package is downloading several other packages can download therefore saving future download time
<fusion809>sounds like it makes sense to me.
<bavier>fusion809: the daemon has a 'max-jobs' option that also affects how many downloads are done concurrently
<fusion809>Thanks. Where are daemon options specified? /etc/config.scm?
<bavier>fusion809: you can override the default daemon setting with 'guix build --max-jobs=N'
<bavier>fusion809: but otherwise, yes, the default daemon setting can be adjusted in /etc/config.scm
<bavier>fusion809: it controls concurrent builds too, so you may want to adjust --cores at the same time
<fusion809>How does one specify max jobs and cores in config.scm. Feel free to direct me to the docs can't seem to find it in the manual but it could be somewhere I haven't looked yet
<bavier>there's an example in the "System Services" section: https://www.gnu.org/software/guix/manual/html_node/Using-the-Configuration-System.html#Using-the-Configuration-System
<fusion809>I don't see "jobs" or "cores" anywhere or even these words without the s at the end. So I'm struggling to know where it is, sorry.
<bavier>fusion809: modify-services, specifying in 'extra-options' the "--cores=M --max-jobs=N"
<fusion809>Ah thanks.
<fusion809>Under GNOME whenever I press the down button Totem opens and I haven't changed its keyboard shortcuts or anything. Likewise when I press the up arrow screenshots are taken. Is this normal? I know under GNOME on other platforms it doesn't happen but does GuixSD have a customized version of GNOME?
<fusion809>Might be keyboard related it seems, I'll see how to fix.
<bavier>fusion809: could be the keymap
<fusion809>Ya, I think so. How do I edit the keymap? Guessing you's have an option similar to Nix's security.sudo.wheelneedspassword option for your config.scm file?
<fusion809>The keymap isn't mentioned in the default config
<fusion809>Nvm found the manual page for keymap
<fusion809>Adding (console-keymap-service "us") under (operating-system like https://i.imgur.com/wox60jX.png causes guix system reconfigure /etc/config.scm to fail
<fusion809>saying that's erroneous. Is this meant to be under the services section or?
<fusion809>Ya seems like it.
<kai_w>The install docs suggest setting the password with 'passwd' for install via ssh, but 'passwd' does not seem to be present in the install image. Is this correct, or am I missing something?
<fusion809>Hi, I've spent the last 20 mins trying to fix this problem myself, but I have this config file https://paste2.org/9jpLs9IB and whenever I run guix system reconfigure /etc/config.scm --max-jobs=5 --cores=5 I get the error: "/etc/config.scm:46:2: error: invalid field specifier". I've tried checking that all brackets are matched and it seems logical to me.
<bavier>fusion809: "define" is not a valid operating-system field.
<bavier>fusion809: I'd suggest replacing the %desktop-services on line 44 with the "(modify-services %desktop-services ...)"
<bavier>make sense??
<fusion809>Ah thanks!
<bavier>np
<fusion809>by ... you meant what I had under guix-service-type config => right?
<bavier>fusion809: right
<fusion809>If so then where do I put console-keymap-service? Putting it under extra-options... causes an error complaining that it's not valid
<bavier>you'd add it to the list of services
<bavier>you have a cons* that's adding the gnome-desktop-service already, you'd add the console-keymap-service there
<bavier>the cons* builds a list
<fusion809>Ah! Thanks.
<fusion809>Is this what I meant to use? https://paste2.org/fpYMY8I9
<fusion809>It's failing, giving "<unknown location>: error: invalid field specifier"
<bavier>fusion809: put the modify-services as the last argument of cons*, since it's the list that the others will be consed to
<bavier>fusion809: and name-service-switch is its own operating-system field, I think
<bavier>fusion809: yes, you'll see that in the examples
<fusion809>Thanks it's working now.
<bavier>great
<quigonjinn>kai_w: yes, this is correct. passwd is not present in the 0.13.0 image.
<fusion809>Built successfully. The sudo part of the docs sounds like I have to write a Guile script that details the lines in the sudo file. Is this true? Or will a plain text file work?
<bavier>fusion809: you can optionally add users to the "wheel" group
<fusion809>Na I know how to sudo what I want is without password.
<fusion809>Oh and btw I just realized my keyboard problem (where up arrow causes screenshot and down arrow causes totem to open) is still there despite rebuilding with US keyboard
<kai_w>thanks :)
<fusion809>Sorry system froze.
<fusion809>Since my system update Guix doesn't seem to want to work for me, when I run `guix package -i onboard` I get: "guix package: error: failed to connect to `/var/guix/daemon-socket/socket': Connection refused"
<fusion809>I did have to do an abrupt reboot (due to my since freezing) since I noticed this error too if it helps.
<fusion809>Running guix-daemon as root fixes it. Is there a way to remove the requirement to run guix-daemon manually?
<fusion809>Rebooted a few times now to check if this is true, even tried moving /var/guix/daemon-socket/socket to ~/ (moving it instead of deleting it in case I needed it again) in case it was meant to be removed before I shutdown when I had to reboot due to the freeze and it didn't fix it either
<bavier>fusion809: it sounds like you're guix-daemon service is failing to start
<fusion809>Hmm twas occurring to me too so I ran dmesg (as I'm used to systemd and I haven't a clue what the equivalent to journalctl -xe is for shepherd
<fusion809>and grepped it through "daemon" and "guix" (separately) and it returned no results
<bavier>fusion809: what does 'herd status' show?
<fusion809>Started:
<fusion809>root
<fusion809>oops +root^
<fusion809>I know there's a herd status command but `herd status guix-daemon` returns an error (complaining it's doesn't exist) as does `herd status guix` and `herd status daemon`
<fusion809>Oddly since this guix-daemon error has arisen I haven't had a problem with the keyboard. Before the freeze forced shutdown the keyboard problem was there now it's not.
<bavier>fusion809: so the console-keymap-service is working :)
<bavier>fusion809: sorry, I'm not at a guixsd system atm
<fusion809>Ya at least that's something. That's fine, you've been very helpful so far. Frankly if it weren't for ya help I probably would have given up on GuixSD, at least for a few months until I get very bored again.
<bavier>fusion809: double-check your /etc/config.scm and read the shepherd manual to help debug
<fusion809>The man page or some online manual?
<fusion809>Found it
<fusion809>Whenever I reboot, even if I delete /var/guix/daemon-socket/socket, the socket is re-made. Is that relevant? To me it suggests something is running that is re-generating it but whether it's the Guix daemon is to be seen, my guess is no.
<bavier>fusion809: it's probably the deamon
<bavier>fusion809: does 'guix package -i ...' still fail?
<fusion809>Ya unless I manually start the daemon.
<fusion809>I checked my config.scm file and it seems to be in order from what I can tell, but given that Guile isn't a language I'm strong in I could be completely wrong. If you want to look at it it's much the same as when you saw it the last time except for the last few lines. Here it is: https://paste2.org/L8Hk41vv
<fusion809>Might reconfiguring with guix system reconfigure be worthwhile? Maybe that might fix the issue, at least that's my guess.
<fusion809>Did it and it didn't do squat
<mb[m]1>fusion809: probably unrelated, but "--cores=4" and "--max-jobs=5" should be separately quoted. As in two different list elements.
<fusion809>OK, shall do, configure & reboot
<fusion809>Thanks
<fusion809>So I write extra-options '("--cores=4" "--max-jobs=5")? Or sorry I'm a real Guile noob, I'm used to more procedural-style languages
<fusion809>Or over two lines? Like (extra-options '("--cores=4")) (next line) (extra-options '("--max-jobs=5"))...
<fusion809>Seems like my second idea was right as it's building fine.
<fusion809>So far anyway.
<bavier>fusion809: on two lines like that, the second would override the first
<bavier>fusion809: '("--cores=4" "--max-jobs=5")
<bavier>is what you'd want
<fusion809>Well that's funny because I just rebooted and the daemon is starting properly.
<fusion809>Let me see if it's a fluke and if that ammended line gets the same result
<bavier>fusion809: yeah, it'll start fine, but only with --max-jobs=5, not --cores=4
<fusion809>Ya I'm not arguing you're wrong with your syntax. Just saying it's odd that Guix daemon seems to agree with that change given that it was wrong
<bavier>there's nothing wrong with giving it only one of those two options, so it wouldn't complain
<bavier>like mb[m]1 said, the issue was probably with giving both in a single string
<fusion809>I am now rebuilding with the two properly writing on one line to see if it's all fixed with this fix.
<fusion809>It's working. Thank you both bavier and mb[m]1 you've both helped a lot. Had a real itch to give this fascinating OS a decent go.
<bavier>fusion809: glad its working
***sonnixin_ is now known as sonnixin