IRC channel logs

2023-09-16.log

back to list of logs

<lrustand>Do you have a handy incantation for me? I'm unfortunately a big noob when it comes to scheme
<mitchell>I do not lol https://www.gnu.org/software/guile/manual/html_node/Match-Structures.html here's the part of the manual I would read to come up with one
<mooncake>"Match Structures (Guile Reference Manual)" https://www.gnu.org/software/guile/manual/html_node/Match-Structures.html
<lrustand>This might take me a while
<mitchell>guix is like that sometimes...
<mitchell>Look at the output from dmesg and figure out what mentions of NVME you can see and try to write a regular expression to match them
<mitchell>probably NVME is good enough
<lrustand>Yeah, the regex is no problem
<lrustand>The scheme is
<mitchell>well if string-match returns a non false value it matched
<lrustand>I think I need to wait until I can have another machine for irc and internet, because right now I'm just rebooting and going in on my own lol
<mitchell> https://paste.debian.net/1292081/ something like this
<mooncake>"debian Pastezone" https://paste.debian.net/1292081
<lrustand>Nice
<lrustand>A little too long to remember when I reboot though
<mitchell>Understandable lol
<mitchell>it's not so bad once you get used to it
<lrustand>Gonna do a "boomer screenshot" of it and try
<mitchell>it may not return if it doesn't match
<mitchell>beware
<lrustand>okay, brb
<mitchell>it will return with an eof error
<lrustand>I get unbound variable string-match
<lrustand>Tried adding (use-module (ice-9 match)), but still unvound
<mitchell>string-match is part of the default namespace i thought...
<lrustand>I tried just calloing string-match on it's own also, but same thing
<mitchell>`guix shell guile --container -- guile` has string-match available to guile-user
<mitchell>perhaps the recovery shell is in a different module
<mitchell>or is a stripped down version
<lrustand>maybe
<mitchell>i think its regular guile
<lrustand>The line editing is certainly stripped down
<lrustand>No up arrow or anything like that
<mitchell>its character building
<lrustand>I think I'll give up for tonight, maybe try again tomorrow
<lrustand>Found this: https://code.google.com/archive/p/lilypond/issues/1674
<lrustand>Seems strin-match is in a modules
<lrustand>Ok, I see. It is actually stated in 6.13 that you need to load (ice-9 regex)
<lrustand>I'll do one last reboot try tonight
<lrustand>Okay, this time the incantation worked, but doesn't seem like there was a match. The function never returned anything. Tried "NVME" both in upper and lower case
<lrustand>[1~
<mitchell>unfortunate to hear
<RavenJoad>I know I asked this before, but I don't think I found an answer. Can I get dhcp-client-service-type's default dhclient instance send the system's hostname with the request? Has someone done that?
<RavenJoad>dhcp-client-service-type does not have any real way to configure it, despite dhclient having a configuration file.
<hwpplayer1>hi people !
<hwpplayer1>I installed guix
<hwpplayer1>Which DE or WM should I install ?
<hwpplayer1>I installed emacs-next only
<hwpplayer1>Now pulling
<hwpplayer1>I tried several times to run a Desktop Environment but it has failed
<drewjose>Did the installation not prompt you about what DE you want?
<hwpplayer1>drewjose: not that ... I mean I couldn't run a DE
<RavenJoad>hwpplayer1: Did you enable the desktop environment as a service-type?
<hwpplayer1>I don't know that
<hwpplayer1>RavenJoad: ^
<hwpplayer1>Now I will install a WM after pull finished
<RavenJoad>(guix) Desktop Services
<hwpplayer1>please wait
<RavenJoad>If you add a service-type to the services list, that will install everything you need, and put the magic in the right places to make the DE "just work".
<hwpplayer1>okay
<hwpplayer1>I will ask that later
<hwpplayer1>first is getting the pulls
<hwpplayer1>It is 43%
<RavenJoad>What library does Guix use to hash things?
<drewjose>RavenJoad Libgcrypt via Guile-Gcrypt https://guix.gnu.org/manual/en/html_node/Invoking-guix-hash.html
<mooncake>"Invoking guix hash (GNU Guix Reference Manual)" https://guix.gnu.org/manual/en/html_node/Invoking-guix-hash.html
<RavenJoad>Ok, cool. I don't need the cryptographic hashing, but that is what my quick searching through Guix's source turned up too.
<drewjose>are you doing something with guix internals?
<RavenJoad>drewjose: Nope. I am working on a personal project, a citation manager (a la Zotero). I need to hash documents to place them in a machine-usable named location.
<drewjose>Ah sounds cool!
<RavenJoad>Thanks! I appreciate Zotero, but know it won't be in Guix for a while, so I am writing this one. https://github.com/KarlJoad/gloa if you are interested.
<mooncake>"GitHub - KarlJoad/gloa: Academic article managment with GNU Guile" https://github.com/KarlJoad/gloa
<RavenJoad>Is mooncake the new sneek?
<hwpplayer1>I'm back
<hwpplayer1>what does computing guix derivation mean ?
<angry-sneek>sneek: later tell RavenJode: absolutely not >:((
<sneek>Will do.
<hwpplayer1>I'm installing OpenBox
<hwpplayer1>what should I do next ?
<lechner>open a window?
<hwpplayer1>how ?
<hwpplayer1>startx ?
<lechner>put "xterm" with a carriage return into .xinitrc
<hwpplayer1>do you like to write full command ?
<lechner>coming
<lechner>you need a single line with "xterm" in .xinitrc
<hwpplayer1>where is the .xinitrc file ?
<lechner>~/.xinitrc
<lechner>that will open a terminal window when X starts. then you can start and stop window managers to experiment until you find one you like
<lechner>to start X, try making this executable https://bpa.st/OLXA
<honey-apple>"View paste OLXA" https://bpa.st/OLXA
<hwpplayer1>I can't see .xinitrc file
<lechner>please create with your favorite editor
<hwpplayer1>okay
<hwpplayer1>What should I write into this init rc file ?
<lechner>xterm with a return after it
<hwpplayer1>okay
<lechner>no quotes, no ampersand
<hwpplayer1>let me try my best
<hwpplayer1>then ?
<lechner>that'll run when X starts
<hwpplayer1>I wrote xterm into .xinitrc file
<lechner>did you hit return?
<lechner>so the cursor was in the next line when you saved it?
<hwpplayer1>xterm and enter
<lechner>great
<lechner>now, starting X is a bit harder in Guix
<hwpplayer1>but startx returns null
<lechner>i know
<hwpplayer1>command not found
<hwpplayer1>what should I do next ? lechner ?
<lechner>you will need to add xterm and xorg-server to your home or system profile, or to be in a guix shell that provides them
<hwpplayer1>do you like to elaborate the issue ?
<lechner>i.e. guix shell xorg-server xterm (and probably openbox
<lechner>there isn't much to add to "file not found"
<lechner>starting X is a little harder, though
<hwpplayer1>what should I do now lechner ?
<lechner>what's the last thing you did?
<hwpplayer1>adding xterm into .xinitrc
<lechner>guix shell xorg-server xinit
<hwpplayer1>okay
<lechner>now save these two scripts locally https://bpa.st/OLXA
<honey-apple>"View paste OLXA" https://bpa.st/OLXA
<lechner>and https://bpa.st/IRMA
<honey-apple>"View paste IRMA" https://bpa.st/IRMA
<hwpplayer1>It is downloading some files lechner
<lechner>the latter is a shell script that I used until this morning. you make it executable with chmod +x (name of script)
<lechner>the former is the same in Scheme but it is untested. i just wrote it today
<hwpplayer1>It is finished now lechner
<hwpplayer1>what should I do next ?
<lechner>you used the download links at the bottom?
<hwpplayer1>are you talking to me ?
<lechner>yes
<hwpplayer1>which links ?
<lechner>how did you save the files?
<hwpplayer1>I edited only one file and it was .xinitrc
<lechner>now save these two scripts locally https://bpa.st/OLXA
<honey-apple>"View paste OLXA" https://bpa.st/OLXA
<lechner>and https://bpa.st/IRMA
<honey-apple>"View paste IRMA" https://bpa.st/IRMA
<hwpplayer1>How can I download them ?
<hwpplayer1>I only have Emacs
<hwpplayer1>I copied the first one
<lechner>i see
<hwpplayer1>is it xinit.scm ?
<lechner>that's the one i haven't tested
<hwpplayer1>and where should be the file which directory
<lechner>just your home will do
<hwpplayer1>xinit.scm ?
<lechner>that's where mine are
<hwpplayer1>what is the name of the file ?
<lechner>xinit.scm
<hwpplayer1>okay
<lechner>try wget or curl on this https://bpa.st/download/IRMA
<lechner>or this, if you need it again https://bpa.st/download/OLXA
<lechner>the second one is just xinit.scm again
<hwpplayer1>what is the IRMA config's file name
<lechner>please make sure you got the code, and not some HTML
<hwpplayer1>where should I put it ?
<lechner>xinit.sh
<hwpplayer1>okay
<hwpplayer1>then ?
<lechner>then chmod +x xinit.*
<lechner>and then, in your home directory ./xinit.sh
<lechner>maybe stick the fingers in your ears
<hwpplayer1>okay
<lechner>anything happening?
<hwpplayer1>It says command not found
<lechner>which shell are you using?
<lechner>are you inside the Bash shell provided by guix shell?
<hwpplayer1>Bash
<lechner>which xinit
<hwpplayer1>okay let me try again
<hwpplayer1>I'm inside guix shell xorg-server xinit
<lechner>how about which xinit
<lechner>and maybe which Xorg
<hwpplayer1>okay I will write which xinit
<lechner>with a capital X
<hwpplayer1>and Xorg
<hwpplayer1>They are both exists
<lechner>great
<hwpplayer1>Then ?
<lechner>is Emacs your login shell?
<lechner>or did you type emacs in order to start it?
<hwpplayer1>I have to tty and one is for Emacs Shell and the other one is system shell
<hwpplayer1>I run Emacs in tty1
<lechner>these are virtual, right?
<hwpplayer1>and the other shell is inside tty2
<hwpplayer1>yes
<lechner>either one should work, but i'm not sure what will happen to your Emacs.
<lechner>why don't you switch to the shell tty2 and type guix shell xorg-server xinit
<hwpplayer1>I did
<lechner>and then check for the commands with which and come back here
<hwpplayer1>It says no such file or directory
<lechner>inside guix shell xorg-server xinit ?
<hwpplayer1>yes
<lechner>are you using guix home?
<hwpplayer1>./xinit.sh says no file or directory
<hwpplayer1>Guix home ?
<lechner>okay, just do guix install xorg-server xinit
<hwpplayer1>okay
<lechner>and re-source the profile, if needed (that's the dot in the second line)
<lechner>then try which xinit again, please
<hwpplayer1>there is a file xinit in store
<hwpplayer1>but I can't run ./xinit.sh
<hwpplayer1>or startx
<lechner>what is the output of which xinit please?
<lechner>or command -v xinit
<lechner>that's not the same as ./xinit.sh
<hwpplayer1>/home/hwpplayer1/.guix-profile/bin/xinit
<lechner>great.
<hwpplayer1>and then please ?
<lechner>now let's talk about the plan. if all goes well, you will have an xterm but no window managers
<lechner>there are only three things you can do, other than perhaps switch back to emacs via C-M-1
<lechner>you can run commands in xterm, usually one at a time
<lechner>i do not recommend using the ampersand at this stage
<lechner>you can also hit C-d, which will terminate X
<lechner>or you can move the mouse and see the cursor fill in when the mouse is inside the xterm
<lechner>for C-d to terminate X you have to be inside the xterm. it actually terminates the shell, which terminates xterm, which terminates Xorg, which terminates xinit, which terminates ./xinit.sh
<lechner>anyway, please just head over there and type ./xinit.sh
<lechner>then you want to start a window manager, but i do not recommend the ampersand at this state
<lechner>stage
<lechner>then you can terminate the window manager with C-c
<hwpplayer1>I couldn't understand
<lechner>okay, just head over there and type ./xinit.sh please
<hwpplayer1>.xinit.sh failed
<lechner>how
<hwpplayer1>parse_vt_settings: Cannot open /dev/tty0 (Permission denied)
<lechner>are you on a console?
<hwpplayer1>emacs shell
<hwpplayer1>only shell
<hwpplayer1>not eshell
<lechner>that wont work. you have to log into a getty on a linux virtual console. you can switch around with Ctrl-Alt-1 .. 2 ... and 3 and so on
<lechner>sorry, it's F1 F2 and so on
<hwpplayer1>yes
<hwpplayer1>I know
<lechner>you won't have to bother with guix shell anymore
<lechner>the packages are in your user profile
<lechner>maybe your XDG variables aren't set. just open ./xinit.sh in an editor and hardcode vt1 or vt2, depending on where you are
<lechner>or will be
<hwpplayer1>I'll be back
<lechner>later tell hwpplayer1 / sorry, i have to go. tonight is a jewish festival called rosh hashanah, which is also sometimes called the birthday of the world. it lasts two days. i'll be back on monday. many folks here will be able to help you in the meantime
<lechner>sneek / later tell hwpplayer1 / sorry, i have to go. tonight is a jewish festival called rosh hashanah, which is also sometimes called the birthday of the world. it lasts two days. i'll be back on monday. many folks here will be able to help you in the meantime
<sneek>Okay.
<the_tubular>Have a good one lechner!
<lechner>hi, and thanks!
<MattBeshara>Hey, does anyone here use the EVDI package/kernel module? I've added it to 'kernel-loadable-modules' in my 'operating-system' declaration but it doesn't seem to build properly when I do 'guix system reconfigure'. Version 1.14.1 is the newest version of EVDI available, but the version packaged in Guix is 1.12.0. Maybe it needs to be updated for newer kernel versions?
<anadon>For https://issues.guix.gnu.org/28144 it says to recompile profiles.go.  This means nothing to me and there are no literal steps for me to follow or adapt.  What do I do for this?
<honey-apple>"info-dir ERROR: no code for module (guix build utils)" https://issues.guix.gnu.org/28144
<mbakke>janneke: the guix derivation is still failing, but now because a different test that seems unrelated (but why only that branch?)
<mbakke>gnu-maintenance.scm:159 "rewrite-url, without to-version" fails with (getaddrinfo-error -8)
<cow_2001>Is there a ``guix gc --but-save-common-dependencies'' command? Each time I gc I need to redownload a ton of stuff.
<vivien>cow_2001, what do you mean, "common dependencies"?
<cow_2001>I don't know, really. Just stuff that keeps being redownloaded each time I install stuff. Maybe ``guix system'' stuff? Maybe ``guix install'' stuff.
<cow_2001>I don't remember their names right now, but I see them.
<vivien>Something that kind of work like that, is the -F flag, it will only collect the required amount of garbage and nothing more. It will certainly collect a few of what you mean as common dependencies, but not that many of them.
<cow_2001>Hmm.
<nckx>What's a ‘dependency’ here?
<nckx>There are the ‘--gc-keep-outputs’ and ‘--gc-keep-derivations’ arguments to guix-daemon.
<zamfofex>I imagine “dependency” just means “thigns that are frequently used and dependend on (by the user)” in this case.
<zamfofex>I.e. things that you’ll want to use anyway, even if it isn’t explicitly dependend on by a profile or root.
<vivien>I submitted a patch to enable i686-linux builds of ocaml to be applied to core-updates (because it changes the derivations of everything written in ocaml) but it got applied to master instead. Is it OK?
<vivien>Oh well, ci says there are 56 changes, so I guess it’s OK
<janneke>mbakke: yeah
<janneke>i found that the newly added "rewrite-url, to-version specified" test to fail on the Hurd unless i do: guix shell -D guix nss-certs openssl; does that mean guix is lacking those as dependencies/inputs?
<janneke>ACTION is adds nss-certs to bare-hurd.tmpl for now to see how that goes...
<janneke>ACTION meant to ask apteryx about this
<janneke>sneek: later ask apteryx: i found the newly added "rewrite-url, to-version specified" test to fail on the Hurd unless i do `guix shell -D guix nss-certs openssl'; does that mean guix is lacking those as dependencies/inputs?
<sneek>Okay.
<janneke>sneek: botsnack
<sneek>:)
<cbaines>janneke, I got some hurd builds going again, and it seems to be going well https://bordeaux.guix.gnu.org/activity#agent-f130866b-bca8-4b8f-9f67-7bdf091aaa0f
<honey-apple>"Activity bordeaux.guix.gnu.org Build farm" https://bordeaux.guix.gnu.org/activity#agent-f130866b-bca8-4b8f-9f67-7bdf091aaa0f
<janneke>cbaines: oh that's lovely
<janneke>we're very close to getting "guix" to build for the Hurd and getting that under ci to catch regressions would be a real help
<cbaines>I think ludo has been working on ci, but I'm not sure what specification (if any) is building hurd things
<janneke>yes, we added etc/hurd-manifest.scm, but something cuirass needed to happen iirc
<janneke>for that to work
<janneke>did i say "for the Hurd"? i meant getting it build _on_ the hurd!
<andreas-e>vivien: It passed through QA, so there were not too many dependencies, and they got built and are available on the bordeaux build farm.
<nckx>Does QA punt if there are too many rebuilds?
<nckx>Having substitutes is good, but not enough to push mass-rebuilds to master (hypothetically; I'm aware that this wasn't one).
<zimoun>hi!
<radio>Hello, is anyone here using fish within guix? I couldn't set up fish-foreign-env to work and for some reason /bin (yes, the folder with only sh) isn't in my PATH when using fish or bash, but I still can run sh from bash and not from fish
<zimoun>Any troubles with Debbugs? I have sent a cover letter to guix-patches@gnu.org and I do not get back any number after 20 minutes of patiently waiting.
<radio>This is giving me some problems, with emacs (and some other software I couldn't remember now)
<janneke>zimoun: Subject: bug#63986: [PATCH 0/2] Fix bug#63986: Julia is very slow?
<honey-apple>"Julia is very slow" https://issues.guix.gnu.org/63986
<zimoun>janneke, honey-apple: oh? this had been assigned to bug-guix and not guix-patches.
<zimoun>Well, it is confusing. What does it make be redirected to 63986 when I am explicitly sending to guix-patches?
<zimoun>Is the subject #63986?
<honey-apple>"Julia is very slow" https://issues.guix.gnu.org/63986
<janneke>zimoun: possibly the body text?
<hwpplayer1>hi people !
<sneek>Welcome back hwpplayer1, you have 1 message!
<sneek>hwpplayer1, lechner says: / sorry, i have to go. tonight is a jewish festival called rosh hashanah, which is also sometimes called the birthday of the world. it lasts two days. i'll be back on monday. many folks here will be able to help you in the meantime
<janneke>that would be "scary" tho...
<hwpplayer1>how are you doing janneke ?
<nckx>zimoun: Which command did you use to send that, exactly?
<zimoun>git send-email –to=guix-patches@gnu.org 0000-cover-letter.patch
<janneke>hwpplayer1: /me feels like fighting uphill battles to get guix to build on the hurd; doing just grand thank you
<hwpplayer1>hurd is an interesting project for me janneke
<hwpplayer1>I would like to write documentation for GNU Hurd
<hwpplayer1>Once I asked for that
<zimoun>I have removed from the subject #63986 and from the body and now I get one Debbugs ID.
<honey-apple>"Julia is very slow" https://issues.guix.gnu.org/63986
<janneke>hwpplayer1: seen mbakke's https://tryhurd.gexp.no/ ?
<honey-apple>"Try Hurd" https://tryhurd.gexp.no
<hwpplayer1>Now I need a Desktop/Window Manager first janneke
<nckx>zimoun: And 0000-cover-letter.patch didn't mention ‘#63986’ in the subject?
<janneke>yeah, several people are working to get hurd ci going again
<zimoun>nckx: the first time, yes it was. The second time, I removed it.
<janneke>once we have that, and we can run guix pull / guix system reconfigure, interesting things may start to happen
<hwpplayer1>What should I do after installing OpenBox package ?
<hwpplayer1>I tried something with lechner but It failed
<zimoun>nckx: if Debbugs redirect based on #12344 in the subject, I was not aware about this “feature” :-)
<honey-apple>"24.2.50; Typo in "This variable is safe as a file local..."" https://issues.guix.gnu.org/12344
<nckx>zimoun: Redirect?
<nckx>I'm not sure what you were expecting.
<nckx>If there's a bug/surprise here, I'm not seeing it.
<hwpplayer1>Can anyone help me about installing and configuring a Desktop or Window Manager ?
<nckx>If there was no reference *at all* to 63986 in your second mail to guix-patches@, and it still appears on <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=63986>, …where?
<honey-apple>"#63986 - Julia is very slow - GNU bug report logs" https://debbugs.gnu.org/cgi/bugreport.cgi?bug=63986
<nckx>References here including In-Reply-To and other hidden goodies.
<zimoun>Well, my aim is to trigger some rebuild by the QA.
<zimoun>from my understanding, there is two mailing lists (guix-patches and bug-guix). If I send something to guix-patches containing a reference in the subject as Debbugs-ID, I am not expecting that it appers under this Debbugs-ID.
<nckx>Why not?
<nckx>We'd be fighting a lot of bogus/duplicate bugs if it didn't do that.
<nckx>People *constantly* reply to NNN@debbugs.gnu.org with guix-patches@ in CC. Constantly.
<nckx>Treating these as mailing lists would lead to chaos.
<zimoun>Because from my perspective we have two separated “packages“ (Debbugs definition). One is guix-patches and the other is bug-guix.
<nckx>I've added a ‘patch’ flag to 63986. If QA honours that, I wonder if it will do so retroactively. If it doesn't, smells like a QA bug.
<zimoun>Yes, it makes sense to have the reply to NNNN@debbugs.gnu.org with guix-patches@gnu.org in CC assigned to NNNN. However, it does not make sense to send a message to guix-patches@gnu.org without anything else except in the subject #NNNN and assigned that to #NNNN.
<nckx>I think it does.
<hwpplayer1>Friends, sorry I am excited somehow, can someone help me about configuring Window Manager called OpenBox ?
<nckx>(‘Cc: 63986 <at> debbugs.gnu.org’)
<cbaines>nckx, there's currently a limit of 300 builds per system for patches https://git.cbaines.net/guix/qa-frontpage/tree/guix-qa-frontpage/manage-builds.scm#n179
<honey-apple>"manage-builds.scm « guix-qa-frontpage - guix/qa-frontpage - Guix" https://git.cbaines.net/guix/qa-frontpage/tree/guix-qa-frontpage/manage-builds.scm#n179
<nckx>cbaines: IC. Thanks.
<cbaines>but that's overall, and not per individual system
<nckx>zimoun: You can still create a new bug # now?
<zimoun>nckx: Yes, I did it by removing #NNNN in the subject. :-)
<nckx>That shouldn't affect testing whether <https://qa.guix.gnu.org/issue/63986> shows up (maybe cbaines can answer my ‘patch’ question too.)
<nckx>zimoun: Ugh, what a mess.
<nckx>hwpplayer1: No, sorry.
<cbaines>Patchwork doesn't seem to know about any patches for that issue https://patches.guix-patches.cbaines.net/project/guix-patches/list/?series=&submitter=&state=&q=63986&archive=&delegate=
<honey-apple>"Guix Patches - Patchwork" https://patches.guix-patches.cbaines.net/project/guix-patches/list/?series=&submitter=&state=&q=63986&archive=&delegate
<nckx>cbaines: I only recently added the tag, though, if it's poll-based.
<cbaines>nckx, it's also quite old and QA only looks at a small number of the most recent issues
<hwpplayer1>test
<zimoun>The current config does not makes sense for me. It is similar as mixing the “issue number” with the “pull request number” in some kikool world. Anyway, I can live with that current config. I was just not aware. :-)
<hwpplayer1>nckx hi how are you doing ? what do you mean by no sorry ?
<nckx>ACTION looks up kikool world.
<nckx>hwpplayer1: I cannot help you configure OpenBox.
<hwpplayer1>Okay for another wm ?
<hwpplayer1>Thanks nckx
<zimoun>nckx: https://qa.guix.gnu.org/issue/66030
<nckx>I just wanted you to know you weren't being ignored.
<honey-apple>"Issue 66030 Guix Quality Assurance" https://qa.guix.gnu.org/issue/66030
<cbaines>nckx, QA currently works by looking through Patchwork and then pulling out the first 250 issues by number
<cbaines>so it doesn't look at the patch tag
<nckx>Dommage.
<zimoun>nckx: All is fine and clear for me. Thanks for explaining. Thanks cbaines for QA. I have to go. Cheers.
<janneke>ACTION has run lightdm with gnome in the past but has been using exwm for some years now
<nckx>sneek: later tell hwpplayer1: Here's how I start Sway, but all the configuration is simply done outside of Guix, in ~/.config/sway/config. https://paste.debian.net/plainh/5569b14b
<sneek>Got it.
<janneke>ah /me missed they left already...
<nckx>And my answer isn't very interesting 🤷
<janneke>well, their questions were not overly specific either
<pastor>good morning. If I wanted to use a fixed version of a package using grafts (as it explains on the manual). How should I make the changes on the guix checkout. I'm trying to swap one package for another but to provide the `replacement` package I need to include code from another channel (#:use-module). And using `./pre-inst-env` does not find the module.
<pastor>How do you guys test a package that you have defined in a separate channel in the guix checkout?
<nckx>I have questions: something graft-worthy sounds like we might want to have it upstream? Is it a security or other significant bugfix? If you're editing Guix anyway, why not simply add your fixed version to Guix for the duration of the graft?
<nckx>Guix doesn't depend on any other channels, by design, so this isn't something I've ever done or tried.
<somenickname>geri: Could you please send again cli.scm? The paste from yesterday doesn't work anymore
<nckx>ACTION away a bit.
<pastor>nckx: Well. I was trying to experiment with plasma desktop but sadly I require `evil drivers` since with nouveau the compositor Is not working propperly. So I wanted to graft mesa over the whole system.
<janneke>pastor: we have known for many years that nvidia is evil, i've always wondered why people keep supporting them?
<pastor>Because I order to program `non-evil` things I require a working enviroment and this is the hardware availeable.
<pastor>janneke: But In anycase I would assume its ethical to make your own driver. And the problem will be the same. I will need to graft my `ethical driver` into the system. Is there a way to do it?
<somenickname>janneke: Probably because they have the best hardware for graphics.
<andreas-e>nckx: QA only takes action when the number of rebuilds is not too high. And once it has finished, there is no point in not committing to master, since all builds have already taken place (well, they will then cause the rebuilds on CI as well).
<janneke>somenickname: they do not have any useful hardware that works without compromising your freedom
<somenickname>janneke: This may be true but you need to remember that not everyone is aware of the problem with proprietary hw/sw
<pastor>janneke: its about trade-offs. Plus the fact that most people already have a PC before the get to know whats ethical or not. People without resources to buy whatever hardware should also be allowed to have access to ethical software
<janneke>pastor: i would support you in getting your problem fixed, i just cannot see why you wouldn't choose to run 100% free software and go fix other problems
<janneke>pastor: yeah, that last bit makes some sense
<somenickname>Ah you question was dedicated more to him.  Thought you meant generally
<janneke>selling and re-buying hardware after you've become aware it's troubled that requires some resources, i can aprreciate that
<pastor>janneke: when we have availeable hardware that does not require microcode, completely open-source firmare for disks, ram, wifi, etc. I would do that. But is there that much difference if the firmware is still non-free?
<janneke>ACTION had a friend who kept cursing guix for not supporting their non-free wifi card until they realised they could really "buy" their freedom for "just" $50 (an atheros wifi card)
<pastor>yeah. I have a fully librebooted thinkpad x200. But at the end of the day this freedom is just a 15 year old brick that does not allow me to do tasks suited for 2023
<janneke>exactly
<nckx>pastor: In your case I *guess* I'd use input rewriting to traverse my system packages and substitute mesa with a mesa/xxx defined in my channel. That might require adding a few (foo-service-configuration (foo-package foo)) lines too. If that's not deep or comprehensive enough, then I guess you do want to patch Guix, but simply include a copy of your forked mesa there. Adding a circular guix → my-channel → guix channel relationship is just not go
<nckx>ing to end well.
<janneke>if people made better (more ethical) choices, would the current day situation still be that dire?
<nckx>andreas-e: The ‘not too high’ bit is a good smell test, but the availability of substitutes isn't a reason to exceed master rebuild limits unless something's changed?
<nckx>Doing so would amount to pushing users towards using our substitute servers when they might otherwise not, which makes me uncomfy.
<exc>hello guix!
<pastor>janneke: I would asume that not every body is well informed. And is not reasonable to expect they will be. The best you can do is help them transition with what they have. And maybe their next purchase will be more ethical
<nckx>Hullo.
<janneke>pastor: yes
<exc>has someone made (hosted) a Texinfo or info version of R6RS?
<pastor>janneke: So. Why would you be against helping people run guix. Even if they have to rely on one or two binary blobs? Maybe the next purchase they make is one that is fully supported by the system they use and brings less headaches. Don't you think is better?
<janneke>pastor: that's a good question
<mirai>nckx: Can you take a look at <https://issues.guix.gnu.org/62348>?
<honey-apple>"[PATCH 0/3] Update psmisc to 23.6." https://issues.guix.gnu.org/62348
<mirai>Since you've been tweaking the package descriptions lately
<nckx>‘Lately’? But sure :)
<janneke>pastor: did you read the bit above about my friend and the atheros wifi card?
<nckx>mirai: Is that patch really 4 years old?
<mirai>well I did see some commits to the effect when I do some git log spelunking
<mirai>the “original” yes
<mirai>though I've given it some new tweaks in the meantiem
<pastor>janneke: Is totally fine to not have unethical software on the main distribution. But a question which is not even related to non-free software. Which is only about grafting custom packages, already creates this negative reaction. I don't see how the thought of giving support on how to use a feature that could be used for non-free software is enough to not help. If I would have said that I'm implementing a custom ve
<pastor>rsion of mesa you would have answered (I guess).
<pastor>janneke: Yeah. I've read the 50$ wifi. I have 2 of them. Know how much is a GPU in your country. In mine are not very affordable
<janneke>pastor: i believe nckx has tried answering you?
<mirai>not sure what remains of the original but they do deserve credit
<pastor>janneke: But I'm worried about newcomers that will get a negative impresion on who is entilted to run Guix
<nckx>mirai: Okay. Is that public somewhere? (That's my personal condition for adding such ancient copyright lines, that the original be ‘published’ back then.)
<janneke>pastor: i just don't know much about grafting and channels, my question only was a digression
<nckx>I know it's not intentional and I'm not offended, but yeah, focussing on the answer you don't like when someone did answer you (even if you're not impressed with my answer, in which case, sorry) is a bit dampening.
<mirai>nckx: original submission is mentioned in the cover letter (so you might want to cc -done to both issues)
<nckx>Ah, my bad.
<mirai>one note, the author address no longer works / bounces
<janneke>nckx, pastor; sorry for my very untimely and unhelpful interference
<pastor>nckx: I appologize. I was about to respond to your question after I read it more carefuly. I'm not that fast typing
<pastor>nckx: you have always been very helpful. Thanks for every time you've spent. I really appreciate. Understand that this IRC format is a bit difficult for me to keep up
<pastor>janneke: worry not
<mirai>pastor: you'd be surprised the times I missed a reply of a conversation in progress
<nckx>I think everyone sounded more on edge in plain text than they really were, including me. I really wasn't that offended, but thank you very much for the flattery ♥
<nckx>I also think my ‘don't do that, then’ answer's a bit disappointing so 🤷
<mirai>while typing or whatnot its easy for someones message to simply get past your eyes/scroll up
<pastor>nckx: You've been helping my many times really. I've been here as `grim`, `Grimpper`, so yeah. Feel good about it because you've been a life saver a few times already 😃
<janneke>pastor: as for the price of a gpu, i wouldn't know, i have no use for them :)
<pastor>nckx: Now. Give me some minutes to fully read your answare and read about it on the manual
<nckx>(Also, $50 for an ath? Surely not a 9k? If so, I wish I'd hoarded more and had less of a conscience…)
<pastor>I got them for 9$
<janneke>nckx: <https://tehnoetic.com/tet-n300db>: $55
<honey-apple>"Technoethical N300 Dual Band Wi-Fi mPCIe Card for GNU/Linux - Technoethical" https://tehnoetic.com/tet-n300db
<pastor>mirai: yeah. Isn't any other way to do communication which is libre? Maybe one which has history? And p2p for not having to host anything
<janneke>'t was several years ago, so yeah
<nckx>I gave all mine away for free like a chump.
<janneke>what i remembered is the shift of perspective, from scheming trying to run non-free software, to just spend some pocket-money and be free
<mirai>janneke: do you know if it's possible to build hurd packages from a linux kernel via guix build? (à la `guix build --system=aarch64-linux --rounds=2 hello')
<mirai>pastor: (e-)mail
<exc>I've had success running Alfa AWUS036NHA. They seem to run between between $50 or €30.
<janneke>mirai: yes, setup a childhurd and add an entry to /etc/guix/machines.scm for it
<pastor>mirai: 💀
<mirai>pastor: maybe XMPP or matrix
<janneke>mirai: use something like: (build-machine (name "localhost") (port 11022) (systems (list "i586-gnu")) ...)
<mirai>janneke: hmmm… not exactly trivial (but certainly not hard)
<pastor>mirai: Is there any reason why there is no official channel under any of those mediums?
<mirai>wonder if there's a cookbook recipe for it (or if this can be fully automated)
<mirai>since there's gnu/tests/… (and the marionette service) it should be possible
<mirai>pastor: willpower, inertia, … are plausible reasons
<nckx>pastor: Administration pain. Matrix is super unpleasant to moderate, upstream is hostile & IMO going nowhere fast.
<nckx>XMPP is fine, but I don't see any advantage over IRC that is actually worth the $effort.
<pastor>🫤
<mirai>we're both already here in IRC, if you're going to change things the benefits must exceed the “cost”
<nckx>The Guix project is also, historically, not *that* great at running high-volume public infra, so self-hosting anything is a big meh from me dawg…
<mirai>and by a _good margin_
<pastor>nckx: I'm trying to anderstand what you meant with input rewriting. Do you meant to use `option->transformation` or `package-input-rewriting`? As I understand the later requires rebuilding the world
<nckx>I meant package-input-rewriting but with a graft. Which to my mind shouldn't rebuild the world, only graft it, but I didn't test it.
<nckx>So (define my-mesa …) (define mesa/grafted (replacement my-mesa)) → use mesa/grafted in your substitution, not my-mesa.
<pastor>nckx: How could the syntax go for that? The manual gives this example. Which I assume rebuild the package `(package-input-rewriting `((,openssl . ,libressl)))`
<nckx>`((,mesa . ,(package (inherit mesa) (replacement my-mesa) […]))) ; but again, I didn't *test* this, it's just an idea
<nckx>If it does rebuild the world, then I'd be disappointed and have to sit down & have another think.
<pastor>And is there a way to apply this `package-input-rewriting` to every package on the system?
<pastor>For a system configuration
<pastor>nckx: As I'm reading in the manual. Using the `package-input-rewriting` with the argument you gave will only give a procedure to apply to the world. Is it posible?
<janneke>oh my, something is pulling-in glibc-2.33
<nckx>pastor: I'm not at a computer right now, so all my answers/code are approximate hints.
<janneke>ah, locale-2.33 -- hmm, do we really want/need that for the Hurd?
<pastor>Yeah. That's fine. You seem to be right on point. The last mistery. Will be how to apply the procedure: (define-public replace-package (package-input-rewriting `((,my-package . ,my-package/fake)))). To all package definitions
<pastor>nckx: specially. How to apply this procedure elegantly to a `gnome-desktop-service-type' or a `plasma-desktop-service-type'
<janneke>yeah and that fails to build, of course
<janneke>ACTION needs to get rid of locale-2.33 (and getting rid of locale-2.35 would be a bonus)
<nckx>pastor: (sevice gnome-desktop-service-type (gnome-desktop-configuration (gnome (my-cool-procedure gnome)))) ?
<nckx>Also untested, sorry… I can keep pumping out low-quality guesses all day long.
<janneke>this is so weird; we have
<janneke>(define %default-locale-libcs
<janneke> ;; The libcs for which we build locales by default.
<janneke> (if (system-hurd?)
<janneke> (list glibc/hurd)
<janneke>and still, when building on the hurd, someone finds a way to leak-in
<janneke> (list glibc-2.33 glibc)))
<janneke>apparently
<janneke>ACTION is puzzled
<pastor>nckx: seems about it. I will test it out. Thanks!
<janneke>ACTION goes to override locales-libcs and see how that goes
<janneke>hmm, adding (locale-libcs (list glibc/hurd)) seems to work, but it triggers yet another glibc-2.37 build...how many flavors of glibc-2.37 do we realy need?
<nckx>How do the drvs/builders differ?
<nckx>Also… so %default-locale-libcs is evaluated in an unexpected context? Or silently unused? This Hurd business is a strange newish world.
<janneke>nckx: the only difference is
<janneke>-/gnu/store/...-locale-multiple-versions.drv
<janneke>+/gnu/store/...-locale-2.37.drv
<janneke>it's indeed weird
<nckx>Hmm, so that's locale-directory from (gnu system locale) which does use %default-locale-libcs by default. Are you sure it's a full glibc copy? Not how I read it.
<janneke>when cross-building i can easily imagine systems getting (if (system-hurd?) ...) getting mixed-up/executed at the wrong time
<janneke>nckx: eh, it could well be a partial copy...but it doesn't build for the hurd, so yeah
<nckx>Or is this an input to one glibc?
<nckx>Oh, I'm not looking at the same branch as you, my %default-locale-libcs contains no provisions for Hurds.
<janneke>afaics locale-2.33 depends on glibc-2.33 being built
<janneke>ACTION looks
<janneke>nckx: ah right, that's on hurd-team; i didn't realise
<nckx>I should have known.
<janneke>guess that patch can go onto master
<zamfofex>Very exciting to see work being put on getting Guix to work well with the Hurd!
<janneke>zamfofex: i'm hoping to get guix/hurd in a shape where it's easy to contribute for others
<janneke>and to run it on real iron, although i'm depending on hurd upstream for that
<zamfofex>That’s wonderful! I wish I could be able to contribute somehow right now, since you seem to be having some kind of trouble. (Though I’m not usre I’m knowledgeable enough.)
<janneke>thanks; there's no real trouble, only discovering many smallish things that don't work, or don't work anymore
<mirai>nckx: are debbug issues ever archived?
<panosalevro>hey all, there's a package name conflict that was recently introduced. there are two packages named "helm", one is the package manager for Kubernetes and the other is a synthesizer. i'd suggest the latter be renamed "helm-lv2" to fix the issue
<janneke>finally: /gnu/store/jsnsf5s9m00ih7b2495l88iqiphvrsbi-system
<janneke>now, to see if `guix system reconfigure' finally works, or to find what the next hurd'le is...
<pastor>Hi. Is there a way to get the dependency derivations that a package will build?
<pastor>I feel like there was a flag, which I don't seem to find, to display this
<janneke>pastor: guix refresh has
<janneke> -T, --list-transitive list all the packages that PACKAGE depends on
<janneke>is that what you're looking for?
<pastor>janneke: Yeah, thanks. I think... Is this working for you?
<nckx>mirai: I thought closed bugs were archived after a ~month but it's not something I've paid much attention to.
<pastor>I'm getting this output https://paste.debian.net/1292133
<honey-apple>"debian Pastezone" https://paste.debian.net/1292133
<pastor>Is this a bug we should report?
<pastor>or I'm the only one with the issue
<pastor>I don't think the variable is looking for is availeable in the latest commits on the `master` branch
<nckx>It works for me.
<janneke>pastor: you have the flag in the wrong place
<janneke>guix refresh --list-transitive cowsay
<nckx>Sure, but that shouldn't crash.
<janneke>ah, yes
<pastor>janneke: My bad. It crashes anyway. I believe `python-fonttools-next` was removed
<pastor>I'm here `guix (GNU Guix) 67268d9a8109936d9e7e486394fcc021880c6a28` where are you guys at?
<nckx>Here: <https://git.savannah.gnu.org/cgit/guix.git/commit/?id=40e78353a4699b8edb6600d82df648914c9110b9>.
<honey-apple>"guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/commit/?id=40e78353a4699b8edb6600d82df648914c9110b9
<pastor>nckx: On that commit with `./pre-inst-env` does not seem to crash
<janneke>ACTION is at https://git.savannah.gnu.org/cgit/guix.git/commit/?id=1ef4974be94d75d935d98399dcda44199a1fca47
<honey-apple>"guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/commit/?id=1ef4974be94d75d935d98399dcda44199a1fca47
<nckx>Bleurgh, merge commits.
<pastor>Seems that the problem is related to my `GUIX_PACKAGE_PATH` variable
<zamfofex>Quick question: Is there any reason i586 is used for the Hurd (as opposed to i686)? As far as I know, the only difference is that i686 CPUs support some more instructions, and thus the compiler has more room for optimisation. (I’m not even sure there are genuine i586 CPUs in use anymore. Or rather, not a significant enough amount.)
<pastor>I forgot to update the name of one dependency that is no longer availeable in the master branch. Weird that all other `guix` commands did not issue a warning and the `-T` flag crashed
<janneke>zamfofex: why do we use i686-linux instead of i386-linux?
<pastor>janneke: I see that the `guix refresh -T` outputs the transitive dependencies but is there a command to get the output derivation on the store? Each store path I mean.
<janneke>pastor: i don't know; what about something like: guix build -d $(guix refresh --list-transitive cowsay)
<janneke>(untested)
<janneke>hmm, crap hidden packages
<janneke>you may have to resolve to the guix repl
<mirai>What's the right way to reply to a mail (quoting the original message) when using emacs-debbugs + default gnus viewer
<pastor>janneke: Hi see. Thanks for the insight!
<janneke>mirai: press `F' ?
<mirai>it sets the header To: … with <NNNN@debbugs…> instead of the author
<janneke>ah, /me never cares about that
<helioscultist>so i tried installing vsftpd
<helioscultist>but i got build failed
<janneke>ACTION just built all dependencies/substitutes required for a `guix system reconfigure', so this would be the perfect time for jpoiret to submit a world-rebuilding glibc-2.38 for x86_64 :)
<nckx>helioscultist: OpenSSL moved on and deprecated some functions used by the ftpd.
<nckx>I'll push a work-around shortly.
<helioscultist>ooooo thanks
<janneke>"/gnu/store/b0ani8jjgp21qkgr514880081hizyap5-grub-minimal-2.06/sbin/grub-install: error: cannot find a GRUB drive for part:1:device:hd0. Check your device.map."
<janneke>not bad...
<janneke>hmm, the command uses: --boot-directory //boot /dev/wd0
<janneke>who imagines/translates that to hd0?
<janneke>this all in qemu, of course
<janneke>ohh, but:
<janneke>lrwxr-xr-x 1 root root 50 Sep 16 16:40 system-2-link -> /gnu/store/yxnhlz2bm6a1al2yji9pqdv15pnphqhd-system/
<janneke>lrwxr-xr-x 1 root root 32 Sep 16 16:40 system -> /var/guix/profiles/system-2-link@
<janneke>\o/
<nckx>:-°
<nckx>helioscultist: OK, pull & give it another go.
<helioscultist>noooo
<helioscultist>it didn't wprk
<helioscultist>sorr yforgott pull
<pastor>does anyone know if `package-input-rewriting` should afect propagated-inputs?
<ulfvonbelow>it should affect all inputs
<helioscultist>nckx thanks every thing works now
<ulfvonbelow>however there are presently some issues that make it so that it won't affect the guile used for running the builder, and it won't affect any packages passed via the arguments field
<ulfvonbelow>this includes arguments that "could be" passed via the arguments field, even if they aren't explicitly passed, like qt-build-system's #:qtbase
<Noisytoot>Why is this package failing to compile ("arm-none-eabi-ld: cannot find -lstdc++: No such file or directory")? https://x0.at/jJGe.txt (build log: https://x0.at/zTma.txt)
<Noisytoot>Does arm-none-eabi-toolchain-7-2018-q2-update not have a libstdc++?
<pastor>ulfvonbelow: thanks
<vivien>Do I do something wrong, or does qa.guix.gnu.org rebase all patch series onto a more-or-less recent commit on master, even if the patch is tagged for a feature branch?
<lilyp>it should honour tags as far as I'm aware
<lilyp>that being said, I'm not sure whether it notices branch switches "mid-way"
<vivien>As I understand, the tag is part of the "subject prefix" git option, plus the base-commit
<lilyp>yeah, that's what I meant with tags
<rdrg109>[Question] I did the system installation without including nss-certs packages. Now, I have included it in my /etc/config.scm, but whenever I run "guix system reconfigure /etc/config.scm". I get "Git error: the SSL certificate is invalid". What should I do to be able to execute "guix system reconfigure /etc/config.scm"?
<lilyp>did you run a guix pull first?
<rdrg109>lilyp: As non-root user yes, as root user no.
<lilyp>and you reconfigure using sudo or su? if using sudo, that's fine, with su it isn't
<vivien>lilyp, 65922 (not mine) has an explicit feature branch and a base-commit (4cb2e08b8eb1acc824b72ec17b483d7d85b5af68), but the base-for-issue-65922 tag points to ab971e9c1922ae6eeec47401cb589ae15f29e15f (https://git.guix-patches.cbaines.net/guix-patches/commit/?h=base-for-issue-65922)
<honey-apple>"guix-patches - Patches for guix" https://git.guix-patches.cbaines.net/guix-patches/commit/?h=base-for-issue-65922
<honey-apple>"guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/commit/?id=ab971e9c1922ae6eeec47401cb589ae15f29e15f
<lilyp>honey-apple: help
<lilyp>vivien: perhaps a formatting error, it ought to be PATCH qt-team
<rdrg109>lilyp: The error "Git error: the SSL certificate is invaliid" when I execute "sudo guix system reconfigure /etc/config.scm", but it doesn't appear when I execute "guix system reconfigure /etc/config.scm" (Of course, this fails with another error because I'm not root user: "guix system: error: symlink: Permission denied: /var/guix/profiles/system-2-link.new")
<vivien>65903 has no feature branch, but targets 07d43c66d5c11fef61f9846fefb97fa18e4764f1, and has been applied on top of e5f7c14ef6c951f02ca710fad1869db3aedff4b5 instead, as far as I understand
<honey-apple>"guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/commit/?id=07d43c66d5c11fef61f9846fefb97fa18e4764f1
<honey-apple>"guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/commit/?id=e5f7c14ef6c951f02ca710fad1869db3aedff4b5
<lilyp>uhm, is there something strange in your config.scm or channels to worry about?
<rdrg109>lilyp: I found this solution: https://github.com/pjotrp/guix-notes/blob/927a46dc754770ec52d3ac047b58a1ac6fbb6a64/INSTALL.org#x509-certificate-error . I think I should run "guix package -i nss-certs" as root user so that the nss certificates are available to the root user. Initially, I didn't want to do this because I once read that I should never install packages as root, but since I haven't found
<honey-apple>"guix-notes/INSTALL.org at 927a46dc754770ec52d3ac047b58a1ac6fbb6a64 · pjotrp/guix-notes · GitHub" https://github.com/pjotrp/guix-notes/blob/927a46dc754770ec52d3ac047b58a1ac6fbb6a64/INSTALL.org#x509-certificate-error
<rdrg109>other solution. I'm afraid I'll have to do it.
<lilyp>note that you can run guix system build as a regular user
<lilyp>could you paste your config.scm real quick?
<vivien>Maybe my problem would be best explained by cbaines
<geri>hey, is there a way to next mixed-text-file calls?
<geri>im trying to create a wrapper for sway and i need a path to file-like object for config to make the script work
<rdrg109>lilyp: Ok! I just ran the command and the system was successfully built. How can I make it my current system? Here's my /etc/config.scm: http://0x0.st/HON9.scm
<ulfvonbelow>hmm, is there a good way to introspect #:configure-flags when it's specified as a gexp?
<geri>and config uses mixed-text-file for setting wallpapers w/ local-file
<ulfvonbelow>my understanding is all description of the structure of the gexp and the non-input portions is boxed up into an opaque procedure
<rdrg109>rdrg109: I just ran "guix system build"
<lilyp>ulfvonbelow: you can always peek, the question is at what level
<vivien>geri, what is the problem?
<ulfvonbelow>so for example, if I wanted to replace all occurrences of --disable-debug in every package, my only option is to add code to do that to every single builder of every single package
<lilyp>rdrg109: is this also your old config, unchanged, or did you add the nss-certs?
<geri>oh wait, i might be stupid
<rdrg109>lilyp: I added the nss-certs so that after rebooting my PC, the problem doesn't occur anymore.
<geri>oh wait, i might be stupid
<geri>s/might be/am very
<geri>forgot it takes 2 arguments
<lilyp>wdym doesn't occur anymore?
<vivien>I feel even more so because I did not even understand what your problem was
<vivien>But if you found your way, cool!
<geri>)
<rdrg109>lilyp: The problem "Git error: the SSL certificate is invalid", which appears whenever I execute "sudo guix system reconfigure /etc/config.scm", doesn't occur anymore.
<geri> ill have the wrapper package specify all dependancies i need and specify env vars with shell script, then its all isolated in one package instead of sprawling over the whole home config
<lilyp>because you installed nss-certs as regular user?
<lilyp>and then rebooted?
<rdrg109>lilyp: I installed nss-certs as a regular user, but I haven't rebooted yet.
<lilyp>ahh, okay
<lilyp>well, once you reconfigure and reboot you can uninstall nss-certs from the regular user again
<RavenJoad>Would the baseXX.scm files in Guix ever be worked out to a separate library? I ask because they are useful, but I do not want to pull in all of Guix for my tool.
<sneek>Welcome back RavenJoad, you have 1 message!
<sneek>RavenJoad, angry-sneek says: absolutely not >:((
<lilyp>sneek, why so angry? no botstnack for you :(
<vivien>ulfvonbelow, I think the easier way would be to inherit the packages and then replace the #:configure-flags argument with substitute-keyword-arguments, for instance, see libnode in (gnu packages node)
<nckx>> <RavenJoad> Is mooncake the new sneek?
<lilyp>sneek: s/botstnack/botsnack/
<rdrg109>lilyp: I did build the system with "guix system /etc/config.scm" as a regular user and the command exited succesfully. However, when I execute "sudo guix system reconfigure /etc/config.scm" I keep getting. "Git error: the SSL certificate is invalid".
<rdrg109>^ I did build the system with "guix system build /etc/config.scm"*
<RavenJoad>Ok. I just don't keep up with all the bots here and what they do.
<lilyp>okay, so you do still get the error
<rdrg109>lilyp: Yes. What's the next step after running "guix system build /etc/config.scm" as a regular user?
<lilyp>I think it should go away if you log in from another tty and rebuild from there
<ulfvonbelow>vivien: great, now I just need to do that another 49999 times and we'll be all set
<lilyp>assuming you installed nss-certs as a regular user
<rdrg109>The system is already built, the question is: How can I make it my current system? (I cannot do "sudo guix system reconfigure /etc/config.scm" because that ends up in that error)
<lilyp>s/rebuild/reconfigure/
<vivien>ulfvonbelow, you may be able to apply this transformation in every transitive input of a package
<nckx>RavenJoad: There are only 2, and they don't do much.
<lilyp>the thing is, your nss-certs might not be visible to your user yet
<ulfvonbelow>ah, looking at libnode, I see it's going the "modify every builder of every package" approach
<vivien>ulfvonbelow, (guix packages) has package-transitive-inputs
<vivien>Mmh sorry that is not what you want in fact
<lilyp>that's typically accomplished by sourcing ~/.guix-profile/etc/profile
<ulfvonbelow>I'm already using package-mapping for this, doing it recursively isn't the issue
<rdrg109>lilyp: I already rebooted my laptop.
<ulfvonbelow>it's that I want to modify builders selectively
<vivien>But you can still introspect a package and modify all its inputs, propagated inputs and native-inputs
<rdrg109>lilyp: When I run "guix system build /etc/config.scm" ass a regular user, I get: "/gnu/store/hsv3bc9s8jikp47l05kcwx3czqqjl75w-system". What should I do with this path?
<ulfvonbelow>yes, I just have to wait a week every time I do it for the world to rebuild
<vivien>The thing is, some build systems may not understand a specific configure flag the same way
<ulfvonbelow>right, and I can make the transformation conditional on what the build-system is
<ulfvonbelow>right now it's looking like the closest thing I can do is use grep or something similar to identify all the packages with that flag and apply the transformation conditionally depending on whether the package name matches
<nckx>rdrg109: Little, but you should be able to sudo guix system reconfigure now, no?
<lilyp>try http://paste.debian.net/1292153/
<honey-apple>"debian Pastezone" http://paste.debian.net/1292153
<lilyp>honey-apple, you're not helping
<vivien>ulfvonbelow, you don’t need grep, you can just look at the configure-flags in scheme and check whether your flag is present with the `member` function
<rdrg109>lilyp: Nope, although the system is already built, when I execute "sudo guix system reconfigure /etc/config.scm", I get "Git error: the SSL certificate is invalid".
<rdrg109>lilyp: I think this happens because nss-certs is not visible to the root user.
<ulfvonbelow>vivien: `member` doesn't accept gexps.
<vivien>But since you will have to change the package inputs anyway, your algorithm would be like: 1. Remove the xxx flag from configure-flags; 2. Recursively process the inputs, propagated inputs, native inputs; 3. Return a new package with the new configure-flags and inputs
<lilyp>the root user shouldn't matter to sudo
<nckx>rdrg109: The paste snippet pasted by lilyp does just that, make it visible.
<geri>are packages installed for package's inputs available in the user shell?
<lilyp>you can try sudo -E to be extra sure
<rdrg109>I hadn't seen the paste snippet. Ok, I'll try that.
<nckx>geri: If ‘user shell’ means ‘guix shell’, yes, with ‘-D PACKAGE’.
<lilyp>(-E is for --extra-sure, trust me)
<nckx>-ECITATIONNEEDED
<geri>nckx: i mean like ill just open bash as user that installed the package and will they be available
<vivien>ulfvonbelow, well, in that case, you might need to build the gexp first, but the gexp may not be self-sufficient
<nckx>geri: …no.
<geri>sad
<geri>time for hacks
<nckx>OK.
<ulfvonbelow>aye, it may well refer to things like %build-inputs
<nckx>Imagine installing anything and having gcc and make available. It would be hell. It would be Gentoo.
<ulfvonbelow>if it were a list instead of a gexp, I could at least match against the common pattern of (list "string1" "string2" ...)
<geri>nckx: true enoug
<geri>h
<geri>100000000 things in PATH
<nckx>
<janneke>except for the few packages you cared to "deselect"
<lilyp>nckx: not enough USE flags to possibly conflict
<nckx>Not sure if eselect pun or
<janneke>eselect?
<geri>:D
<geri>a binary in gentoo janneke
<nckx>(A Gentool.)
<lilyp>deselect, debuild
<nckx>Too slow.
<geri>neat nckx
<lilyp>demerge
<rdrg109>lilyp: I ran the commands in your paste bin (I edited nss_certs to nss-certs) since that's the correct name of the package) but I still got "Git error: the SSL certificate is invalid")
<janneke>ACTION only ever used debian
<geri>lilyp: lmao
<lilyp>gentoo also has ebian to mimic debian
<janneke>in the early years you would deselect packages using deselect (or dselect?)
<nckx>Someone might have asked already, but is your clock set correctly geri? If so, does sudo bash -c 'ls $SSL_CERT_DIR' print a list of certificate roots?
<nckx>Note the ', not ".
<vivien>I have never used gentoo, but I heard we owed them elogind
<nckx>Also sudo bash -c 'ls $SSL_CERT_FILE'.
<geri>are you referring to a proper person nckx
<lilyp>you are a proper person geri, but I think nckx meant rdrg109 as recipient :)
<nckx>I'm referring to you in my last messages. I don't know if you're a proper person.
<nckx>Oops.
<geri>it's rdrg109
<nckx>Friends, reading is hard.
<lilyp>agreed
<lilyp>that's why I think we should sign off our commits with smug anime faces from now on
<nckx>‘There's a g in there, looks good to go.’ 🧠
<vivien>ACTION didn’t understand who responded to whom, but is too afraid to ask at that point
<geri>nckx: XD
<nckx>I meant to respond to rdrg109 but instead hit g<TAB>.
<nckx>It all went downhill from there.
<rdrg109>nckx: sudo bash -c 'ls $SSL_CERT_DIR' => ls: cannot access '/etc/ssl/certs': No such file or directory
<nckx>Right.
<nckx>And with ‘sudo’ → ‘sudo -E’ ?
<liberalartist>In a shepherd action or destructor, is there a way to waitpid with a timeout? Ideally I'd like a `waitpid-operation`, but blocking the fiber would be ok, just not blocking the shepherd. I've found how (shepherd service) does this internally, but it's complicated and not exported.
<ulfvonbelow>currently there isn't really a good way to use waitpid from shepherd.
<nckx>rdrg109: Hm, if SSL_CERT_DIR and GIT_SSL_CAINFO do work in the sudo shell, _FILE might not be required.
<rdrg109>nckx: sudo bash -c 'ls $SSL_CERT_DIR' => (lots of lines) http://0x0.st/HONU.txt
<rdrg109>^ sudo -E
<ulfvonbelow>I have some patches sitting around on that subject that I should probably look into sending upstream
<geri>where is the `package' record defined
<nckx>Right. That I expected (you didn't need to paste them, but thanks!)
<nckx>geri: (guix packages)
<geri>thank
<liberalartist>ulfvonbelow: thanks
<rdrg109>nckx: I didn't understand your last message. Could you elaborate?. => Hm, if SSL_CERT_DIR and GIT_SSL_CAINFO do work in the sudo shell, _FILE might not be required.
<nckx>Here's a dirtier idea: does ‘ls /gnu/store/*/etc/ssl/certs/ca-certificates.crt’ return anything? (Just yes/no.)
<nckx>If so, run ‘export GIT_SSL_CAINFO=<one of those lines>’, then try reconfiguring again.
<rdrg109>nckx: yes, 9 files
<nckx>It should matter little which one you choose.
<liberalartist>In case being specific helps, I was hoping to do something like `make-kill-destructor`, but
<lilyp>liberalartist: since fibers execute on one OS thread, there's no blocking the fiber without blocking shepherd, sadly
<liberalartist>(a) with an additional level of niceness before falling back to SIGKILL, and (b) running a helper program instead of sending raw signals could give better feedback.
<rdrg109>nckx: same error
<nckx>Not what I expected. What's the full output of ‘sudo -E guix system reconfigure /etc/…’?
<nckx>The -E is almost certainly redundant, we're just being too cautious because IRC.
<liberalartist>lilyp: Maybe I'm not translating my Concurrent ML to fibers correctly. When I say "block the fiber", what I mean is the kind of blocking `perform-operation` would do on a `get-operation` until the channel gets a message. Like, in Racket I can `sync` on a subprocess value.
<ulfvonbelow>what you need is to wait for the process monitor to report child termination
<rdrg109>nckx: Thanks. That got rid of the problem, but now another problem aroused: http://0x0.st/HONd.txt This one is my own fault, because I have installed Guix in an EFI partition created by w1nd0ws
<ulfvonbelow>but there are several issues with that in current shepherd
<ulfvonbelow>especially race conditions
<ulfvonbelow>e.g. what happens if process dies and is reaped before I ever tell the process monitor about it
<nckx>rdrg109: I don't see why that would be a problem? Is that ESP (‘EFI partition’) mounted at /boot/efi? (I.e., does /boot/efi show up in ‘mount’ output?)
<liberalartist>ulfvonbelow: yes, I'd seen (put-message (current-process-monitor) `(await ,pid ,reply)), but it's not public. And I guess the complexity I didn't understand in `process-monitor` is because Guile has you do all of this with just posix apis.
<rdrg109>nckx: This is what "mount" shows: http://0x0.st/HONF.txt
<nckx>You need to mount your ESP. Guix system reconfigure doesn't do this for you.
<nckx>You could add it to your file-systems to have it mounted at boot.
<nckx>Some paranoid people don't, though.
<mirai>liberalartist: see how get-message* in (shepherd service) does this
<mirai>and adapt
<mirai>coincidentally yesterday I wrote a shepherd-service that makes heavy use of fibers <https://paste.centos.org/view/59809036>
<honey-apple>"Untitled - Pastebin Service" https://paste.centos.org/view/59809036
<mirai>maybe you can take some inspiration from it?
<ulfvonbelow>now I'm curious what they're paranoid about
<ulfvonbelow>"can't clobber the bootloader if it's not there"?
<bumble_>to simplify my xdg home services configurations, rather than copy multiple ./config/qutebrowser/* files, I tried instead to only (local-file "/path/to/config/qutebrowser" #:recursive? #t) and a symlinked ./config/qutebrowser directory was created but qutebrowser fails to start when it is unable to write to that directory... has anyone else tried this does anyone have a solution?
<rdrg109>nckx: Thanks for the detailed information. I'll add it to (operating-system (file-systems ...)). Do you know what values should I use for (file-system (device (uuid "BE1B-A35F" <<here>>))) and (file-system (type <<here>>)) for an EFI partition created by W1nd0ws?
<bumble_>the destination directory of the symlinked qutebrowser directory is owned by root, so qutebrowser process cannot write
<liberalartist>mirai: I saw that, but (shepherd service) doesn't seem to provide a public api for to get an operation from a pid. Though in my case maybe I could just sleep for the initial timeout, at the cost of never stopping earlier than that ...
<geri>bumble: check if you can configure qtb not to put anything into that directory
<nckx>rdrg109: blkid should tell you the UUID. I think the type is vfat. I don't use UEFI.
<rdrg109>lilyp, nckx: Ok! Thanks for the help. I've learned a lot.
<bumble_>geri: thanks, no it doesn't allow that https://github.com/qutebrowser/qutebrowser/issues/6051
<honey-apple>"Allow sourcing bookmarks and quickmarks from user defined location · Issue #6051 · qutebrowser/qutebrowser · GitHub" https://github.com/qutebrowser/qutebrowser/issues/6051
<geri>i have the same issue with mpv's watch_later, havent resolved...
<bumble_>there are other configurations besides qutebrowser which fail to work when using a root-owned symlinked xdg config directory
<bumble_>I guess I'm out of luck :)
<geri>or do stuff manually, file by file
<geri>but it aint pleasant
<geri>like you did before using #:recursive i mean
<bumble_>maybe it would be nice to have something that recurses the config directory then writes only the individual files discovered there...
<mobile-geri>dealing with paths in guile is a pain in my experience so far
<mobile-geri>but im sure there's a way
<bumble_>understood
<nckx>rdrg109: Ah, I think (uuid "string" ...) takes an optional type symbol argument like 'fat because FAT "UUIDs" are different.
<nckx>Forgot to mention that, sorry. Maybe grep the manual.
<rdrg109>nckx: Ok, thanks!
<mirai>liberalartist: you can use waitpid WNOHANG and do a loop + sleep (sleep from (fibers) module that is)
<animah>Hi, I'm a newbie with guix but eager to learn. I would like to know a way to list all the modules included in my current initrd.  Any pointer would be appreciated.
<animah>I've tried editing config.scm with (kernel-arguments '("gnu.repl")) but once in the bootstrap stage at the initial RAM disk before it tries to load kernel modules and to mount the root file system, I'm not sure how to ask for the currently loaded modules.
<nckx>Before?
<nckx>There will be none.
<nckx>Giggity gack, horrible hack: zcat $(grep -om1 '/gnu/store/.*/initrd.cpio.gz' /boot/grub/grub.cfg) | guix shell cpio -- cpio -t | grep modules/
<animah>After the grub, before the kernel kicks in.
<nckx>The kernel has long since kicked in by the time you get that REPL.
<nckx>The REPL is also… I don't recommend using it for anything, TBQH.
<animah>OK, I thought there was an initial bootstraping stage based on the initrd before the full kernel.
<mobile-geri>how do i stop crying over multiline strings borking my pretty formatting
<mobile-geri>:D
<nckx>animah: The kernel decompresses itself, does some early init stuff, decompresses the initramfs, then execs /init (a Guile script in our case). Kernel subsystems will keep initialising in parallel, but the Linux kernel is running the whole show.
<nckx>mobile-geri: FORMAT's ‘~@’?
<animah>OK, I understand better now.  Thanks!
<geri>nckx: https://0x0.st/HOqS.scm
<nckx>mobile-geri: See, e.g., herbstluftwm.
<nckx>Ah, oof.
<geri>it's perfectly functional but tear-enducing
<geri>iirc gnu coreutils' C code looks about as ugly cause of them too
<geri> https://codeberg.org/hako/Testament/src/branch/trunk/dorphine-home.scm
<honey-apple>"Testament/dorphine-home.scm at trunk - Testament - Codeberg.org" https://codeberg.org/hako/Testament/src/branch/trunk/dorphine-home.scm
<geri>i very much understand this sentiment now
<geri>honey-apple: jinx!
<geri>:D
<geri>just gotta somehow get rid of those \n's at the end...
<geri>or maybe i just need to abandon emacs' linting for this file
<geri>well, i broke it into 3 files and using includes, gg
<RavenJoad>I know I asked this, but I had my VPNs disconnect me. Would/Can the baseXX.scm files in Guix ever be worked out to a separate library? I ask because they are useful, but I do not want to pull in all of Guix for my tool.
<geri>can you give an example path to baseXX.scm file? i don't think i've seen one of those before
<anadon>Can someone tell me how to regenerate profiles.go mentioned in https://issues.guix.gnu.org/28144 ?  I really don't know what that means.
<honey-apple>"info-dir ERROR: no code for module (guix build utils)" https://issues.guix.gnu.org/28144
<geri>16/32/64 thing? RavenJoad
<RavenJoad>geri: (guix base32), in guix/guix/base32.scm (There are base16 & base64 variants, hence the XX).
<nckx>geri: https://git.savannah.gnu.org/cgit/guix.git/tree/guix/base32.scm
<honey-apple>"base32.scm\guix - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/guix/base32.scm
<geri>ah okay
<geri>looks arcane to me :D
<RavenJoad>I want the bytevector->base32-string function to generate path names for files from their contents (after running through guile-gcrypt's file-sha256 function), but not grab all of Guix, like I said.
<nckx>RavenJoad: You certainly can, but I think Guix will keep using these copies. They are both tiny and too central to Guix.
<nckx>I mean, feel free to fork 'em but don't expect Guix to use your library.
<RavenJoad>Ok. I'm curious, why wouldn't Guix use a separate library for those functions? Would it make the bootstrap harder or something?
<lilyp>I mean, splintering stuff into too many tiny useless libraries may be the final state of software according to NPM, Rust et al., but we are aware that you can just copy code around.
<RavenJoad>I'm fine with both, but I reasoning is that I want to get the same quality patches to the base32 code as Guix gets.
<mirai>there's always another option: if the procedures are “general enough” get them in Guile
<mirai>or who knows, RnRS / SRFI
<RavenJoad>I don't know how general these really are. They convert a #vu8 to base32-encoded string. Kind of only useful for Guix and similar tasks.
<lilyp>tbf base32/base64 encoding is considered stdlib in some languages/frameworks and not in others
<nckx>Extreme but not entirely facetious idea: make your project depend on Guix for those 3 files. The anti-NPM.
<lilyp>source: I've been hacking up something extremely cursed last week and my best choice for implementing it was C/GLib
<RavenJoad>nckx: Given that this is meant to be built with Guix, not terrible for building, but terrible for distribution.
<lilyp>better yet: make your project depend on a tree-shaked guix that only contains of this module and whatever it pulls in.
<lilyp>s/contains of/consists of/ or s/contains of/contains/, choose one
<RavenJoad>That second option seems better... Now how to tree-shake Guix (If Guile has tree shaking).
<nckx>I'm about to look up tree-shaking. I better not regret this.
<RavenJoad>If the tree-shaking thing doesn't really work out, perhaps I will just fork it off to a separate thing and maybe Guix will eventually use it. Who knows.
<lilyp>RavenJoad: there's not really that much magic to it. Just declare a package that uses guix' source, delete all the stuff you don't need with a snippet and then use guile-build-system normally
<nckx>Oh it's garbage collector roots for your ay es tree.
<bumble>geri: if you are still hanging around here... I decided to try and write something to recurse the directory and want to share with you to get your input
<RavenJoad>lilyp: The tree-shaking or the forking?
<lilyp>manual tree-shaking ._.
<bumble>geri: https://paste.debian.net/1292167
<honey-apple>"debian Pastezone" https://paste.debian.net/1292167
<bumble>geri: its kind of a start... if you have any input or suggestions feel free to give those
<RavenJoad>lilyp: Thankfully, (guix base32) only uses srfi, rnrs and ice-9, so deleting files with a snippet would work.
<geri>bumble: it seems you know way more about guile libraries than me here :D
<helioscultist>what does this do: Customize users Bash shell prompt for Guix? [Y/n]
<geri>i think it adds smth to ~/.bashrc or ~/.bash_profile when you're in guix shell, might be wrong tho
<geri>(or ~/.profile)
<helioscultist>ty
<geri>bumble: i can say that you will still most likely need to specify complete path to a file to function properly
<PotentialUser-60>Is there any libre open source driver available for graphics cards? In guix ?
<bumble>geri: do you mean for the output/destination, or do you mean for the input that is recursed?
<geri>bumble: for input
<lilyp>PotentialUser-60: We have nouveau for old nvidia cards and whatever works for intel integrated graphics
<lilyp>if you're on amd, chances are that you'll be having a bad time
<geri>i thought nvidia meant a bad time
<PotentialUser-60>How old?
<ulfvonbelow>random thought: it would be neat to have an unquote-splicing-values
<klm`>nckx: andreas-e: I built beignet and ran clpeak against it and everything seems for work. Thanks a lot for fixing OpenCL support for Intel processors!
<ulfvonbelow>consing up an extra list every time you want to conditionally splice something intoa quasiquote just seems so sad
<nckx>klm`: You're welcome.
<ulfvonbelow>maybe with a read syntax of ,*
<somenickname>geri: Can you paste again your cli.scm from yesterday? Sadly the paste isn't working anymore and I didn't copied it
<somenickname>PotentialUser-60 for nvidia https://nouveau.freedesktop.org/FeatureMatrix.html amd and intel require firmware blobs to even run libre firmware.  For flawless graphics you can count on 10 years or without specific features
<honey-apple>"FeatureMatrix" https://nouveau.freedesktop.org/FeatureMatrix.html
<somenickname>for example my 10 year old intel igpu works without problems in linux libre.
<stikonas>somenickname: at least current generation on intel run fine without uploadable firmware blobs
<stikonas>it just uses whatever is stored in ROM
<stikonas>but I think that might change in the future and it will not work anymore in next generation
<geri>somenickname: https://0x0.st/HOH1.scm, sorry for slows
<geri>though if the program tries to write something to your config directory it's gonna fail miserably, it can break some functionality
<geri>kinda forgot about that yesterday
<somenickname>stikonas: With all features or will decoding or something not work with libre?
<somenickname>geri: Thanks.  A permission problem or why is this happening?
<geri>somenickname: yeah, cause directory is read-only, so trying to write there will result in something between breaking down completely and just giving warnings
<geri>i dont like emacs putting stuff into my config directory so its fine, most variables are overridable anyway, but mpv's watch_later doesn't work atm and i need to fix it
<PotentialUser-60>Is WiFi 6e supported?
<stikonas>somenickname: not sure about decoding, but 3D works
<stikonas>PotentialUser-60: nothign newer than Wifi 4 is supported
<stikonas>and very unlikely to be in the near or mid-term future
<PotentialUser-60>Is it due to libre linux-kernel not supported? Or something else?
<nckx>The reliance on proprietary firmware blobs, so yes.
<geri>:(
<geri>why cant we have nice things
<janneke>so that we may build nice things
<geri>)
<bumble>maybe this function could look like this: `(recursive-home "config/qutebrowser" "config/mpv")` and return alists that can look this way... `'(("qutebrower/config.py" . file-like-configpy))`
<geri>the problem is guile will try to resolve config/qutebrowser from ~ instead of wherever you want/need it, so you'll have to hardcode the full path
<bumble>the config home pathname would be "start" from the last name i the path used to speficy the inut directory
<geri>might be fine
<bumble>geri: yes I think its okay if you think its okay
<bumble>maybe ... `(recursive-home (cwd) "config/qutebrowser" "config/mpv")`
<bumble>this way the directory could be specified
<PotentialUser-60>Is Bluetooth 5 available?
<geri>use (current-source-directory) from (guix utils) instead of cwd
<bumble>okay I'm not familiar with that (not familiar with much at all tbh I'm a novice)
<bumble>the debian paste ample didn't work quite well either map needed to be fold
<geri>i just suffered a lot trying to make relative paths work :D
<PotentialUser-60>somenickname , honey-apple thank you.
<stikonas>PotentialUser-60: and the reason why new Wifi versions are won't work without firmware is basically host is too slow to react to high speed wifi events
<stikonas>oh, too late...
<geri>:(
<geri>how do i put a local file into %output when building a package w/ trivial-build-system?
<geri>like copy it so i can modify stuff
<ulfvonbelow>guile has a copy-file procedure I believe
<stikonas>PotentialUser-60: the reason why new Wifi versions are won't work without firmware is basically host is too slow to react to high speed wifi event
<geri>let's see if it accepts relative paths...
<ulfvonbelow>you can use #$(local-file <path to file>) within a gexp to refer to a local file (actually a place in the store it gets copied to) from a builder
<stikonas>PotentialUser-60: so basically it's not feasible to make devices without firmware
<stikonas>PotentialUser-60: so basically it's not feasible to make devices without firmware
<stikonas>the only way is to have free firmware, but no firmware is no longer an option
<geri>ulfvonbelow: that's what i was planning to do too, though it sounds a tad dirty for sure
<geri>cause there's at least gonna be 2 copies of the same poor file in store
<ulfvonbelow>I thought the goal of copying it was to later modify it?
<geri>only to set executable bit...
<ulfvonbelow>¯\_(ツ)_/¯
<geri>agreed
<ulfvonbelow>I think there's at least one store RPC that should allow for directly uploading a file that has the executable bit set
<somenickname>doesn't hardware don't even really know what it needs to do without firmware?
<geri>rpc?
<ulfvonbelow>remote procedure call, how the guix client software talks to the daemon that manages the store
<geri>ah
<lnnk>OK so new WiFi is faster than firmware. That is a new info thank you. So Will it be always stuck in WiFi 4?
<stikonas>somenickname: well, depends on hardware. I think some of those wifi4 (802.11n) chips were just controlled by host driver
<stikonas>lnnk: unless somebody is able to write free firmware
<stikonas>openwifi is most likely one to support new Wifi
<ulfvonbelow>geri: add-to-store with #:recursive? #t will preserve permission bits on a regular file
<stikonas>but those are FPGA boards, so expensive
<stikonas>(and also I'm not sure if they support building wifi cards without proprietary synthesis tools)
<stikonas> https://github.com/open-sdr/openwifi
<honey-apple>"GitHub - open-sdr/openwifi: open-source IEEE 802.11 WiFi baseband FPGA (chip) design: driver, software" https://github.com/open-sdr/openwifi
<ulfvonbelow>... and add-to-store is called by interned-file, which is called when a <local-file> is lowered
<ulfvonbelow>so if you just use (local-file ... #:recursive? #t), it should preserve the execute bit
<geri>hmmmm
<PotentialUser-60>I am planning to create a libre PC which processor is best intel or amd ?
<geri>i honestly didnt even think about going deeper into store code haha
<geri>thanks for a pointer
<ulfvonbelow>👍
<RavenJoad>PotentialUser-60: Depends on how libre you want to go (unfortunately).
<PotentialUser-60>So it will take some time to create open source  new WiFi.
<PotentialUser-60>Is Bluetooth 5 supported? In guix
<PotentialUser-60>After some time I think I found. All open source parts required at https://www.h-node.org/home/index/en thank you all.
<honey-apple>"home - h-node.org" https://www.h-node.org/home/index/en
<mirai>lilyp: WDYT on splitting gtk-doc & gtk-doc/stable to an independent module? Context: see comment on <https://issues.guix.gnu.org/65479#35>
<honey-apple>"[PATCH core-updates 00/61] The Draining of the XML & DocBook Swamp." https://issues.guix.gnu.org/65479#35
<mirai>it looks odd that (gnu packages xml) would depend on (gnu packages gtk) but maybe that's just me
<mirai>though leaving that comment+workaround there gives the impression of a code smell that is avoidable
<geri>for smaller wrapper scripts, guile vs /bin/sh? :)
<RavenJoad>geri: What do you mean? Like the small wrapper scripts Guix sometimes creates for programs?
<ulfvonbelow>if all it's doing is setting some environment variables? run 'time guile -c "(exit 0)"' and listen to your heart
<geri>guile is 2 times shower than bash here lole
<geri>yeah, set env vars, launch the thing with special arguments and stuff like that, nothing huge
<mirai>depends on guile script compilation tho
<mirai>if you want to do really trivial things (ba)sh is ok, though do run it through shellchecker to confirm it
<mirai>otherwise I'd go with a guile script (or any proper lang)
<geri>my bspwm setup rn creates a guile script that calls a shell script (startx wannabe) that calls bspwm with another guile script that calls a shell script
<geri>it makes me cry
<RavenJoad>If you use program-file, does Guix also byte-compile that for you?
<geri>shrug
<lilyp>mirai: we already have special names for those, so I don't see why we ought to propagate it or use other such constructs
<mirai>special names?
<lilyp>$variable-name
<lilyp>I see now that you've introduced them yourself, but still
<mirai>oh right
<mirai>I was thinking that by “we already have” to be something in guix master
<lilyp>nah, it was more meant like "at this point in the series"
<geri>man, the way startx is overcomplicated on guix is painful
<RavenJoad>Is it possible to have multiple sources for a package? Or mutable inputs? I am trying to make something cludgey work.
<ulfvonbelow>the "primary" source, so to speak, goes in the source field, but you can just as well put origins in native-inputs
<mirai>geri: refactor it if you can :)
<lilyp>RavenJoad: you can use the "unpack after unpack" pattern
<RavenJoad>ulfvonbelow: I have tinkered with that. But there is a circular dependency here.
<mirai>ulfvonbelow: it doesn't work too well if you don't add labels to everything
<mirai>(native-inputs (list hello `("foo" ,(origin …)) gtk …)) doesn't work
<RavenJoad>I have scripts that users can provide, and I am adding an environment variable to them, APCCONTROL, which points back to the apccontrol script. That script needs to know the output path of the file-union of those scripts.
<RavenJoad>lilyp: Do you have an example of that?
<lilyp>ppsspp for a pretty ugly one :)
<lagash>Quick question: is it discouraged to use `name` in package `origin`s? I grep'd and saw a few packages using it, but I vaguely remember some source saying not to.
<geri>mirai: i mean having to write your own script w/ xinit
<mirai>lilyp: I think patches 53-55 are self-contained enough to be cherry-picked for gnome-team if you feel like integrating these earlier
<geri>startx itself doesnt seem to work at all
<lagash>OK, I found it: "Don’t use the name field in the URL: it is not very useful and if the name changes, the URL will probably be wrong." - https://guix.gnu.org/en/manual/devel/en/html_node/Submitting-Patches.html
<honey-apple>"Submitting Patches (GNU Guix Reference Manual)" https://guix.gnu.org/en/manual/devel/en/html_node/Submitting-Patches.html
<mirai>would need to be tested and if I'm not mistaken building libical should serve as litmus test
<lilyp>mirai finally got around to comment on 63985