<apteryx>sneek: later tell civodul activation time would mean the system had successfully booted already, right? If that's true, it'd be too late: the needed bits are for the grub.cfg config of the system. Another option is to make it declarative through 'file-system', by adding, for example: (properties '(btrfs-top-level-store-submodule-path . "/root-snapshots/root-current/guix-score")
<desmes>I'm trying out GUIX and after installing, running 'guix pull' and then 'sudo guix system reconfigure /etc/config.scm', it takes a lot of time (more than 1 hour) to get past 'building /gnu/store/....linux-libre'. Is something wrong?
<apteryx>desmes: hello! (by the way; s/guys/people/ is better form here :-))
<roptat>desmes, most likely you're building a kernel version for which there is no substitutes yet
<desmes>I'm sorry, I'm not native and I thought 'guys' could also be gender-neutral hahaha
<apteryx>desmes: it means there was no binary substitutes available for the kernel at the time, and it's building it locally. It's normal to take some time, dependending on your hardware.
<desmes>Damn! It is compiling the whole kernel then? How can I get past this? I'm on a VM, which I guess can make this take even longer.
<roptat>desmes, don't worry we won't ban you for this, you just didn't know, that's why we tell you :)
<apteryx>desmes: I'm not native either, and in some areas of the world, it may be be used by both men and women, but it still isn't quite neutral :-)
<roptat>maybe the substitute is available now, you can check on another terminal with "guix system build /etc/config.scm -n" (-n is for --dry-run, it won't build anything but it will tell you what will be downloaded or built locally)
<apteryx>desmes: you could wait a couple hours/minutes and try again; by that time the build farm may have finished building a binary substitute for it
<desmes>Thanks a lot for the information guys. I guess I can just C-c that proces, can't I?
<sneek>civodul, apteryx says: activation time would mean the system had successfully booted already, right? If that's true, it'd be too late: the needed bits are for the grub.cfg config of the system. Another option is to make it declarative through 'file-system', by adding, for example: (properties '(btrfs-top-level-store-submodule-path . "/root-snapshots/root-current/guix-score")
<sneek>civodul, apteryx says: this is easy to implement, but less convenient for users.
<sneek>civodul, apteryx says: it also doesn't solve the requirement to have Btrfs subvolume IDs translated to subvolume names (that'd be just unsupported with option 2).
<desmes>How come when I run 'guix build linux-libre --dry-run' it says 'the following derivation would be built'. But when I run 'guix build emacs --dry-run' it says 'xMB would be downloaded'? I'm reading the documentation, and downloading substitutes is the default behaviour. Does this mean that 'linux-libre' is not on the substitute server (and that 'emacs' is)?
<apteryx>desmes: that means that linux-libre is still not available from the substitute server, while emacs is.
<desmes>Ok, thanks. I thought the server was down. Now I see that some packages can be not aviable.
<apteryx>when running something like 'sudo guix system reconfigure my-config.scm', does all the host-side Guile program run as root?
<apteryx>that'd allow for example to list Btrfs submodules by using a script generated with, e.g., (gexp->script "list-subvolumes.scm" (system* (string-append #$btrfs-progs "/bin/btrfs") "subvolume" "list" "/")) ?
<civodul>apteryx: "sudo guix" means all of guix runs as root, yes
<roptat>desmes, when you run "guix pull" you get the latest version of the recipes. The build farm uses guix pull (or something equivalent) to know what it needs to work on, so it always lags a bit behind
<roptat>it's not an issue as long as you have enough power to build stuff locally, because of binary transparency: there's no difference between what you build locally and what is built on the build farm, they are bit-to-bit identical
<desmes>I see. It guess this is just an issue for me right now since I'm running it on a VM. I'
<desmes>I've never used a distro that built/compiled it's packages instead of downloading from the repos
<g_bor>It is noce if you will have an a uptodate vm.
<g_bor>I am doing this on an experimental system, where guix-home-manager is installed, which brings a lot of ther problems to surface
<g_bor>Some programs really don't like a read-only home.
<desmes>I'm reading the 'guix system' documentation. The 'reconfigure' command should always be invoked using 'sudo' and the 'etc/config.scm' file, shouldn't it? This is the default location for the system config file?
<civodul>desmes: if it doesn't run as root it won't be able to perform the actual reconfiguration, indeed
<civodul>the config file is usually in /etc/config.scm, but that is entirely up to the user
<desmes>I have an error, running 'sudo guix system reconfigure /etc/config.scm' for the first time (after running 'guix pull'). This one: 'build of /gnu/store/...guix-1.0.1...drv failed'. I've runned the command a couple of times and the same error keeps popping out. What can be happening?
<roptat>desmes, you probably have a log somewhere, guix should have told you the location of the log file in bold
<roptat>you can use bzless on it to see its content
<desmes>I'm looking at it and I can't figure it out to be honest. There seems to be a problem here: 'ice-9/eval.scm'
<gugurumbe>Hello guix! In the other distro that I use, gnulib is packaged and I can call the gnulib-tool program. I could not find such a package on Guix though. Did I miss it? The gnulib website says that there are no releases. Would it be possible to package it though?
<rekado_>gugurumbe: gnulib is supposed to be copied to whichever project is using it.
<bavier>but I suppose having a package in guix might be kinda nice.
<gugurumbe>Sorry, this is quite confusing: let's say I develop a program P, which uses stddef_h from gnulib. There are 2 repos: the one for P, and the one from gnulib. I do: gnulib-tool --import stddef in P. I get m4/stddef_h.m4 (I don't know if that's the exact file name but whatever). Should I check in m4/stddef_h.m4 in P repository and update it before each commit? This looks like a very bad idea, because the files would make unneces
<gugurumbe>sary conflicts between different computers and managing updates would be very difficult. Are we talking about this or is there a misunderstanding?
<count3rmeasure>hey all, just saw the outreach intern announcement on twitter and when I checked the page I got 404s on a couple of the links, just fyi
<truby>would it make sense at all to change the ld-wrapper script to take the linker you want to wrap as an environment variable? (or behave the current way if an environment variable isn't provided) ld.gold and ld.lld take the same linker options as ld.bfd so it'd make these usable in gcc-toolchain environments, which would be pretty nice
<sirmacik>how looks guix support for wayland and sway, anybody using it and capable of sharing ones config.scm for that?
<count3rmeasure>depending on how fast the development goes I'll also be able to create some fuzzing primitives in C, scripting it in guile, and then integrating that with guix for the aforementioned versioning
<rekado_>sirmacik: I’d be interested in that as well!
<rekado_>sirmacik: this would be a great little addition to the Guix Cookbook, I think.
<count3rmeasure>g_bor: do you know anyone who has extant guile scripts for gdb? Like, I've looked pretty extensively, asked on irc and the mailing list, searched github, I've turned up literally one project that wasn'
<g_bor[m]>sirmacik (@freenode_sirmacik:matrix.org): i have something along these lines. Also i did not use gdm, just start it from the command line. So most of the config is in dotfiles.
<gugurumbe>Sorry to bother you again, but how do you run a container? When I try LANG=C guix environment --ad-hoc --container guile, I get guix environment: error: mount: mount "/gnu/store/zzakf905mzla4csi1dn9qpcwmgbxj29b-bash-static-4.4.23" on "/tmp/guix-directory.TvMwuT//gnu/store/zzakf905mzla4csi1dn9qpcwmgbxj29b-bash-static-4.4.23": Operation not permitted
<count3rmeasure>wasn't even functional. It kind of threw me for a loop, honestly. Like, why is no one using these bindings? I get the ubiquity of python (and learning curve) but I've been fairly surprised that no one seems to be using these bindings, at all, after 5 years
<rekado_>so, for luks2 I suggest checking this: a) are all required tools available in Guix? b) how are we mounting a LUKS encrypted root file system right now? c) what would need to change to support LUKS2?
<rekado_>if you can answer some of these questions it would be great if you could send your results to firstname.lastname@example.org so that we can keep track of this.
<rekado_>a random Debian page I found about LUKS2 says that GRUB does not support the LUKS2 format yet.
<rekado_>I guess this would need to be checked first: does any version of GRUB support unlocking a LUKS2 container? Do we have that version in Guix?
<sirmacik>rekado_: it supports luks2 just fine, I have it right now on arch
<c0c0>on the try-out qemu image version of guix, i can run "guix package --list-profiles", whereas on a freshly installed guix on another machine, running the same command results in "guix package: error: list-profiles: unrecognized option". i don't get it. what am i doing wrong?