<rekado>for the time being we could also just revert my commits <rekado>it’s not like anyone uses nhc98 or ghc-4 <civodul>i lack imagination right now, but we can think through it later on :-) <rekado>well, building the GCCs backwards is tricky and it takes a lot of time. <rekado>and it’s not just the GCCs but the work is probably interleaved with binutils and glibc. <rekado>different topic: just found out that tlpdb defines “name collection-…” packages. These are official meta packages. We should add those to Guix to simplify texlive installation. <rekado>hunting for individual packages based on error messages is very tedious <tanner40>How should I invoke my binary from the service? all of the examples I've found have used `file-append` with a "lowerable object" such as inetutils but I can't find a list of these objects that might apply. Could I just invoke my binary from `/run/current-user/...` ? <AwesomeAdam54321>tanner40: Yes, it should work. the file-append is there to find inetutils in the store, and then find libexec/syslogd from there <tanner40>so I could substitute `inetutils` with any name that will resolve to a package in the store? <rekado>looking at the strace of the monolithic texlive’s pdflatex and the variant from the modular texlive I see that the former touches much fewer files <stikonas>rekado: would it not be easier to patch ghc for gcc4? <ryanprior[m]>I'm having trouble with direnv installed via Guix on a foreign distro (my elementary OS laptop): when I try to run direnv it fails with an error like libc.so.6 - version not found <ryanprior[m]>In the Guix container, direnv works like normal, but outside the container I get the error :( <ryanprior[m]>Any idea what I can should configure or change in order to get my direnv working without needing a container? <paladhammika>hey guix, the new picom update consumes all of my ram and nearly all of my CPU, especially when starting to open windows. anyone else experiencing this? <podiki[m]>mostly was on a latest git checkout version (for a long time), but now on the new v9 release and haven't noticed <podiki[m]>might depend on what backend or settings you use? <paladhammika>the only settings that changed were the rounded corners. i'll mess around with the config file. <podiki[m]>I've been on the latest commit for so long I don't remember what changed when :) <podiki[m]>but there are new backends and ones that might be deprecated? not sure, maybe run through your config to see any new choices ***califax- is now known as califax
***aya is now known as gyara
<sughosha>Hi everyone, could someone let me know how to use PipeWire instead of PulseAudio in Guix? I would like to replace it since it works well in Wayland. I also want to know how to use Pipewire-Jack in Guix (I used it with pipewire-jack Arch package, wamt to know how in Guix). Thanks. <iyzsong>sughosha: basiclly you run 'pipewire' and 'pipewire-pulse' from window manager, then in the user's XDG_RUNTIME_DIR, pipewire will listen to the pulse socket. pulseaudio based applications will use pipewire now. <sughosha>iyzsong Thanks for replying. So I have to enter the command manually every time. I will try it and see if it works. <iyzsong>what's your window manager? you can add the commands in its configure file (eg: ~/.config/sway/config) <iyzsong>and first you need to get rid of pulseaudio.. i don't tried pipewire-jack though. <sughosha>Yes, PulseAudio is by default with %desktop-services. I will try removing it. <sughosha>Thanks! I'll try and probably have to restart my PC (I don't yet know how to deal with services in Guix yet). <iyzsong>well, you can try manual first, kill pulseaudio, then start pipewire and pipewire-pulse, and do some test <iyzsong>maybe 'sudo herd stop pulseaudio'? i'm not sure how it was started.. <sughosha>`herd: service 'pulseaudio' could not be found` <iyzsong>see 'ps -ef | grep pulseaudio', what user it belong to? <sughosha>It belongs to my profile only (not root) <iyzsong>um, maybe it's somehow deeply integrated with gnome.. <sughosha>I killed pulseaudio with the above command, then started pipewire, and then went to sound test in Gnome's settings. It seems Gnome is again starting pulseaudio automatically, instead of using pipewire. <iyzsong>when 'pipewire-pluse' is already listen the pulse socket, pulseaudio won't be auto started again.. <sughosha>Hm you're right. But now the other problem is that Gnome lists no output device :( <sughosha>I think I have to relogin to gnome by doing this in a different TTY. <iyzsong>maybe our pipewire have some bugs, last time i checked, pipewire won't list my audio devices too... <sughosha>Ah no luck, still Gnome shows no output device :( <iyzsong>um, maybe our pipewire have some bugs, last time i checked, pipewire won't list my audio devices too :( <sughosha>Probably it requires running a daemon, which might be missing in Guix.. <gnoo>jpoiret: i use dhcp-client-service-type since only ethernet is supported <whound>Or can anyone share pipewire configure ? <kitzman>hm. did anyone here try to run shepherd on a non-guix system, and it not being pid 1? <kitzman>it seems to have the basic functionality, but can't seem to be able to get my GUILE_LOAD_PATH right. I added the dir to the ~/.config/guix/..., /usr/share/guile/..., but it's still missing some dependencies (i.e libgit2). which I could install manually, but I think it would be more appropriate to invoke a guix shell to have all the deps. <lilyp>You can absolutely run shepherd as not PID 1 <lilyp>lemme check something real quick <lilyp>with both guile and shepherd in a pure shell, it launches my things fine <lilyp>well "fine", it fails to launch them because paths are not set and those services are already launched, but you get the gis <lilyp>if you're installing shepherd sans guix on a foreign distro, things might be different <kitzman>yeah. i'm having an attempt now. last time i had to set GUILE_LOAD_PATH, but it seems better if i use a pure shell. <kitzman>basically i'm using guix + stow as anything user-related. So then I can move my system anywhere and not care about configurations. ^^ <lilyp>`guix install guile` should take care of that if you haven't already <kitzman>yeah but there are a bunch of dependencies, which I seem to be able to fix by using the shell <kitzman>(i.e I don't see why I should have libgit2 in my normal profile, but in a temporary one seems okay) <lilyp>I don't really see why libgit2 is causing issues here tbh <kitzman>i think it's a dependency of one of the services with which I am testing (mpd) <lilyp>in that case, you need to set the right environment in the service, but shepherd itself should launch fine <lilyp>try a one-shot hello-world service ***whound is now known as dust__
***dust__ is now known as dust_
<dust_>Does anyone have config for setting up pipewire ? <futurile>Is it possible to submit a patch to the CI system somehow to test if something builds? <cbaines>futurile, that kind of thing is being worked on, but not currently working <jpoiret>dust_: no, this is a problem for now <jpoiret>rde has it but it's not upstream guix-flavored <jpoiret>the issue is that it should be a user service but we don't do those well yet <jpoiret>I personally launch it manually in terminals for screensharing and other shenanigans <jpoiret>i don't know if the rde version supports audio output though, wondering if it needs its own udev rules or if the seat management takes care of it <tschilptschilp23>Does anyone here use the gnome-music app? I like it's appearance, but it seems to eat a whole one of my 4 cpus! <dcunit3d>does anyone ever have problems with fonts not rendering in QT WebBrowser apps like Anki and QuteBrowser? <jpoiret>seems like the seat management takes proper care of the ACL on the sound devices, so maybe it would work properly <futurile>cbaines: I have an update for a package (fish shell) and it works if I manually do the compile, but when I run it under the Guix daemon one of tests fails. I *think* it's caused by my set-up, but I can't figure it out. Any suggestion on what I should do? I guess send it to the patch list, with a comment asking someone else to try building it? <asdf-uiop>futurile: does the build log say anything that might be useful? <asdf-uiop>You could also post the patch to a paste bin, link to it here and I'll try to build it on my system <cbaines>futurile, it's possible that it's something to do with your setup (filesystem, Linux version) but often it's more about the isolated build environment <futurile>I can just remove that particular test file and then it all builds under the normal Guix process. But that doesn't seem like the best thing to do, as I don't understand why it's failing. <rekado_>stikonas: for me it’s not easier to patch ghc-4 to use a more modern dialect of C. <rekado_>I tried to understand and patch, but even with careful patching I only ended up with a segfaulting or subtly misbehaving STGHugs. <rekado_>patching might not be a problem for people who are more familiar with (old) C idioms. <rekado_>I’m very selective about what I learn. Old C idioms doesn’t make the cut. <stikonas>yeah, it's hard to convince somebody to learn old C idioms. Either there is already who knows them and can help or not... <stikonas>and if some old idioms do compile under gcc 4 but produce wrong results then it would be hard to find them <rekado_>I think ultimately it’s the right thing to upgrade the bootstrap so that it doesn’t depend on old software. <rekado_>but I consider that a luxury at this point. Even with a fully featured nhc98 from 2010 (with generated C files, not fully bootstrapped) we haven’t been able to build GHC 4. <rekado_>once we found a viable path we can look into how to make it shorter and prettier. <jpoiret>shouldn't strings that lead to a store path also be considered file-likes? <jpoiret>since they can be ungexp'd to store paths, so accord to the file-like? documentation it should also return #t <rekado_>Gnome Weather says: “Berlin, Germany, 41°C, feels like 35°” <civodul>rekado_: woow, i knew global warming had more impact in the poles, but... Berlin? <ArneBab>(arg, sorry, wrong channel — should have gone to #guile) <paladhammika>regarding my troubles with picom, i think the rounded corners are the culprit. that was the only change in the last update and when i could saw the ram consumption climbing, switching off the rounded corners stopped the issue immediately. <alMalsamo>The guix website really needs a way to search for package names like other distros instead of clicking thru multiple HTML pages of a given letter <paladhammika>There is one but not directly on the site for whatever reason <rekado_>civodul: there are also many Poles in Berlin. <lilyp>Is it still 35° in Berlin? On my machine, it says 5... <rekado_>on my machine it’s 85°, but that’s just because I haven’t installed the heat sink yet <rekado_>Gnome weather was set to Fahrenheit… (Why?) <rekado_>also: it doesn’t show the unit. It’s just “41°”. <lilyp>it was celcius on my machine, so it ought to respect LC_MEASURES? <civodul>rekado_: when building nhc98 with the current toolchain, you would hit "PreludeList.init: empty list" from runhs, right? <civodul>(sorry if you already explained that elsewhere) <alMalsamo>paladhammika: THanks for the link, does that page have Javascript or something that is making my searches automatically update as I modify the string in the search box? <alMalsamo>Also why isn't this site on the official package browser? <jpoiret>damn, Guile 3.0.8 will lead to more recompilations it looks like <catonano>rekado_: I have installed ot from Flathub. In the hamburger menu there's an item for choosng the unit <jpoiret>won't cross-module inlining lead to more "ABI change"-related errors? <civodul>yes, but that's why it's turned off in Guix for now <jpoiret>will it be turned on for build-self.scm? <civodul>(done in commit 97a6b4581ae68bfee3c907eb4c5af686052ea45f) <paladhammika>alMalsamo: javascript? not sure. it searches as you type, feature not a bug. <paladhammika>alMalsamo: you'd have to ask one of the devs why it isn't on the site. forgot how I found it, might have been through reddit. <jpoiret>sorry, I meant for `compiled-modules` in guix/self.scm <civodul>it uses the same code from (guix build compile), so i think it's disabled as well <jpoiret>i'm currently `guix pull`'ing from my local checkout to test (current-guix), let's hope git-checkout works with "file://" otherwise that won't be very conclusive <jpoiret>I'm still a bit wary: can't there be a situation in which we're running guix without either profile or build metadata, and we're not using a git checkout? <jpoiret>beh, in those cases i don't think it'll be possible to trace back the current guix in any case... <civodul>i think we have to distinguish between the "make release" case, where we're using a local checkout but that's OK <jpoiret>i'll try with a `make release`'d guix afterwards <kitzman>lilyp: shepherd starts normally without any service. a no-dep service i think will work. struggling to get a real service to work. <florhizome[m]>trying to set up guix home on manjaro, but it fails because there already is a fontconfig configuration file <kitzman>apparently when I run `guix shell mpd guile guix shepherd`, and then I run shepherd inside it, it's complaining about "load-thunk-from-memory: incompatible bytecode version" <civodul>kitzman: could you paste the complete command and output? <civodul>this may be due to the introduction of guile 3.0.8 yesterday <civodul>rekado_: i got nhc98 build with the current toolchain; now looking at ghc@4 <civodul>which is trickier as you already know... <kitzman>i think i can ignore the startup delay for now, i didn't even get the service definitions right (trying to use guix system definitions, not the ones in the shepherd manual) <kitzman>ah the guix version from inside is one from 2021, i don't think it's related ***blacked is now known as pingpongball
<avp>civodul: Hello! I've replied to your email -- it seems to me that Guile-SSH segfault in Guix is fixed. <civodul>katco: i think they haven't been released yet, but i'm guessing the team is hard at work getting them ready :-) <avp>civodul: The backtrace from your email was really helpful. ;-) <jpoiret>civodul: wdyt about adding a gexp-compiler for <store-monad-derivation>? <avp>It turned out that I forgot to properly remove libssh callbacks before finishing Guile-SSH channels. <avp>Also I fixed some other problems on the way. <jpoiret>although maybe that would make the corresponding manifest entry wonky <civodul>avp: neat; so that had to do with channels being closed asynchronously via finalizers or something? <civodul>jpoiret: what's <store-monad-derivation>? <pingpongball>if i want to like compile thing from scratch, i heard from distrotube in nix doing it is hard, is he true ? if it is hard in nix , is that for guix <jpoiret>civodul: yes, a derivation-valued derivation <jpoiret>derivation-valued monadic value * oops <avp>civodul: The channel callback procedure wasn't called at all; I think that the pointer to a callback would turn into a pile of garbage on the way inside the libssh or something. <avp>Now Guile-SSH seems to handle libssh callbacks OK, but the Guix tests will show. <avp>civodul: Besides, how do you install the debug output of a package when it is installed from a package definition provided form a file? <civodul>avp: in that case it may be easier to use --with-debug-info <civodul>jpoiret: gexp compilers only work for structs, for it's not applicable here <civodul>besides, i think we should use the monadic interface only internally <avp>civodul: Great, thanks! <florhizome[m]><pingpongball> "if i want to like compile..." <- What do you mean by compiling something from scratch? <jpoiret>right. I was thinking of adding a dummy record for that but I guess we don't really want to expose that <civodul>avp: so you're now a (hopefully happy) Guix user? :-) <pingpongball>anything if i couldnt find , like for eg, if i want to compile some software from scratch using gcc, is it same as in normal distro? <avp>civodul: Kind of. :-) <avp>I installed GNU Guix in a computer class in a local college where I work, so I was able to install a fresh version of FreeCAD for students to work. <pingpongball>guix is real GNU distro , + lisp make me interesting, but proprietary shitware, i live in real world with proprietary economy, i need proprietary software <avp>Also I want to package Universal G-Code Sender, but Java dependency hell stopped me from doing that for a while. <pingpongball>Does guile programming langauge have gui like javafx, swing in java? <civodul>pingpongball: there's Java with all its bells and whistles <pingpongball>oh i dont like verbooooose java, but if guile contains some? <civodul>your call, but you're on #guix here :-) <roptat>mh, we're a bit short on topics to discuss at the guix days <roptat>well, we can make more room for Q&A and spontaneous discussions <roptat>we have 10 talks/bof and by extending them a bit, 14 slots to fill on two days <roptat>I think zimoun wanted to submit something, but haven't received anything yet. I won't be able to submit anything either <rekado_>the honeycombs haven’t built much at all because they were stuck with coreutils <rekado_>now I substituted the three(!) coreutils builds and restarted the flaky gettext build; now we’re talking <civodul>roptat: 10 talks is good! would be nice to raech out to zimoun though :-) <rekado_>building cmake-bootstrap, icu4c, and guile 3.0.8 now <roptat>rekado_, would you like to prepare something for the guix days? <rekado_>I was approached earlier but I had to decline <rekado_>there’s just no way I can plan ahead at all. <phf-1>Hello Guix! How would you build a package registry? <drakonis>a setup where people submit their packages? <pinoaffe>phf-1: do you mean something like an AUR? <phf-1>it should succeed because alice's key is in the authorized_keys of the server <phf-1>drakonis, do you know a "good" way to do that? <phf-1>drakonis, How do I restrict access to selected users? <phf-1>drakonis, I've setup a channel with introduction and all. <phf-1>Now, package definitions should point to archives hosted somewhere. <phf-1>I've a test `package.tar.gz', a test package definition, but I need the `(source (origin ...) ...)' to point to a /somewhere/ that has restricted access. <phf-1>Well that looks a lot like Kerberos things... <Kolev>Can I use `guix system build` to test a config's validity without applying it? <rekado_>phf-1: the guix-daemon already has avahi support, so if you’re on the same network as another Guix user you can get binaries from them. <rekado_>you can also run “guix publish”, which publishes your store as a substitute server would <rekado_>you can restrict access with a password-authenticated reverse proxy or have the other person use a password-restricted proxy server. <rekado_>the daemon respects the http_proxy and https_proxy variables <rekado_>admittedly, there’s probably some glue code missing to make this all a little more convenient to use <kitzman>so... i'm trying to use guix services to create shepherd services. I saw that there's a function to generate service files (shepherd-service-file). But this takes a <shepherd-service>. So next thing, I'm fold-services my-services with the target type shepherd-root-service-type. but apparently that's wrong (I checked the code) <pinoaffe>phf-1: in theory, you could make an AUR by just writing some software that generates a git repository containing all those software definitions <pinoaffe>I don't think it's a particularly useful thing though <kitzman>i see that there's an "extension" to mpd-service (for example), but I have to find a way to use it, so that I can generate the right expressions <phf-1>rekado_, Thank you. Will try things. <kitzman>did anyone work with this, so maybe they know a hint? <phf-1>pinoaffe, Yes. I tried with Gitlab but could not manage to download an archive from a private repo using `guix download ...' <pinoaffe>phf-1: aaah, I didn't know you wanted to restrict read-access to the channel <phf-1>pinoaffe, I tried to used so called `access-token' to no avail. <florhizome[m]>Is anyone running guix home on a foreign system and has dotfiles up ? <pinoaffe>IIRC it was rejected on the grounds that any credentials entered in this configuration would end up readable for everyone in the gnu store <lilyp>to be fair, credentials in mpd are a joke <lilyp>but dropping them into the store is even worse <pinoaffe>lilyp: and I don't think I'd agree that dropping 'm in the store would be worse, given that currently, anyone who can connect to 6600 of my machine can control my mpd server <phf-1>Would be nice to have a `guix download bob@server.com:/project/packages/pkg.tar.gz' kind of like `rsync' <rekado_>pinoaffe: but the store can be published <pinoaffe>rekado_: ah yes, that could be an issue, especially since people are likely to reuse their credentials <rekado_>so it’s better to keep them out to begin with <pinoaffe>anyhow, what i was meaning to ask: is there a "guixy" way to provide guix services with credentials/secrets? <rekado_>phf-1: there is “guix archive”, wich can import a previously exported thing <rekado_>there’s also “guix copy” to copy store directories from one machine to another — as long as they have been set up to trust one another. <lilyp>pinoaffe: currently no, there's only debate <lilyp>we might get a new set of ideas during the guix days <Michal_Atlas[m]>Seems like store secrets are something that eventually logically follow from many problems, but they defeat a lot of points. <florhizome[m]><kitzman> "i see that there's an "extension..." <- What I did for now is grep through the services directory to look for other services doing that. <pinoaffe>lilyp: aight, I'll keep my eyes and ears open, then :) <phf-1>rekado_, I think I will publish a more detailed description of the thing i'm trying to do. I'm sure something has to exist using the options you gave. <rekado_>phf-1: it’s possible that all the options are complicated by the need to explicitly grant full trust first <rekado_>there’s no transactional, temporary way to trust just one thing <phf-1>So, I've a reason to go back to https://transient.blog/ :) and clean up things so I can add that "use case". I'm pretty sure it's important to nail it correctly for me and others. <phf-1>rekado_, do you speak french? <Michal_Atlas[m]>On that note, how does privilege work in the build system, or where is it covered in the manual? <Michal_Atlas[m]>Since you need sudo sometimes but I thought the Daemon is supposed to be doing everything, does the Daemon check that you have sudo permissions or something? <Michal_Atlas[m]>florhizome[m]: True, but everything seemed to be labeled build, so I called it that <Michal_Atlas[m]>* True, but everything seemed to be labeled build, so I called it that, my bad <florhizome[m]>but that’s a system service, it’s not grub that you‘re building. <Michal_Atlas[m]>I know, it's just that it always says, "things that will be built: ... install-bootloader", I misspoke, sorry, but why does you being sudo change anything about that action taking place? <florhizome[m]>Yeah I think we should be consequential and be able to point guix build at a file with a service definition to test it^^ but maybe that’s even a bad idea <florhizome[m]>I guess building the bootloader is „grub–mkconfig“ which you would normally need sudo for, too. <lilyp>Michal_Atlas[m]: you need sudo for the few destructive changes that exist (system init, system reconfigure, gc) <lilyp>oh, wait, gc is normal, build --repair is the evil one <Michal_Atlas[m]>That is understandable, but isn't the guix Daemon supposed to invoke all that anyways? <lilyp>The guix daemon will only perform safe actions without superuser access. <lilyp>Messing with already built store items is unsafe. <phf-1>When using multiple channels, is there a way to pull from just one of them? <phf-1>it's to avoid waiting for the `pdating channel 'guix' from Git...' part <civodul>phf-1: you could ping the 'guix' channel to a specific commit in ~/.config/guix/channels.scm <phf-1>civodul, Hooo... yes of course! thanks! <phf-1>Someone's touching my diagram XD <ss2>sorry, that was me. I just openned it, and mindlessly began to pull things around before noticing what I was doing. ^^ <phf-1>the red part I don't know the simplest way to do that. <phf-1>maybe setup a nginx server that serve the git directory with some kind of `.htpasswd' for authorization? <jaft>sneek: later tell dcunit3d. Regarding fonts not rendering in QT WebBrowser app.s, someone pointed out a patch that was supposed to backport a fix and I manually applied said patch to QTWebEngine; you can find that here: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=53011#40. No one's responded, yet, on their thoughts regarding that approach but it's worked for me, with QuteBrowser. <phf-1>The daemon also honors the http_proxy and https_proxy environment variables for HTTP and HTTPS downloads it performs, be it for fixed-output derivations (see Derivations) or for substitutes (see Substitutes). <roptat>phf-1, nope, it doesn't work like this <phf-1>roptat, Forward proxy maybe? <roptat>what exactly do you want a password for? The source of a package, or substitutes? something else? <roptat>(sorry I haven't followed the conversation too much) <phf-1>roptat, for the moment, I would like to give access to project-v1.tar.gz. <roptat>maybe you could create your own origin method, similar to url-fetch, but that would read some config to find out which username/password to use <phf-1>I guess ssh-fetch would be the way ;) <roptat>yeah, but guix download doesn't work like this, it won't let you authenticate <phf-1>unless I manage to pull the server on the local network <phf-1>then, authentication would be useless <roptat>I guess, but that's outside of what guix can offer :) <phf-1>It would clearly be useful to have an ssh based authentication method <roptat>why? I don't know of any free software project whose sources are not publicly accessible <roptat>not to say you can't implement that, but if the only use case is to support proprietary software, it won't be included in guix <phf-1>Yes of course: in this context (Free Software) it would be useless. In other context it is mandatory. <phf-1>Well, it would be _a_ use case. Certanly not the only one. <phf-1>roptat, I don't know enough about Free Software probably. Lets say that some software can get in a company but for security reasons cannot get out. How does it work? <phf-1>rekado_, Ok, nevermind. I will write in something that looks like english enough ;) <civodul>rekado_: "it won't take long", and then, the rabbit hole, you know <rekado_>bah, there are so many build failures on this honeycomb machine *rekado_ runs ‘guix pull --cores=1’ in hopes of progress <rekado_>I’m about to add four new grafts for texlive packages. Is this … okay? Should I immediately ungraft them on core-updates or wip-texlive? ***jonsger1 is now known as jonsger