IRC channel logs

2024-05-28.log

back to list of logs

<brendn>cbaines Thanks that worked for most of the packages.
<freakingpenguin>How do I retrieve a Guix crash dump report from dump.guix.gnu.org?
<freakingpenguin>I can see it uploaded at said page but I can't figure out how to download it.
<freakingpenguin>Ah, I guessed /download/foo and it works. Curious that the .tar.gz extension isn't added even though it's a compressed tarball.
<meaty>Hello!
<meaty>Has anyone been able to set up a config that auto-mounts the shared virtfs drive in qemu
<meaty>If guix used /etc/fstab I could just use the line provided by the UTM docs:
<meaty>share [mount point] 9p trans=virtio,version=9p2000.L,rw,_netdev,nofail 0 0
<meaty>but it does not and I am having trouble translating :(
<freakingpenguin>meaty: Is this a file-system entry in your operating system?
<meaty>yes, I am trying to auto-mount a directory in my host shared from qemu/"UTM" (macos frontend)
<meaty>the fstab and guix filesystem docs are confusing though
<freakingpenguin>IIRC file-system entries in Guix still get entries in /etc/fstab. You can look at what's generated when building the system and see if it matches what you expect.
<meaty>yes but where to even start with all those "options"
<freakingpenguin>I imagine most of them would go into the file-system options field :)
<freakingpenguin>trans=.....nofail look like they'd be options entries to me.
<PuercoPop>How do people track they system configuration (/etc/config.scm, /etc/guix/channels.scm, etc) in vcs? Do they have those files simple require the ones that are stored in a repo under the home of their regular user?
<tty9-mm>PuercoPop: You can keep them in ~/.config/guix then use the dotfiles manager of your choice.
<tty9-mm>PuercoPop: I have ~/.config/guix/config-$HOSTNAME.scm and ~/.config/guix/channels.scm for a per machine basis.
<tty9-mm>channels.scm will be automatically picked up in that location for your local user. That seems to be the preferred way to manage your system rather than with root. You just `guix pull` and `guix reconfigure ...` with that user.
<PuercoPop>tty9-mm: wait I can do guix system reconfigure against any file in the system?
<freakingpenguin>Yep
<tty9-mm>Sorry, `guix system reconfigure ...`
<tty9-mm>What the freakingpenguin said.
<freakingpenguin>PuercoPop: I'm sure you'll get a 1000 different answers to this. I go all-in and organize it as an custom channel loosely mirroring Guix's project layout.
<tty9-mm>Yeah, you can do whatever works best for you. The way I'm doing it is a little cumbersome for my custom channel.
<freakingpenguin>Guix has a been a constant stream of "wait I can do THAT?" moments for me.
<PuercoPop>Ok, then I'll just add the /etc/config.scm to my guix home config. Thanks!
<PuercoPop>freakingpenguin: Yeah but a 1000 different answers is fine. I'm not looking for the 'best' way, more like how are people doing it, so I can use them as inspiration.
<freakingpenguin>PuercoPop: Here ya go: https://git.sr.ht/~freakingpenguin/rsent
<PuercoPop>a custom channel is only a matter of putting some metadata in the repo root iiuc? And it would be useful for CI systems to build derivations from the repository using guix
<peanuts>"~freakingpenguin/rsent -
<PuercoPop>freakingpenguin: Thanks!
<meaty>ok
<meaty>I've entered the data into the file-system field, but the device "share" does not exist
<meaty>does anyone know better what mount is doing when I exec this command:
<meaty>sudo mount -t 9p -o trans=virtio share /mnt/host/ -oversion=9p2000.L
<freakingpenguin>Does that command work? I don't know if mount supports passing the -o flag multiple times.
<freakingpenguin>As opposed to -o trans=virtio,version=9p2000.L
<freakingpenguin>Maybe it does, idk
<meaty>i have been using it to mount the system each time reboot
<meaty>idk i copied it off the utm documentation
<meaty> https://docs.getutm.app/guest-support/linux/#virtfs
<peanuts>"Linux | UTM Documentation" https://docs.getutm.app/guest-support/linux/#virtfs
<meaty>freakingpenguin: looks like both ways would do the same thing
<meaty>is `share' a "socket" of some kind or w/e?
<meaty>some namespace other than /dev/
<meaty>perhaps something the spice guest agent provides?
<meaty>`mount' and `df' both call the device share
<meaty>s/device/filesystem
<freakingpenguin>meaty: This is beyond my paygrade haha. Best I can think of is suggesting https://wiki.qemu.org/Documentation/9psetup if you've not found that yet, it seems like it would be useful.
<peanuts>"Documentation/9psetup - QEMU" https://wiki.qemu.org/Documentation/9psetup
<freakingpenguin>I know "device" isn't always a /dev/foo device. It's just a label that can be understood by the specific filesystem type you're mounting.
<freakingpenguin>Which for stuff like ext4, is a /dev/foo node. Whereas samba is //server_ip/label
<apteryx>has anyone tried one of these ryzen cpu with integrated graphics? e.g. the Ryzen 9 7950X3D
<meaty>well, the solution isn't (device (file-system-label "share")) :(
<apteryx>I wonder if that could work with libre-linux
<apteryx>err, linux-libre
<meaty>look it up in debian wiki
<janneke>jpoiret: with `guix shell -D guix -- ./pre-inst-env' it works, thanks!
<civodul>Hello Guix!
<efraim>o/
<janneke>\o
<dariqq>hi, does anyone know what package provides libosmesa?
<dariqq>oh it just in mesa, nevermind
<civodul>ACTION doesn’t, and ‘guix locate -g libosmesa’ doesn’t help either
<janneke>ACTION tries rebuilding core-updates world
<janneke>building of `/gnu/store/w477jz26blcjxs545n0bldgsfd7hbcji-eigen-3.4.0.drv' timed out after 3600 seconds of silence
<fnat>Hi, does anyone have any tip on how to use bridges with static-networking-service-type? The first section of this snippet is how my network is configured at the minute. The second is a clumsy attempt at introducing a bridge 'br0' and having 'eth0' connected to it. https://paste.debian.net/1318370/
<peanuts>"debian Pastezone" https://paste.debian.net/1318370
<fnat>Spoiler: it doesn't work. :)
<fnat>When I try to deploy it with 'guix deploy', it says that my system definition is an 'unbound variable' - which makes me think there's some syntactical error that "breaks" the entire definition. The former version works fine.
<adanska>hi Guix!
<efraim>o/
<fnat>The reason I'm introducing a bridge is in the context of using libvirt, to achieve something along the lines of https://lists.gnu.org/archive/html/help-guix/2023-03/msg00207.html.
<peanuts>"static-networking-service-type: Using a static network bridge" https://lists.gnu.org/archive/html/help-guix/2023-03/msg00207.html
<attila_lendvai>fnat, you can try to use --debug or some similar switch to see a more detailed error
<efraim>janneke: I'm updating my core-updates worktree and I'll start building it on some slower architectures soon
<fnat>attila_lendvai: I'll do that now, thanks!
<fnat>Hm... '--debug=N' where N is an arbitrarily large integer, hasn't produced any additional context. :)
<fnat>I suppose I can try and run it locally, instead of using 'guix deploy'
<janneke>efraim: (y)
<efraim>got a test error on core-update for findutils-boot0 on armhf-linux, running it again
<gabber>i can ssh into another machine but i fail to `guix deploy` there: "SSH authentication failed [...]: Failed to read private key: /path/to/keyfile" - but the file is there and readable
<gabber>what am i missing?
<fnat>Ok, when run locally I get 'error: (network-link (name "br0") (type (quote bridge))): missing field initializers (arguments)'.
<fnat>That should help me get going.
<civodul>gabber: is your SSH agent running?
<gabber>civodul: i don't think so. should it?
<fnat>gabber: Wrong permissions on the '.ssh' folder perhaps?
<fnat>As in world readable?
<gabber>fnat: nope
<fnat>(Sorry, you had mentioned that you can SSH normally already.)
<gabber>np
<gabber>(:
<civodul>gabber: yes, it should: ‘guix deploy’ will talk to it (via Guile-SSH) to establish the connection
<gabber>thanks - that wasn't it, though
<jpoiret>civodul: should `./pre-inst-env` capture run-time dependencies of guix through configure?
<jpoiret>that way you don't need to `guix shell -D guix --` around every pre-inst-env invocation
<jpoiret>(and that way we can test guix with newer dependencies without having to guix pull)
<gabber>weird. strace clearly shows my invocation being able to read() my keyfile - and i seem unable to locate where this exact error message actually emerges
<dariqq>trying to package something that has (completely optional) dependencies on some libraries. Should that application dlopen or dynamically link them?
<civodul>jpoiret: it’s hard to do write, and perhaps we’d be stretching ./pre-inst-env beyond its intended use case
<Altadil>Hi, is debbugs supposed to send us a notification when someone sends a mail to a thread we opened? I assumed so, but I only now noticed an answer I got several months ago. ^^
<Altadil>So now I’m wondering if it’s a bug or just me misunderstanding.
<gabber>Altadil: no, people responding should CC you IIRC
<Altadil>gabber: ok, thank you!
<gabber>is it possible `guix deploy` does NOT work with SSH keys that need a password to be entered?
<gabber>yes, i think that's it
<ayatsfer>hello guix!
<ayatsfer>I have a project of mine which I packaged by using a local source, and having the channel in the repo: https://github.com/viperML/hover-rs/blob/master/hover-rs.scm
<peanuts>"hover-rs/hover-rs.scm at master ? viperML/hover-rs ? GitHub" https://github.com/viperML/hover-rs/blob/master/hover-rs.scm
<ayatsfer>this builds fine when having a local clone of the repo (guix build -L . hover-rs) but fails to build when using the repo as a channel
<jpoiret>ayatsfer: it's probably the local-source definition that isn't the best
<jpoiret>you should fetch from the upstream repo
<ayatsfer>upstream and the channel are the same repo
<ayatsfer>I think this is not very common, but I wanted to keep both in the same place 🤔
<jpoiret>you can but you should not rely on local-source definition to build it methinks
<jpoiret>huh, seems I was mistaken, you can see https://guix.gnu.org/en/blog/2023/from-development-environments-to-continuous-integrationthe-ultimate-guide-to-software-development-with-guix/ for a guide
<jpoiret>ayatsfer ^
<ayatsfer>yes, I based some of the package on the article ^^
<dariqq>is there anything else i need to setup for emacs-guix to work? when I try to run to search for pacakges get a wrong-type argument: bufferp, nil.
<dariqq>aah my geiser was not installed via guix.
<cancername>Hi! I'm currently not able to get into the GRUB of my UEFI-installed Guix. Secure Boot is disabled, and I didn't configure Secure Boot for Guix when installing it, but my other system (Debian) does boot. I managed to boot Guix through Super Grub Disk after enabling MBR boot, but when trying to "guix system reconfigure", the error "i386-pc/modinfo.sh doesn't exist. Please specify --target or --directory." is emitted. It would be nice if
<cancername>anyone here could offer some guidance and pointers to what to try.
<panosalevro>cancername: I had to use a USB with GRUB on it for months to find the Guix GRUB because of this
<cancername>panosalevro: How did you resolve it?
<panosalevro>cancername: I flashed Dasharo coreboot on my motherboard and I was able to specify GRUB's file there
<cancername>not quite an option for me :P but thank you
<panosalevro>I know, worst answer possible. I'm not sure what the issue is though
<cancername>I should probably just use MBR for the time being.
<cancername>The thing is, everything worked fine for a while, but at some point, it just... didn't.
<jpoiret>cancername: did you use grub-efi-bootloader in your system configuration?
<cancername>jpoiret: yep
<jpoiret>any non-default stuff in its config?
<jpoiret>are you on x86_64?
<cancername>I'm now trying grub-efi-netboot-removable-bootloader mentioned in <https://issues.guix.gnu.org/50592>
<cancername>jpoiret: yes
<peanuts>"Can't guix system init with grub-efi-bootloader from system that boots using grub-bootloader" https://issues.guix.gnu.org/50592
<cancername>hold on, let me...
<jpoiret>ah, you're in legacy boot mode? you don't have /sys/firmware/efi/efivars/ on your system?
<jpoiret>if so grub won't install in efi mode
<cancername>yes, jpoiret, because I had to boot it in BIOS mode from Super Grub Disk since it wouldn't even get to GRUB in UEFI mode
<cancername>jpoiret: my config: `(bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (targets (list "/boot/efi")) (keyboard-layout keyboard-layout)))'
<cancername>after working around the refusal to reconfigure with grub-efi-netboot-removable-bootloader, I'm now rebooting and trying again
<cancername>that worked. somehow. how curious.
<cancername>jpoiret: "guix system reconfigure" isn't transactional, is it? I believe I might have shot the bootloader somehow by interrupting "guix system reconfigure".
<jpoiret>it's not transactional during the bootloader installation
<jpoiret>because it's just grub-install
<cancername>yeah, I guess it would be hard to do that
<futurile>Reminder: David Wilson will be giving a talk about Guix tomorrow (Wednesday) - details here - https://libreplanet.org/wiki/Group:Guix/PatchReviewSessions2024
<peanuts>"Group:Guix/PatchReviewSessions2024 - LibrePlanet" https://libreplanet.org/wiki/Group:Guix/PatchReviewSessions2024
<ieure>bbur
<ieure>uh
<ieure>Disregard.
<ieure>Is there a team I should be cc'ing for security-related patches? I submitted a patch last week, which fixes a bunch of CVEs in my Librewolf package, and put [security fixes] in the subject line, but nobody has looked at it.
<ieure> https://issues.guix.gnu.org/71121
<peanuts>"[PATCH 0/3] Update LibreWolf to 126.0-1 [security fixes]" https://issues.guix.gnu.org/71121
<civodul>ieure: you can Cc: guix-security@gnu.org, see https://guix.gnu.org/en/security/
<civodul>cbaines, rekado: i pushed the optimized query to Cuirass and i’m going to test it on guix.bordeaux.inria.fr first
<civodul>if everything goes well, i’ll deploy to ci.guix in a couple of days
<brendn>I want to use images from a remote git repo for my desktop background. Would writing a package to install the images be appropriate for this? Or would some sort of service be better suited?
<lispmacs[work]>hi, I'm trying, for testing purposes, to rebuild emacs-next with a few patches I got from upstream. I copied the source files over from `guix build -S', applied the patches, ran `git archive', and finally ran `guix build emacs-next --with-source=./emacs-next.tar.gz. The build process starts but dies with
<lispmacs[work]>error: in phase 'patch-compilation-driver': uncaught exception:
<lispmacs[work]>system-error "mkstemp" "~A" ("No such file or directory") (2)
<lispmacs[work]>when it tries to run
<lispmacs[work]>(mkstemp! "lisp/emacs-lisp/comp.el.XXXXXX" #<undefined>)
<lispmacs[work]>when I use --keep-failed I can see that directory and that source file are there
<ieure>lispmacs[work], I've seen that when one of the directories in the path doesn't exist, ex. "lisp/" or "lisp/emacs-lisp/"
<ieure>Maybe the patch is getting applied before the unpack phase?
<ieure>Hm, that seems unlikely.
<lispmacs[work]>I see the unpack phase running first, without error
<ieure>lispmacs[work], The comp.el changes are from patches in the original package definition, yeah?
<lispmacs[work]>ieure: I just double checked, and none of my patches effect that file
<lispmacs[work]>or, shouldn't, anyway
<lispmacs[work]>mostly some patches to the files is lisp/eshell, but also a patch to doc/misc/eshell.texi and .gitignore
<ieure>lispmacs[work], Yeah, something about your changes broke the original package definition. I'd be approaching this by making a new package that inherits from the original and adds the patches -- would that work for your case?
<ieure>Basically, I'm curious why you're patching the source & repacking a tarball vs. applying the patches during the build.
<lispmacs[work]>ieure: Just trying to go route of least resistance. Upstream had some patches they wanted me to test for a bug I reported for emacs-29.3, but the patches only work on a somewhat recent master commit. In the past, I was able to patch emacs-29.3 easily using the --with-source trick. Thought I could do the same with emacs-next
<ieure>Gotcha.
<ieure>I'm not sure why it's broken :(
<ieure>I've had some good success with adding stuff to the package definition to print out state during the build process, or make it fail right before some steps apply, which let me keep the directory and inspect it myself.
<lispmacs[work]>hmm, okay, not sure how deep I want to dive into this, since I wasn't really aiming to trouble shout emacs-next package. I suppose I could just try a normal configure and make, after running guix environment
<lispmacs[work]>trying that now
<lispmacs[work]>so far so good
<lispmacs[work]>my computer hasn't exploded yet, anyway
<JetpackJackson>hello, i use guix profiles for projects, so I'll have a folder for the project and then the .guix-profile folder(s) in that folder. which works until i share that folder to my other computer and create the profile there, because the hash is different, so the link is broken on the other computer until i create a profile again... is there a way to make my profile creation generate the same hash somehow on both computers? or am i going about
<JetpackJackson>this wrong having the .guix-profile folder in the project folder (like one would do with .direnv)
<sughosha>Hi! How to use apparmor in Guix system? It is packaged but I don't see any service written for it.
<lilyp>did we get a huge merge recently?
<ngz>Hello Guix!
<fnat>Hi, I get this error when using '(oci-container-configuration (image "repo/image") ...)': 'In procedure struct-vtable: Wrong type argument in position 1 (expecting struct): "repo/image"'
<fnat>Any idea what that could be about?
<fnat>('repo' and 'image' are placeholders, I've been using an actual image name in my code.)
<ieure>lilyp, I don't see one in the Git history, but anecdotally, I noticed substitutes were lagging quite a bit yesterday, so something may have triggered a bunch of rebuilds.
<futurile>fnat: I guess you're giving it some string "repo/image" right?, it's expecting another type - possibly there's another function that you're supposed to call to create a record or something? No example code I guess?
<lilyp>I was actually asking about the 70k commits I had to authenticate
<ieure>Oof!
<ieure>lilyp, Maybe this? https://git.savannah.gnu.org/cgit/guix.git/commit/?id=73b3f941d7d911a1b2bb2bf77d37cb3a12ed4291
<peanuts>"guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/commit/?id=73b3f941d7d911a1b2bb2bf77d37cb3a12ed4291
<ieure>Just a guess, I'm not sure how this stuff is set up, really.
<lilyp>oh, it's hooked into git now, makes sense
<fnat>futurile: Yeah, I've been using a string "repo/image" - with the actual repo and image name though. That part should be fine, and I've seen it used elsewhere - e.g. the latest System Crafters' newsletter https://systemcrafters.net/newsletter/sc-news-010.
<peanuts>"Issue 010 - System Crafters" https://systemcrafters.net/newsletter/sc-news-010
<fnat>I'd tend to think there's something else that I'm doing wrong.
<dariqq>fnat: do you have the outer list , i.e (list (oci-container-configuration ...)) ?
<fnat>dariqq: Yes, I do, as in '(service oci-container-service-type (list (oci-container-configuration ...)))', but thanks for mentioning that.
<fnat>The "prom/prometheus" that's in the docs is giving me the same error, which reinforces my idea that my problem is somewhere else in my system definition.
<fnat>*The "prom/prometheus" example
<fnat>Here's a minimum example of my oci-container-service-type issue: https://paste.debian.net/1318424/
<peanuts>"debian Pastezone" https://paste.debian.net/1318424
<fnat>Building it with 'guix system build file.scm' gives me the error above re the wrong type argument.