IRC channel logs
IRC channel logs
2023-09-16.log
back to list of logs

Do you have a handy incantation for me? I'm unfortunately a big noob when it comes to scheme

I do not lol
here's the part of the manual I would read to come up with one

"Match Structures (Guile Reference Manual)"

This might take me a while

guix is like that sometimes...

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

probably NVME is good enough

Yeah, the regex is no problem

The scheme is

well if string-match returns a non false value it matched

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

something like this

"debian Pastezone"

Nice

A little too long to remember when I reboot though

Understandable lol

it's not so bad once you get used to it

Gonna do a "boomer screenshot" of it and try

it may not return if it doesn't match

beware

okay, brb

it will return with an eof error

I get unbound variable string-match

Tried adding (use-module (ice-9 match)), but still unvound

string-match is part of the default namespace i thought...

I tried just calloing string-match on it's own also, but same thing

`guix shell guile --container -- guile` has string-match available to guile-user

perhaps the recovery shell is in a different module

or is a stripped down version

maybe

i think its regular guile

The line editing is certainly stripped down

No up arrow or anything like that

its character building

I think I'll give up for tonight, maybe try again tomorrow

Found this:

Seems strin-match is in a modules

Ok, I see. It is actually stated in 6.13 that you need to load (ice-9 regex)

I'll do one last reboot try tonight

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

[1~

unfortunate to hear

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?

dhcp-client-service-type does not have any real way to configure it, despite dhclient having a configuration file.

hi people !

I installed guix

Which DE or WM should I install ?

I installed emacs-next only

Now pulling

I tried several times to run a Desktop Environment but it has failed

Did the installation not prompt you about what DE you want?

drewjose: not that ... I mean I couldn't run a DE

hwpplayer1: Did you enable the desktop environment as a service-type?

I don't know that

RavenJoad: ^

Now I will install a WM after pull finished

(guix) Desktop Services

please wait

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".

okay

I will ask that later

first is getting the pulls

It is 43%

What library does Guix use to hash things?

RavenJoad Libgcrypt via Guile-Gcrypt

"Invoking guix hash (GNU Guix Reference Manual)"

Ok, cool. I don't need the cryptographic hashing, but that is what my quick searching through Guix's source turned up too.

are you doing something with guix internals?

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.

Ah sounds cool!

Thanks! I appreciate Zotero, but know it won't be in Guix for a while, so I am writing this one.
if you are interested.

"GitHub - KarlJoad/gloa: Academic article managment with GNU Guile"

Is mooncake the new sneek?

I'm back

what does computing guix derivation mean ?

sneek: later tell RavenJode: absolutely not >:((

Will do.

I'm installing OpenBox

what should I do next ?

open a window?

how ?

startx ?

put "xterm" with a carriage return into .xinitrc

do you like to write full command ?

coming

you need a single line with "xterm" in .xinitrc

where is the .xinitrc file ?

~/.xinitrc

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

to start X, try making this executable

"View paste OLXA"

I can't see .xinitrc file

please create with your favorite editor

okay

What should I write into this init rc file ?

xterm with a return after it

okay

no quotes, no ampersand

let me try my best

then ?

that'll run when X starts

I wrote xterm into .xinitrc file

did you hit return?

so the cursor was in the next line when you saved it?

xterm and enter

great

now, starting X is a bit harder in Guix

but startx returns null

i know

command not found

what should I do next ? 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

do you like to elaborate the issue ?

i.e. guix shell xorg-server xterm (and probably openbox

there isn't much to add to "file not found"

starting X is a little harder, though

what should I do now lechner ?

what's the last thing you did?

adding xterm into .xinitrc

guix shell xorg-server xinit

okay

now save these two scripts locally

"View paste OLXA"

and

"View paste IRMA"

It is downloading some files lechner

the latter is a shell script that I used until this morning. you make it executable with chmod +x (name of script)

the former is the same in Scheme but it is untested. i just wrote it today

It is finished now lechner

what should I do next ?

you used the download links at the bottom?

are you talking to me ?

yes

which links ?

how did you save the files?

I edited only one file and it was .xinitrc

now save these two scripts locally

"View paste OLXA"

and

"View paste IRMA"

How can I download them ?

I only have Emacs

I copied the first one

i see

is it xinit.scm ?

that's the one i haven't tested

and where should be the file which directory

just your home will do

xinit.scm ?

that's where mine are

what is the name of the file ?

xinit.scm

okay

try wget or curl on this

or this, if you need it again

the second one is just xinit.scm again

what is the IRMA config's file name

please make sure you got the code, and not some HTML

where should I put it ?

xinit.sh

okay

then ?

then chmod +x xinit.*

and then, in your home directory ./xinit.sh

maybe stick the fingers in your ears

okay

anything happening?

It says command not found

which shell are you using?

are you inside the Bash shell provided by guix shell?

Bash

which xinit

okay let me try again

I'm inside guix shell xorg-server xinit

how about which xinit

and maybe which Xorg

okay I will write which xinit

with a capital X

and Xorg

They are both exists

great

Then ?

is Emacs your login shell?

or did you type emacs in order to start it?

I have to tty and one is for Emacs Shell and the other one is system shell

I run Emacs in tty1

these are virtual, right?

and the other shell is inside tty2

yes

either one should work, but i'm not sure what will happen to your Emacs.

why don't you switch to the shell tty2 and type guix shell xorg-server xinit

I did

and then check for the commands with which and come back here

It says no such file or directory

inside guix shell xorg-server xinit ?

yes

are you using guix home?

./xinit.sh says no file or directory

Guix home ?

okay, just do guix install xorg-server xinit

okay

and re-source the profile, if needed (that's the dot in the second line)

then try which xinit again, please

there is a file xinit in store

but I can't run ./xinit.sh

or startx

what is the output of which xinit please?

or command -v xinit

that's not the same as ./xinit.sh

/home/hwpplayer1/.guix-profile/bin/xinit

great.

and then please ?

now let's talk about the plan. if all goes well, you will have an xterm but no window managers

there are only three things you can do, other than perhaps switch back to emacs via C-M-1

you can run commands in xterm, usually one at a time

i do not recommend using the ampersand at this stage

you can also hit C-d, which will terminate X

or you can move the mouse and see the cursor fill in when the mouse is inside the xterm

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

anyway, please just head over there and type ./xinit.sh

then you want to start a window manager, but i do not recommend the ampersand at this state

stage

then you can terminate the window manager with C-c

I couldn't understand

okay, just head over there and type ./xinit.sh please

.xinit.sh failed

how

parse_vt_settings: Cannot open /dev/tty0 (Permission denied)

are you on a console?

emacs shell

only shell

not eshell

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

sorry, it's F1 F2 and so on

yes

I know

you won't have to bother with guix shell anymore

the packages are in your user profile

maybe your XDG variables aren't set. just open ./xinit.sh in an editor and hardcode vt1 or vt2, depending on where you are

or will be

I'll be back

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 / 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

Okay.

Have a good one lechner!

hi, and thanks!

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?

For
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?

"info-dir ERROR: no code for module (guix build utils)"

janneke: the guix derivation is still failing, but now because a different test that seems unrelated (but why only that branch?)

gnu-maintenance.scm:159 "rewrite-url, without to-version" fails with (getaddrinfo-error -8)

Is there a ``guix gc --but-save-common-dependencies'' command? Each time I gc I need to redownload a ton of stuff.

cow_2001, what do you mean, "common dependencies"?

I don't know, really. Just stuff that keeps being redownloaded each time I install stuff. Maybe ``guix system'' stuff? Maybe ``guix install'' stuff.

I don't remember their names right now, but I see them.

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.

Hmm.

What's a ‘dependency’ here?

There are the ‘--gc-keep-outputs’ and ‘--gc-keep-derivations’ arguments to guix-daemon.

I imagine “dependency” just means “thigns that are frequently used and dependend on (by the user)” in this case.

I.e. things that you’ll want to use anyway, even if it isn’t explicitly dependend on by a profile or root.

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?

Oh well, ci says there are 56 changes, so I guess it’s OK

mbakke: yeah

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?

ACTION is adds nss-certs to bare-hurd.tmpl for now to see how that goes...

ACTION meant to ask apteryx about this

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?

Okay.

sneek: botsnack

:)

janneke, I got some hurd builds going again, and it seems to be going well

"Activity bordeaux.guix.gnu.org Build farm"

cbaines: oh that's lovely

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

I think ludo has been working on ci, but I'm not sure what specification (if any) is building hurd things

yes, we added etc/hurd-manifest.scm, but something cuirass needed to happen iirc

for that to work

did i say "for the Hurd"? i meant getting it build _on_ the hurd!

vivien: It passed through QA, so there were not too many dependencies, and they got built and are available on the bordeaux build farm.

Does QA punt if there are too many rebuilds?

Having substitutes is good, but not enough to push mass-rebuilds to master (hypothetically; I'm aware that this wasn't one).

hi!

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

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.

This is giving me some problems, with emacs (and some other software I couldn't remember now)

zimoun: Subject: bug#63986: [PATCH 0/2] Fix bug#63986: Julia is very slow?

"Julia is very slow"

janneke, honey-apple: oh? this had been assigned to bug-guix and not guix-patches.

Well, it is confusing. What does it make be redirected to 63986 when I am explicitly sending to guix-patches?

Is the subject #63986?

"Julia is very slow"

zimoun: possibly the body text?

hi people !

Welcome back hwpplayer1, you have 1 message!

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

that would be "scary" tho...

how are you doing janneke ?

zimoun: Which command did you use to send that, exactly?

git send-email –to=guix-patches@gnu.org 0000-cover-letter.patch

hwpplayer1: /me feels like fighting uphill battles to get guix to build on the hurd; doing just grand thank you

hurd is an interesting project for me janneke

I would like to write documentation for GNU Hurd

Once I asked for that

I have removed from the subject #63986 and from the body and now I get one Debbugs ID.

"Julia is very slow"

hwpplayer1: seen mbakke's

"Try Hurd"

Now I need a Desktop/Window Manager first janneke

zimoun: And 0000-cover-letter.patch didn't mention ‘#63986’ in the subject?

yeah, several people are working to get hurd ci going again

nckx: the first time, yes it was. The second time, I removed it.

once we have that, and we can run guix pull / guix system reconfigure, interesting things may start to happen

What should I do after installing OpenBox package ?

I tried something with lechner but It failed

nckx: if Debbugs redirect based on #12344 in the subject, I was not aware about this “feature” :-)

"24.2.50; Typo in "This variable is safe as a file local...""

zimoun: Redirect?

I'm not sure what you were expecting.

If there's a bug/surprise here, I'm not seeing it.

Can anyone help me about installing and configuring a Desktop or Window Manager ?

If there was no reference *at all* to 63986 in your second mail to guix-patches@, and it still appears on <
>, …where?

"#63986 - Julia is very slow - GNU bug report logs"

References here including In-Reply-To and other hidden goodies.

Well, my aim is to trigger some rebuild by the QA.

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.

Why not?

We'd be fighting a lot of bogus/duplicate bugs if it didn't do that.

People *constantly* reply to NNN@debbugs.gnu.org with guix-patches@ in CC. Constantly.

Treating these as mailing lists would lead to chaos.

Because from my perspective we have two separated “packages“ (Debbugs definition). One is guix-patches and the other is bug-guix.

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.

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.

I think it does.

Friends, sorry I am excited somehow, can someone help me about configuring Window Manager called OpenBox ?

(‘Cc: 63986 debbugs.gnu.org’)

nckx, there's currently a limit of 300 builds per system for patches

"manage-builds.scm « guix-qa-frontpage - guix/qa-frontpage - Guix"

cbaines: IC. Thanks.

but that's overall, and not per individual system

zimoun: You can still create a new bug # now?

nckx: Yes, I did it by removing #NNNN in the subject. :-)

That shouldn't affect testing whether <
> shows up (maybe cbaines can answer my ‘patch’ question too.)

zimoun: Ugh, what a mess.

hwpplayer1: No, sorry.

Patchwork doesn't seem to know about any patches for that issue

"Guix Patches - Patchwork"

cbaines: I only recently added the tag, though, if it's poll-based.

nckx, it's also quite old and QA only looks at a small number of the most recent issues

test

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. :-)

nckx hi how are you doing ? what do you mean by no sorry ?

ACTION looks up kikool world.

hwpplayer1: I cannot help you configure OpenBox.

Okay for another wm ?

Thanks nckx

nckx:

I just wanted you to know you weren't being ignored.

"Issue 66030 Guix Quality Assurance"

nckx, QA currently works by looking through Patchwork and then pulling out the first 250 issues by number

so it doesn't look at the patch tag

Dommage.

nckx: All is fine and clear for me. Thanks for explaining. Thanks cbaines for QA. I have to go. Cheers.

ACTION has run lightdm with gnome in the past but has been using exwm for some years now

sneek: later tell hwpplayer1: Here's how I start Sway, but all the configuration is simply done outside of Guix, in ~/.config/sway/config.

Got it.

ah /me missed they left already...

And my answer isn't very interesting 🤷

well, their questions were not overly specific either

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.

How do you guys test a package that you have defined in a separate channel in the guix checkout?

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?

Guix doesn't depend on any other channels, by design, so this isn't something I've ever done or tried.

geri: Could you please send again cli.scm? The paste from yesterday doesn't work anymore

ACTION away a bit.

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.

pastor: we have known for many years that nvidia is evil, i've always wondered why people keep supporting them?

Because I order to program `non-evil` things I require a working enviroment and this is the hardware availeable.

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?

janneke: Probably because they have the best hardware for graphics.

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).

somenickname: they do not have any useful hardware that works without compromising your freedom

janneke: This may be true but you need to remember that not everyone is aware of the problem with proprietary hw/sw

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

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

pastor: yeah, that last bit makes some sense

Ah you question was dedicated more to him.  Thought you meant generally

selling and re-buying hardware after you've become aware it's troubled that requires some resources, i can aprreciate that

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?

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)

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

exactly

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

ing to end well.

if people made better (more ethical) choices, would the current day situation still be that dire?

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?

Doing so would amount to pushing users towards using our substitute servers when they might otherwise not, which makes me uncomfy.

hello guix!

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

Hullo.

pastor: yes

has someone made (hosted) a Texinfo or info version of R6RS?

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?

pastor: that's a good question

nckx: Can you take a look at <
>?

"[PATCH 0/3] Update psmisc to 23.6."

Since you've been tweaking the package descriptions lately

‘Lately’? But sure :)

pastor: did you read the bit above about my friend and the atheros wifi card?

mirai: Is that patch really 4 years old?

well I did see some commits to the effect when I do some git log spelunking

the “original” yes

though I've given it some new tweaks in the meantiem

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

rsion of mesa you would have answered (I guess).

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

pastor: i believe nckx has tried answering you?

not sure what remains of the original but they do deserve credit

janneke: But I'm worried about newcomers that will get a negative impresion on who is entilted to run Guix

mirai: Okay. Is that public somewhere? (That's my personal condition for adding such ancient copyright lines, that the original be ‘published’ back then.)

pastor: i just don't know much about grafting and channels, my question only was a digression

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.

nckx: original submission is mentioned in the cover letter (so you might want to cc -done to both issues)

Ah, my bad.

one note, the author address no longer works / bounces

nckx, pastor; sorry for my very untimely and unhelpful interference

nckx: I appologize. I was about to respond to your question after I read it more carefuly. I'm not that fast typing

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

janneke: worry not

pastor: you'd be surprised the times I missed a reply of a conversation in progress

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 ♥

I also think my ‘don't do that, then’ answer's a bit disappointing so 🤷

while typing or whatnot its easy for someones message to simply get past your eyes/scroll up

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 😃

pastor: as for the price of a gpu, i wouldn't know, i have no use for them :)

nckx: Now. Give me some minutes to fully read your answare and read about it on the manual

(Also, $50 for an ath? Surely not a 9k? If so, I wish I'd hoarded more and had less of a conscience…)

I got them for 9$

nckx: <
>: $55

"Technoethical N300 Dual Band Wi-Fi mPCIe Card for GNU/Linux - Technoethical"

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

't was several years ago, so yeah

I gave all mine away for free like a chump.

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

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')

pastor: (e-)mail

I've had success running Alfa AWUS036NHA. They seem to run between between $50 or €30.

mirai: yes, setup a childhurd and add an entry to /etc/guix/machines.scm for it

mirai: 💀

pastor: maybe XMPP or matrix

mirai: use something like: (build-machine (name "localhost") (port 11022) (systems (list "i586-gnu")) ...)

janneke: hmmm… not exactly trivial (but certainly not hard)

mirai: Is there any reason why there is no official channel under any of those mediums?

wonder if there's a cookbook recipe for it (or if this can be fully automated)

since there's gnu/tests/… (and the marionette service) it should be possible

pastor: willpower, inertia, … are plausible reasons

pastor: Administration pain. Matrix is super unpleasant to moderate, upstream is hostile & IMO going nowhere fast.

XMPP is fine, but I don't see any advantage over IRC that is actually worth the $effort.


we're both already here in IRC, if you're going to change things the benefits must exceed the “cost”

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…

and by a _good margin_

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

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.

So (define my-mesa …) (define mesa/grafted (replacement my-mesa)) → use mesa/grafted in your substitution, not my-mesa.

nckx: How could the syntax go for that? The manual gives this example. Which I assume rebuild the package `(package-input-rewriting `((,openssl . ,libressl)))`

`((,mesa . ,(package (inherit mesa) (replacement my-mesa) […]))) ; but again, I didn't *test* this, it's just an idea

If it does rebuild the world, then I'd be disappointed and have to sit down & have another think.

And is there a way to apply this `package-input-rewriting` to every package on the system?

For a system configuration

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?

oh my, something is pulling-in glibc-2.33

pastor: I'm not at a computer right now, so all my answers/code are approximate hints.

ah, locale-2.33 -- hmm, do we really want/need that for the Hurd?

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

nckx: specially. How to apply this procedure elegantly to a `gnome-desktop-service-type' or a `plasma-desktop-service-type'

yeah and that fails to build, of course

ACTION needs to get rid of locale-2.33 (and getting rid of locale-2.35 would be a bonus)

pastor: (sevice gnome-desktop-service-type (gnome-desktop-configuration (gnome (my-cool-procedure gnome)))) ?

Also untested, sorry… I can keep pumping out low-quality guesses all day long.

this is so weird; we have

(define %default-locale-libcs

;; The libcs for which we build locales by default.

(if (system-hurd?)

(list glibc/hurd)

and still, when building on the hurd, someone finds a way to leak-in

(list glibc-2.33 glibc)))

apparently

ACTION is puzzled

nckx: seems about it. I will test it out. Thanks!

ACTION goes to override locales-libcs and see how that goes

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?

How do the drvs/builders differ?

Also… so %default-locale-libcs is evaluated in an unexpected context? Or silently unused? This Hurd business is a strange newish world.

nckx: the only difference is

-/gnu/store/...-locale-multiple-versions.drv

+/gnu/store/...-locale-2.37.drv

it's indeed weird

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.

when cross-building i can easily imagine systems getting (if (system-hurd?) ...) getting mixed-up/executed at the wrong time

nckx: eh, it could well be a partial copy...but it doesn't build for the hurd, so yeah

Or is this an input to one glibc?

Oh, I'm not looking at the same branch as you, my %default-locale-libcs contains no provisions for Hurds.

afaics locale-2.33 depends on glibc-2.33 being built

ACTION looks

nckx: ah right, that's on hurd-team; i didn't realise

I should have known.

guess that patch can go onto master

Very exciting to see work being put on getting Guix to work well with the Hurd!

zamfofex: i'm hoping to get guix/hurd in a shape where it's easy to contribute for others

and to run it on real iron, although i'm depending on hurd upstream for that

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.)

thanks; there's no real trouble, only discovering many smallish things that don't work, or don't work anymore

nckx: are debbug issues ever archived?

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

finally: /gnu/store/jsnsf5s9m00ih7b2495l88iqiphvrsbi-system

now, to see if `guix system reconfigure' finally works, or to find what the next hurd'le is...

Hi. Is there a way to get the dependency derivations that a package will build?

I feel like there was a flag, which I don't seem to find, to display this

pastor: guix refresh has

-T, --list-transitive list all the packages that PACKAGE depends on

is that what you're looking for?

janneke: Yeah, thanks. I think... Is this working for you?

mirai: I thought closed bugs were archived after a ~month but it's not something I've paid much attention to.

I'm getting this output

"debian Pastezone"

Is this a bug we should report?

or I'm the only one with the issue

I don't think the variable is looking for is availeable in the latest commits on the `master` branch

It works for me.

pastor: you have the flag in the wrong place

guix refresh --list-transitive cowsay

Sure, but that shouldn't crash.

ah, yes

janneke: My bad. It crashes anyway. I believe `python-fonttools-next` was removed

I'm here `guix (GNU Guix) 67268d9a8109936d9e7e486394fcc021880c6a28` where are you guys at?

Here: <
>.

"guix.git - GNU Guix and GNU Guix System"

nckx: On that commit with `./pre-inst-env` does not seem to crash

ACTION is at

"guix.git - GNU Guix and GNU Guix System"

Bleurgh, merge commits.

Seems that the problem is related to my `GUIX_PACKAGE_PATH` variable

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.)

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

zamfofex: why do we use i686-linux instead of i386-linux?

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.

pastor: i don't know; what about something like: guix build -d $(guix refresh --list-transitive cowsay)

(untested)

hmm, crap hidden packages

you may have to resolve to the guix repl

What's the right way to reply to a mail (quoting the original message) when using emacs-debbugs + default gnus viewer

janneke: Hi see. Thanks for the insight!

mirai: press `F' ?

it sets the header To: … with instead of the author

ah, /me never cares about that

so i tried installing vsftpd

but i got build failed

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 :)

helioscultist: OpenSSL moved on and deprecated some functions used by the ftpd.

I'll push a work-around shortly.

ooooo thanks

"/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."

not bad...

hmm, the command uses: --boot-directory //boot /dev/wd0

who imagines/translates that to hd0?

this all in qemu, of course

ohh, but:

lrwxr-xr-x 1 root root 50 Sep 16 16:40 system-2-link -> /gnu/store/yxnhlz2bm6a1al2yji9pqdv15pnphqhd-system/

lrwxr-xr-x 1 root root 32 Sep 16 16:40 system -> /var/guix/profiles/system-2-link@

\o/

:-°

helioscultist: OK, pull & give it another go.

noooo

it didn't wprk

sorr yforgott pull

does anyone know if `package-input-rewriting` should afect propagated-inputs?

it should affect all inputs

nckx thanks every thing works now

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

this includes arguments that "could be" passed via the arguments field, even if they aren't explicitly passed, like qt-build-system's #:qtbase

Why is this package failing to compile ("arm-none-eabi-ld: cannot find -lstdc++: No such file or directory")?
(build log:

Does arm-none-eabi-toolchain-7-2018-q2-update not have a libstdc++?

ulfvonbelow: thanks

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?

it should honour tags as far as I'm aware

that being said, I'm not sure whether it notices branch switches "mid-way"

As I understand, the tag is part of the "subject prefix" git option, plus the base-commit

yeah, that's what I meant with tags

[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"?

did you run a guix pull first?

lilyp: As non-root user yes, as root user no.

and you reconfigure using sudo or su? if using sudo, that's fine, with su it isn't

lilyp, 65922 (not mine) has an explicit feature branch and a base-commit (4cb2e08b8eb1acc824b72ec17b483d7d85b5af68), but the base-for-issue-65922 tag points to ab971e9c1922ae6eeec47401cb589ae15f29e15f (

"guix-patches - Patches for guix"

"guix.git - GNU Guix and GNU Guix System"

honey-apple: help

vivien: perhaps a formatting error, it ought to be PATCH qt-team

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")

65903 has no feature branch, but targets 07d43c66d5c11fef61f9846fefb97fa18e4764f1, and has been applied on top of e5f7c14ef6c951f02ca710fad1869db3aedff4b5 instead, as far as I understand

"guix.git - GNU Guix and GNU Guix System"

"guix.git - GNU Guix and GNU Guix System"

uhm, is there something strange in your config.scm or channels to worry about?

lilyp: I found this solution:
. 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

"guix-notes/INSTALL.org at 927a46dc754770ec52d3ac047b58a1ac6fbb6a64 · pjotrp/guix-notes · GitHub"

other solution. I'm afraid I'll have to do it.

note that you can run guix system build as a regular user

could you paste your config.scm real quick?

Maybe my problem would be best explained by cbaines

hey, is there a way to next mixed-text-file calls?

im trying to create a wrapper for sway and i need a path to file-like object for config to make the script work

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:

hmm, is there a good way to introspect #:configure-flags when it's specified as a gexp?

and config uses mixed-text-file for setting wallpapers w/ local-file

my understanding is all description of the structure of the gexp and the non-input portions is boxed up into an opaque procedure

rdrg109: I just ran "guix system build"

ulfvonbelow: you can always peek, the question is at what level

geri, what is the problem?

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

rdrg109: is this also your old config, unchanged, or did you add the nss-certs?

oh wait, i might be stupid

lilyp: I added the nss-certs so that after rebooting my PC, the problem doesn't occur anymore.

oh wait, i might be stupid

s/might be/am very

forgot it takes 2 arguments

wdym doesn't occur anymore?

I feel even more so because I did not even understand what your problem was

But if you found your way, cool!


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.

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

because you installed nss-certs as regular user?

and then rebooted?

lilyp: I installed nss-certs as a regular user, but I haven't rebooted yet.

ahh, okay

well, once you reconfigure and reboot you can uninstall nss-certs from the regular user again

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.

Welcome back RavenJoad, you have 1 message!

RavenJoad, angry-sneek says: absolutely not >:((

sneek, why so angry? no botstnack for you :(

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)

> Is mooncake the new sneek?

sneek: s/botstnack/botsnack/

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".

^ I did build the system with "guix system build /etc/config.scm"*

Ok. I just don't keep up with all the bots here and what they do.

okay, so you do still get the error

lilyp: Yes. What's the next step after running "guix system build /etc/config.scm" as a regular user?

I think it should go away if you log in from another tty and rebuild from there

vivien: great, now I just need to do that another 49999 times and we'll be all set

assuming you installed nss-certs as a regular user

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)

s/rebuild/reconfigure/

ulfvonbelow, you may be able to apply this transformation in every transitive input of a package

RavenJoad: There are only 2, and they don't do much.

the thing is, your nss-certs might not be visible to your user yet

ah, looking at libnode, I see it's going the "modify every builder of every package" approach

ulfvonbelow, (guix packages) has package-transitive-inputs

Mmh sorry that is not what you want in fact

that's typically accomplished by sourcing ~/.guix-profile/etc/profile

I'm already using package-mapping for this, doing it recursively isn't the issue

lilyp: I already rebooted my laptop.

it's that I want to modify builders selectively

But you can still introspect a package and modify all its inputs, propagated inputs and native-inputs

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?

yes, I just have to wait a week every time I do it for the world to rebuild

The thing is, some build systems may not understand a specific configure flag the same way

right, and I can make the transformation conditional on what the build-system is

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

rdrg109: Little, but you should be able to sudo guix system reconfigure now, no?

try

"debian Pastezone"

honey-apple, you're not helping

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

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".

lilyp: I think this happens because nss-certs is not visible to the root user.

vivien: `member` doesn't accept gexps.

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

the root user shouldn't matter to sudo

rdrg109: The paste snippet pasted by lilyp does just that, make it visible.

are packages installed for package's inputs available in the user shell?

you can try sudo -E to be extra sure

I hadn't seen the paste snippet. Ok, I'll try that.

geri: If ‘user shell’ means ‘guix shell’, yes, with ‘-D PACKAGE’.

(-E is for --extra-sure, trust me)

-ECITATIONNEEDED

nckx: i mean like ill just open bash as user that installed the package and will they be available

ulfvonbelow, well, in that case, you might need to build the gexp first, but the gexp may not be self-sufficient

geri: …no.

sad

time for hacks

OK.

aye, it may well refer to things like %build-inputs

Imagine installing anything and having gcc and make available. It would be hell. It would be Gentoo.

if it were a list instead of a gexp, I could at least match against the common pattern of (list "string1" "string2" ...)

nckx: true enoug


100000000 things in PATH


except for the few packages you cared to "deselect"

nckx: not enough USE flags to possibly conflict

Not sure if eselect pun or

eselect?

:D

a binary in gentoo janneke

(A Gentool.)

deselect, debuild

Too slow.

neat nckx

demerge

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")

ACTION only ever used debian

lilyp: lmao

gentoo also has ebian to mimic debian

in the early years you would deselect packages using deselect (or dselect?)

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?

Note the ', not ".

I have never used gentoo, but I heard we owed them elogind

Also sudo bash -c 'ls $SSL_CERT_FILE'.

are you referring to a proper person nckx

you are a proper person geri, but I think nckx meant rdrg109 as recipient :)

I'm referring to you in my last messages. I don't know if you're a proper person.

Oops.

it's rdrg109

Friends, reading is hard.

agreed

that's why I think we should sign off our commits with smug anime faces from now on

‘There's a g in there, looks good to go.’ 🧠

ACTION didn’t understand who responded to whom, but is too afraid to ask at that point

nckx: XD

I meant to respond to rdrg109 but instead hit g.

It all went downhill from there.

nckx: sudo bash -c 'ls $SSL_CERT_DIR' => ls: cannot access '/etc/ssl/certs': No such file or directory

Right.

And with ‘sudo’ → ‘sudo -E’ ?

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.

currently there isn't really a good way to use waitpid from shepherd.

rdrg109: Hm, if SSL_CERT_DIR and GIT_SSL_CAINFO do work in the sudo shell, _FILE might not be required.

nckx: sudo bash -c 'ls $SSL_CERT_DIR' => (lots of lines)

^ sudo -E

I have some patches sitting around on that subject that I should probably look into sending upstream

where is the `package' record defined

Right. That I expected (you didn't need to paste them, but thanks!)

geri: (guix packages)

thank

ulfvonbelow: thanks

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.

Here's a dirtier idea: does ‘ls /gnu/store/*/etc/ssl/certs/ca-certificates.crt’ return anything? (Just yes/no.)

If so, run ‘export GIT_SSL_CAINFO=’, then try reconfiguring again.

nckx: yes, 9 files

It should matter little which one you choose.

In case being specific helps, I was hoping to do something like `make-kill-destructor`, but

liberalartist: since fibers execute on one OS thread, there's no blocking the fiber without blocking shepherd, sadly

(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.

nckx: same error

Not what I expected. What's the full output of ‘sudo -E guix system reconfigure /etc/…’?

The -E is almost certainly redundant, we're just being too cautious because IRC.

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.

what you need is to wait for the process monitor to report child termination

nckx: Thanks. That got rid of the problem, but now another problem aroused:
This one is my own fault, because I have installed Guix in an EFI partition created by w1nd0ws

but there are several issues with that in current shepherd

especially race conditions

e.g. what happens if process dies and is reaped before I ever tell the process monitor about it

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?)

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.

nckx: This is what "mount" shows:

You need to mount your ESP. Guix system reconfigure doesn't do this for you.

You could add it to your file-systems to have it mounted at boot.

Some paranoid people don't, though.

liberalartist: see how get-message* in (shepherd service) does this

and adapt

coincidentally yesterday I wrote a shepherd-service that makes heavy use of fibers <

"Untitled - Pastebin Service"

maybe you can take some inspiration from it?

now I'm curious what they're paranoid about

"can't clobber the bootloader if it's not there"?

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?

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" <>))) and (file-system (type <>)) for an EFI partition created by W1nd0ws?

the destination directory of the symlinked qutebrowser directory is owned by root, so qutebrowser process cannot write

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 ...

bumble: check if you can configure qtb not to put anything into that directory

rdrg109: blkid should tell you the UUID. I think the type is vfat. I don't use UEFI.

lilyp, nckx: Ok! Thanks for the help. I've learned a lot.

geri: thanks, no it doesn't allow that

"Allow sourcing bookmarks and quickmarks from user defined location · Issue #6051 · qutebrowser/qutebrowser · GitHub"

i have the same issue with mpv's watch_later, havent resolved...

there are other configurations besides qutebrowser which fail to work when using a root-owned symlinked xdg config directory

I guess I'm out of luck :)

or do stuff manually, file by file

but it aint pleasant

like you did before using #:recursive i mean

maybe it would be nice to have something that recurses the config directory then writes only the individual files discovered there...

dealing with paths in guile is a pain in my experience so far

but im sure there's a way

understood

rdrg109: Ah, I think (uuid "string" ...) takes an optional type symbol argument like 'fat because FAT "UUIDs" are different.

Forgot to mention that, sorry. Maybe grep the manual.

nckx: Ok, thanks!

liberalartist: you can use waitpid WNOHANG and do a loop + sleep (sleep from (fibers) module that is)

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.

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.

Before?

There will be none.

Giggity gack, horrible hack: zcat $(grep -om1 '/gnu/store/.*/initrd.cpio.gz' /boot/grub/grub.cfg) | guix shell cpio -- cpio -t | grep modules/

After the grub, before the kernel kicks in.

The kernel has long since kicked in by the time you get that REPL.

The REPL is also… I don't recommend using it for anything, TBQH.

OK, I thought there was an initial bootstraping stage based on the initrd before the full kernel.

how do i stop crying over multiline strings borking my pretty formatting

:D

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.

mobile-geri: FORMAT's ‘~@’?

OK, I understand better now.  Thanks!

nckx:

mobile-geri: See, e.g., herbstluftwm.

Ah, oof.

it's perfectly functional but tear-enducing

iirc gnu coreutils' C code looks about as ugly cause of them too


"Testament/dorphine-home.scm at trunk - Testament - Codeberg.org"

i very much understand this sentiment now

honey-apple: jinx!

:D

just gotta somehow get rid of those \n's at the end...

or maybe i just need to abandon emacs' linting for this file

well, i broke it into 3 files and using includes, gg

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.

can you give an example path to baseXX.scm file? i don't think i've seen one of those before

Can someone tell me how to regenerate profiles.go mentioned in
?  I really don't know what that means.

"info-dir ERROR: no code for module (guix build utils)"

16/32/64 thing? RavenJoad

geri: (guix base32), in guix/guix/base32.scm (There are base16 & base64 variants, hence the XX).

geri:

"base32.scm\guix - guix.git - GNU Guix and GNU Guix System"

ah okay

looks arcane to me :D

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.

RavenJoad: You certainly can, but I think Guix will keep using these copies. They are both tiny and too central to Guix.

I mean, feel free to fork 'em but don't expect Guix to use your library.

Ok. I'm curious, why wouldn't Guix use a separate library for those functions? Would it make the bootstrap harder or something?

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.

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.

there's always another option: if the procedures are “general enough” get them in Guile

or who knows, RnRS / SRFI

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.

tbf base32/base64 encoding is considered stdlib in some languages/frameworks and not in others

Extreme but not entirely facetious idea: make your project depend on Guix for those 3 files. The anti-NPM.

source: I've been hacking up something extremely cursed last week and my best choice for implementing it was C/GLib

nckx: Given that this is meant to be built with Guix, not terrible for building, but terrible for distribution.

better yet: make your project depend on a tree-shaked guix that only contains of this module and whatever it pulls in.

s/contains of/consists of/ or s/contains of/contains/, choose one

That second option seems better... Now how to tree-shake Guix (If Guile has tree shaking).

I'm about to look up tree-shaking. I better not regret this.

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.

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

Oh it's garbage collector roots for your ay es tree.

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

lilyp: The tree-shaking or the forking?

manual tree-shaking ._.

geri:

"debian Pastezone"

geri: its kind of a start... if you have any input or suggestions feel free to give those

lilyp: Thankfully, (guix base32) only uses srfi, rnrs and ice-9, so deleting files with a snippet would work.

bumble: it seems you know way more about guile libraries than me here :D

what does this do: Customize users Bash shell prompt for Guix? [Y/n]

i think it adds smth to ~/.bashrc or ~/.bash_profile when you're in guix shell, might be wrong tho

(or ~/.profile)

ty

bumble: i can say that you will still most likely need to specify complete path to a file to function properly

Is there any libre open source driver available for graphics cards? In guix ?

geri: do you mean for the output/destination, or do you mean for the input that is recursed?

bumble: for input

PotentialUser-60: We have nouveau for old nvidia cards and whatever works for intel integrated graphics

if you're on amd, chances are that you'll be having a bad time

i thought nvidia meant a bad time

How old?

random thought: it would be neat to have an unquote-splicing-values

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!

consing up an extra list every time you want to conditionally splice something intoa quasiquote just seems so sad

klm`: You're welcome.

maybe with a read syntax of ,*

geri: Can you paste again your cli.scm from yesterday? Sadly the paste isn't working anymore and I didn't copied it

PotentialUser-60 for nvidia
amd and intel require firmware blobs to even run libre firmware.  For flawless graphics you can count on 10 years or without specific features

"FeatureMatrix"

for example my 10 year old intel igpu works without problems in linux libre.

somenickname: at least current generation on intel run fine without uploadable firmware blobs

it just uses whatever is stored in ROM

but I think that might change in the future and it will not work anymore in next generation

somenickname:
, sorry for slows

though if the program tries to write something to your config directory it's gonna fail miserably, it can break some functionality

kinda forgot about that yesterday

stikonas: With all features or will decoding or something not work with libre?

geri: Thanks.  A permission problem or why is this happening?

somenickname: yeah, cause directory is read-only, so trying to write there will result in something between breaking down completely and just giving warnings

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

Is WiFi 6e supported?

somenickname: not sure about decoding, but 3D works

PotentialUser-60: nothign newer than Wifi 4 is supported

and very unlikely to be in the near or mid-term future

Is it due to libre linux-kernel not supported? Or something else?

The reliance on proprietary firmware blobs, so yes.

:(

why cant we have nice things

so that we may build nice things


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))`

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

the config home pathname would be "start" from the last name i the path used to speficy the inut directory

might be fine

geri: yes I think its okay if you think its okay

maybe ... `(recursive-home (cwd) "config/qutebrowser" "config/mpv")`

this way the directory could be specified

Is Bluetooth 5 available?

use (current-source-directory) from (guix utils) instead of cwd

okay I'm not familiar with that (not familiar with much at all tbh I'm a novice)

the debian paste ample didn't work quite well either map needed to be fold

i just suffered a lot trying to make relative paths work :D

somenickname , honey-apple thank you.

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

oh, too late...

:(

how do i put a local file into %output when building a package w/ trivial-build-system?

like copy it so i can modify stuff

guile has a copy-file procedure I believe

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

let's see if it accepts relative paths...

you can use #$(local-file ) within a gexp to refer to a local file (actually a place in the store it gets copied to) from a builder

PotentialUser-60: so basically it's not feasible to make devices without firmware

PotentialUser-60: so basically it's not feasible to make devices without firmware

the only way is to have free firmware, but no firmware is no longer an option

ulfvonbelow: that's what i was planning to do too, though it sounds a tad dirty for sure

cause there's at least gonna be 2 copies of the same poor file in store

I thought the goal of copying it was to later modify it?

only to set executable bit...

¯\_(ツ)_/¯

agreed

I think there's at least one store RPC that should allow for directly uploading a file that has the executable bit set

doesn't hardware don't even really know what it needs to do without firmware?

rpc?

remote procedure call, how the guix client software talks to the daemon that manages the store

ah

OK so new WiFi is faster than firmware. That is a new info thank you. So Will it be always stuck in WiFi 4?

somenickname: well, depends on hardware. I think some of those wifi4 (802.11n) chips were just controlled by host driver

lnnk: unless somebody is able to write free firmware

openwifi is most likely one to support new Wifi

geri: add-to-store with #:recursive? #t will preserve permission bits on a regular file

but those are FPGA boards, so expensive

(and also I'm not sure if they support building wifi cards without proprietary synthesis tools)


"GitHub - open-sdr/openwifi: open-source IEEE 802.11 WiFi baseband FPGA (chip) design: driver, software"

... and add-to-store is called by interned-file, which is called when a is lowered

so if you just use (local-file ... #:recursive? #t), it should preserve the execute bit

hmmmm

I am planning to create a libre PC which processor is best intel or amd ?

i honestly didnt even think about going deeper into store code haha

thanks for a pointer


PotentialUser-60: Depends on how libre you want to go (unfortunately).

So it will take some time to create open source  new WiFi.

Is Bluetooth 5 supported? In guix

After some time I think I found. All open source parts required at
thank you all.

"home - h-node.org"

lilyp: WDYT on splitting gtk-doc & gtk-doc/stable to an independent module? Context: see comment on <

"[PATCH core-updates 00/61] The Draining of the XML & DocBook Swamp."

it looks odd that (gnu packages xml) would depend on (gnu packages gtk) but maybe that's just me

though leaving that comment+workaround there gives the impression of a code smell that is avoidable

for smaller wrapper scripts, guile vs /bin/sh? :)

geri: What do you mean? Like the small wrapper scripts Guix sometimes creates for programs?

if all it's doing is setting some environment variables? run 'time guile -c "(exit 0)"' and listen to your heart

guile is 2 times shower than bash here lole

yeah, set env vars, launch the thing with special arguments and stuff like that, nothing huge

depends on guile script compilation tho

if you want to do really trivial things (ba)sh is ok, though do run it through shellchecker to confirm it

otherwise I'd go with a guile script (or any proper lang)

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

it makes me cry

If you use program-file, does Guix also byte-compile that for you?

shrug

mirai: we already have special names for those, so I don't see why we ought to propagate it or use other such constructs

special names?

$variable-name

I see now that you've introduced them yourself, but still

oh right

I was thinking that by “we already have” to be something in guix master

nah, it was more meant like "at this point in the series"

man, the way startx is overcomplicated on guix is painful

Is it possible to have multiple sources for a package? Or mutable inputs? I am trying to make something cludgey work.

the "primary" source, so to speak, goes in the source field, but you can just as well put origins in native-inputs

geri: refactor it if you can :)

RavenJoad: you can use the "unpack after unpack" pattern

ulfvonbelow: I have tinkered with that. But there is a circular dependency here.

ulfvonbelow: it doesn't work too well if you don't add labels to everything

(native-inputs (list hello `("foo" ,(origin …)) gtk …)) doesn't work

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.

lilyp: Do you have an example of that?

ppsspp for a pretty ugly one :)

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.

mirai: i mean having to write your own script w/ xinit

lilyp: I think patches 53-55 are self-contained enough to be cherry-picked for gnome-team if you feel like integrating these earlier

startx itself doesnt seem to work at all

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." -

"Submitting Patches (GNU Guix Reference Manual)"

would need to be tested and if I'm not mistaken building libical should serve as litmus test

mirai finally got around to comment on 63985