IRC channel logs

2021-09-29.log

back to list of logs

<cybersyn>wow I just got the most amazing error message building a package -- great work y'all!
<cybersyn>very pleasant surprise, guix just hit luxury packaging status
<jgart>what was the error message?
<iskarian>hello guix :)
<nckx>sneek: later ask cybersyn: Was it a 458-line Guile backtrace?
<sneek>Okay.
***califax- is now known as califax
<iskarian>"nckx needs to → zzz; good night all" hmmmmmm
<nckx>?
<nckx>That was hours ago.
<iskarian>That was just three and half ago :)
<apteryx>nckx only needs 2.5 hours a sleep per day
<nckx>Yes.
<nckx>Well, no.
<nckx>But it's true that my relationship to sleep is complicated and causes my loved ones great headaches ☺
<apteryx>hehe
<iskarian>Hah
<Guest53>To the Cuirass inclined, when I run `cuirass register --specifications guix-cuirass/examples/hello.scm` I get an error that goes `In procedure mkdir: Permission denied`. Have any of you seen that before?
***lukedashjr is now known as luke-jr
<efraim>hello guix!
<mekeor[m]>hello guix, hello efraim :)
<jwinnie>Hello
<vivien>Hello, each time I add a domain to the list that gets certified by letsencrypt, it seems that certbot creates a whole new certificate and drops the old one. So, I get an email saying that the old list of domain names is going to expire, and then that it is going to expire soon, and then that it has expired. Is this normal?
<vivien>I mean, I imagine it has to change the certificate, but I’m not sure I should receive the emails.
<vivien>Also, there has been 2 commits (87178ed29ef519d8680062beacc3b9b178c10134 faltergeist, and f9ed753c7b3349e7c2160a4ae4bae9e5b11bd34e sdlpop), I don’t know how legal it is to include them. Did you check?
<lilyp>vivien: it seems that one certificate request is made for a large number of domains
<lilyp>I'm not sure how letsencrypt handles those internally
<lilyp>See discussions http://issues.guix.gnu.org/50655 and http://issues.guix.gnu.org/50653 for the packages you mentioned
<vivien>OK, I hope guix won’t get DMCA’d ^^
<lilyp>Well, we do preserve some software the US government wants removed, like youtube-dl :)
<lilyp>of the two sdlpop seems to be the weaker case as it admits to being reverse engineered
<vivien>What about the images? Are they straight copies from the proprietary version?
<vivien>That would be a problem ^^
<JosefMoore666>i installed guix for the first time. The manual "Unless you’re on Guix System" could perhaps be highlighted
<alphapapa[m]>Hi, is there a way to limit the number of threads that the guix-daemon uses in the Guile process? The --cores option only seems to apply to the build process, not to the Guix Guile process, so e.g. if I use --cores=4 to limit the build to 4 jobs, the Guix Guile process may still use as many threads as my CPU has cores before it gets to the build process, which may saturate my system for a while.
<vivien>Hi, maybe that’s because guix uses guile futures, that use as many processors as possible. I don’t know how to limit them, and it’s possible that you are facing another problem.
<vivien>(To be clear, I don’t know if guix uses futures)
<alphapapa[m]>vivien: Thanks.
<lilyp>vivien: IIUC you need to copy the assets yourself. There are different DFSG interpretations on what to make of that.
<lilyp>For instance, I'd personally argue that ppsspp can only be packaged in one of the evil repos, because using it requires dumping the BIOS.
<lilyp>I don't see the fundamental difference between a BIOS dump and an asset dump.
<ss2>hello, I'm trying to figure out to write a minimal service, but I am now stuck with an error while trying to load it.
<ss2>So I've set up a minimal service: https://paste.rs/WQO
<ss2>and, get this error after reconfiguring: https://paste.rs/O7K
<ss2>Am I missing something?
<vivien>I think the extension value for shepherd-root-service-type should be a function that takes a value (for instance, a <musicpd-configuration>) and return a shepherd-service
<vivien>Or a list of shepherd services, if I read my notes
<abrenon>hello guix
<vivien>So musicpd-shepherd-service should be a function that takes a <musicpd-configuration>, and use (musicpd-configuration-package config) instead of mpd to compute the executable file name
<vivien>(and return a list with 1 shepherd-service instead of a shepherd-service)
<ss2>well, so far I'm just avoiding to use any config file. Kind of. But I'm just trying to get it basically working.
<vivien>So, pass #f in your system configuration and ignore the configuration value in musicpd-shepherd-service
<ss2>Although it looks like that most service definitions have some sort of config file provided.
<vivien>Maybe it will work for a function with no arguments, I have never experimented
<ss2>hm, it helped to wrap (shepherd-service ..) inside a list.
<efraim>Has anyone used shepherd services inside guix home yet?
***stikonas_ is now known as stikonas
<attila_lendvai>why is it that guix environment -l guix.scm gets me an older clang-toolchain than guix environment --ad-hoc clang-toolchain? i mean, i kinda know why, but is there something i can do? do i need to explicitly pick clang-toolchain@12.0.0 in the package?
<civodul>attila_lendvai: hi! it depends on what's in guix.scm :-)
<civodul>there are several clang-toolchain packages
<attila_lendvai>civodul, just a package with clang-toolchaing listed as an input
<attila_lendvai>IOW, clang-toolchain means something else on the input side, and on the --ad-hoc side
<civodul>attila_lendvai: on master, the 'clang-toolchain' *variable* corresponds to clang-toolchain@9
<civodul>but you can refer to the 'clang-toolchain-12' variable, for instance
<attila_lendvai>civodul, oh, so basically the difference is between the scheme variable, and that --ad-hoc picks the latest version, right?
<attila_lendvai>civodul, that leads me to a different question: what's the logic of which version to pick as the scheme variable?
<attila_lendvai>i'll need to pick one for idris
<attila_lendvai>and i don't see a reason why i shouldn't pick the latest
<PurpleSym>attila_lendvai: Are you updating idris or adding v2?
<attila_lendvai>PurpleSym, both, preparing for submission. see https://github.com/attila-lendvai/guix/tree/idris
*attila_lendvai has just force-pushed that branch
<PurpleSym>attila_lendvai: Ah, nice! I don’t know anything about it, so it’s currently broken on the wip-haskell branch. Does it make sense to keep v1?
<attila_lendvai>PurpleSym, my packaging can bootstrap the entire chain all the way from GHC, so i'd say yes, it's worth keeping it.
<PurpleSym>attila_lendvai: Okay, sure. We have to get v1 working with GHC 8.10 then.
<attila_lendvai>PurpleSym, i have extensive changes to the idris repo also (not yet merged). if interested see my mail to the idris mailing list about bootstrapping.
<attila_lendvai>my guix idris packaging works from my idris fork (for now)
<PurpleSym>Ah, I see.
<attila_lendvai>can i somehow decide about the entire source block of a (package ...) form? i have a function that makes a package object with a (package ...) form, and i want to decide about the source based on the function's arguments.
<attila_lendvai>i don't know how to grep for such an example
<wigust>Hi Guix
<yoctocell>attila_lendvai: I think you would need a macro for that
<attila_lendvai>hrm, maybe i'll need to covert this function into a macro then
<yoctocell>attila_lendvai: actually nvm, you could do something like this https://paste.debian.net/1213703/
<raingloom>attila_lendvai: thanks for working on Idris2 packaging! do you think an idris-build-system would be easy to add?
<attila_lendvai>yoctocell, oh, nice! thank you very much!
<yoctocell>raingloom: I already have a idris2-build-system in my own channel <https://git.sr.ht/~yoctocell/guix-yoctocell/tree/master/item/yoctocell/guix/build-system/idris2.scm> :-)
<attila_lendvai>raingloom, i badly lack actual idris experience to answer that. shouldn't be too hard as the idris executable is also the package builder, but i don't really know
*attila_lendvai is making notes
<yoctocell>raingloom: It don't actually use it, but I have built some idris2 packages with it <https://git.sr.ht/~yoctocell/guix-yoctocell/tree/master/item/yoctocell/gnu/packages/idris.scm>
<nckx>vivien: <each time I add a domain to the list that gets certified by letsencrypt> Yep, that's how their system works. The list of domains is the identifier they use to send those mails, since nothing else about ‘renewed’ certificates is constant by default.
<vivien>ok
<singpolyma>nckx: pretty sure they send the emails based in registered account?
<raingloom>yoctocell: OwO ! i tried to package elab-deriving once but didn't get anywhere. gosh this is exciting.
<raingloom>does the build system support multiple codegen backends or only Chez?
<nckx>singpolyma: That is true, but orthogonal. Account identifies *you*, SAN list identifies *certificates* warned about.
<yoctocell>raingloom: I think it only supports Chez; I think there could be an option for specifying an alternate backend by passing the `--codegen' option to Idris2
<raingloom>yoctocell: yeah, but how do you encode that on the Guix end? but it's more of a "would be nice to have" thing. Chez is fine for now.
<raingloom>just getting cross compilation working with Chez might be a challenge.
<yoctocell>raingloom: not sure, but I guess the user would have to manually add Racket, Gambit, or some other package to the inputs
<attila_lendvai>yoctocell, did you actually try that paste? i get "Throw to key `match-error' with args `("match" "no matching pattern" #f)'."
<attila_lendvai>yoctocell, i used ./pre-inst-env guix environment -l x.scm
<yoctocell>attila_lendvai: hmm, I ran it in geiser and it worked fine
<yoctocell>lemme try with guix environment
<attila_lendvai>yoctocell, i get the same for build -f
<yoctocell>hmm I am getting the same error
<attila_lendvai>yoctocell, maybe package related? you had different modules imported in the geiser?
<yoctocell>attila_lendvai: it's becase I set `build-system' to #f, sorry for being a bit lazy
<yoctocell>setting it to `gnu-build-system' worked for me
<yoctocell>and don't forget to impiort (guix build-system gnu)
<yoctocell>import*
<attila_lendvai>yoctocell, yep, works on my side also. but why doesn't my real case work them... hrm...
<attila_lendvai>s/them/then/
*attila_lendvai goes to learn more about match, because that is his curlpit
<attila_lendvai>it works now, but... these errors are not very useful: guix build: warning: source expression failed to match any pattern
<yoctocell>attila_lendvai: looking at (guix scripts environment), it tries to get the inputs of the package by calling `package->bag', which calls `make-bag' with the `build-system' and some other stuff. `make-bag' then tries to pattern match on `build-system', but fails because its #f.
<yoctocell>but yeah, the error messages aren't very useful
<attila_lendvai>my issue was using the wrong type here: (match foo (($ git-checkout))) instead of <git-checkout>
<yoctocell>ah, ok. Glad you found the solution :-)
<attila_lendvai>yoctocell, thanks for the help! working in guix is still so much more pleasant than nix! i'm glad i jumped the sharks after a couple of months on nixos...
<yoctocell>attila_lendvai: You are welcome! Yeah, I also prefer Guix over Nix, hopefully I will switch from NixOS to Guix System soon
<civodul>attila_lendvai: the variable points at what looks like a good default internally at a given point in time
<civodul>whereas the CLI takes the latest version of the given package
<makx>yoctocell: raingloom idris2 supports at least racket as backend as well (which is a bit of a non-alternative now as racket uses chez as well); It is possible to use other schemes as long as they are r6rs
<makx>ah, gambit as well
<makx>if anyone wants guile as backend, they'll have to pester me for a bit, it's not *that* hard (tm)
<raingloom>makx: i'm aware. the issue is how they can be integrated into guix. do we build each idris module with each backend, like how Lisp modules are built for various CL implementations?
<makx>phew
<makx>raingloom: would you do that for all hte non-scheme-backends too?
<roptat>hi guix!
<raingloom>makx: no reason not to. especially because the most interesting backend will be the GRIN one.
<attila_lendvai>is there a version counterpart of git-checkout that i can use to pick up the git commit hash into the version of the package?
<roptat>want to help with the translation? Now is the time! I'll merge the translations this week-end. https://translate.fedoraproject.org/projects/guix
<abrenon>hi roptat
<roptat>mh, I might have done a mistake, I don't see the new strings from guix home
<roptat>oh no, it wasn't added to POTFILES.in
<abrenon>so I guess the immediate thing to translate is the documentation-manual ?
<roptat>yes
<roptat>there were some changes in guix and the cookbook too, but I took care of them already (in French)
<abrenon>do you prefer suggestions or direct edits ?
<roptat>direct edits, unless you're not sure and you want me to look over what you did
<abrenon>I thought there was something to explicitely mark strings as commands and hence not needing translations but I can't find it any more. was it specific to the glossary ?
<sodi[m]>.
<sneek>Welcome back sodi[m], you have 1 message!
<sneek>sodi[m], nckx says: Did you find someone to host that ISO? Ping me otherwise.
<nckx>Uhh. No idea.
<sodi[m]>What? 🤨😂
<nckx>Yeah. No idea. Must be ancient.
<roptat>abrenon, not sure I have ever seen that. You can always ignore the warning
<roptat>not sure if it's because I'm admin on this project, but I can also "ignore for all languages" in these cases
<roptat>but it's difficult for po4a to know when it should propose a string or not, because some of the code contains comment that can be translated
<abrenon>maybe it was just a dream ^^ well in any case if you don't know about it I mustn't be missing something too obvious : )
<nckx>attila_lendvai: I'm not sure what you mean. There's git-version, but you probably came across it already.
<attila_lendvai>nckx, i want something that gets the commit hash from the local checkout in a guix build -f guix.scm
<attila_lendvai>nckx, git-version is good, but i want to get the commit hash somehow automatically
<vivien>You mean the guix hash of the commit, or the commit ID?
*attila_lendvai is at (with-repository "." repo (revparse-single repo "HEAD"))
<attila_lendvai>vivien, i mean the hash string that can be given to git-version
<nckx>Unless the -git-checkout directory happens to contain the full commit in its file name, there's no way to exctact it after the fact. .git is completely removed from the checkout that ends up in /gnu/store. If the -checkout file name does happen to contain the hash, just use explicit string manipulation to make it clear that you're being clever with something that's not (and won't be) API at all :) But I'm still not sure what you're trying to do so might be way
<nckx>off base.
<sodi[m]>Hello
<sodi[m]>I'm new to Guix my system is broken, how can I boot in single user mode?
<nckx>Guix doesn't have a single-user mode. What's the problem? Can you boot a previous generation from the GRUB boot menu?
<nckx>You can enter an *extremely* Spartan REPL by adding ‘--repl’ to the kernel command line from GRUB, but it's really nothing I recommend to any user, new or no.
<nckx>I'm not sure if the classic ‘init=/bin/sh’ kernel argument works on a stock Guix System.
<attila_lendvai>nckx, this is what i was looking for: (git-version "0.5.1" "1" (with-repository (dirname (current-filename)) repo (oid->string (object-id (revparse-single repo "HEAD")))))
<attila_lendvai>nckx, it is to be used in a guix.scm checked into the repo of a project
*nckx tried; it does not. Might be worth adding.
<Noisytoot>What is https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/packages/patches/yggdrasil-extra-config.patch for?
<nckx>attila_lendvai: Ah! Now I get you. There's no Guix helper for that but you code looks nice enough without one IMO.
<attila_lendvai>nckx, yeah, but it took me like half an hour. i need to work on my environment... still fooling around in guix repl, and lack completion in emacs
<nckx>Noisytoot: It allows passing the ‘config-file’ field from yggdrasil-configuration to Yggdrassil. It seems they otherwise support only one file. Judging by the default file name for config-file, "/etc/yggdrasil-private.conf", it might be that simply including its text verbating in the main (store) configuration file would be a big no-no. That's all just from reading the code, though; I don't use Yggdrassil.
<nckx>attila_lendvai: My condolences, but it seems out of scope for Guix to wrap what is all host-side ‘native’ guile-git code.
<apteryx>the install script currently says: [1630588052.448]: [ FAIL ] Could not obtain list of Guix releases.
<abrenon>roptat "good practices" question: should "tag" be entered to the glossary as terminology ? it certainly is so in the "Git" context (I checked it was already kept as "tag" in french in the existing manual) but can we assume that's the only context it would appear in or do you think it's too bold an assumption ?
<roptat>abrenon, there might be other contexts
<abrenon>ok
<abrenon>thanks
<roptat>I can't think of any right now, but I know we use other terms for OSM tags
<roptat>(which might not be relevant in guix's context ;))
<roptat>"étiquette", "attribut"
<roptat>you could add to the glossary with a note, like tag -> tag (git), étiquette, attribut
<vivien>Beware that in XML, tag is the opposite of attribute, but I don’t think it matters
<nckx>apteryx: I can't reproduce that.
<nckx>apteryx: [1632926149.568]: [ PASS ] Release for your system: guix-binary-1.3.0.
<apteryx>did you use the version at https://guix.gnu.org/install.sh ?
<nckx>No. The version in current Guix.
<nckx>What's the difference, apteryx?
<nckx>I don't see any.
<apteryx>true, seems to redirect to https://git.savannah.gnu.org/cgit/guix.git/plain/etc/guix-install.sh
<apteryx>which is master, right
<apteryx>I'm testing from a VM, which seems to have a working network
<nckx>curl "https://ftp.gnu.org/gnu/guix/" | sha1sum → 681302e335feea8fa34d73db98d0050b0aa4c614, which my guix-install.sh could parse.
<nckx>Could you check that just in case?
<nckx>I don't think pasting the full HTML would be useful, but I can do so if you want.
<apteryx>curl: (60) SSL certificate problem: certificate is not yet valid
<nckx>
<nckx>Mystery solved.
<nckx>But we should let that error through.
<apteryx>ah... perhaps the old problem where the VM time gets desynced and then certs fail
<apteryx>that keeps biting me in the rear
<apteryx>date says: Thu 02 Sep 2021 09:17:01 AM EDT :(
<nckx>I never use wget. Does it report a similar error? I don't see any explicit 2>&- anywhere that would swallow it…
<apteryx>the script is totally silent even I set DEBUG=1 (had to hard code it)
<apteryx>well, totally in regards of such errors
<abrenon>roptat: I see that in the current version of the manual the use of two middle points '·' on plural forms, which is contrary to what I've learnt and is documented on https://static1.squarespace.com/static/5e441b2fb746a7235f25667e/t/61434d0e69203932550cf472/1631800593843/Manuel_ecriture-2021.pdf
<nckx>And wget -qO- "https://ftp.gnu.org/gnu/guix/" in the wonky VM?
<apteryx>silent, with exit status 5
<apteryx>If I take out the -q, it screams similarly as curl
<roptat>abrenon, thanks I'll read that
<abrenon>here, "utilisateur·ice·s" instead of "utilisateur·ices": is it another convention ? who supports it ?
<roptat>it's something I've read before, but we can use another convention, I don't care
<roptat>I think I saw it on the framablog
<abrenon>I see
<roptat>we kinda need to document that somehow
<abrenon>the document I linked has offical support from https://www.egalite-femmes-hommes.gouv.fr/initiative/manuel-decriture-inclusive/, so I guess we could use it as a sane default
<abrenon>but I wanted to check with you before entering my variant to the translation base
*nckx looks up which wget option we should be using instead, because ‘--quiet-even-on-fatal-error’ is a stupid default.
<abrenon>(it may be simpler if I sticked to your current convention, and, if we move to the one I suggest, replace all of them at once to avoid having an inconsistent state)
<nckx>apteryx: Can you confirm that wget --no-verbose -O- "https://ftp.gnu.org/gnu/guix/" prints the error?
<nckx>That seems to be what we really want.
<apteryx>yes
<nckx>Awesome.
<civodul>abrenon: "utilisateur·ice·s" used to be more common, but it's slowly being replaced by "utilisateur·ices"
<civodul>regardless, i think there are many cases where we should avoid translating "user" by "utilisateur·ice" in the first place
<civodul>in particular when "usre" is used as an adjective
<civodul>*user, even
<abrenon>yeah, you're absolutely right and I promise I do all I can to find other ways to phrase it when I can
<roptat>abrenon, maybe you can search for the middle dot in the existing translation, and replace them before going further?
<abrenon>(because, most of the time, that's "anyone using this and needing to read this documentation", so even "you" sometimes works great ^^)
<abrenon>enfin, "vous", du coup
<civodul>yup :-)
<civodul>(i'd even prefer "tu" but that's a debate for another day)
<nckx>:o
<maddo>hello, any vapoursynth users here?
<abrenon>roptat: I can do that if the french speakers of guix generally agree with this suggestion, but mostly I don't to break things : )
<abrenon>civodul: yeah ! some more debate ! I love debates ! : ) (and also, I'm a big fan of "tu" as well)
<roptat>it doesn't sound right to me...
<abrenon>with a single '·' ?
<maddo>The question is: vapoursynth on its own is mostly useless, and it needs plugins to be compiled against it. While a possible solution would be to package each and every plugin for vapoursynth, is there a quick&dirty method to let compilers on a foreign distro find guix-installed vapoursynth?
<abrenon>(or the "tu" ?)
<roptat>"tu"
<abrenon>: )
<roptat>ça sonne très infantilisant pour moi
<abrenon>-なさい ; )
<roptat>:)
<roptat>I think you can change the middle point already, we're already 3 translators out of 7, and I think I did most of the work anyway
<abrenon>ok, proceeding to it, found 6 occurrences only
<roptat>if we wait for the rest of the French community, we'll have endless debates whether we should use the middle dot in the first place...
<makx>in german I moved to using the generic feminine
<makx>because it pisses off exactly the correct people
<roptat>^^
<abrenon>makx: :D
<nckx>🤭 makx (Do we use singular they? Same thing.)
<makx>nckx: I certainly do (use the singular they)
<abrenon>wie wirkt es ? »Nutzerinnen« zum Beispiel ?
<nckx>I meant Guix docs. I know I've added a few (it's just natural writing) but have no idea if it's policy.
<nckx>It is! Point 11.
<nckx>apteryx: If you still have the VM and the URL updates immediately, could you make sure I didn't bungle the fix?
<apteryx>you pushed it to master?
<apteryx>now I was trying to test removal of guix straight after install. The store is read-only so I need to stop/disable gnu-store.mount, but that doesn't seem to work straight after an install
<apteryx>nevermind, it did now, rm -rf /gnu
<apteryx>by the way, the bordeaux key is not automatically authorized as part of guix-install.sh (when answering yes to the suggestion of enabling binary substitutes)
<nckx>I did. It didn't break anything here. I think it prints an extra line of output now (2021-09-29 17:10:21 URL:https://ftp.gnu.org/gnu/guix/ [22356] -> "-" [1]) but I didn't immediately find a way to disable that.
<nckx>And it is added to the default URL list?
<apteryx>no also.
<nckx>OK. It's in both definitions of %default-substitute-urls so it should be.
<nckx>IWBN to have one source of truth for this. /me briefly considers extracting them from the .scm with grep…
<lilyp>makx: Fake news, there's only one example of Nutzerin in the manual and it's not the first line
<lilyp>I'm disappointed in you and my day is ruined.
<abrenon>^^
<abrenon>so, singular ? is this "generic feminine" something new in german or has it been around for a while ?
<abrenon>(there are occurrences in the french-translated strings where I think the reference to a human being could be dropped altogether)
<lilyp>It is mostly used in feminist activist circles as a means of highlighting how weird the prevalence of the generic masculine form is.
<roptat>abrenon, how would you translate "killing", as in "killing transmission-daemon..."?
<makx>lilyp: I never claimed to be editing the guix manual \_")_/
<lilyp>btw. the one line in the manual that has "Nutzerin" draws up an image of "evil women causing my PC to sleep"
<abrenon>roptat: terminer ?
<abrenon>éteindre ?
<lilyp>I think terminer is correct
<roptat>c'est pas un infinitif
<abrenon>-TERM or -KILL ?
<abrenon>ahhh, «arrêtage», je vois
<abrenon>arrêt
<abrenon>extinction
<abrenon>voire extinction d'urgence pour un sigkill ?
<roptat>arrêt c'est bien, merci :)
<abrenon>lilyp: thanks ! so I see, same as in french ^^ too bad the people it triggers can't see that their being triggered is the best proof some change is needed
<lilyp>roptat: for context, we do use "le terminer" in --max-silent-time=SECONDES
<lilyp>true, but there's also the valid counter argument that the generic masculine erases the gender of a male <something>, which the generic feminine also does
<lilyp>Plus, it's plain wrong to apply it in certain contexts, particularly when complaining about decisions made by predominantly white cishet men in high-ranking positions (whether it'd be politics or business).
<abrenon>what do you mean ? using the generic feminine in those cases is wrong ? doesn't it still demonstrate that plainly asserting "no but it's generic" so that's fine and proceeding to use an arbitrary gender is wrong ?
<lilyp>The problem is that you're drawing up an image in which evil women ruin everyone's daily life if you do so (which is exactly what reactionaries believe).
<lilyp>And if you don't, then you're the "female good, male bad" stereotype feminist.
<lilyp>You can't win those arguments.
<lilyp>Using truly gender neutral formulations helps avoid that all while still triggering the reactionaries 😎️
<abrenon>: )
<lilyp>E.g "Studierende" instead of "Student*innen"
<lilyp>btw. I still read the latter as a regexp from time to time, so I'm somewhat envious of the french center dot
<abrenon>ah, gerundives are so great : )
<rekado>lilyp: I’ve seen “:” instead of “*” more often in the recent past.
<abrenon>"envious" ? but you speak french, don't you ?
<lilyp>I can read a few French words.
<abrenon>(plus, you know, it doesn't really belong to french people, I'm sure people from outside France could using without facing any legal charges if it works that well)
<abrenon>(it does trigger our reactionaries *so much*)
<Noisytoot>what are reactionaries?
<lilyp>People who want to live in the past.
<abrenon>damned, I used that because I understood it, I didn't check whether it existed
<dstolfa>lilyp: more like, people who want to live in the past because for some reason they want to treat others like dirt because they're different...
<lilyp>That's probably an aspect for most, but there's also the "France was so big when Napoleon ruled" variant.
<lilyp>I.e. the kind that dreams up some kind of glory without thinking too hard on any social implications at all.
<rekado>there’s also ignorance and an unwillingness to learn. It’s not necessarily malicious.
<lilyp>And yes, I'm only using France because neither Germany nor Austria would be great examples to reference.
<rekado>the problem with those people is that their initial reaction to change is what determines their later reactions when presented with information.
<avalenn>lilyp: using truly gender neutral formulations can be pretty difficult when the core of the language isn't at all adapted to gender-neutrality
<lilyp>rekado: The colon has its own set of problems, not least being the fact that it's used as an actual sentence mark
<jlicht>bikeshedding about the social progress happening here, but ":" *in* a word looks terrible to my untrained eye
<jlicht>but that is probably exactly the problem; my eye being untrained ;)
<lilyp>It's also not friendly to blind people regardless of what some would have you believe.
<lilyp>btw. found the center dot: Nutzer·innen
<rekado>jlicht: strangely enough I find the colon to be much prettier than “*”. But obviously the center dot is superior to them all :)
<jlicht>* is for pointer shenanigans, not people indeed
<jlicht>lilyp: is there an easy way to type the center dot (on German keyboard configurations?)
<abrenon>all hail the center dot ! : )
<abrenon>lilyp: so is it on the german default layout or do you use any special keyboard layout ?
<lilyp>center dot is Alt-Gr + comma on my German keyboard
<lilyp>I'm just not used to typing it
<lilyp>Similarly, it took me long to figure out “quotation marks” exist
<lilyp>Or as we Germans type them „Anführungszeichen“.
<apteryx>this is what a Guix user first experience looks like after installation: https://paste.debian.net/1213745/
<abrenon>don't you have '»' and '«' on the keyboard as well ? I'm reading fairy tales in german these days and I think I saw them used in dialogs
<maximed>On ‘belgian alternative’ (an azerty layout), it's Alt-gr + «w or x»
<nckx>Is this the same character? · (Compose + ^ + . here)
<lilyp>yup: »Outer quote ›inner quote‹ outer quote again«.
<lilyp>I don't have a compose key, but according to wikipedia it should be
<abrenon>nckx: according to hexdump too : )
<nckx>👍
<apteryx>nckx: your fix worked: https://paste.debian.net/1213746/ (I set year to 2011 before)
<apteryx>thank you!
<apteryx>nckx: were you looking at adding bordeaux key in the installer as well? Or should I open an issue for it?
<apteryx>installer script*
<nckx>apteryx: Your review would be most welcome! http://issues.guix.gnu.org/50892
<nckx>Hm, I should make $host local as well. Will do on my end.
<abrenon>do we generally translate "example dummy names" ? like, there's this code snippet in the documentation that demonstrates a package named "foo", which looks like a really good name for an english dummy name, but isn't as meaningful to a native french speaker, who would probably expect more something like "truc" or "machin"
<lilyp>According to Wikipedia, the metasyntactic variable of French choice is "toto" (don't ask me why)
<roptat>ah, we can use that, indeed
<abrenon>ohhhh your right ! toto is actually an excellent name for that
<abrenon>yeah, you think it's a good idea to translate that as well ?
<roptat>yes, I've seen that used before
<nckx>…et ton petit chien, toto.
<abrenon>:D
<maximed>abrenon: Seems reasonable to me, though you might want to verify the context is using the same name
<abrenon>where does that come from ?
<roptat>like, even when I had students I told them "you can choose any name for that variable" and they always choose "toto" :)
<abrenon>ach, I hadn't though of that, thanks
<abrenon>that's because toto is a very famous student
<abrenon>he has been an example to countless generations of pupils
<roptat>then they switch to "titi" and "tata" when they need more variables
<roptat>or toto1 and toto2 if they lack imagination ^^'
<abrenon>: ) integer suffix are so easy… very disappointing indeed
<lilyp>"int n;"
<abrenon>whereas trying a couple vowels then starting a numeration on whatever base you reached before getting tired of that is much much classier
<vivien>When you define a method like equal?, how do you name the variables?
<roptat>maybe we can add that to the glossary, foo -> toto, bar -> titi, baz -> tata?
<vivien>That’s maybe an unrelated question but I must know
<abrenon>that would be so great !
<abrenon>can I do it ?
<roptat>sure
<roptat>vivien, I'd go with a and b, but I have no imagination
<roptat>could use this and that too
<vivien>I’m torn between a b, and x y
<lilyp>Guile uses X and Y.
<lilyp>see `,describe equal?'
<apteryx>nckx: crazy thought; our install script could be a minimal posix script that requires just wget/tar/gz; then it'd first download the guix-binary, which shoud include all the tools needed to do the configuration, and rexec itself (then running the Guile body)
<lilyp>our install script could be a minimal posix script that starts with hex0 :)
<nckx>One argument for the current one is auditability, although in the end you always end up with ‘exec guix’, either in code or by the user.
<abrenon>added to the french glossary !
<roptat>great!
<abrenon>vivien: I'd say a and b, also, sometimes it can be a name reflecting the type, with, I'm ashamed to admit it, a digit suffix
<nckx>‘exec $(wget …)’ will trigger a lot of negative ‘curl | bash’ pattern recognition whether justified or not.
<nckx>apteryx: But technically your suggestion is absolutely, probably, better. 😉
<jackhill>nckx: re: the p11-kit and flatpak issue. I'm not sure if the probebly is easily fixed by having flatpak depend on a differnt p11-kit since flatpak talks to the p11-server process which may have been started by something else.
<abrenon>but it's interesting to notice that I actually write so little of it (because automatic `deriving` in Haskell, and the rest of the time point-free style), that I found no occurrence in my current code repos to support my claim
<abrenon>the only instance of Eq I found was in a dependency, and it used x1 and x2
<nckx>Hmm, you sure you're pinging the right nick, jackhill? Otherwise you'll have to kick my memory refresh chip; it's broken…
<apteryx>nckx: about your patch, I got: ./guix-install.sh: line 500: ~root/.config/guix/current/share/guix/bordeaux.guix.gnu.org.pub: No such file or directory (exit status 1)
<apteryx>I guess it wasn't in 1.3.0 ?
<apteryx>so we'll have to postpone it till next release, or fetch it elsewhere
<nckx>Arg.
<nckx>Yes.
<apteryx>we should probably get them from the master branch anyway, should they get replaced for any reason
<nckx>Hmm.
<nckx>They're currently covered by the GPG signature, we'd be falling back to ‘mere’ TLS then.
<jackhill>nckx: woops, you're right, I meant lfam
<nckx>Which is how the user got the script that tells them GPG passed, so maybe it's a pointless concern.
<jackhill>all of you super-productive and nice folks are hard to tell apart ♥
<nckx>jackhill: Glad that my dementia isn't quite that far along.
<nckx>Also, I'll take ‘nice’.
<apteryx>nckx: hmm, good point. Yeah, the weakest link of the chain is already TLS
<nckx>I'm not as productive as I think I should be.
<jackhill>nckx: that seems to be a common problem :) One more compliment before I go get some food, you fromat-string email was very clear and helped my understanding. Ok, food time!
<nckx>jackhill: Thank you ♥
<nckx>apteryx: I think at worst it's a kind of TOCTOU race we didn't have before (but we might have others): the user could download/‘obtain’ guix-install.sh, spend a week-end auditing it, then run it, and assuming they already have and trust Ludo's key, not have to trust TLS during installation. But that's quite a what-if situation.
<nckx>Also, this assumes the current script is in any way secure, which is dubious, because it is bash.
<nckx>So meh.
<awb99>can someone tell me how I could go about building my own package specification? Are there some kind of tools that I could use for development?
<Jeremy[m]>Hello
<roptat>awb99, if you have it in a file, you can run "guix build -f myfile.scm" (myfile.scm needs to return a package specification, or a list of them)
<roptat>hi Jeremy[m]
<awb99>thanks @roptat
<roptat>there's no need to "@" people on irc, btw :)
<awb99>you mean you get the alert even without the @. Interesting :-)
<nckx>‘Alerts’ on IRC aren't a protocol feature, they are just substring matches for your nick (or really any random strings the user wants) on the client side.
<lilyp>otoh some IRC clients require the @ prefix to do user completion
<Jeremy[m]><nckx> "‘Alerts’ on IRC aren't a..." <- But alerts *are* a thing in Matrix
<nckx>But we ain't on Matrix.
<nckx>lilyp: Blasphemy.
<Jeremy[m]>nckx: I'm on Matrix 😄
<lilyp>Yeah, we see that
<nckx>Jeremy[m]: And Matrix doesn't alert you for this line?
<Jeremy[m]>It does
<lilyp>probably some super arcane magic inside the bridge
<nckx>That's great. It's genuinely nice of them not to flood IRC with annoying @s. That would be parasitic.
*nckx pulls up trousers; admires lawn.
<nckx>Which is notably devoid of pesky teens. Pesky Matrix-using teens.
<Jeremy[m]>Yeah the IRC <-> Matrix bridge translates between plain text and html
<lilyp>ewwwwwwwwwwwwwwwwwwwwwwwwwwwwww
<nckx>I
<nckx>OK?
<lilyp>the four letter word
<Jeremy[m]>nckx: Pesky Matrix using teen here 👋🏼
<nckx>You got ‘punk'd’, fellow teen! I have nothing against my fellow teens!
<nckx>Matrix uses HTML as transport though? Srsly?
<Jeremy[m]>Yes. Html + json
<nckx>…huh.
<lilyp>and that's why Matrix clients have to ship an HTML whitelisting tool
<nckx><h1><marquee>Welcome to our esteemed Matrix users</marquee></h1>
<nckx>…no? Dang. Didn't thinks so.
<slyfox>probably s/html/http/
<lilyp>nckx: The clients prolly put in the HTML in the same way word processors do.
<lilyp>which means your line simply receives a layer of escapes.
<nckx>I might not be super familiar with how word processors do HTML.
<nckx>lilyp: To be boringl clear, I didn't actually expect that to work.
<nckx>*y
<lilyp>nckx: They do it the GUI way 😎️
<nckx>WYSIWWJD.
<nckx>Also, I might have forgot that this was #guix and not some other shoot-the-shit channel, I belatedly apologise for fostering OFF-TOPIC CHAT 🦇
<Noisytoot>@ is the prefix for ops
<nckx>True.
<nckx>But it's not like it will summon them in the same way.
<lilyp>((@@ (irc client) summon-mods!))
<nckx>Always new @@ was dark necromantic magick.
<nckx>*k jeez.
<roptat>you can take it from magic :p
<nckx>You've now made me legitimately question the existence of an (irc client) module.
<roptat>we have guile-irc in guix :)
<nckx>Almost: https://github.com/rekado/guile-irc/tree/master/irc
<nckx>Yeah.
<nckx>lol @ the author.
<roptat>and now you unwillingly summoned someone here :)
<lilyp>ahh, but no client.scm
<nckx>I didn't notice!
<roptat>that wouldn't happen on matrix :p
<nckx>If only IRC enforced some kind of prefix to avoid—yes.
<roptat>although, I already managed to unwillingly summon people by @ing them before...
<roptat>so it's not foolproof either
<lilyp>we must all convert to hashtags
<abrenon>well I'm off for the evening but it's been nice discussing translation issues with you all
<abrenon>see you later
*nckx doesn't want to convert to a hashtag.
<roptat>no, that will be confusing with anchors in URLs
<awb99> https://paste.debian.net/1213761/
<awb99>I am trying to create my first package. I essentially download a .tar.gz from github, then run tar -xvf on it. And the binary file that comes out of it "bb" is the app that should be accessible.
<awb99>I am getting the error that "tar" is an unbound variable.
<nckx>Aside: that approach is not a good easy way to get started, if you thought so… Guix is not designed to run random binaries without modification.
<nckx>awb99: Anyway, tar is in (gnu packages base).
<nckx>You also have a spurious / after /v in the URL. Your Guix won't try to redownload the file because you already have it, but it will fail everywhere else.
<roptat>nckx, well, with the binary-build-system it would work
<roptat>(not part of guix though)
<nckx>If you try to run the resulting ./bb you get a confusing ‘No such file or directory’ because it hard-codes /lib64/ld-linux-x86-64.so.2 which doesn't exist on Guix. You can run patchelf on it to point it to that file's location in the store. See ghc-7 for an example.
<nckx>roptat: Well… 😛
<roptat>that's already what they use, hence the #:patchelf-plan
<roptat>there shouldn't be issues there, though it's not clean :)
<roptat>I wonder why tar is just unbound, and guix doesn't suggest to import (gnu packages compression) at all
<nckx>I don't know what to say to ‘just use made-up-sounding-build-system, but it's not in Guix though’ 😛
<nckx>Thanks for pointing out its existence.
<roptat>I wouldn't suggest using it, but I was just pointing out that it was already in use in this example, so no worries
<roptat>(also sorry, I'm the author of this horrible thing...)
<nckx>Indeed, I stand corrected.
<awb99>Thanks nckx
<roptat>it's relatively useful for quick and dirty packages, but clearly we don't want to use it in guix
<nckx>I only wish you'd called it the dont-build-system.
<Noisytoot><roptat> no, that will be confusing with anchors in URLs
<Noisytoot>also with IRC channel names
<nckx>And bash comments.
<nckx># Noisytoot
<Noisytoot>and #t and #f
<nckx>See, you can't see that, because it's a comment.
<awb99>can I somewhere see the location where it is downloading the file to ?
<awb99>I now get the error message that it cannot find the tar.gz file.
<maximed>awb99: "guix build --source -f the-package-file.scm"
<nckx>The source file is the output of ‘guix build -f foo.scm --source’.
<maximed>It will be something like /gnu/store/...-STUFF-VERSION.tar.gz
<nckx>You should be able to add ‘#:key source’ and just (invoke "tar" "xvf" source).
<maximed>awb99: maybe you need something like url-fetch/tarbomb (not sure about the exact name)
<maximed>url-fetch/tarbomb it is
<roptat>oh that's right, with /tarbomb, it won't go in the first directory
<nckx>awb99, roptat: Christ, I must have sounded downright incoherent above. I had just skimmed your paste and hadn't noticed the (build-system …) field at all 🤦
<nckx>*even more incoherent
<roptat>nckx, that's fine :)
<maximed>The file is a .tar.gz, but in a comment you talk about a ‘release .zip’
<nckx>Probably just a left-over; the tar.gz is valid.
*nckx slows down & reduces the number of tasks they are pretending to be able to juggle.
<awb99>babashka previously was released as a zip file.
<awb99>NICE !
<awb99> https://github.com/pink-gorilla/gorilla-guix-chan
<awb99>I got babashka binary install guix channel running !!!
<dstolfa>nckx: i need to do that too...
<awb99>thank you very much nck roptat maximed !!
<nckx>awb99: Congrats! Sorry for the confusion again.
<roptat>awb99, great!
<roptat>now, you could clean up indentation a bit, add authentication to the channel, and work on a cleaner package definition? :)
<nckx>😄
<roptat>(looks like you have tabs that don't render well on github)
<nckx>dstolfa: It's so tempting. ‘Yes but look at how *many* sloppy messes I made.’
<apteryx>uh, linux modules are compiled without parallel jobs
<roptat>there's always something else to do, it's crazy!
<dstolfa>nckx: indeed. i try to say no to things, but sometimes they just creep in... :(
<awb99>I want to add a few more clojure based tools, and then perhaps promote my channel to other clojure developers who might want to try using guix.
<nckx>That's awesome.
<nckx>guix-awesome, even, hint hint, although the pun was not intentional.
<nckx>* awesome-guix, apparently.
<dstolfa>nckx: my schedule is about to get even more packed though, so presumably saying no didn't help too much :P
<awb99> https://channels.pantherx.org/pantherx-extra.git/
<awb99>I am still struggling to get all my important apps running on guix.
<nckx>You said no and still scheduled the work? That sounds like a bug in dstolfa.
<awb99>One of the channels that has some packages that I like is pantherx extra.
<awb99>for example visual studio code,
<awb99>which otherwise I can only get via flatpak
<dstolfa>nckx: well, they're paying...
<awb99>I am somehow worried, that by adding too many channels, I might get unwanted side effects.
<awb99>For example, I fear that pantherx will have some packages, but that they sooner or later will be added to guix gnu channel.
<awb99>so I might have out of date packages,
<awb99>Any ideas on this?
<maximed>awb99: "guix install foo" will install the latest version of foo available
<maximed>(at least when not using channels)
<roptat>same with channels
<maximed>presumably, if multiple channels provide a "foo", the latest "foo" is picked
<roptat>if you have foo 1.0 in your channel and foo 1.1 in guix, by default it will install foo 1.1 from guix
<roptat>unless you really want the chanel's package, in which case you can install foo@1.0
<nckx>If you always want the latest (numeric) version but use manifests, you can use specification->package+output to ‘look up’ package names the same way ‘guix install’ would.
<Noisytoot>awb99, that guix channel contains nonfree software
<nckx>That's a pity. Thanks for making us aware.
<dstolfa>Noisytoot: what does it contain?
<Noisytoot>dstolfa, tarsnap: https://channels.pantherx.org/pantherx-extra.git/tree/px/packages/tarsnap.scm
<Noisytoot>the license does not allow modification: https://github.com/Tarsnap/tarsnap/blob/master/COPYING
<roptat>and restriction in purpose
<dstolfa>that's certainly a really weird modification of the BSD license
<nckx>It's a pity because PantherX is AFAIK our only (and if not: seemingly most complete) downstream distro and it sucks not being able to promote them in official Guix channels.
<dstolfa>i could ask colin why it was done if you'd like
<Noisytoot>yes
<nckx>I'm sure he's been asked ad nauseam. https://channels.pantherx.org/pantherx-extra.git/tree/px/packages/tarsnap.scm
<nckx>Sigh. Wayland.
<nckx> https://github.com/Tarsnap/tarsnap/issues/66
<maximed>they say ‘no modification’, but there have been a few pull requests not by the original author?
<maximed>that have been merged
<dstolfa>maximed: well, those are pull requests to be approved by the copyright owner. that's different from you making modifications and redistributing it
<nckx>Submitting a PR upstream is not redistributing a modified work.
<dstolfa>nckx: i guess that makes sense, it's just unfortunate
<viaken>Looks like specification->package+output lets you do per-package "lookups", while specifications->manifest covers the whole manifest?
<nckx>Although, doesn't GitHub strongly push a publicly-fork-then-submit PR model? I guess you're technically making a modified work publicly available, possibly unintentionally, but of course enforcement is at the discrection of the copyright holder in any case.
<maximed>dstolfa,nckx: These pull requests aren't only visible to the original copyright holder
<nckx>viaken: Greetings hashbang person. I've never used spec->man and don't know if it supports outputs.
<nckx>maximed: That's what I mean above.
<maximed>So this appears to be technically a violation, but the copyright holder doesn't seem to care?
<maximed>nckx: Understood
<nckx>If you're talking about the whole repo, not the PR, which is not a modified work even if public.
<nckx>Well, legally significant.
<nckx>Diff context is not.
<dstolfa>in any case, this seems to be more of a way to prevent a large competitor in taking the code from 2 small developers than anything else
<dstolfa>still not suitable for guix & co...
<maximed>the author's reasons: https://github.com/Tarsnap/tarsnap/issues/66
<nckx>Yeah, it's obviously not aimed at preventing PRs, but it's otherwise problematic.
<nckx>Sigh. Did my URL not go through? I swa(y)re…
<nckx>Anyone else having clipboard brokenness with Sway+Guix?
<dstolfa>nckx: it did, but i can understand if someone doesn't see it. irc can look a bit noisy at times :)
<nckx>dstolfa: No prob, thanks for confirming.
<nckx>Didn't occur to me in time to check the logs.
<nckx>And paste *has* been generally broken for me lately.
<maximed>nckx: I now see the URL
<nckx>Like pasting something into Alacritty will freeze it into an unKILLable(!) state.
<nckx>Who knows what it could to to HexChat even if it shows the line locally :)
<nckx>(I'd blame Alacritty if paste wasn't generally weird in other clients too.)
*dstolfa has generally working paste in gnome-wayland, but it messes up at times
*jonsger doesn't use sway atm, as firefox 92 is the broken :(
<nckx>For a competitive ZFS back-up service that doesn't restrict your freedom AFAIK: https://www.rsync.net
<nckx>To atone for us mentioning tarsnap by name ☺
<dstolfa>nckx: i wonder what they use ZFS on top of
*nckx has no financial or other interest, just a happy ex-customer.
<dstolfa>this smells like FreeBSD through and through given their wording honestly
<awb99> https://www.interactivebrokers.com/en/index.php?f=16040
<nckx>It is.
<nckx>dstolfa: ☝
<nckx>awb99: ?
<awb99>There is this broker (interactive brokers) who has released a java desktop app that works on windows/macos/linux
<dstolfa>nckx: ah i see now. they even have a free account...
<awb99>but it does not work on guix.
<awb99>Their installer script is downloading some stuff, and then I think it uses different paths.
***stikonas_ is now known as stikonas
<awb99>the guix non standard paths are the issue I guess.
<awb99>I doubt that I will be able to write a package definition for this app.
<awb99>What are my options?
<awb99>Just run virtualbox ?
<dstolfa>nckx: this is pretty nice, thanks for brinding it up
<Noisytoot>Is virtualbox free?
<nckx>Happy to.
<nckx>Noisytoot: Yes.
<Noisytoot>I thought it required a nonfree compiler to compile it
<lilyp>Yes, but actually no.
<nckx>Noisytoot: That's a different question.
*dstolfa looks at the configure script of vbox and chuckles
<dstolfa>if which /bin/___cErTaINly_a_nOn_eXisTing_fIle___ 2> /dev/null > /dev/null; then
<nckx> https://github.com/open-watcom/open-watcom-v2/discussions/271
<Noisytoot>touch /bin/___cErTaINly_a_nOn_eXisTing_fIle___
<dstolfa>Noisytoot: well, it would simply break the configure script because it would think that you have a really old version of `which` :P
<singpolyma>Is there any reason someone can think of why guix archive --export -r might not be including dependencies?
<nckx>By ‘dependencies’, do you mean ‘store references’ (i.e. something that does show up in ‘guix size PACKAGE’)? Can you share an example?
<nckx>dstolfa: That smells like the result of a horrible ‘we encountered systems where /var/empty… wasn't’ tale.
<nckx>But maybe not.
<nckx>Just Chad the intern.
<singpolyma>nckx: yes, normally everything needed for guix install I expect to be included so nothing needs to be downloaded or built after I guix archve --import
<singpolyma>and that has been working up to now
<nckx>But can you share a specific example?
<singpolyma>uh. this is my CI run https://builds.sr.ht/~singpolyma/job/598498 if you look at the very bottom you'll see the archive command and the artifacts contain the scm file used
<nckx>For example, strictly speaking ‘everything needed for Guix install’ is more than the closure, so it's risky to be vague.
<singpolyma>the archive output *seems* to only be including the package itself, but it's hard to be sure
<nckx>Ugh, guix archive --export -r … | guix archive -t → guix archive: error: corrupt input while restoring archive from #<input: file 0>
<nckx>I know there's a ““reason”” for this but it's why I stay clear away from guix archive.
<singpolyma>yeah, guix archive -t not working on that archive, but import works
<nckx>singpolyma: So how are you listing the contents of the archive? And there's a ‘>’ redirection implied after guix archive, right?
<singpolyma>I'm not able to list the content. I can look through it in an editor to get a sense of what is there (don't see any of the contents of files for known dependencies for example) but the main outcome of interest is that guix install --no-grafts -n -L. jmp-register on the same scm after an import wants to download/build stuff
<nckx>Yeah, debugging (hell, even listing) is sorely lacking.
<singpolyma>also the archive file is hella small, usually my recursive archives are like 500MB
<nckx>So it's specific to this package/method of creating the archive? Because my experiments here all result in a archive that is exactly ‘guix size PACKAGE’ big, as expected.
<nckx>If yours is smaller, that does sound sus.
<nckx>But it would be nice to have some hard evidence and ideally a reproducer.
<singpolyma>just did guix archive --export -r guix on that same CI session and the archive is big, so must be something weird in my package somehow
*nckx AFK for a jiff.
<awb99> https://paste.debian.net/1213777/
<awb99>I found a conflict of packages.
<singpolyma>What should guix size report? package and propogated inputs?
<awb99>Clojure Tools.
<awb99>This is both in guix main channel, and in the nongnu channel.
<awb99>The nongnu channel is called "clojure-tools". The guix channel calls it "clojure-tools-cli"
<awb99>but its the same thing.
<nckx>singpolyma: Inputs aren't relevant after building. Store references, that is literal occurrences of /gnu/store/hash-thing. Recursive. TTYL!
<awb99>Just that the nongnu is more up to date.
<nckx>Please refrain from promoting non-free channels in #guix.
<singpolyma>nckx: but these are *propogated* inputs, so they are present in any profile the package is installed it, not just at build time
<roptat>awb99, they have different names though, so it's not really a conflict
<singpolyma>So how are store references computed?
<roptat>awb99, I'd suggest sending a patch to guix, to update that package thouh :)
<roptat>and then to remove it from that other channel
*nckx returns recaffeinated.
<nckx>singpolyma: Not very computed at all, it's just a brute string search of the package output.
<nckx>Propagated inputs are not included in the closure of a package. That means neither their ‘guix size’ nor their ‘guix archive -r --export’.
<apteryx>does anyone know how the linux-module-builder works?
<singpolyma>nckx: Ok, I am beginning to understand. Why aren't propogated inputs included though, since they will be needed to do anything with the package?
<nckx>This is why I'm against using ‘dependencies’ in Guix, as done in ‘guix archive --help’. Makes people think, not unreasonably, that Guix deals with ‘dependencies’, a foreign-distro-only concept.
<apteryx>it seems to come with its own Makefile-based build system. For some reason it no longer installs the built .ko of the rtl8812au-aircrack-ng-linux-module package.
<nckx>I can't answer the philosophical why singpolyma, only disappoint you with the what ☺
<singpolyma>So if I just gack a .txt file with all the store paths it will just kind of work how I expected?
<nckx>singpolyma: Yup 😃
<nckx>apteryx: Oh, yes, I see.
<nckx>Do you know how long it's been that way?
<nckx>I use that module and by sheer (mis)fortune haven't had time to upgrade that one box in a while.
<ngz>Hello. I get undecipherable error messages ("undefined reference to symbol 'xmalloc'" and "error adding symbols: DSO missing from command line") when trying to build the package at <https://paste.debian.net/1213781/>. Does anyone know where the problem could come from?
<nckx>To begin with, binutils being an input is extremely suspicious. Do you have a version I could just build? Having to re-add all your module imports would be tedious.
<nckx>Why is binutils an input, and could you fix the (presumed) error you get without it any other way?
<ngz>Binutils is listed as a dependency upstream.
<ngz>Let me add some module imports
<ngz>IIRC the error is the same without binutils.
<nckx>OK, but still remove it.
<nckx>It's an implicit input at best, and at worst could cause subtle bugs, and almost certainly confuse cross-compilation.
<nckx>s/It's/It's already/
<ngz>Here is a new package definition with way to much module imports. Oh well. https://paste.debian.net/1213784/
<ngz>too
<nckx>That's fine. Thanks!
<ngz>I tried to use a more recent gcc toolchain, too.
*nckx downloading a lot of stuff.
*nckx building.
<pkill9>has/does anyone run guix on alpine linux out of curiosity?
<dstolfa>doesn't alpine use musl?
<nckx>Does Meson not compile in parallel? This is tedious.
<dstolfa>nckx: it should
<pkill9>yea, but guix doesnt depend on system libs
<dstolfa>ninja -j... just in case?
<nckx>OK, then the project must be overriding it for some (presumably very good) reason.
<dstolfa>pkill9: ah. well, give it a try? :P
<dstolfa>i suspect something will break, alpine does weird things at times
<dstolfa>but it would probably be good to fix those things.
<pkill9>would be worth a try
<nckx>o_O /gnu/store/m1z7cdbqsqyp9xnjw5cvlb4a7gkcg3m4-binutils-2.34/lib/libbfd.a(pei-x86_64.o): undefined reference to symbol 'xmalloc'
<nckx>Why the hell is a 2D space game statically linking to libbfd.
<dstolfa>nckx: well, you see, a 2D space game needs to understand obscure linker formats to relink itself for those platforms. it *must* be able to do this. it's absolutely critical. and it bundles it for ABI reasons.
<nckx>…because naev.c is littered with explicit bfd_ calls.
<nckx>dstolfa thought they were joking but joke's on them.
<nckx>TF…
<mekeor[m]>does the "graphical install" of guix system support file system encryption?
<dstolfa>IIRC, yes.
<roptat>pkill9, I managed to install guix on android, which also uses another libc, so it should work, although I had to create a few files for our glibc to work properly (/etc/passwd, ...)
<singpolyma>If I have a profile, say /tmp/x, is there a command to get all of the packages "present" in that profile? I guess, if I'm learning my words right, to print the closure of the profile?
<roptat>guix gc -R /tmp/x should work I think
<mekeor[m]>dstolfa: alright thanks :) let's try :)
<mekeor[m]>roptat: wow, guix on android sounds cool :))
<roptat>singpolyma, even "guix gc -R `readlink -f /tmp/x`"
<roptat>(-R is for --requisites, not --remove :p)
<roptat>mekeor[m], https://guix.gnu.org/en/blog/2018/guix-on-android/
<ngz>nckx: OK, so it's not my fault if I get strange error messages, right?
<nckx>No, and good news: add #:configure-flags (list "-Ddebug=false")
<nckx>Oh nope, that's not enough, wait…
<singpolyma>roptat: cool, thanks
<nckx>It still says ‘Enabled: YES’ wat.
<nckx>(Under ‘Debug’.)
<ngz>Hmmm.
<nckx>Anyway, here's the principle of the fix, get meson.build not to think BFD is a thing games should statically link against: https://paste.debian.net/plain/1213788
<nckx>But it should really be done betterly.
<ngz>hehe. I see.
<nckx>If I pass a bogus debug=value Meson throws an error, so it *is* looking at it…
<ngz>I'm looking at the meson options currently.
<nckx>debug is listed there.
<ngz>Maybe --buildtype=release
<nckx>I'm a total failnoob at Meson by the way, in case there was any lingering doubt about that.
<mekeor[m]>i'm installing guix system now. it's my first time using the graphical wizard and i really liked it a lot! so smooth! :)
<nckx>Still, I know my way around a C build, and I know what I want to achieve, but Meson is in the way.
<nckx>ngz: That worked! \o/
<ngz>Yes, it just fails later. I guess it is an improvement :)
<nckx>Upwards & onwards to… a fun test failure ☺
<nckx>Right, but at least the test failure is remotely sane.
<nckx>Progress.
<nckx>ngz: Be sure to add a comment above #:build-type, since we try to include debug info whenever possible.
<nckx>It's just tied to some unfortunate upstream debugging code.
<nckx>ngz: Thank you for packaging this by the way. It does look fun…
<ngz>I don't know yet: it looks like a failing package atm ;)
<pkill9>roptat: oh yeh i forgot about that blog post, pretty cool
<nckx>ngz: But aren't you having FUN?
<pkill9>roptat: do you use guix on android or was it just to achieve it?
<ngz>Now that you ask…
<roptat>pkill9, I don't use it anymore
<ngz>Well. no.
<pkill9>termux fulfills my needs pretty nicely
<nckx>Does it build & install with a (temporary for now) #:tests? #f ?
<pkill9>a linux phone would be cool but, termux on android is almost perfect
<roptat>also, I still haven't managed to change my boot image, so I would need to perform some steps manually at every boot
<pkill9>what did you install with guix on android?
<ngz>nckx: It works without the test
<ngz>Test reports a missing /dev/dri. It sounds like a deal breaker, tho.
<nckx>Yes: “Warning: [main] Unable to initialize SDL Video: No available video device” after adding (setenv "XDG_RUNTIME_DIR" "/tmp"). Fine to disable tests with a comment about /dev/dri.
<ngz>OK. Then the package looks complete.
<Jeremy[m]>Hm ... maybe you can make a fake DRI card?
<nckx>Tell us more.
<Jeremy[m]>`mknod /dev/dri/card0 c 226 0`
<Jeremy[m]>Saw this command on the Fedora forum
<ngz>mknod requires root access
<nckx>
<Jeremy[m]>Ok nevermind
<ngz>Well, that was a neat idea anyway.
<nckx>No, thank you very much for the suggesh Jeremy[m].
<nckx>@Jeremy[m]
<Jeremy[m]>😁
<Jeremy[m]>It's "@jwinnie:matrix.org" I believe
<Jeremy[m]>To ping someone on Matrix from IRC?
<Jeremy[m]>Not sure haha
<nckx>[Jeremy[m]] (~jwinniema@<IP>): @jwinnie:matrix.org
<nckx>☝ /whois
<nckx>So that's what that means.
<Jeremy[m]>Hm that didn't work
<Jeremy[m]>I guess you can just type my display name without the [m]
<Jeremy[m]>"Jeremy"
<Jeremy[m]>nckx: Yeah matrix is federated so the IDs are like email addresses
<nckx>You'll have to live with us typing Jeremy[m] since that's the only thing that's realistically going to happen. People here are busy business types with time only type Jer<TAB>.
<nckx>I could type Jere<TAB> if you insist but that's pushing it.
<Jeremy[m]>Yup that works
<nckx>Cool.
*nckx quietly closes Naev ‘test’…
<jpoiret>damn do i love recompiling every single possible lib in the world just to test gnome 4
<jpoiret>didn't think it'd rebuild webkit of all things
<slyfox>at least those should be compiled mostly once
<jpoiret>yes, but my poor laptop has been at it for 5 hours
<nckx>Oy.
<nckx>Building GNOME is a Bedtime Command.
<jpoiret>hopefully we'll have wayland gnome 4 working as well with this, although newer gdm have had a lot of changes in its wayland space
*mekeor[m] uploaded an image: (3275KiB) < https://libera.ems.host/_matrix/media/r0/download/matrix.org/LAlRXfcQTFItpWXvcLVAOOEP/20210929_225359_5641258252651141025.jpg >
<mekeor[m]>i get an error during graphical installation when having a boot partition in btrfs, an encrypted root partition in btrfs and a swap partition :(
<mekeor[m]>it worked when i did not intend to set up a swap-partition
<nckx>That's odd, because swap partitions are extremely supported. Unlike a separate boot partition, which is not.
<mekeor[m]>nckx: but don't i need a separate boot partition if i want my root-partition to be encrypted?
***mark_ is now known as mjw
<podiki[m]>mekeor: I'd recommend a recently built installer image, 1.3.0 I found a bit brittle in partitioning (better now)
<mekeor[m]>podiki: would i have to build it myself?
<podiki[m]>I too have a separate /boot (though not for encrypted, but to be vfat for uefi)
<nckx>You probably mean /boot/efi.
<podiki[m]>mekeor: there are images built (don't have the file link handy) though I think it wasn't bootable as is last I tried, I had to build the image with guix (but shouldn't need to)
<mekeor[m]>hmm. actually i probably don't need a separate boot-partition because i don't have an efi-computer
<podiki[m]>nckx: yes, sorry /boot/efi
<nckx>mekeor[m]: You don't, and it's currently not supported anyway 😉 Guix expects GRUB to load all boot-related files directly from the encrypted ‘root’ partition. The drawback is that you have to enter you passphrase twice during boot. The advantage and reason it's currently the only option is that it's dead simple to implement.
<podiki[m]>I've got to run, but I'm sure you're in better hands here. otherwise following the installation manual instructions is not so bad if you need to partition manually
<nckx>podiki[m]: If you have a few secs:
<nckx>is there really a significant difference in stability between 1.3.0 images and master?
<nckx>I could build one for mekeor[m] if so.
<podiki[m]>nckx: you should be able to avoid the double passphrase with a key file right?
<podiki[m]>nckx: I had better luck with the newer installer when I was parititioning, yes
<nckx>In principle, yes, like you could avoid it with a separate /boot. But neither are currently implemented *by Guix*, is the prob.
<nckx>OK, thanks!
<nckx>I'll do that.
<podiki[m]>but still needed some work I think (didn't like partially created paritions, or deleting and redoing it I think)
<podiki[m]>there is a bug report from about a month ago
<podiki[m]> https://issues.guix.gnu.org/50004 here is one at least
<podiki[m]>(okay, really better run, those kids won't teach themselves...I think)
<nckx>o/
<mekeor[m]>why does the default partitioning have an unused 2097kB ext4-partition at first?
<nckx>They will, but they might not learn the lessons you want them to…
<podiki[m]>:)
<nckx>mekeor[m]: Just guessing: it might be a BIOS Boot Partition, shown as ‘ext4’ because the installer has no way to represent ‘unformatted raw data for use by GRUB’?
<nckx>If you're using GPT, that's almost certainly what it is.
<nckx>*on BIOS.
<mekeor[m]>nckx: hmm, okay
<mekeor[m]>also, it's strange that the default partitioning does not add a swap-partition
<singpolyma>Probably should have a "I am a laptop" option to get swap?
<nckx>What's laptop about swap? Everyone deserves swap!
*nckx adds 50% total swap partition default to installer.
<singpolyma>swap is mostly for suspend/resume IME
<nckx>You actually suspend to disc on Guix? Hooray, I've found the other user.
<mekeor[m]>i need swap because my ram is smol
<singpolyma>Oh, does that not work in guix for some reason? In that case no swap ever ;)
<singpolyma>mekeor[m]: how smol
<nckx>You might like zswap. Maybe.
<nckx>singpolyma: It works fine, with the usual manual set-up (resume=, etc).
<nckx>There is also zram which is inferior but aggressively marketed by the systemd cabal.
*nckx AFK, and building an installer image in the meantime, just in case mekeor[m] wants to try one.
<mekeor[m]>singpolyma: about 4GB
<mekeor[m]>actually, that's a good hint. maybe i should install guix system on another device with more ram
<singpolyma>4GB is not small... I only have one system with more
<raingloom>4 gigs should be plenty for most purposes. what do you run that needs so much RAM?
<jackhill>nckx: speaking of suspend to disk, any more thoughts about https://issues.guix.gnu.org/49475 ?
<raingloom>if it's not something critical and you are just worried about slowness in near-OOM situations, maybe try earlyoom instead of piling up more swap.
<raingloom>(especially if you're on an SSD. AFAIK swap can eat up an SSD's write cycles.)
<singpolyma>Yeah, slowness when ram is low is why I never enable swap anymore
<mekeor[m]>singpolyma: but what happens when ram is full?
<mekeor[m]>raingloom: i do infact use a ssd. with "write cylces" you mean the life span of the ssd?
<awb99> https://github.com/pink-gorilla/gorilla-guix-chan/blob/master/gorilla/packages/bamm.scm
<awb99>I have a package "bamm" that just installs a bash script
<awb99>it works installing into my guix channel.
<awb99>But then when I do "guix search"
<awb99>In procedure scm_to_utf8_stringn: Wrong type argument in position 1 (expecting string): #f
<awb99>this error pops up.
<jpoiret>okay, can anyone confirm that glib throwing int3 is not normal behaviour? the process fizzles out afterwards, but i don't know much about interrupts
<awb99>can I get a error log somehow?
<singpolyma>mekeor[m]: with 4gb ram is basically never full. If it is something that gone wrong and oom saves the day
<jpoiret>what happens if a process throws int3 but doesn't have any registered handler?
<slyfox>default handler is called, which is probably core dump
<slyfox>int3 is usually assertion failure (and some toolchains add int3 for code right outside functions to prevent ROP exploits), thus most likely it's not ok to see those during normal execution
<mekeor[m]>singpolyma: i guess it depends on which browser you use and how many tabs you've opened. speaking of which. i wonder which browser would be nice to use on guix system...
<jpoiret>oh boy, looks like i've opened pandora's box, aka needing to debug glib
<slyfox>might also be a caller's problem incorrectly using an interface
<slyfox>maybe gdb backtrace will shed some light
<jpoiret>what's the default core dump location on guix?
<slyfox>good question
<slyfox>is it an interactive command run or a part of builder run?
<jpoiret>eh, it's a child of a shepherd service
<jpoiret>the gdm service spawns gnome-shell down the line which is the one crashing
<slyfox>last time i had to debug gnome-shell crash i had to run it interactively from xterm on sessionless xorg (on a foreign distro)
<ngz>nckx: the game is interesting, indeed. I'll sort out the various licenses used throughout the code base and submit it later. Thanks for your help!
<raingloom>mekeor[m]: yup.
<jpoiret>slyfox: launching gnome-session through a shell gave a more digestible error message, everything is sorted out
<slyfox>\o/