IRC channel logs
2026-05-28.log
back to list of logs
<adanska>learned the hard way that you shouldnt/cant extend the same service twice in a service-type :| <adanska>had a service that extended shepherd-root-service-type twice and was wracking my brain as to why my shepherd services were getting passed twice to the root! <adanska>man that took like 3 days of debugging... <adanska>untrusem, oh, thats a thing? Nice! Will do :) <jlicht>that should ideally give an error, no? <jlicht>as in, you'd rarely want that to happen in the first place <adanska>jlicht, it gave a "provisioned multiple times" error but it was unclear what was causing the shepherd service to be provisioned multiple times <trev>please, substitutes, build python for meee 🙏 <trev>untrusem: is the zulip public? <ennoausberlin>Hello Guix. I have trouble to utilize guix home on a foreign distro (Ubuntu) due to the content of the generated .profile in my home folder. It might be related to locales but graphical login just freezes <ennoausberlin>If I delete the .profile file I have back a working system, but the next time I run guix home reconfigure it is back <charlesroelli>You could bisect your home configuration to find the package causing the issue, and then install that package into a separate guix profile so that it doesn't mess with your home profile <ennoausberlin>charlesroelli: This is probably different, because the .profile just sets some env variables and paths, which should not interact besides maybe the locales. Your .profile probably looks the same as mine when using guix home <charlesroelli>ennoausberlin: there's an easy way to check, at least if you're using gnome. After running guix home reconfigure, launch `dbus-run-session -- gnome-shell --nested' from a new shell with the affected profile loaded. If it crashes instead of popping up gnome, it's probably the same issue. <ennoausberlin>charlesroelli: I will give it a try. A switch to i3wm is probably worth considering on this machine as well. I rarely need full desktop, but for my colleagues it is not that easy :) Thank you for the hint <ArneBab>when I create a docker container with guix pack, is it possible to reduce the size (e.g. by removing all derivations that are only needed for building but not for running a program)? <jA_cOp>ArneBab: I thought it already did that, but might be wrong <ArneBab>I only estimated that from the size of the containers (they are huge compared to the 50 MiB debian docker images). <ArneBab>I may be wrong … I just checked again and guix pack --format=docker fd -RR (which needs rust to build) is just 29 MiB <ArneBab>… sorry for the noise, it seems to already be minimized and I could try to suggest using guix docker containers for deployment without undue size increase over debian. <cdegroot>Does anyone know why Guix is not bundling virtiofsd with libvirt? I haven't looked in how "regular" libvirt packages are put together, just noticed its absence. I had to get it from Nix, the horror! ;-) <ArneBab>jA_cOp: I think I found why I thought wrong: when I bundle a chickadee game, the bundle includes llvm and mesa, because these are needed for SDL. This is 443M: guix pack --format=docker guile-chickadee -RR <jA_cOp>ArneBab: I thought it only packed dependencies based on `inputs` and would exclude `native-inputs`, so maybe check if the game package separates these appropriately. but again, I could be wrong, been a while since I used guix-pack. Am not at my workstation atm <Icy-Thought>besides a makefile, what is a good way to maintain a config where guix determines system.scm based on hostname? something like "{hostname}/system.scm" -> guix system reconfigure ??? <ieure>Icy-Thought, I have system/$(hostname).scm, but yes. <Icy-Thought>I was planning on calling a function or something that finds system.scm based on hostname through guile, but people doing the makefile route confuses me <ieure>Icy-Thought, That's not bootstrappable, the config sets the hostname you need to figure out what config to use. <ieure>My system configs are minimal, just hostname and volume-dependent stuff (filesystem UUIDs etc). Everything else gets added in through transformation functions. So the actual system configs are very minimal, I can compose features into the configuration, and they're 100% consistent machine to machine. <Icy-Thought>I was planning on having a `{hostname}/{config,system.scm <Icy-Thought>cannot edit here lol, but two scm files where one retains hardware info and the other enables modules <ieure>Icy-Thought, The system configs are like: (define xf (compose profiles/+exwm profiles/+intel)) (define %os (operating-system)) (xf %os) <ieure>Compose together all the profiles you want, then run the minimal operating-system through the stack of them, and the desired end result pops out the end. <Icy-Thought>Oh, now I get what you mean by that. That is what I was planning on doing, but I guess we used two different names for the same idea <Icy-Thought>Now that you have shared your config, it makes more sense! One step closer to migration <ieure>untrusem, I kicked it off last night, but didn't have time to try running it. <Saorsa>Is Guix having networking issues for anyone else here? <argp>Saorsa: Substitute servers are working for me <Saorsa>Both my install and the installation media used seem to be having trouble it seems. <ieure>Saorsa, What kind of issues are you having? <Saorsa>On a virtual machine I had, didn't seem like networkmanager was working properly to provide a connection. <Saorsa>Tried using the installation media from an image I had downloaded and was having trouble on that as well which seemed to imply it may have been an issue with upstream. <argp>I have this annoying warning from my configuration that I'm trying to get rid of but can't. I have home/home-base.scm defined with some variables and home/personal.scm and home/work.scm defined that use the base variables. But when I use guix home reconfigure I get this unbound variable did you forget importing message. <untrusem>maybe its a path issue from where you are running the home reconfigure <untrusem>can you send the directory structure, argp <argp>untrusem: Interestingly it still works, it just prints this "error" everytime. I do have -L . in the base of the repository so I think its in the load path. <untrusem>argp: yeah that's kind of okay because I also get warnings about these so don't bear too much attention to that but yeah it could be fixed <argp>untrusem: It is certainly annoying, specially because I want to use some of my custom package definitions with guix shell. But then every guix command will print those lines. <Saorsa>Rebooted, turned out the networking issue was with the host. <Saorsa>Just chasing down an unbound variable now somewhere. <ieure>argp, I agree with that. Guile error messages are so frustrating. :( <argp>ieure: Yes, but I can understand because its such a dynamic language <untrusem>can anyone test if `sudo wireshark` works for them or not <ieure>untrusem, `guix shell wireshark -- sudo wireshark' launches Wireshark for me. <ieure>untrusem, commit: e7ff26ead739c4fa56c2078d570cbb95001cfd44 <ieure>untrusem, Your error implies that you're using doas, not sudo. <ieure>Well. It pretty clearly states it. <ieure>Why does `guix shell wireshark' download 877mb of debug symbols :( <untrusem>I tried changing things with $QT_QPA_PLATFORM <untrusem>it launches for my user profiles, for root it gives this error <ieure>untrusem, `guix shell wireshark -- sudo wireshark' also works for me in a Wayland GNOME session, on a machine I pulled/reconfigured last night. <ieure>Also works under X (EXWM session) on the same box. <ieure>untrusem, I saw it griping about locales, does it work if you set LANG to en_US.utf8? <ieure>I get no terminal output at all when I run it, it just launches and runs. <untrusem>I tried specify `LANG=en_US.utf8 doas wireshark` same error <untrusem>as nix one gives the same error as running with root <untrusem>and I don't think lang has to do with anything <untrusem>its QT_QPA_PLATFORM, I wonder why it doesn't on root <Saorsa>Got a quick question for anyone here, would the following commands `guix pull && guix describe -f channels > /etc/channels.scm && guix time-machine -C /etc/channels.scm -- system -L /etc/system reconfigure /etc/system/config/configuration.scm` provide reconfiguration behavior similar to updating the repository definitions with flake pull on Nix <Saorsa>then building and switching to the next generation? <ieure>I have no idea how Nix stuff works, but that series of commands does not make sense. <ieure>`guix pull' updates the profile, so the `guix time-machine' command will take a long time to do the thing `guix pull' just did for you. It's a slower way of running `guix pull && sudo guix system -L /etc/system reconfigure /etc/system/config/configuration.scm' <ieure>Also, the way you're using /etc/system is inadvisable, that stuff should be in a channel or a Git repo under $HOME. <Saorsa>I see, thought something might've been amiss there. Reason I asked is because I wasn't sure what the difference was between reconfigure and guix pull. I suppose guix pull updates and reconfigure builds a new generation with he current state of the configuration. <Saorsa>Ah, how come it isn't recommended? <ieure>Saorsa, It smells of state. Almost everything under /etc should be put there based on your declarative system configuration. <Saorsa>Ah, I see. I usually have the directory where my configuration resides in the home folder and symlinked to /etc for convenience on Nix. <ieure>Zero reason to do it that way on Guix. <Saorsa>I'll probably have to do that at some point, just haven't been able to login to a graphical session as my VM is pretty unstable. <ieure>Saorsa, `guix pull' updates the `guix' binary according to your channel configuration. Guix doesn't have a thing like nixpkgs, all the package definitions are built into the binary itself, so when `guix pull' updates the binary, it also makes newer packages availble. <ieure>Running `guix system reconfigure' creates a new system generation. If you do that with a newer `guix' than your last reconfigure, it will download whatever updated packages are needed. <Saorsa>Ah, excellent. Cheers for clarifying. Nix does have something similar through using Nix Flakes which is the equivalent of your Guix channels and guix pull. <ieure>I'm not sure that's correct. Again, I know next to nothing about Nix, but I've seen plenty of Nix folks roll in here asking for an equivalent of flakes, and the answer has pretty much always been "there isn't one." <orahcio>Hi, may I push a PR to upgrade a rust package, with WIP prefix? I have a little feeling about the dependencies will finish soon, but I don't want this work just into one computer <orahcio>Thanks ieure, I worked in a PR about a Go messaging tui, and the dependencies had a finite number, Rust packages has a infinite number of dependencies