IRC channel logs
2025-05-15.log
back to list of logs
<omentic>hey all -- totally new to guix. how long would i expect `guix shell guile-next` to run? i'm a little worried guix is not using substitutions properly <omentic>in particular, guix seemed to download a bunch of .tar.gz.drvs but now it seems to be building them. this seems very slow and possibly avoidable <ieure>omentic, Are you using Guix System, or on a foreign distro? <ieure>omentic, You can use `guix weather package-spec' to see whether substitutes are available. <omentic>ieure: a foreign distro -- guix on arch with a single guixbuild user <omentic>ieure: i've added in bordeaux and ci through the flag and reloaded the daemon. guix weather guile-next says it's got 100% substitutes available... but guix shell guile-next seems to still be building things <trannus_aran>anyone familiar with guix packaging a cmake project? I have one mostly set, but it complains about not being able to determine the INSTALL_PREFIX from /tmp/<pkg-name>/build <ieure>omentic, Did you authorize them? <omentic>ieure: i did not. do you know where i can find the signing key of either server? <ieure>omentic, Does the manual say? If not, it'll be in the Guix source somewhere. Sorry, have an incident happening now :( <omentic>nw! manual does not say. will check source <omentic>though, the manual suggests that these servers should be configured and authorized by default. maybe i should be reading the 1.4.0 version. <ieure>omentic, You almost never want to read the 1.4.0 version. <omentic>good to know. also, does look like they say they're disabled by default on foreign distributions, yeah -- missed that <omentic>oh nice! the manual does say. was in a previous section <omentic>and i think i will reference the single-page manual from now on, lol <trannus_aran>okay, I read up a bunch on how the build-systems modules work under the hood <trannus_aran>but I still don't know how to get cmake-build-system to actually call `cmake ..` in a different directory than <pkg-root>/build <trannus_aran>anyone got any ideas? Ultimately it's probably gonna be some `(lambda* (#:key ??? #:allow-other-keys) ???)` that I pass to `modify-phases`, replacing `'configure` <trannus_aran>but what exactly I'm pulling out in that context is clear as mud. Is the "build" dir the source? <trannus_aran>basically all that needs to happen is instead of calling `cmake ..` in ./build/, I need to `mkdir <system-arch>/<pkg-name> && cd <dir we just made> && cmake ../..` <omentic>why might guix on a foreign distro be unable to find a package? specifically i'm looking for guile-hoot <omentic>thinking this is something to do with it not updating its own repos but i've run guix pull both with/without sudo + reloaded the daemon <hako>omentic: 'which guix' are you using? The most up-to-date one should be ~/.config/guix/current/bin/guix. <omentic>hako: ah thanks! i checked out /usr/bin/guix and saw it was a script so thought it was loading the new version. yeah, that's where the updated one went, thanks (and now pulling down guile hoot is working) <omentic>hm, i should really sit down and redo this arch packaging from scratch <flypaper-ultimat>trannus_aran: how about adding a phase before the build phase or after the unpack phase that does (let ((dir (format #f "~a/~a" #$%current-target-system #$name))) (mkdir-p dir) (chdir-p d)) <ruther>note that cmake-build-system uses out-of-source? #t by default, meaning that the configure phase cds out of the source, to ../build (relative to source). <futurile>how do I get substitute* to show me what it's matching? it returns #t, but I'm having not luck getting what it's matching out <cbaines>futurile, can you diff the file before and after? <cbaines>I'm also not sure the return value means anything <futurile>cbaines: according to the definition of substitute* it will actually give me the match. But I cannot get it working for the life of me: (substitute* "t/spamc_x_e.t" (("/bin/echo" all) "LALALALA")) <-- returns #t, but I can't seem to get the _all_ part <futurile>I tried (begin (substitute* "t/spamc_x_e.t" (("/bin/echo" all) "LALALALA")) (format #f "Substitute match: ~s\n" all)) - but it says unbound variable which kinda makes sense, but now I'm confused <futurile>I'm in the repl (guix repl), and I can see it's working <futurile>I might have to go and have a lie down, my brains broken today <cbaines>so for your example, it would look like: (substitute* "t/spamc_x_e.t" (("/bin/echo" all) (format #f "Substitute match: ~s\n" all) "LALALALA")) <futurile>cbaines: ah got it. It's "body is evaluated for each match-var" part. Thanks - seriously been trying to figure that out for 45 misn <untrusem>so do i need udev rules to use fastboot in guix? any help would be appreciated <untrusem>it is saying no permission but adb is working fine <fsantin-rolv>Hi, I'm trying to run guix shell hello -- hello after installing Guix on a separate volume mounted at /gnu. I get this error: <fsantin-rolv>"""guix shell: error: creating directory `/gnu/store/.links': Read-only file system""" <fsantin-rolv>The daemon is running, I moved /var/guix and /etc/guix under /gnu, created symlinks back, and replaced placeholders in the systemd service file. <fsantin-rolv>The /gnu volume is mounted from an EBS volume at /dev/nvme1n1, and I’ve remounted it read-write. The idea is to have a snapshot for further usages within AWS. <attila_lendvai_>fsantin-rolv, guix uses the /gnu/store as a patch for the read-only package dirs. your /gnu may interfere with that. i doubt this has ever been tested... <untrusem>ok I can install the android-udev-rules package <futurile>fsantin-rolv: what owns /gnu - for me it's root guixbuild <futurile>fsantin-rolv: sorry root:root /gnu, then root:guixbuild for /gnu/store <fsantin-rolv>drwxr-xr-x. 6 guix-daemon guix-daemon 4096 May 14 13:07 /gnu <fsantin-rolv>drwxrwxr-t. 82 guix-daemon guix-daemon 12288 Jan 1 1970 /gnu/store <efraim>fsantin-rolv: if you need to post multiple lines please use a paste service like paste.debian.net <efraim>not a problem, that's why the bot silenced you for a short bit :) <efraim>I'm unimpressed with the screen-5.0.1 tarball. I'll probably use the git checkout to bump it <sleepylkw>Is the new codeberg repo ready to be used for guix pull? Im having some issues with savannah <sham1>I've been using it for a month now. Works fine <fsantin-rolv>Let me articulate better what I am doing: I'm trying to create a reusable EC2 instance setup with GNU Guix installed on a dedicated 100GB EBS volume, so that I can snapshot it and reuse that snapshot across future EC2 instances in AWS. <fsantin-rolv>To do so I launched a fresh EC2 instance (t3.medium) using CDK. Attached a 100GB EBS volume (mounted at /gnu). <fsantin-rolv>Used the official Guix install script (guix-install.sh) with the latest auto-built binary tarball from Guix CI. <fsantin-rolv>Guix installed successfully, and I confirmed guix --version works. <fsantin-rolv>I had to fix the broken guix-daemon.service (which had @storedir@ placeholders), replacing them with real paths: <fsantin-rolv>guix shell: error: creating directory /gnu/store/.links': Read-only file system <fsantin-rolv>my knowledge of Guix is at user level, so I may not be completely aware of what I am doing. Any help is appreciated. Thanks <attila_lendvai>is this only me? "guix home: error: eudev-removable-devices-polling.patch: patch not found" <ieure>attila_lendvai, Did you just pull? I reconfigured last night and had no problems. <identity>attila_lendvai: there were some commits related to udev polling recently, though they did not cause any problems for me either <identity>attila_lendvai: what commit are you on (check with `guix describe`)? <attila_lendvai>i think it's this one: guix home: error: eudev-removable-devices-polling.patch: patch not found <ekaitz>hi! can someone remind me how to configure the guix-mirror as the primary guix-pull url? <ekaitz>attila_lendvai: yes, that in the guix pull --url but can I configure it forever in the config.scm? <attila_lendvai>err, nm, i need to slow down... you need to edit ~/.config/guix/channels.scm <ekaitz>attila_lendvai: you overwrite the %default-channels, right? <z572>attila_lendvai: I think it was accidentally left over during the rebase. <attila_lendvai>...and of course the guix-mirror repo is lagging behind hours, and doesn't have the revert patch yet. <identity>ekaitz: (info "(guix) Specifying Additional Channels") without consing onto %default-channels <attila_lendvai>ekaitz, not sure. very early on i added channels, so i have that channels.scm since forever <ekaitz>oh wait! i pulled and we just updated it to use codeberg? great! <attila_lendvai>ekaitz, not sure. very early on i added channels, so i have that channels.scm since forever <ieure>I switched my stuff over to the Codeberg mirror weeks ago, because Savannah was down so much. <ieure>attila_lendvai, I like a `!! RET'. <ieure>attila_lendvai, Or a `!?pull' <ieure>Bash ! expansion is an arcane footgun I seek to master. <look>so, I need to unload a kernel module right before kexec rebooting (but after all graphical sessions have stopped), preferably with a shepherd/guix service, any suggestions? <hako>look: a shepherd service that requires 'user-processes', does nothing on start and unloads module on stop? <flypaper-ultimat> trannus_aran: you can change the (invoke "mkdir" "-p" ...) to the guix procedure (mkdir-p ....). <flypaper-ultimat>so add #:use-modules (gnu packages s3fh) to your hercules define-module block, and add s3fh after automake (or anywhere in that) <trannus_aran>Yeah, what's odd is I tried that! Even after installing in my guix store, it complains that gnu packages s3fh isn't a module it can find <trannus_aran>flypaper-ultimat: I even did that! But then it would only build hercules and not bother with building s3fh? <trannus_aran>Tried changing s3fh to a propagated-input, no dice, same issue <flypaper-ultimat>if you already built that definition s3fh before, than guix wont build it again, because in the store <look>hako: your suggestion worked, thanks! <ekaitz>cbaines: Re: Improve guix-daemon by new C++ features -> weren't you rewriting the daemon in guile? what's the status of that? <ekaitz>attila_lendvai: I also have the eudev-removable-devices-polling.patch error, did you fix it since your latest message? <ekaitz>attila_lendvai: oh pulled and it works now <ruther>well at least users will use the agit workflow more instead of forking :P <ruther>agit is definitely easier than mailing workflow. You just git push refs/for/master <tusharhero>but it seems harder than the typical git forge workflow <ruther>my codeberg is currently 1.4 GiB :( (but probably mostly taken by qmk) <ruther>tusharhero: imo agit workflow is easier than typical git forge workflow as you don't have to fork and add multiple remotes to rebase etc. (though that can currently be solved by the web ui as well) <ruther>I use codeberg just as a mirror anyway, so I don't really care thankfully. <ruther>yeah, I suppose they haven't activated it yet <futurile>ruther: do you have a helper script or anything for the agit flow, I saw Simon suggested something in the GCD but haven't looked at it <ruther>futurile: I don't, I actually haven't used it yet at all! But I saw there is git-repo command extension that can be installed and it looked quite nice, giving you commands to browse contributions, contributions etc. <ruther>though looking into it more it seems this git-repo project has been abandonded? <futurile>looks like they stopped publishing, looks cool though <trannus_aran>flypaper-ultimat: working in different guix.scm files if that's what you mean--I'm not editing the guix tree directly, no <identity>(info "(guix) Desktop Services") says "The desktop environments in Guix use the Xorg display server by default. If you’d like to use […] Wayland, you need to enable Wayland support in GDM."; this is incorrect, as gdm-configuration's 'wayland?' field is set to #true by default, and GNOME defaults to a Wayland session without any manual intervention <trannus_aran>flypaper-ultimat: hmmm, yeah, even with s3fh removed (ty for that, I missed that detail that it wouldn't rebuild) it's still not building the dependency and just barreling through the hercules gnu build <cbaines>ekaitz, I ended up trying to keep the QA stuff going rather than working on the Guile guix-daemon, so I haven't managed to return to it since sending some patches a while ago <cbaines>I do hope to get back to it, but I've also got some stuff I want to finish off around the bordeaux build farm <ekaitz>cbaines: oh! being busy sucks. It was a pretty exciting thing to work on <ekaitz>hopefully you can get back to it <SorET>Hi, a channel could depend on a guile package? I want to use some procedures from guile-lib in my custom channel. <ekaitz>SorET: you mean (use-modules (the package i need)) ? <SorET>I know that I can use them inside a gexp using with-extension procedure, but I need to use them outside a gexp. <ekaitz>i might be misunderstanding you but just use-modules in the outside? <SorET>Uhm... but I a fresh install that could cause an error, no?