IRC channel logs


back to list of logs

<ItsMarlin>i saw it on ghub. just gonna do some edits and make a xkb file
<ItsMarlin>Sad that it's a json file, gonna be harder to make a new one
<pkill9>what's a simple way in guile to create a package profile and get the store path to it for use with special-files-service, without creating a package (which uses the trivial builder to create a package union)?
<nckx>ItsMarlin: That's a very… interesting layout o_O
<nckx>Those number keys make no sense to me. And I say that as a dvp user.
<ItsMarlin>i didn't like that he changed number positions
<ItsMarlin>yes, i dunno why you would change numbers
<ItsMarlin> also change stuff like & and parenthesis based in what i know i use a lot
<nckx>Well, dvp does, but at least there's still some logic left.
<ItsMarlin>Basically it'll be something for when i use emacs, write lisp etc
<ItsMarlin>and for the rest i'll just use qwerty for compatibility
<str1ngs>ItsMarlin: json is a serialize format you can parse it an generate anything you want from it.
<ItsMarlin>do you know how to make something that works for Xorg?
*nckx used to have a dvp.json, for that exact comparison Web site, for my own fingering (which is different from what they use). I'd like to try that against keymacs…
<str1ngs>off hand no, but you could use something like guile-json to generate what ever file you will need
<str1ngs>besides I can barely use a qwerty keyboard, never mind all this fancy stuff :P
<nckx>It's simply bizarre that they don't provide layouts for any common OS…
<nckx>I guess true keyboard nerds just upload it as firmware to their $200 ergo keyboards anyway.
<ItsMarlin>send me something about guile-json pls?
***jje_ is now known as jje
<str1ngs>guix install google :P
<nckx>ItsMarlin: What do you mean?
<nckx>(It's already a Guix dependency and available as a package.)
<ItsMarlin>i'm looking at the repo. i though it had manuals somewhere or somethin
<nckx>str1ngs: ‘Many other fine search engines also available.’™
<nckx>(No need to point out the worst, although we do have surfraw :-p)
<ItsMarlin>I use an instance of searx
<tune>nckx: slurp works again!!! thank you so much
<nckx>ItsMarlin: Your own? (I use someone else's but that external dependency bothers me.)
<nckx>tune: \o/
<ItsMarlin>i use
<ItsMarlin>i might try packaging it for guix later and just self hosting
<ItsMarlin>probably faster than most instances
*nckx was considering packaging Searx literal hours ago, but please, go ahead ☺
<nckx>Hm, I'm in their Freenode channel but don't actually use their stuff.
***jje_ is now known as jje
<nothingmuch>i tried using `guix environment {,--pure} --ad-hoc {,font-liberation fontconfig} icecat` on qubes debian 9 appvm, and w/ fontconfig tried fc-cache -f but upon startup i see a pango warning about Nimbus Sans being missing and all glyphs show up as missing in the GUI
<nothingmuch>i'm not sure how to proceed with debugging this, nor if it's even reasonable to run GUI programs in guix environment on foreign distros like that? i've only used it for dev stacks so far
<bluekeys><civodul> roptat: the problem remains that IRC doesn't lend itself well to
<bluekeys> long messages :-)
<bluekeys>*** Marlin1113 (~user@ has joined channel #guix
<bluekeys><civodul> i'd personally prefer to get such messages on help-guix
<bluekeys>*** dghubble___ (sid253841@gateway/web/ has
<bluekeys> quit: Ping timeout: 272 seconds
<bluekeys><kmicu> roptat: anyway. That short clip just shows usual progamming practices.
<bluekeys> ;)
<bluekeys><rekado_> kmicu: your URL appeared fine. It’s g_bor[m]’s message that got
<bluekeys> converted to “g_bor[m] sent a long message: < URL>”.
<bluekeys> [13:31]
<bluekeys>*** dghubble___ (sid253841@gateway/web/ has
<bluekeys> joined channel #guix [13:32]
<bluekeys><roptat> g_bor[m], I've received my new disk yesterday, so I'll re-install
<bluekeys> guix system on it this week-end [13:33]
<bluekeys>*** Retropikzel ( has left
<bluekeys> channel #guix: #guix
<bluekeys>* kmicu ’s rxvt_unicode url handler is always broken on urls longer than one
<bluekeys> (visual) line. [13:34]
<bluekeys>*** Retropikzel ( has joined
<bluekeys> channel #guix
<bluekeys>*** gagbo (~gagbo@unaffiliated/gagbo) has quit: Ping timeout: 258 seconds
<bluekeys> [13:35]
<bluekeys>*** rubic88 ( has joined channel
<bluekeys> #guix [13:40]
<bluekeys>*** aweinstock ( has quit: Ping
<bluekeys> timeout: 245 seconds [13:49]
<str1ngs>nckx: ping ^
<bluekeys>*** aweinstock ( has joined
<bluekeys> channel #guix [13:51]
<bluekeys>*** kelsoo1 (~kelsoo@dragora/developer/kelsoo) has joined channel #guix
<bluekeys> [13:56]
<bluekeys>*** jonsger (jonathan@nat/novell/x-zaackcaflecejppl) has quit: Remote host
<bluekeys> closed the connection
<bluekeys>*** Retropikzel ( has left
<bluekeys> channel #guix: #guix [13:59]
<bluekeys>*** Retropikzel ( has joined
<bluekeys> channel #guix [14:06]
<bluekeys>*** Retropikzel ( has left
<bluekeys> channel #guix: #guix
<bluekeys>*** Retropikzel ( has joined
<bluekeys> channel #guix [14:13]
<bluekeys>*** samplet (~user@2606:6d00:11b:f010::66f) has joined channel #guix [14:17]
<bluekeys>*** xavierm02 (c134530a@gateway/web/freenode/ip. has joined
<bluekeys> channel #guix [14:19]
<bluekeys>*** xavierm02_ (c134530a@gateway/web/freenode/ip. has joined
<bluekeys> channel #guix [14:20]
<bluekeys><roptat> since I'm going to re-install guix shortly, I think I should try and
<bluekeys> ensure my home is cleanly managed
<bluekeys><roptat> I think that means I don't want to mix config, caches and my own data
<bluekeys> together
<bluekeys><civodul> roptat: "reinstall"? [14:21]
<bluekeys><roptat> my current disk is 11 years old and starting to fail
<bluekeys><civodul> it's a notion from imperative distros :-)
<bluekeys><civodul> ah, well
<bluekeys><civodul> *that's* a side effect
<bluekeys><roptat> so I think guix can't do anything about that :)
<bluekeys><roptat> the weird thing with it failing is that sometimes the system won't
<bluekeys> start and drop me in a repl, and sometimes it will boot just fine
<bluekeys> [14:22]
<bluekeys><roptat> so I was thinking that I could make .config read-only and have it
<bluekeys> managed by guix or a similar system
<bluekeys><roptat> but there are also configurations directly in ~ [14:23]
<bluekeys><civodul> yup
<bluekeys><xavierm02> Hey. Is there some simple way to ask guix to update only stuff
<bluekeys> that won't take long (i.e. no building of big things, no
<bluekeys> downloading of huge substitutes)?
<bluekeys><roptat> I don't think so [14:24]
<bluekeys>*** narispo (~narispo@ has joined channel #guix
<bluekeys><civodul> xavierm02: note that it could be a risk: you could be missing
<bluekeys> important security updates
<bluekeys><civodul> that said, you can always do "guix upgrade -n" [14:25]
<bluekeys><civodul> and then you check whether, say, libreoffice "would be built"
<bluekeys><civodul> it that's the case, you can do "guix package -u .
<bluekeys>Guix is running on my thinkpad x230. When I dock it in its station I want it to display to the displayport connected monitor on my desk. Is that a config.scm thing or window manager or both?
<bluekeys>Ok, so it looks like arandr is missing a required dependancy (xrandr) so the scripts it produces can't be applied or run.
<civodul>Hello Guix!
<rekado>Hi Guix
<rekado>users report new problems with “guix pull”: gnu/services/base.scm:289:2: In procedure allocate-struct: Wrong type argument in position 1: #<procedure %service-type?-procedure (obj)>
<roptat>hi guix!
<civodul>hey all!
<civodul>rekado: is there a detailed bug report somewhere?
<rekado>I guess that this is the same old miscompilation problem on machines with lots of CPUs.
<rekado>yes, just a sec
<civodul>i just did 'guix pull' on berlin (to reconfigure) and it worked fine
<rekado>it’s the guix-cli derivation
<civodul>with 80166beca231b02e302b5eb9400c8b8e2b84c94a
<rekado>for which we now get substitutes
<civodul>so the substitute is broken?
<rekado>this derivation must have been built when a substitute wasn’t yet available
<rekado>I’ve got the log here
<rekado>civodul: here’s the log:
*rekado needs to catch a bus
<civodul>rekado: that blocks Tor :-)
<civodul>well, don't miss your bus!
<rekado>that’s the default for wgetpaste
<rekado>I’ll catch the next one
<rekado>what about
<rekado>let’s try
<rekado>maybe we should change the default for wgetpaste when we recommend it to Guix users
<civodul>the load phase is sequential though
<civodul>do you have the commit ID and .drv file name?
<rekado>the root drv is /gnu/store/dglvj84666sxfc27imj8pszjdlqh9w6h-profile.drv; guix drv is /gnu/store/xhz5p5ja09lk59l6k1q84arqddnb3yq4-guix-501d4b335.drv
<rekado>I can’t find the corresponding guix-cli drv.
<civodul>cool, thanks
<rekado>thanks for looking into it
*rekado leaves
<civodul>new 'guix publish' is up and running
<civodul>"guix pull --commit=501d4b335 -p /tmp/test" has substitutes and works fine
<civodul>"guix build --check /gnu/store/kd63p4s9gfljs6dwiirawjxkdi1lq478-guix-cli.drv" passes, though it produces a different output (not bit-reproducible)
<civodul>mbakke: you should be able to log in on berlin now!
<roptat>so I have my own home manager now :)
<roptat>it's not perfect but it led me to find some programs that didn't really care about the XDG standard
<roptat>like hexchat wants to write its log to ~/.config/hexchat/logs
<roptat>and scrollback to ~/.config/hexchat/scrollback
<roptat>pulseaudio won't start with a read-only home directory even if everything it might need to access is actually read-write
<roptat>so I had to start it with HOME=/tmp/pa pulseaudio --start
<roptat>and it still crashes sometimes, and can't be started again automatically...
<buenouanq>My first ever Thinkpad (X200) came today.
<buenouanq>It's possibly the most beautiful thing I own.
<buenouanq>I don't even have the battery or charger yet (e.g. haven't even booted it up) and I'm already looking at another of the same model (;.___.)
<buenouanq>I need to collect as many of these as possible while they're still in nice working condition.
<mbakke>civodul: cool, I'll check it out later today :-)
<civodul>roptat: sounds fun!
<civodul>well, the home manager, not the crashes
<civodul>mbakke: awesome, i'll also have to initialize your password so you can sudo
<roptat>crashes are fun too :
<roptat>I'll probably make a channel with enough code and doc for others to use that code
<pkill9>roptat: what does home-manager do?
<roptat>it generates my ~ as a guix profile
<roptat>(so my data is outside of my ~ which is not super convenient when I start a terminal)
<roptat>it's like system management, but for my home directory :)
<pkill9>does it populate your home directory with the contents of that guix profile?
<roptat>my home directory is now a symlink to /var/guix/profiles/per-user/roptat/home :)
<pkill9>where do you store data that would normally be written to your home directory?
<roptat>in /data/roptat
<pkill9>what about programs that automaticlaly write to your home directory?
<roptat>I also have a .local and .cache directory in there, and symlinked them from ~/.local and ~/.cache
<roptat>(but I set XDG_DATA_HOME and XDG_CACHE_HOME too)
<pkill9>ah ok
<roptat>but then some programs will want to write to other directories and they're not behaving correctly :)
<pkill9>yea i was thinking that
<roptat>I just installed and configured that during the last two days, so it's still pretty new
<pkill9>it sounds neat
<roptat>but in every cases where data was written outside of these directories, I just created a symlink so the program could work
<roptat>so I have a symlink for .config/hexchat/log for instance
<pkill9>ah yeah that's a nice solution, then you can see explicitely which applications are mixbehaving
<roptat>and I just created a symlink for ~/.mozilla because icecat's config is very complicated and I didn't want to bother too much
<roptat>the only big issue is pulseaudio
<roptat>like I said, it doesn't like the fact that ~ is a read-only
<roptat>I use the autostart feature of my window manager to start it with HOME=/tmp/pa but it crashes sometimes, and no application can restart it correctly
<efraim>Have you looked at the archwiki entry about dotfiles,
<roptat>no, but I'll have a look
<roptat>one of the nice things though is that I can generate my application menu with direct references to the store, so I know that I'll always be able to start the applications in the menus
<roptat>(since the profile will not be garbage collected)
<roptat>and I don't need to have these graphical applications in my user profile
<efraim>Hmm, not dotfiles, I forget what its called, it had something to do with programs poluting ~/ and not respecting XDG specs
<roptat>this: ?
<efraim>Yeah, I just refound it now too
<civodul>roptat: having $HOME in /var/guix/profiles sounds pretty radical :-)
<roptat>it is!
<roptat>but remember it's only about configuration
<efraim>Looking at the Shepherd manual, the examples section is in desperate need of user examples
<rekado>civodul, roptat: I’d like to lay the foundation for a Guix cookbook. Is it enough for a start to add a single texi file for the English version? I’m not yet comfortable with the mechanisms needed for po4a support.
<roptat>rekado, I can help you with i18n :)
<civodul>rekado: single or multiple texi files, both work with the po4a machinery
<civodul>anyway, that's a great initiative!
<rekado>fellow Emacs users: when you wake up your suspended laptop, do you also find that Emacs sometimes gets really sluggish? And that your laptop fan spins at max for no apparent reason? And that htop doesn’t indicate any expensive processes? But when you restart Emacs all is fine?
<rekado>roptat: thank you
<rekado>roptat: do I just need to add the new texi file to some list in or is more configuration needed?
<civodul>rekado: nope
<roptat>you'll need to change ./bootstrap
<civodul>i do notice that Helm eventually hangs sometimes for a couple of seconds, like a GC pause or something, but unrelated to suspend-to-RAM
<roptat>and you'll need to add a target to doc/ too I think
*rekado still hasn’t switched to Helm
<rekado>roptat: okay
<roptat>you'll have to add the files to TRANSLATED_INFO
<roptat>in doc/
<roptat>add something similar to the $(srcdir)/%D%/contributing.%.texi target
<roptat>and maybe modify the xref_command
<roptat>and if we want to build it with guix pull, add it to the translated-texi derivation
<roptat>need to go, see you later
<rekado>roptat: thanks, I’ll give this a try
<rekado>got another “guix pull” error report from a user, this time involving the compilation of a channel that depends on another channel. The modules provided by the required channel are not found while compiling the other channel.
<kmicu>Great work roptat! Making workstation’s home environment more reproducible by using read-only file system sounds exactly like Guix/Nix 😺
*kmicu still remembers Nix users with broken desktops and no fix in rollbacks cuz ~/.gnupg/* had a broken config. What’s not managed by Guix is not reproducible. Solution: put everything in Guix.
***daissgr is now known as daissgr_work
***daissgr_work is now known as daissgr2
***daissgr2 is now known as daissgr
***daissgr is now known as daissgr3
***daissgr3 is now known as daissgr4
***daissgr4 is now known as daissgr5
***daissgr5 is now known as daissgr
<pkill9>can i provide packages to the union-build guix guile function?
<pkill9>the function takes "inputs", i don't know if that means it takes inputs of the form `("package-name" ,package) or just the package variable itself
<roptat>pkill9, any file-like object I think
<roptat>so package variable
<roptat>I use it with the result of (computed-file)
<pkill9>i'm giving it a list conaining a single package, but it gives an error: ERROR: Wrong type to apply: "/gnu/store/md2plii4g5sk66wg9cgwc964l3xwhrm9-hello-2.10"
<roptat>how are you using it?
<roptat>if you're in a gexp, make sure to ungexp the union-build
<pkill9>yea i'm using it in a gexp
<roptat>like this: #~( ... #$(union-build (list package)) ... )
<roptat>otherwise, the builder will only see the store path of the package
<roptat>mh... also why do you need a union-build of one package?
<roptat>you know you can ungexp the package directly, right?
<pkill9>i'm gonna union-build multiple packages, this is just for testing
<roptat>so inside the gexp, you want to ungexp the result of the union-build, this will also make sure you don't need to import union-build inside the builder
<roptat>oh wait, actually I can use it that way:
<pkill9>hmm now it says union-build is an unbound variable
<pkill9>i did ad a use-modules with it
<pkill9>i'll post what i have so far
<roptat>so actually you can use it inside the builder, but it needs extra care, because lists are translated into its data representation (so '(1 2 3) becomes (1 2 3)) which is interpreted as a function call, maybe that's the error you go just above
<roptat>yes sorry for being misleading (and thanks for with-imported-modules :))
<roptat>so this: #~(begin (use-modules (guix build union)) (union-build out '#$packages))
<roptat>note the quote before #$packages
<pkill9>i understand that part
<roptat>that's what I have here:
<pkill9>actually my understanding of it was inverted, i saw the #$ as an unquote
<roptat>just didn't remember it correctly (even though I wrote this code yesterday :p)
<pkill9>oh nvm
<roptat>it's like an unquote, but for gexp
<pkill9>ok so that part i do understand
<pkill9>when you said note the quote, i thougt you were referring to the #$, but now i see you've added a quote before the #$
<roptat>because packages is a list, and if you use #$ it's passed without a quote in the builder script
<roptat>you could have written (list #$@packages) I think
<roptat>(or is it #@$?)
<roptat>like unquote-splicing
<pkill9>hmm neither of them works for me
<pkill9>adding a quote returns the same error, using #$@ returns: In procedure delete-duplicates: Wrong type argument in position 1 (expecting list): "/gnu/store/md2plii4g5sk66wg9cgwc964l3xwhrm9-hello-2.10"
<roptat>are you really passing a list to your function?
<roptat>(just thinking about it, ungexp'ing union-build was a bad idea since out is not known outside of the gexp)
<pkill9>yea, this is what i'm running with `guix build -f`:
<pkill9>and i get the original error
<roptat>just add a quote before #$packages
<roptat>like this: '#$packages
<roptat>the ungexp will happen before the quote
<pkill9>ohh hmm weird now that works
<pkill9>actually wait, migh tnot be,
<roptat>well, you can also just copy-paste my union function from here:
<roptat>it works fine :)
<pkill9>ahh yes it does
<pkill9>it was failing due to output directory already existing
<roptat>I see
<pkill9>as in that was a new error
<pkill9>did you get that?
<roptat>no because I didn't use (mkdir #$output) first
<ItsMarlin>hi guix
<ItsMarlin>i'm gonna prepare a little website
<ItsMarlin>and make tutorials on guix and stuff like that
<ItsMarlin>packaging and examples, videos and all
<pkill9>so you can give it a #:modules option instead of using with-module-import
<ItsMarlin>anybody wanna help?
<pkill9>nice ItsMarlin
<rekado>ItsMarlin: we’ll have tutorials in the Guix repo and videos on the Guix website.
<roptat>pkill9, yes, but with-imported-modules looks nicer
<roptat>I didn't know about it :)
<rekado>ItsMarlin: I think it’s better to handle this within the Guix project itself, rather than having a third-party site.
<ItsMarlin>i mean, i'll be doing it independently
<rekado>ItsMarlin: I understood that. I’m just wondering what the advantage is over doing it in Guix.
<pkill9>i think using #:modules looks nicer :P I found the with-imported-modules in the manual on gexpressions
<ItsMarlin>well, i guess you can republish it if you like them
<civodul> <- R-B featuring Holger :-)
<civodul>rekado: ↑
<rekado>heh :)
<civodul>cute video
<civodul>i don't understand the words, but there seems to be a couple of interesting analogies :-)
<rekado>I’m surprised that repro builds are a topic for Prototype Fund.
<civodul>it's a matter of convincing people that it *is* a topic ;-)
<rekado>I was under the impression that they only fund “commercial” “app” prototypes.
<civodul>oh, reproducible F-Droid maybe?
<roptat>"reproducible" as in downloading the same binary from the same repo? :p
<civodul>heheh :-)
<roptat>to be fair, they actually rebuild their app, but not their dependencies
<civodul>oh, didn't know that
<civodul>hopefully there'll be some progress
<rekado>it’s a little vague on what the deliverables are
<rekado>that’s good, though.
<PirBoazo>roptat : Merci pour l'aide
<PirBoazo>juste une question :
<civodul>rekado: the English version is... more concise:
<PirBoazo>roptat : peux tu me confirmer qu'il n'est as possible d'avoir sur un même systeme des interfaces réseaux en dhc et d'autre en IP Fixe
<roptat>techniquement ce n'est pas impossible, mais avec guix, tu peux pas configurer ça facilement
<roptat>parce que les services ont un nom générique (networking) qui font que tu ne peux pas en avoir deux en même temps
<civodul>roptat: we could easily change dhcp-client-service-type so that one can specify which interfaces to probe
<roptat>civodul, would be nice :)
<PirBoazo>civodul : Il y a une doc sur le sujet ?
<PirBoazo>roptat : j'ai m'y à jour ma page sur guix :-)
<PirBoazo>roptat :!guix/
<civodul>PirBoazo: le manuel parle de dhcp-client-service-type, mais pas encore de la fonctionalité qui reste à écrire ;-)
<PirBoazo>En attendant j'ai fixé toutes mes interfaces ;-) et j'ai pu tester le roll-back , Nickel
<civodul>cool !
*jonsger liked the word "Bithaufen" in the video :P
<EuAndreh[m]>Hi Guix! Silly question: what are the 'cut here' markers on the emails from the mailing list?
<EuAndreh[m]>It looks like quoted verbatim text, or another email etiquette that I'm unaware of.
<EuAndreh[m]>I couldn't find the answer for it online yet
<civodul>EuAndreh[m]: it's just something that Emacs message-mode provides
<EuAndreh[m]>Hmm, interesting. I'm using Emacs but I don't think message-mode is active for reading email. Thanks :)
<rekado>EuAndreh[m]: it’s provided when composing a message.
<rekado>it has no special meaning that would be interpreted when displaying a message.
<EuAndreh[m]>rekado: So it's just a block of quoted text, right?
<PirBoazo>next step : apprendre guile
<PirBoazo>roptat : civodul : avez vous des liens sur des tutos ?
<roptat>PirBoazo, si tu es dans le coin, il y a les journées Perl et Guile à Strasbourg dans une semaine et demi
<roptat>on y sera et on essaiera d'organiser une séance d'introduction au langage
<PirBoazo>roptat : semaine prochaine pgday FR à Lyon et ensuite vacance :-)
<PirBoazo>pour moi j'aurai bien fait un saut jusqu'à strasbourg
<roptat>dans ce cas... j'ai appris sur le tas en lisant le code de Guix et le manuel de référence de Guile
<roptat>mais j'imagine que c'est pas la meilleure manière de faire :p
<PirBoazo>roptat : surtout que je suis pas un génie en programation :-(
<EuAndreh[m]>rekado: Is it sort of a #+BEGIN_SRC for email then?
<roptat>désolé, je connais pas d'autre ressource
<kmicu>EuAndreh[m]: check message-mark-insert-begin and message-mark-insert-end in message.el
<PirBoazo>Je vais chercher ... A+
<rekado>EuAndreh[m]: yes, similar.
<roptat>PirBoazo, à bientôt :)
<kmicu>(or docs )
<EuAndreh[m]>kmicu: I will
<EuAndreh[m]>rekado: Thanks
<rekado>It just looks nice when you quote a bunch of lines and you don’t want to indent them (so that it’s easier for the reader to copy them as is)
<civodul>rekado: ↑
<civodul>we should be present on this kind of event
<rekado>Spack again…
<civodul>yeah, crazy
<civodul>we have a lot to learn from them
<roptat>what are they? :)
<civodul>US researchers
<civodul>they get support from US national labs + hardware vendors
<roptat>oh! I think I've already seen that website
<roptat>the logo at least
<roptat>looks like the reproducible builds logo :p
<civodul>it's actually a bit older :-)
<civodul>(and it's not reproducible)
<civodul>janneke: is it ok to update nyacc on master?
<roptat>they have a weird cli for specifying variants, but it's very short
<roptat>%gcc@4.7 looks nice actually
<roptat>compare with --with-input=gcc=gcc@4.7
<roptat>now I don't get what's the difference between that and ^libelf@0.8.12
<rekado>I’m not a fan of “%” and “^”. I’d rather have a self-explanatory option.
<civodul>the CLI for specifying variants is rather nice, though it's a bit obscure
*jonsger never got any lzip substitute
<rekado>I’m never in such a hurry that I’d prefer to use single-character CLI magic over bash-completable options.
<jonsger>+1 rekado
<rekado>what I do find nice, though, is the fact that their package recipes allow for parameterization.
<civodul>jonsger: if you "guix pull" now, you should definitely get some!
<rekado>(aka use-flags in Gentoo-speak)
<civodul>rekado: it's both a strength and a weakness IMO
<civodul>esp. a weakness :-)
<civodul>basically, Guix leaves zero degree of liberty in its DAG, whereas Spack leaves everything open
<civodul>the end result is that you never know what's supposed to work, in Spack
<rekado>yes, I agree
<rekado>but parameterized packages is something I’d love to see in Guix.
<civodul>it's pretty much a low-hanging fruit now :-)
<rekado>you know, a little more formal mechanism instead of “just write a package definition, inherit from the original one, use substitute-keyword-arguments…”
<jonsger>civodul: I don't use "guix pull" I use a recent opensuse package (944cb87a33)
<jonsger>I did restart the daemon as well
<civodul>jonsger: then that'll come progressively
<civodul>it must be hard to not use 'guix pull'
<civodul>well, do you create a new opensuse package for each Guix commit? :-)
<civodul>rekado: we can also add more package transformation options
<jonsger>civodul: I click on a button to update the opensuse package to the newest commit in the guix repo. I do that usually once or twice a week :)
<civodul>heh, ok :-)
<jonsger>It doesn't makes sense to have a package per commit. Intersting updates in guix only came when merging staging or core-updates...
<civodul>there are tool updates, new features, bug fixes, security fixes, etc. happening all the time
<jonsger>yes, and I catch them once a week :) And it gives the build farm some time to provide substitutes :)
<civodul>heheh :-)
<pkill9>did the gcc package get removed?
<civodul>pkill9: it got "hidden"
<civodul>from the UI
<civodul>because in general you want to install "gcc-toolchain"
<pkill9>how do you refer to a package's output in guile?
<pkill9>for a list of packages
<civodul>it depends on the context: package definition, manifest, etc.
<pkill9>hmm, in this case i'm passing a list of package objects to union-build
<civodul>so you might write something like #~(... (union-build (list #$foo #$bar:lib)) ...)
<pkill9>i'm passing it a bunch of packages of the form "(@ (gnu packages gcc) gcc-7)"
<pkill9>I tried replacing gcc-7 with gcc-7:lib but it didn't work
<pkill9>tbh i should just find anther package with what it contains, i just can't remember what library it was that is in gcc:lib, i think that library is also in another package, possibly libstdc++
<civodul>i think the G-Expressions section of the manual has an example
<pkill9>ah it's libgcc*.so* i need
<roptat>civodul, btw I still don't know how to that when I can't ungexp it right away
<roptat>basically, I want to do something like this: (define package transmission:gui) and later (computed-file "..." #~(... #$package ...))
<roptat>but of course transmission:gui doesn't exist
<roptat>and gexp-input didn't work at the end
<roptat>guix build: erreur : #<gexp-input #<package transmission@2.94 gnu/packages/bittorrent.scm:67 370e630>:gui> : entrée G-expression invalide
<roptat>(the French message sounds a bit weird)
<jonsger>civodul: this lzip substitutes doesn't need any change at building guix, like adding lzip at build time or configure parameter?
*nckx .oO is this because the gexp build system is still to come
<pkill9>weird, searching gcc in the guix cgit repo says "No repositories found"
<jonsger>pkill9: try this link
<pkill9>ah, thanks
<dongcarl>nckx: I thought gexp is already what’s used?
<dongcarl>Maybe I’m confused
<civodul>jonsger: your guix package should depend on lzlib, there's a configure-time check
<civodul>plus a run-time check, actually
<str1ngs>nckx: guix install duckduckgo :P . but that's not what I meant anyways :P
<nckx>str1ngs: No, you meant ‘google == search’. Luckily, PedanticMan® was there to save the day and Free your mind. Say ‘Linux’ now. I dare you.
<pkill9>so is there not a way that a package output could be accessed in guile in the same way a package itself is accessed?
<nckx>dongcarl: It is possible my information is outdated.
<str1ngs>nckx: they way I handle this in nomad is . (define search-provider-format "") :P
<nckx>str1ngs: The way I handle it in Icecat is host a JavaScript page that calls javascript:window.external.AddSearchProvider on that string because an ‘add search provider’ button would just be too much work for Mozilla 😒
<str1ngs>nckx: scheme is more fun... just saying :P
<nckx>(Inb4 ‘yeah but you can create an account on some random Mycroft Web site, add your search provider there, go back to Icecat settings and choose ‘Find more search providers’ because that's not a UI. That's a mistake.)
<nckx>str1ngs: No argument there.
<nckx>JavaScript was also a mistake.
<brendyyn>its not like it would be any better if it was scheme
<str1ngs>I'm thinking about making it a fluid, so you can do (with-fluid* search-provider .... you get the idea
<pkill9>what are you making str1ngs?
<str1ngs>and extensible web browser using GNU guile
<pkill9>nice :)
*pkill9 just realised you can "unhide" packages by inheriting them to a new public package
<pkill9>maybe i can take the output of a package and make it a new package
<pkill9>that would solve the issue somewhat elegently
<str1ngs>for libgcc I guess you would need gcc:lib?
<pkill9>str1ngs: yea but gcc is hidden now, and the only convenient way to pass the output of a package to a guile function that handles packages is using specifications (i.e. converting "packagename:packageoutput" to a file-like object like a file/directory/package in the store)
<pkill9>and hidden packages can't be accessed with a specification
<str1ngs>hmmm what is the reasoning for hiding gcc. just so that gcc-toolchain is used instead?
<pkill9>gcc-toolchain is what you're supposed to use, so pretty much i think
<str1ngs>I mean I'm sure there is a good reason, it's just not obvious what the reasoning is
<nckx>str1ngs: Some people were ‘installing gcc’ to compile things.
<nckx>Which won't work.
<nckx>Hence the sledgehammer (meh).
<str1ngs>right that's understandable. but that makes it difficult to do something like guix search or edit now?
<nckx>You asked for the reason, I never said it was good.
<nckx>The noise of ‘how do I get gcc no really gcc’ is now equal to that of ‘I installed gcc why can't I compile stuff’ IMO.
<str1ngs>I agree with you on this one
<nckx>(pkill9: Not calling your quest noise, far from it, but it's a shame you had to embark on it.)
<roptat>oh, I found how to select an output outside of a gexp, just make a gexp and ungexpe it immediately after that
<roptat>#~#$transmission:gui worked
<brendyyn>thats insane. i think the quoting syntax should be removed from the language
<str1ngs>this seems like alot of work just to use gcc:lib. considering that many a package could potentially use that?
<nckx>brendyyn: Why?
<nckx>It's just ,'foo.
<str1ngs>probably because it's not obvious what's going on that
<roptat>actually more like `,foo
<brendyyn>it breaks sexp syntax just for one thing, and now civudol thought its a good idea to grow that wart even further
<nckx>Whoops, yeah.
<brendyyn>(` (, foo))
<brendyyn>where they are regular symbols
<nckx>Yes, much clearer…
<str1ngs>,foo does not compile?
<str1ngs>or evaluate at compile time. sorry for my ignorance
<nckx>str1ngs: No, but `,foo does.
<str1ngs>I need to understand these quotes better :(
<nckx>And this isn't the intended use of gexp, but a little hack.
<str1ngs>for example say I want to use (command-line) how do I avoid evaluating that at compile time?
<nckx>str1ngs: '(command-line)?
<nckx>Depends on what you mean by use.
<str1ngs>I want it to evaluate it at run time. I have a generic reuse reason
<brendyyn>,optimize `,foo
<brendyyn>$3 = foo
*nckx wishes we had a REPL bot.
<nckx>brendyyn: Why'd you paste that?
<str1ngs>I'll settle for one that kicks on flooding :P
<nckx>Oh, now I get your ping this morning.
<brendyyn>nckx: just felt like it. its interesting
<nckx>That was a netsplit, no? Not much I can do about those messages.
<str1ngs>luckily his client timed out. I thought it wouldn't end lol
<nckx>brendyyn: Oh, abso. I always forget about ,optimize. Here I was defining foo like an animal.
<nckx>str1ngs: Oh, it was one person? I'm misrembering then.
<nckx>Yeah, the dude who stays up on #guix till 6:00 isn't awake at 7:00, sorry.
<str1ngs>yeah, I don't know what happened his client seemed to paste the whole channel's backlog
<dongcarl>Hey all, bind-mounting `/gnu` won't cause troubles will it?
<str1ngs>oh no worries, I was just checking if you were around just encase.
<str1ngs>dongcarl: no, I have used that but only on a foreign distro
<dongcarl>str1ngs: Thanks!
<str1ngs>I'm not sure how much mileage you will get with Guix system though.
<nckx>str1ngs: Thank you for mentioning that. I did invite Siygn (a Freenode bot that does just that, supposedly) when I removed +r. It… seems to have left.
<nckx>Maybe we talk about Guix too much.
***ChanServ sets mode: +o nckx
<Sigyn>** Warning: if there is any bot in #guix which should be exempted from Sigyn, contact staffers before it gets caught **
***ChanServ sets mode: -o nckx
<nckx>Maybe that'll help. Maybe't wont.
<str1ngs>what's the limit on flooding 3 lines? fro Sigyn ?
<nckx>str1ngs: Only one way to find out!
<nckx>(No. Don't. Here's the source though:*
<nckx>Sigyn: Can you talk?
<nckx>Sigyn: botsnack.
<nckx>She cannot.
***ChanServ sets mode: +o Sigyn
<nothingmuch>asking again: i tried using `guix environment {,--pure} --ad-hoc {,font-liberation fontconfig} icecat` on qubes debian 9 appvm, and w/ fontconfig tried fc-cache -f but upon startup i see a pango warning about Nimbus Sans being missing and all glyphs show up as missing in the GUI
<civodul>nothingmuch: the fontconfig package provides special treatment to ~/.guix-profile
<civodul>so i think you may have to add your font packages to the default profile
<nothingmuch>i installed fontconfig, font-liberation & icecat, but it still behaves the same even with fc-cache -f
<nothingmuch>(as in guix install, as opposed to environment)
<nothingmuch>fc-list reports Nimbus Sans L as a subpath of /gnu/store, but i'm still seeing the pango warning saying the font_face and scaled_font files not being found
<nothingmuch>civodul: am i missing some steps in terms of what adding the font package entails? i've somehow managed to stay completely in the dark over the years in regards to how fonts are registered/found/used by graphical progs
<civodul>nothingmuch: hmm i don't see what you're missing
<civodul>i have a few other fonts installed, such as font-bitstream-vera and gs-fonts
<civodul>perhaps you could try these and run "fc-cache -fv" again
<civodul>Nimbus is part of gs-fonts actually, no?
<nothingmuch>i believe it's font-liberation, but let me try those other ones
<nothingmuch>civodul: still no change, including with gs-fonts
<westerwest>Does guix work with nextcloud sync?
<nckx>westerwest: What does ‘work with’ mean?
<westerwest>Can I sync my ~/Documents and ~/Pictures?
<rekado>westerwest: could you tell us how this is related to Guix (a package manager)?
<nothingmuch>civodul: my bad, installing font-bitstream-vera changed the error - now it's complaining about that font face instead of nimbus sans
<nothingmuch>so i suspect pango is picking up the files, but failing to actually read them
<nckx>rekado: I guess westerwest wants to know whether something like ‘owncloud-client’ (in guix) is packaged for NexcCloud (it isn't).
<nckx>Are the two still largely compatible? Might work…
<westerwest>If its going to work I I pull it. I am not really sure how guix works and if app installed through guix can access home folder
<rekado>westerwest: applications installed through Guix can access all directories that your user has access to.
<civodul>rekado, roptat: could you share your opinion on
<civodul>i mean by email :-)
<civodul>so we can move forward and have it documented
<westerwest>rekado: oh thanks!
<westerwest>I mean is it the usual way to install guix on another distro?
<efraim>Owncloud client should work with nextcloud client I think, I haven't gotten around to it yet
<roptat>westerwest, it will work with owncloud-client
<westerwest>And once again how do I store my configuration. System wide in in /etc/config.scm but for the user?
<roptat>there's no user configuration (I'm building something, but it's not very convenient yet)
<roptat>it's just saved in your home directory as usual
<westerwest>Someone told my my-manifest.scm and somehow to restore it but I forgot how to do it
<roptat>I don't understand
<roptat>you can use a manifest to specify the packages that you want in your profile, but that has nothing to do with software configuration
<roptat>/etc/config.scm is for system configuration, on guix system, not on a foreign distro
<westerwest>oh sorry, wrong wording
<westerwest>Can I have in /etc/config.scm packages as well?
<roptat>sure, and that defines the set of globally visible packages
<westerwest>Oh I see the packages expression now
<westerwest>And to run my-manifest.scm file?
<roptat>you can use guix package -m my-manifest.scm
<roptat>that will replace your current generation of your profile with the content of the manifest
<westerwest>This is awesome!
<nckx>It's all right ☺
<emacsomancer>where does guix look for system fonts? is there a $PATH-type variable?
<nckx>emacsomancer: “The ‘fontconfig’ package in Guix looks for fonts in ‘$HOME/.guix-profile’ by default.”
<nckx>Every profile should have its own share/fonts/truetype/fonts.dir if it contains fonts, but don't know where or how fontconfig told where to look.
<nckx>emacsomancer: It's just hard-coded in (gnu packages fontutils), fontconfig package.
<nckx>See ‘--with-add-fonts=’.
<emacsomancer>nckx: and on a foreign distro?
<nckx>There's nothing Guix System-specific about that.
<nckx> /run/current-system/profile/share/fonts is added but will simply be ignored then.
<nckx>Guix-on-foo uses the same fontconfig package.
<dustyweb>should I push the racket-7.3 package to core-updates or to master?
<dustyweb>nothing else is using racket atm afacit
<emacsomancer>nckx: I'm using Guix on top of a Bedrock system, and my Guix applications can't see certain fonts, which is why I ask
<dustyweb>probably master is fine?
<nckx>emacsomancer: Are they in ~/.guix-profile/share/fonts?
<nckx>And does fc-list not find them?
<janneke>dustyweb: isn't that determined by refresh thresholds?
<emacsomancer>nckx: fc-list finds them, but they're not in ~/.guix-profile/share/fonts
<janneke>ah, nothing is using...right
<nckx>emacsomancer: *Guix's* fc-list?
<nckx>dustyweb: Why not master?
<emacsomancer>nckx: ah, let me check
<emacsomancer>nckx: is fc-list part of fontconfig ?
<nckx>emacsomancer: Yes. I don't have expe
<nckx>*have experience with Guix on foreigners. I don't know how to make everyone see everyone's fonts, if that's even possible in both directions.
<dustyweb>janneke: I don't know what refresh thresholds are so I can't answer that? ;)
<nckx>But Guix-installed programmes should definitely see Guix-installed fonts.
<nckx>dustyweb: guix refresh -l racket
<dustyweb>oh :)
<janneke>dustyweb: ah, i made that up yeah
<nckx>>300 → staging, >100 → core-updates, otherwise master.
<dustyweb>The More You Know
<nckx>* >1000
<dustyweb>ok then, it's a leaf
<emacsomancer>nckx: Guix's fc-list doesn't see the other fonts
<emacsomancer>I wonder if I can link from the relevant directories into ~/.guix-profile/share/fonts/
<nckx>emacsomancer: I don't *think* that will work because fonts.dir won't be updated, but I'm no font wizard.
<nckx>emacsomancer: You can set search paths in a confusing number of files:
<nckx>And well you know how man pages work so I'll stop spamming.
<nckx>emacsomancer: You'll also have to run (the right) fc-cache -r to make FC actually see you new fonts.
<nckx>This can already be confusing on Guix System; adding another distro to the mix makes it even more fun!
<emacsomancer>nckx: yeah, linking doesn't seem to work, even though I can get (Guix's) fc-list to list the other fonts this way; but Guix's apps don't seem to be able to use them
<nckx>Hmph, I've listed every trick I've ever needed to get fonts to work is. I'm afraid you're on your own ☺
<nckx>s/ is//, I can't type today.
<str1ngs>what about linking guix profile fonts to ~/.fonts ?
<emacsomancer>str1ngs: it already sees fonts in ~/.local/share/fonts without issue; but do you think ~/.fonts would be different?
<nckx>str1ngs: It's the other way around. Using ‘foreign’ fonts in Guix applications.
<str1ngs>right this is reversed
<emacsomancer>nckx: thanks, i'll poke about a bit and see
<str1ngs>when running fc-cache you can add directories as arguements
<nckx>Aha ☺
<emacsomancer>guix's fc-list is finding the fonts, but it still doesn't seem to be able to use them in guix applications
<str1ngs>though the guix way to do this is to package the fonts :P
<str1ngs>you also need to restart the application to take effect
<emacsomancer>str1ngs: well, the ultimate goal would be all-guix all-the-time systems, but in the meanwhile...
<emacsomancer>str1ngs: right, I've been closing and re-opening the apps
<str1ngs>also run fc-cache with -v to see what's happening maybe -f will help also
<emacsomancer>str1ngs: i've been running `fc-cache -fv` and `fc-cache -fvr` after nckx's suggestion
<str1ngs>which -a fc-cache is definitely running guix's fc-cache?
<emacsomancer>str1ngs: the guix one is listed first
<str1ngs>and guix's fc-list shows the fullpath for foreign distro?
<emacsomancer>it does until it doesn't. It initially lists the fullpath, but then the linked font directory disappears at some point
<str1ngs>hmm I think the linked directory wont help. it will cause recursion. I miss understood the scope of the issue
<emacsomancer>str1ngs: well, it's being removed anyway
<str1ngs>yeah strange, I'm sure then.
<str1ngs>not sure*
<emacsomancer>str1ngs: I can do `fc-cache -fvr /bedrock/cross/fonts` and I can see it finding fonts, but then none of them actually end up in `fc-list`
<str1ngs>which -a fc-list . is using Guix fc-list? I assume so but still check
<nckx>str1ngs: I asked that above already, so should be.
<str1ngs>sorry missed that :(
*nckx looks at /bedrock/… path… well, that's not going to help.
<nckx>What kind of a distro doesn't follow the FHS‽
<nckx>str1ngs: 's all right, just don't want to send people in circles ☺
<emacsomancer>nckx: bedrock is a metadistro
<nckx>I used 2 self-described metadistros for years and never learnt what that meant.
<emacsomancer>nckx: it has no real packages itself, and can't run on its own, but it allows multiple distros to co-exist at the same time
<emacsomancer>so commands like `sudo pacman -Syu && sudo apt update && sudo apt upgrade && sudo dnf upgrade --refresh` would make sense
<nckx>emacsomancer: Oh, that's actually a sane definition, never mind then (for the record, I was mainly hinting at Gentoo, which call{s,ed?} itself a metadistro because… they compile from source? I still don't get it.)
<nckx>Whether it results in a sane system is for you to know ;-)
<emacsomancer>nckx: yeah, I don't see that compiling from source makes something a metadistro
<emacsomancer>nckx: it's saner than one might imagine
<sammich>hey, when i add nix to my services and guix system reconfigure i get this error:
<sammich>any idea why this might be?
<nckx>Wikip sez: ‘Gentoo describes itself as a meta-distribution because of its adaptability, in that the majority of users have configurations and sets of installed programs which are unique to the system and the applications they use.’
<nckx>Yeah. No.
<nckx>That is not what words mean.
<str1ngs>basically everyone is redundantly building the world :P . though there are good use cases for this. rarely though for desktop use.
<nckx>sammich: And you're not using CUT anywhere yourself? I'll take a look at the (pretty new) Nix service then…
<sammich>I am not, the cut service apears to use it, im not sure where it comes from though, if its just a missing import for the service
<nckx>str1ngs: I guess Guix (and Nix) just got promoted to the metaphysical realm \o/ Trippy.
<sammich>the nix service * not the cut service
<nckx>sammich: s/cut/Nix/?
<nckx>☺ nvm.
<emacsomancer>nckx: that is a strange use of the morpheme 'meta-'. I suppose the notion is that Gentoo isn't actually distributing packages
*str1ngs has an existential crisis.
<nckx>emacsomancer: Not to put words in your mouth, but s/strange/wrong/. Let's use the right words unlike Gentoo 😛
<nckx>sammich: I think I found the problem. This happens while activating the service, right?
<sammich>I think so, its during the reconfigure so i think that would make sense
<emacsomancer>nckx: being charitable, if 'distribution' means a collection of binary applications which is distributed, then Gentoo isn't a distribution in this sense. But I'm still not sure 'meta-' is the right prefix. Maybe 'pseudo-'?
<emacsomancer>but it could be package definitions which are 'distributed' anyway
<nckx>Maybe I'm too used to the {N,Gu}ix sense of packages meaning a buildable thing, although I consider ebuilds (and ports) ‘packages’ in the context of, well, the package manager. That it unpacks a .deb, .tgz (yay slackware!), or otherwise computes the result is an implementation detail. Too high-level?
<nckx>I know I'm right ᕕ( ᐛ )ᕗ
<emacsomancer>nckx: I think 'source-based distribution' is a better description of Gentoo
<str1ngs>ports distribution
<emacsomancer>but other distributions (including Guix) are something like 'optionally source-based'
<str1ngs>this fc-list issue is odd
<emacsomancer>for my Guix-fonts issue, I think the easiest thing (if not the most satisfying) is to put all the fonts I want Guix apps to be able use (that aren't already packaged in Guix) into ~/.local/share/fonts
<nckx>sammich: I'm going to test (which will take a while) and hopefully push a fix to master.
<emacsomancer>str1ngs: I think it's because of Bedrock
<str1ngs>emacsomancer: that's what I do for my own fonts. well i use ~/.fonts but I assume the effect is the same
<emacsomancer>str1ngs: yeah, I think ~/.local/share/fonts is a newer standard, because I used to use ~/.fonts
<str1ngs>probably some XDG thing
<emacsomancer>str1ngs: I believe so
<sammich>nckx: okeydoke, thanks for looking into this for me :)
<nckx>str1ngs: Yeah, ~/.fonts is ‘deprecated’. [Don't shoot the messenger.]
<emacsomancer>str1ngs: I think you can put fonts in both locations simultaneously
<emacsomancer>the benefit of ~/.local/share/fonts over ~/.fonts would be uncluttering of ~ , though ~ is so cluttered by things, I'm not sure it makes much difference
<dongcarl>`guix offload` isn't working for me :-/
<dongcarl>`guix offload: error: failed to connect to `#<input-output: channel (open) 28f5fa0>': Protocol error`
<dongcarl>Not sure what's wrong, and on the other end, `auth.log` seems to be showing that it's accepting connections
<str1ngs>emacsomancer: what next ~/.opt/usr/local :P
*str1ngs hides
<emacsomancer>str1ngs: well, /opt doesn't clutter ~
<nckx>~/.local is /opt for users.
<str1ngs>actually I think .local is /usr/local for users
<str1ngs> /opt generally is self contained directories application directories
<nckx>You're right, I was confusing ~/.config's <programmename>/foo hierarchy with ~/.local's bin, share, etc.
<nckx>So ~/.config is like /opt but not actually really at all 😛
<str1ngs>it's a bit of a FHS nuance
<emacsomancer>str1ngs: except that fonts come under /usr/share and /usr/local
<nckx>Nuance? FHS? What is this heresy.
<nckx>emacsomancer: /usr/local/share, though, surely?
<nckx> /usr/local should mirror /usr.
<emacsomancer>nckx: I suppose so, keeping the semantics of 'local'
<str1ngs> /usr/local tertiary hierarchy for local data, specific to this host. Typically has further subdirectories
<nckx>It's almost like none of this was designed but rationalised post-hoc by people *very* passionate about their pet theory 😮
<nckx>(Y'all know what ‘usr’ stands for…)
<str1ngs>FHS is not even a maintained standard. and then systemd came along lol
<emacsomancer>str1ngs: right, but I tend to think of /usr/local as where my ad-hoc things go (locally-built pkgs etc.) (in .../bin of course)
<nckx>‘Then systemd came along’ sounds like a punch-line and I don't even hate systemd.
<str1ngs>emacsomancer: that's the actually intention of /usr/local
<str1ngs>nckx: it's a poke at /run which did not exist pre systemd IIRC
<emacsomancer>str1ngs: right, but it's still a 'system' directory, and the 'system' directory that holds fonts is typically /usr/share/fonts
<str1ngs> /run is not part of FHS at all
<emacsomancer>nckx: So systemd walks out of a bar, but he gets stuck in the door for 1:30
<nckx>Nope, but we needed something on / because so, hey, new made-up ‘rule’ about /.
<str1ngs>systemd could'nt run the race he was in no.... condition
<nckx>Mounting a separate /usr can be hard to do right. A separate /usr is now deprecated. Symples.
<nckx>* Yes, you may mount it in the initrd if you look very sorry about it.
<nckx>☝ systemd.
*str1ngs goes back to plan9 :P
<nckx>sammich: ‘guix pull’ and see what breaks (hopefully nothing…)
<nckx>str1ngs: Have you actually used Plan 9?
*nckx has merely toyed with it.
<str1ngs>I've played with it. but I'm a linux lifer :P
<nckx>Allow me to interject for a moment
<emacsomancer>str1ngs: what was your crime?
<str1ngs>well until Hurd anyways lol
<nckx>nand1: ack.
<str1ngs>emacsomancer: I once made a copy of windows 3.1 so no chance of parole now
<emacsomancer>str1ngs: I suppose you deserve it then....
<emacsomancer>I've been using Eshell's Smart Display, which is suppose to capture some aspects of plan9's terminal
<str1ngs>is that where commands display down from the prompt?
<str1ngs>I can never switch to eshell. I have this bad habit of using less all the time :(
<nckx>wait less doesn't work in eshell?
<nckx>Or just pointless?
<str1ngs>some limitation with pipes I forget why
<westerwest>Less is pretty pointless in eshell
<westerwest>Curses maybe?
<str1ngs>still sometimes I just want to page something.
<str1ngs>guix search foo | less for example
<westerwest>You can M-v and C-v cant you?
<westerwest>Less is too mech like vim for me. On dvorak you just dont want to use hjkl
<str1ngs>that's not paging that's kinda like tail.
<westerwest>Tbh i never used tail
<emacsomancer>str1ngs: yes
<emacsomancer>yeah, I was used to less too, but then you realise you're in emacs and not trapped in a terminal, so you don't need less
<str1ngs>one day when I have time I'll figure out the eshell way :P
<westerwest>By the way, when I found out that info has a mode in emacs.... I dont want to use man pages anymore
<nckx>Well, there's woman, but it's no info…
<westerwest>give me a sec have to dog my files until there is less
<rvgn>Hello Guix!
<rvgn>How to use Tor over VPN in Guix?
<g_bor[m]>Hello guix!
<rvgn>Should I enable both tor-service-type and openvpn-client-service?
<g_bor[m]>Istm that the partitioning in the installer does not consider if it is on an efi system. Is that correct?
<nckx>g_bor[m]: It does.
<nckx>(define (efi-installation?) "Return #t if an EFI installation should be performed, #f otherwise." (file-exists? "/sys/firmware/efi")) ;; gnu/installer/parted.scm
<nckx>g_bor[m]: (if (efi-installation?) (user-partition (fs-type 'fat32) (esp? #t) (size new-esp-size) (mount-point (default-esp-mount-point)))
<nckx>‘Should work.’
<nckx>rvgn: My guess is that there's no code to integrate the two, but I hope I'm wrong.
<rvgn>nckx Hmm. If set tor as SOCKS proxy in the system settings, do all the applications inside the system automatically route via tor?
<nckx>I really don't know.
<nckx>I don't even know what ‘system settings’ means here.
<g_bor[m]>nckx nckx
<rvgn>like network settings in GNOME
<nckx>g_bor[m] g_bor[m]: I'm guessing it doesn't work for you.
<nckx>rvgn: I don't know Gnome, sorry.
<g_bor[m]><nckx "I really don't know."> nckx: thanks, there is still some problem somewhere, at least installing grub efi fails on missing mounted esp...
<nckx>g_bor[m]: And /sys/firmware/efi exists on the installer?
<nckx>If not, you might not be booting in UEFI mode at all (CSM?).
<g_bor[m]>I will try to debug that later. Yes, it does. And doing a manual install works fine.
<nly>How long does it take for patches to get accepted?
<nly>This is the one I want to get upstreamed:
<g_bor[m]>That's what I did now, as I needed that computer as soon as possible, but I will try to reproduce it in a vm later.
<cbaines>nly, it varies unfortunately
<nckx>nly: The arbitrary whims of the gods.
<nckx>I guess anyone who came across it assumed that rekado would reply to your changes. We don't formally assign bugs, but that's how it usually goes.
<str1ngs>LGTM! :P
*nckx adds a bot that replies ’LGTM’ and auto-merges any random patch older than a fortnight. The ensuing chaos forces *everyone* to sign up for reviewer duty.
<nly>Ah, okay.
<nckx>(I'm including myself there; I review far too little as well.)
<nckx>nly: the homepage is dead, for one (and looked pretty iffy to begin with; rightly so apparently :-).
<roptat>so I made it a channel:
<nckx>s/Provide Emacs/Provides an Emacs/, and I'd use ‘the Shroud password manager’ in both cases, and add a few more lines to the description. Assuming you're using this package and it work, the rest looks fine to me. I don't like propagated inputs but maybe there's no other way with emacs?
<nckx>roptat: Nice.
<roptat>I'm pretty happy about it :)
<davexunit>wow someone uses shroud? heh I had no idea
<guixnoob>Hello there. When installing calibre (or doing guix pull after installing it), qtwebkit seems to have to manually build every time, which takes a long time (hours). Some asking around has shown me that the builds are failing on
<nckx>roptat: I'm cautiously curious about trying it.
<roptat>you're right, you should be cautious
<roptat>it will break everything :p
<nly>Thanks, nckx then it'll just be github url
<nckx>(Or just call it ‘1.0.0’ anyway because that seems to be JUST FINE around here 🤔 )
<guixnoob>It seems like it might be a dependency of qtwebkit that's actually the issue, but I'm not sure how to find out and, even if I did, I wouldn't know how to fix it. Perhaps this is a known issue with resolution coming, but I figured I'd ask.
<nckx>nly: Sure. There are plenty (more, even) of github packages that just have as ‘home page’.
<nly>Can you do it, or should I send an updated patch?
<nckx>guixnoob: I removed Calibre from my manifest for exactly that reason, a month ago ☹ Not the answer I would like to give.
<nckx>Here ‘guix build calibre’ is building python2-pyqt5.
<guixnoob>nckx: That's unfortunate. I don't see that package on the CI, though:
<roptat>I don't know if that's the right one, but it seems that it's waiting for evaluation on x86_64
<roptat>(on master, not staging)
<roptat>it failed for aarch64, but the log is truncated :/
<nckx>nly: I can commit it, but I'd rather have you write a longer description since you're familiar with the package (I'll edit it if I don't like it anyway 😛). Did you find Ricardo's suggestion of ‘password manager’ to be accurate? GPG does far more than manage passwords (and not even that really), but I have no idea what Shroud is. Maybe it's exactly that (davexunit?).
<roptat>see here:
<davexunit>nckx: yeah it's a password manager. it uses gpg to perform the encryption on the file that holds the passwords.
<nckx>Hm, ‘guix build --dry-run calibre’: The following derivations would be built: …-python2-pyqt-5.11.3.drv …-calibre-3.42.0.drv
<nckx>No qtwebkit.
<Marlin[m]>We gotta get qtwebengine btw
<nckx>guixnoob: Actually, qtwebkit built fine for me on my subsitute server (which is not overpowered by any means). So berlin (CI) should build it unless there's a specific problem on the farm.
<nckx>davexunit: Ah, OK, thanks for the answer ☺
*nckx really wishes ‘guix weather <package>’ worked.
<nly`>nckx: is this description ok? "Buffers User interface for Emacs to the Shroud password manager, and also
<nly`>an elisp implementation of Shroud."
<nly`>it'd be great if you can commit it :)
<nckx>nly`: I don't think that adds anything to the original. If you're really lost for words I'll commit it as-is. You've been using this exact version for a while without problems?
<guixnoob>Didn't know about --dry-run. Here's the output for `guix install --dry-run calibre`
<guixnoob>It does show qtwebkit as "being built"
<nly`>yes, i use it daily
<nckx>Yeah, I have that .drv.
<nckx>I guess berlin doesn't. I'm sure there's a way to check but I've never needed to.
<nly`>nckx, sorry, I can't think of a better description atm
<guixnoob>So I'm glad to know it isn't just me. Is this just a matter of waiting for someone to fix a build of a dependency somewhere?
<nckx>nly`: I see now (from your README) that ‘Buffers User [I]nterface’ is an actual library. Guess I'll add that since it's the kind of thing emacs users might actually care about.
<nckx>guixnoob: Maybe it's just queued, maybe it's broken, I don't use the CI build farm so I'm not familiar with its Web interface.
<nckx>Nor do I have easy ssh access to ‘ls /gnu/store’ like I can on my own box. Much better than a Web UI 😛
<guixnoob>It's been broken for a while. As you said at least a month ago. :-(
<nly`>thanks nckx
<guixnoob>Figured I could at least hop into IRC and report it, in case it hadn't already been reported or noticed, in the hopes that it can be fixed. I'm digging guix, when it doesn't takes hours and hours to install/update :-)
<rekado>nly`: sorry about dropping the ball.
<rekado>nly`: it’s fine to ping me when you’ve been waiting for a reply for more than a week.
<rekado>I honestly forgot about this patch already.
<nly`>no problem, thanks for hundreds of other patches that make guix better everyday!
<rekado>nly`: the patch looks pretty good now, except for the description (should be a complete sentence) and the home page (does not seem to be correct)
<rekado>nly`: the home page URL leads to a page that says “No repositories found”
<rekado>nly`: is this expected?
<rekado>if you can give me a proper home page I can fix up the description, adjust the indentation, and push it for you.
<nly`> can you change that to origin url?
<nckx>rekado: I'm almost done applying it…
<rekado>oh, me too :)
<rekado>I’ll leave it to you then.
<rekado>please fix the indentation.
<rekado>I used this synopsis: "Emacs interface for the Shroud password manager"
<rekado>(added “the”
<rekado>and the description: "This package provides an Emacs interface to the Shroud password manager."
<nckx>You just mean the over-indented URI & FILE-NAME, or so, right?
<rekado>reordered the inputs and removed line breaks
<nckx>This'll be easier if I just paste the result ☺ sec.
<rekado>that and C-M-q on the whole expression
<nckx>rekado: Sure, who doesn't do that subconsciously 6 times a minute.
<rekado>it’s always a surprise to me when it actually changes the indentation (i.e. after applying patches)
<nckx>I just assume ‘not an emacs user’ and move on.
<nckx>rekado, nly`:
*nckx prepares to catch some stupid typo of theirs in 3… 2…
<nckx>nly`: Is this all right? ;;; Copyright © 2019 Amar Singh <>
<nly`>yes, looks nice
<nckx>Oh, I've also sorted inside the emacs- inputs.
<nckx>Ordnung muss sein.
<rekado>nckx: looks great; I would have sorted the propagated-inputs, but that’s just me
<rekado>e.g. emacs-bui before emacs-s
<nckx>See above ☺
<rekado>oh, missed that line
*rekado really has a hard time focusing these days
<ober>∞ nice it resolves in emacs
<nckx>Don't worry, I'm probably even more obsessed with that than is normal/healthy. Pushed.
<Sharlatan>Hi, is there any way to configure packages per user listed in /etc/config.scm and updated all of them on demand from root account?
<nckx>rekado: I feel your pain. Well, I don't feel any, hence the lack of focus.
<nckx>nly`: Congratulations on your first Guix package. Go tell your mother.
<davexunit>nly`: glad you like shroud. thanks for writing an emacs interface!
<davexunit>maybe I should start using that!
<davexunit>I need to add a multi-computer syncing feature to shroud so it will be more useful to me.
<nly`>thanks for writing shroud! please do! :)
<davexunit>nly`: it might be cool to distribute the emacs interface with shroud itself.
<nly`>sounds good
<davexunit>but that's a project for another day. :)
<nly`>ok lol
<davexunit>just something to consider for the future!
<OriansJ>will someone please delete the Lib/test/ test from python@3.7.0 because it results in a false failure on systems with less than 6GB of RAM (all non-pae 32bit systems)
<rekado>OriansJ: could you please send the request (and ideally details) to
<OriansJ>rekado: sure
<Sharlatan>Is there any way to upgrade packages for all accounts from root?
<OriansJ>Sharlatan: yes, using su and a loop
<str1ngs>just replace there symlink :P
<nckx>(And making sure that root's PATH is *not* preserved.)
<str1ngs>that's the brute force method :P
<nckx>str1ngs: I know you're not being super serial, but that could break GC links.
<Sharlatan>ok, no build in functionality like "guix package --user=all --upgrade" :)?
<str1ngs>nckx: yeah, I should not have even mentioned that :(
<nckx>Sharlatan: Forced upgrades go against some (soft; GNU) values of Guix: to allow the user to install software without having to ask for permission. It's definitely possible (you are root, after all) but the UI will always be focused on per-user package management.
*nckx → food.
<Sharlatan>I just thought about such case: if you run some services under specific user account and it runs specific set of packages, how to keep it up to date from one entry point not switching in between. I think only about "sudo -u USER guix package --upgrade" ?
<nckx>Sharlatan: That's the correct way to do it anyway. Anf ‘guix package --user=foo’ would just be a wrapper around that, obscuring what's really going on for no clear benefit.
<nckx>But since you speak of entry points: maybe the future ‘guix deploy’ will implement what you need as a side-effect.
<dongcarl>How is this channel logged btw?
*dongcarl asking cuz he needs to log his own channel
<nckx>dongcarl: I don't think rekado wants anyone to know the precise brand of silly string & duct tape used.
<rekado>dongcarl: it’s znc with some znc module to write logs
<nckx>(It's ZNC.)
<rekado>actually it’s chewing gum
<rekado>I’d be happy if we could upgrade to duct tape
<nckx>Perl? Really?
<rekado>hmm… never mind. I’ll prepare some more chewing gum…
*rekado chews
<nckx>dongcarl: It's actually pretty easy if you already have ZNC running (the log module is built in and writes nice daily files in a logical directory structure). Setting up ZNC the first time is… time-consuming.
*nckx uses the exact same set-up just for their own reference. I no longer rely on WWW logs after the previous ones vanished without warning.
<nckx>Plus, grep. ♥
<dongcarl>Yeah... I remember setting up ZNC once...
<nckx>And wasn't that fun.
<Sharlatan>Which packages/services are required for StupmWM ?
<Sharlatan>(use-service-modules desktop) (use-package-module lisp)?
<ngz>Hmm... The topic is outdated.
<nckx>ngz: ?
<ngz>"1.0 is out!"
<OriansJ>techically 1.0.1 is out
<rekado>we’re out of 1.0 right now.
<nckx>My intention was to announce ‘the big 1.0‘, not every minor bugfix after that.
<ngz>Usually, AFAICT, the latest release, in its full glory, is display in the topic. Not the last major milestone. But, hey. Who cares?
<ober>are there targets other than linux supported or worked on being supported?
***ChanServ sets mode: +o nckx
***nckx changes topic to 'GNU Guix | 1.0.1 is out! get it at | videos: | bugs and patches: | paste: | Guix in high-performance computing: | This channel is logged:'
***ChanServ sets mode: -o nckx
<nckx>Tedious bump mode for no apparent benefit: engaged.
<ngz>Mission completed.
<nckx>Do not pass Go.
<nckx>(It needs questionable neural blobs.)
*ngz now looks for another nitpicking subject so as to waste everyone's time.
<nckx>Hey that's my job.
<ngz>Oh, sorry :)
<nckx>(Or is that nitpicking?)
<nckx>(And by 1.0, I mean ‘the 1.0 series’, *not* 1.0.0, but ha ha who cares.)
<ngz>As 2000 is not in the same century as 2001, I would say that 1.0.1 is not in the same league as 1.0. Besides "1.0 is out!" is *obviously* a specific release, not about a series, which is an ongoing effort, and cannot be out before it is outdated.
<ngz>(or so I think)
<nckx>🤷 We shall disagree, I don't mind.
<ngz>Nah. Too easy ;)
*nckx runs away.
<OriansJ>ngz: good sir, I disagree
<nckx>*clutches pearls*
<OriansJ>*adjusts Monocle*
<ngz>OriansJ: How could you? In a post-truth era, disagreeing is futile. Only noise matters.
<ngz>Still, 1.0.1 is better than 1.0.