<Zambyte>Hi, does anyone use pipewire for audio instead of pulseaudio on a Guix system? I have pipewire and wireplumber installed, but it seems like everything wants to use pulse instead, even going as far as depending on and launching pipewire
<jab>Zambyte: I think there are some people manually starting pipewire.
<podiki[m]>but my system config has basically no packages except for things like udev rules etc
<xigua>okay so I will put the rest in my home config, just making sure there weren't problems with that. thx! :)
<lechner>Wow, 'guix deploy' in action is the coolest thing I have seen in ten years. Well done!
<johnabs[m]>Hi all, I've got another question (I think it'll be easy this time). I installed Julia 1.6.7 from guix and tried to use the typical "] add <pkg-name>" and this fails with a very strange curl error. I understand I can use guix to manage my Julia packages, but I'm not interested in that for the moment, as I'm in a more research focused context. Any ideas on getting Pkg.add working again?
<johnabs[m]>Oh, the error I'm getting is this: curl_multi_socket_action: 8
<lilyp>xigua if you use gdm I think you need the wms in your system config to allow switching between them
<lilyp>if you don't need that, you can put them in your guix home, though
<xigua>lilyp: I use sddm at the moment, and earlier this year I tested a different wm just by adding it to home and it showed up, but I'll find out and update here if it ends up being important
***TopExpert is now known as kingmaker
<Schmoho>Hey, I am experiencing an issue which fundamentally breaks guix as a secondary package manager for me - the isolation is broken and applications installed via my primary package manager link against a libpthread in the gnu store.
<Schmoho>I don't really know how this happened and what I can do about it. I'd be super glad if someone can help me with it
<Schmoho>This is the output from `LD_DEBUG=libs chromium`
<StefanCristian>two[m]: instruct me a bit on something. if I install guix package on a different distro, and just use guix system vm config.scm, it should install a chroot or a vm?
<johnabs[m]>From what I've read, a vm is apparently easier, but I am NOT an expert, so take that with a pound of salt
<lechner>StefanCristian: I think you do neither. My sense is that the Guix package manager transparently overlays Guix packages over whatever your operating system provides. Personally, I think it's a stop gap solution if you do not have admin rights, however, and switched to Guix System on all of my equipment
<linj>How to call a function in repl if its parameter is os?
<lechner>StefanCristian: i don't think it's bad at all. you can also do the VM thing if you want, but it gives you much less flexibility
<StefanCristian>lechner: it's bad for what I intend to do, and from my intentions one of them is not to dedicate a VM for it, but rather would be much easier to have the system in chroot and just contribute from there. usually any system that can run in a chroot is easily adapted to anything else
<lechner>StefanCristian: one of Guix main points is to untether users from your distro's package management. which os are you on?
<StefanCristian>lechner, doesn't really matter. all of the OSes points are to untether other people from their main OSes - and that's completely alright. but I generally prefer easily chrootable systems, instead of booting VMs
<StefanCristian>I think that back in the days it was easier, when we didn't have the possibility of starting VMs that easy.
<StefanCristian>We were just downloading a filesystem, mount whatever is necessary, and just chroot into it, and just jail applications
<lechner>StefanCristian: Guix may be far more powerful that you can imagine
<StefanCristian>I know it is, but it would be easier if I would just download a tar.xz. but not a biggie, though, most probably I'll end up unpacking the ISO and searching for a small filesystem to make it work
<nckhexen>Don't all distributions install into a ‘chroot’ by this definition of ‘chroot’ (directory)? Anyway, that's all ‘guix system init FILE /DIRECTORY’ does. That /DIRECTORY is usually a mounted target block device doesn't really matter. It doesn't have to be.
<pkill9>Schmoho: my immediate guess is maybe you installed development tools with guix that set an environment variable that adds guix's libraries as a target to compile against
<nckhexen>sneek: later tell ulfvonbelow: Without chea^Wchecking… I'm going to go with 4, and nice try, trickster. ☺
<andi-[m]>Do I have to add some specific package to my system configuration / some service in order for hardware accelerated video playback to work with a AMD card that is otherwise fully supported by mesa?
<nckhexen>andi-[m]: What does ‘fully supported’ mean?
<andi-[m]>Meaning I usually don't need any 3rd party software pieces.
<apteryx>rekado_: instead of symlinks in containers, it seems we can achieve the same with bind mounts; would that be good enough? it's simpler to implement
<apteryx>(since bind mounts are already used for --expose or --share mappings)
<lechner>Hi, for 'guix deploy' I use Guile 'load' to tie the operating-system (the /etc/config.scm from the stand-alone system) into the machine.scm used by 'deploy'. On the target system's console, I see "WARNING: Use of 'load' in declarative module. Add #:declarative #f to your define-module invocation." There is no such invocation anywhere. What should I do, please?
<nckhexen>I'd say it's more to keep things brainable for humans, for the same reason well-written procedures are short and simple. Like Unix, a patch should do one thing. For that reason it does help one keep track of things in complex rebases, yes.
<nckhexen>(But unlike Unix, patches should do that one thing well!)
<nckhexen>I don't really get the joke, but that probably makes me lucky.
<lechner>Windoze always seemed headless to me, anyways (for another joke)
<johnabs[m]>Ok, so I tried packaging julia myself, but the build failed for some reason. Now I've downloaded the binary to try to run it, but I get an error "file not found" from bash, even though I'm in the appropriate directory that would normally work with a shell script. Any reason this would be happening? According to ldd, all the deps are present.
<morganw>"Yeah, MS officially recommends all future Win servers be headless... after 40 years." ... It is the default on the installer, but it doesn't mean software actually works with it. Even some of the built-in server roles don't work with it.
<nckhexen>I have now inferred that Windows servers aren't headless. I don't know what to do with that information. It sure explains… things.
<vivien>Hello, I’m writing a guile program and I’d like to run tests for the log module. The log module uses date->string at some point, so I make sure to set LC_ALL so that the date locale format is consistent with my expectations, but guile does not get the timezone right. Prior to my tests, I have: (setenv "TZ" "CET") (tzset) but I still get the dates with no timezones (Tue Oct 25 19:19:07Z 2022 [not the current date]). I specul
<vivien>ate that no timezone is available in the build environment of my package, so guile can’t do anything. Am I correct? Or is there something more to do with guile?
<vivien>nckhexen, guix build now says: environment variable `XDG_DATA_DIRS' set to … :/gnu/store/xxx-tzdata-2022a/share:… but still not the expected timezone. I have created a custom phase that setenvs "TZ" to "CET" but still nothing.
<apteryx>rekado_: it works! I had simply reversed the spec
<apteryx>ah, and needed to provide "." as the target of evaluate-populate-directive, rather than profile
<vivien>Mmh the r package has setenv TZ but also setenv TZDIR
<rekado_>so we create new variants of all those packages — but instead of building them from source we just *copy* all files and replace any textual reference to “/gnu/store/…oh-no” with “/gnu/store/…oh-yeah”.
<rekado_>we do this for all packages using “oh-no” and all packages using those packages, recursively
<unmatched-paren>(assoc-ref %build-inputs "source") can be replaced with #$(package-source this-package), i think
<rekado_>that’s what a graft derivation is: it just copies a directory /gnu/store/1234foo and produces a new directory /gnu/store/2345foo where all references to “oh-no” have been replaced with “oh-yeah”.
<vivien>rekado_, by textual reference, you mean in text files, or also in binaries (executables and libraries), or in any file?
<rekado_>vivien: no, you need to change the package definition of “oh-no” to add a “replacement” field that points to the new package.
<rekado_>vivien: in any file; we replace just the string “/gnu/store/…”
<vivien>So if the strings are not of the same size it could mess up binary file formats where the input is a string length followed by string bytes, right?