IRC channel logs


back to list of logs

<aidenholmes>i am back
<alextee[m]>Blackbeard ( yay
<estraw>hey, i'm having a bit of trouble with Guix segfaulting and was wondering if anyone could help me make sense of it
<lfam>estraw: What's going on?
<estraw>so i have guix installed on a foreign distro, Ubuntu
<estraw>and today I updated to ubuntu 19.10
<estraw>after that, i found out that various programs installed from Guix would segfault when i tried executing them, stuff like keepassxc and emacs
<estraw>in a move that may or may not have been stupid, i tried reinstalling Guix completely with the installer script. I got rid of all the builder users, groups, and the store and everything, and reinstalled
<estraw>now, the guix executable itself segfaults when i try executing it
<lfam>My guess is your environment includes something that is directing Guix software to use libraries from the host system
<lfam>Something like LD_LIBRARY_PATH or similar
<estraw>oh yeah perhaps, let me check that
<estraw>wow that was it, lmao
<estraw>i had LD_LIBRARY_PATH set from a while ago
<estraw>unsetting it got rid of the segfault
<lfam>That was quick :)
<estraw>thanks so much
<lfam>You're welcome!
<Veera>a pkg only supports x86 and x86_64 arch and does not supports ./configure --build option; how to proceed
<lfam>Veera: Where are you stuck?
<Veera>well the pkg compiles fine
<Veera>but i see in log guix build passing --build=.. and getting output from pkg configure script --build option is not supported
<Veera>I think --build is not that important; only tells the configure system of building system detail
***daniel_herzig is now known as vertigo_38
<btesttesttest>emoji test 🎉🎊🎉🎉🎊🎉🎉🎊🎉
<brendyyn>wingo: works for me in Hexchat on Guix SD.
<Veera>lfam: ?
<lfam>Veera: You can ignore this message
<Veera>lfam: ok
<Veera>lfam: is the pkg modules to be ordered alphabetically
<Veera>lfam: is the pkg inputs/native-inputs to be ordered alphabetically
<lfam>Veera: It is preferred but not mandatory
<Veera>lfam: ok
<Blackbeard>btesttesttest: it works 🙂
<alextee[m]>patch sent to make package URLs like /packages/NAME (if latest version)!
<brendyyn>Blackbeard: They do not display for me in the GTK interface of Icecat (like the URL bar), but they do display in web pages.
<Blackbeard>brendyyn: mm I can try that
<brendyyn>Blackbeard: thanks
<joshuaBPMan>hmmm. I'm getting an warning when reconfiguring: WARNING: (guile-user): imported module (guix build utils) override core binding 'delete'
<brendyyn>joshuaBPMan: it only matters if you intend to use the other 'delete' function
<apteryx>here comes the weekend :-)
<NieDzejkob>joshuaBPMan: that's normal
<NieDzejkob>as in, it's not a problem on your side but a known harmless bug
<joshuaBPMan>does sway have a packaged working wayland terminal?
<joshuaBPMan>The last time I tried gnome-terminal, I could not get it work with sway.
<brendyyn>joshuaBPMan: termite
<joshuaBPMan>brendyyn: thanks.
<brendyyn>joshuaBPMan: its a little different. to select text you need to hold shift while using the mouse
<joshuaBPMan>ok. Thanks.
<joshuaBPMan>I'll give it a try
<NieDzejkob>brendyyn: huh, selecting in termite works for me even when I don't hold shift
<lafrenierejm>Is there a trick to `guix import texlive`? I'm trying to write a recipe for, but can't seem to get an `import` invocation that works.
<Veera>In a pkg ./ is run but it produces a configure script with #!/bin/sh as start command; how to change that to guix path
<lfam>lafrenierejm: `guix import` is for creating new packages. Do you need to create a new package for texlive?
<brendyyn>Veera: Did you create the phase? you may need to move it back before the phase that patches shebangs
<joshuaBPMan>how do you copy text into the termite terminal?
<lfam>Sorry lafrenierejm: I didn't realize we have a texlive importer
<brendyyn>joshuaBPMan: cntrl-shift-v
<lfam>It would help if you told us what you tried and how it fails
<lafrenierejm>lfam: No worries. :)
<joshuaBPMan>brendyyn: thanks
<joshuaBPMan>that's a weird key combination
<brendyyn>termite allows you to interact with applications running in the terminal
<joshuaBPMan>brendyyn: can you give me an example of that?
<brendyyn>you can even use the mouse to click on things in weechat, like the channel
<brendyyn>to change channel
<joshuaBPMan>hmmm. That's kind of cool.
<Veera>brendyyn: yes I created phase. first it patches; then runs. and it creates a new configure with unpatched; so how to patch this configure script
<lafrenierejm>lfam: I've tried `guix import texlive moderncv` and `guix import texlive -a $archive moderncv`, which a bunch of different values of $archive. For example, "tex/latex/moderncv".
<lafrenierejm>lfam: Everything fails with an error on guix/build/utils.scm:652:6: In procedure invoke, with `arguments` like ("export" "--non-interactive" "--trust-server-cert" "-r" "49435" "svn://" "/tmp/guix-directory.4IOyjX")
<lfam>I have the same issue
<brendyyn>Veera: are you using the gnu-build-system, and you added the phase (before 'configure ... ) ?
<lafrenierejm>lfam: This particular package has a GitHub host at, which I could feasibly use. But I would prefer to follow the convention, which seems to be pulling from tug's SVN repo.
<lfam>lafrenierejm: I don't have a working SVN setup, that could be related. If it were me I would look at existing packages in gnu/packages/texlive.scm and hosted on and try adapting one of those
<Veera>(add-before 'configure 'autogen
<lfam>And I would file a bug :)
<brendyyn>Veera: also, you may not even need to run that script. if you look at its contents, it should only contain 1 or 2 lines running autoreconf. it may be the same as the bootstrap phase/
<lafrenierejm>lfam: Will do. Thanks for being a second pair of eyes. :)
<lfam>You're welcome! Sorry it's not working right :/
<Veera>i tried without 'configure 'autogen it runs but the produces a unpatched configure script
<brendyyn>that is weird
<brendyyn>can you upload your package definiton or patch/
<Veera>well the is provided by guix
<Veera>i think it is running the one provided by pkg
<Veera>well is the is provided by guix?
<brendyyn>no its a file in the package
<brendyyn>the bootstrap phase runs it if it exists and there is no configure script already
<lafrenierejm>lfam: It appears that the texlive import doesn't support packages outside of the texmf-dist/source/ directory. Copying one of the other texlive packages that builds the URL manually _appears_ to have worked.
*lafrenierejm crosses fingers
<Blackbeard>brendyyn: it is not working for me either :/
<lafrenierejm>What is the proper way to install a package from a local clone of Guix?
<lafrenierejm>Historically I've always used emacs-guix to do that, and never investigated how it actually becomes aware of packages I've built from my local clone.
<brendyyn>lafrenierejm: in the guix environment guix, you run ./pre-inst-env guix package -i ...
<apteryx>hmm, that error didn't print how it was meant, it seems :-): guix deploy: error: failed to deploy hurd: ~A: ~S
***jonsger1 is now known as jonsger
<apteryx>is savannah having problems? Can't seem to guix pull (it stalls on "Updating channel 'guix' from Git repository at ''...")
<apteryx>git fetch passed
<lfam>Sometimes there are name resolution issues and failures get cached too long, in my experience
<reepca>what's a good low-latency screen-sharing package that we have packaged?
<bavier`>screen? :P
<reepca>methinks screen wouldn't show the finer details of a graphical application too clearly
<apteryx>lfam: I see. Cached by the nscd daemon (on a Guix System)?
<lfam>I figure, apteryx
<lfam>apteryx, I think there is a `herd invalidate nscd` command
<reepca>though it does make me curious about how one would render a complex 3D scene in a terminal. I hear VLC can render video in a terminal, but unfortunately I can never find the option to enable it.
<apteryx>lfam: yes, there is!
<reepca>well, more specifically draw it as ascii IIRC
<apteryx>reepca: there would be Jami, except our package of it is not currently working, IIUC.
<reepca>apteryx: can confirm calls and video on that are borked
<reepca>and uh... the messaging is semi-borked too
<reepca>sometimes messages just get completely dropped
<apteryx>it's mostly our package's fault. I have Jami on Android and it works alright.
<reepca>much as I do love roleplaying as a TCP stack, it's pretty easy to forget an ACK here and there
<reepca>does OBS work for low-latency screen-sharing? I know it's used for streaming, but I don't know if it can be used as a server in and of itself or if it can have really low latency
<reepca>I built the package hoping to find some documentation, and got my hopes up when it had a share/doc directory, but as always it only contained a COPYING file :-(
<apteryx>today I used jitsi videobridge (webRTC based) with coworkers, and it was nice.
<brendyyn>apteryx: you convinced them not to use discord?
<apteryx>My boss decided to pick Jitsi, as it worked well even for video and screen sharing, and didn't duplicate chat features found within Mattermost, which we use for group chats.
<brendyyn>that's cool
<brendyyn>did you setup a server?
<apteryx>I still had to install ungoogled-chromium, because it provides implements the RTX spec of WebRTC which helps keep the audio clean when the bandwith is saturated.
<apteryx>we haven't setup a server yet, but that had some weight in choosing Jitsi as well.
<reepca>I notice "guix search jitsi" doesn't turn anything up, are there major barriers to packaging it?
<brendyyn>reepca: javascript packaging
<reepca>ooooohhhh... ouch
<brendyyn>surely we can figure something out?
<apteryx>lfam: the internet is crawling here, it seems :-)
<brendyyn>anyone managed to get ibus working on sway?
<lafrenierejm>brendyyn: Thanks for the `guix install` help. That was much more straightforward than I was expecting…
<guix-vits>Hi there
<bavier`>hey guix-vits
<Blackbeard>guix-vits: hi
<alone>hi why guix don't have support KDE ? and how to can i see list support guix?
<brendyyn>alone: because it takes a lot of work to add it and we haven't got there. You can work on it if you like.
<brendyyn>you would browse the repositories to see whats available i guess
<alone>how to can i see list laptop support guix ?
<brendyyn>i guess there is this
<guix-vits>alone: (i'm not a developer, about packages) git clone the repo, cd in gnu/packages and grep -- it's better than the Web-version (last time i'd seen).
<brendyyn>it should run on anything other free distros like trisquel runs on.
<Veera>autoconf produces a configure script with #!/bin/sh
<Veera>How to tell to produce it with /gnu/store.../bin/sh
<brendyyn>Veera: its easier if you just upload your package so we can see where the problem is
<Veera>where i should
<Veera>link is)
<Veera>it is invoking configure within it
<Veera>and that configure happens to start with #!/bin/sh
<brendyyn>Your package definition?
<guix-vits>Veera: please, post your package definition ^^^
<bavier`>patching the script so that it doesn't call configure would probably fix things
<bavier`>then the various default patch-shebang phases can do their thing
<Veera>paste: 1137033
<brendyyn>but what bavier` says seems to be the key
<brendyyn>if test x$NOCONFIGURE = x -a -z "$*"; then
<brendyyn>im not sure about that syntax, but i think you can ad a setenv for NOCONFIGURE=true
<Veera>One thing does autotools always needs #!/bin/sh
<Veera>can it be told to produce with our #!/gnu/store.../bin/sh
<brendyyn>it gets swapped out for the exact path
<brendyyn>and you probably want to use (replace 'bootstrap ...)
<Veera>how to swap taht
<brendyyn>the patch shebang phase does that automatically
<Veera>is all this documented somewhere
<Veera>is guile?
<Veera>patch shebang can to do if it gets the chance
<Veera>but i invoked and it is exec inside
<brendyyn>You probably want to study the build system. have a look at guix/build/gnu-build-system
<brendyyn>the bootstrap phase already tries to run
<alone>how to can i run service openssh ?
<guix-vits>can i add that script to neverball package (as /bin/neverball): ? It fixes that neverball not react on LANG variable if this is already set in its "neverballrc".
<guix-vits>also that way Chinese chars works properly
<Blackbeard>alone: hey, still here?
<rekado>guix-vits: what’s the difference between the first two cases?
<rekado>it’s not okay for packages to modify user data.
<Blackbeard>alone: check this link
<Blackbeard>In the first example at the top and bottom there is how to configure OpenSSH
<alone>thank you
<Blackbeard>alone: also check this
<Blackbeard>alone: look for Scheme Variable: openssh-service-type
<guix-vits>rekado: difference is that en is ok for game settings. zh isn't, so i need different cases.
<guix-vits>as it's zh_CN (and pt_BR)
<guix-vits>but probably i need to change order of cases
<rekado>why would a user already have a neverballrc that contains the wrong language settings?
<brendyyn>guix-vits: sounds like the program is broken. if they are chinese and have zh_CN set, its going to be broken?
<guix-vits>rekado: relax, you'd not get it right. thanks.
<guix-vits>brendyyn: if zh_CN is set in neverballrc, it's working
<guix-vits>brendyyn: but if LANG=zh_CN.utf8 it's "sqares instead of fonts"
<guix-vits>brendyyn: but if LANG=zh_CN.bif5 its English
<brendyyn>do you have a chinese character font installed?
<guix-vits>yes (and game have them bundled)
<guix-vits>brendyyn: and if user once set language to something (it's not "default" 'language '), then game not react on LANG= at all (i.e not switch to de_DE)
<brendyyn>error: failed to load 'guix/scripts/pack.scm':
<brendyyn>ice-9/eval.scm:293:34: no binding `zip' to hide in module (gnu packages compression)
<guix-vits>so i decided to fix it with that script installed as /bin/neverball
<brendyyn>i updated git, and did a ./bootstrap; ./configure... make -j, and get that error
<guix-vits>rekado: see above, please. sorry for my English.
<brendyyn>guix-vits: There as wrap-program for wrapping variables like that.
<rekado>guix-vits: instead of writing to the user’s HOME directory would it be enough to overwrite LANG for the current process?
<guix-vits>rekado: no.
<guix-vits>rekado: it's broken for Chinese (and not work if language was set in game options)
<guix-vits>rekado, brendyyn: but if writing to $HOME is so bad, i can use LANG= in wrap, to it at least be readable for China people.
<sarg>Is there a tool to convert python's to package definiton?
<brendyyn>sarg: Python packages in Guix run the automatically. You set (build-system python-build-system)
<brendyyn>There are many python package examples
<sarg>yes, but I still need to copy-paste requirements to `propagated-inputs`
<brendyyn>you can run guix import pypy PACKAGE, to get an initial package definition
<sarg>oh, great!
<brendyyn>you will need to make adjustments to it after though, most likely
<bricewge>Hello Guix!
<bricewge>Does someone know how to inherit form a package inferior?
<bricewge>I'm trying to add support for inferior in (guix build-system linux-module).
<guix-vits>rekado, brendyyn: wrapping broke language settings completely: not important which language i set, it will be English.
<rekado>guix-vits: how exactly are you wrapping?
<guix-vits>rekado: result is `export LANG="" ...` in wrapper
<guix-vits>rekado: i think, i'll check which locales are broken in 1.6.0, and do `LANG="`[[ $LANG ~= zh* ]] && echo`" or smth alike (in wrapper). Do you want to see the definition?
<guix-vits>brendyyn, rekado: ^^^ this approach seem to work, but at least China people will need to use .neverball-real, or thier language settings (in $HOME/.neverball/neverballrc) will not work (1.6.0)
<rekado>I don’t understand why that is necessary. Do you mean that people with LANG set to zh_CN.* cannot use the wrapper?
<rekado>In that case: can’t we work around this in the wrapper itself?
<guix-vits>rekado: if one with LANG=zh_CN.utf8 start neverball (vanilla), then chars is "squares". Many other locales work well. If LANG="", then only English works.
<guix-vits>rekado: best thing i came with so long:
<guix-vits>"`if [[ $LANG == 'zh_CN.utf8' ]]; then echo; else echo $LANG;fi`"
<guix-vits>but i need to test more LANGs
<guix-vits>and ~=, as there also other charsets, but utf8.
<guix-vits>^^ inside of wrapper
<rekado>what LANG value will work for Chinese?
<guix-vits>rekado: i need to investigate. zh_CN. big5 utf8 not working
<guix-vits>locale is set, but chars are "squares"
<brendyyn>because big5 is nit utf8
<rekado>guix-vits: if you can find a value that works then the wrapper could simply reset LANG from zh_CN.* to a value that works.
<rekado>(if that’s how neverball sets the language internally)
<rekado>another approach would be to check how neverball configures the language and fixing it right there in the code.
<guix-vits>rekado: 1.6.0 is pretty old, so maybe it's fixed in git, need to see.
<wxie1>Hi, I tried to install guix-1.0.1, but the USB is not recognized by coreboot. Is any has the same problem?
<brendyyn>Anyone else find many gtk programs complain of not being able to load adwaita cursor theme despite it being installed?
***wxie1 is now known as wxie
<guix-vits>brendyyn, rekado: i found a compromise. instead of setting LANG="" for broken-fonts-locales, i can set them to en_US: this way GUI language settings aren't broken and changing the language in GUI brings desired results from every start (default behavior).
<mbakke>wxie1: I don't know about coreboot, but at least for libreboot there is an option to search for GRUB2 configuration on external media.
*rekado updates the Guix videos
<rhou[m]>hello, how do I create a qemu vm with encrypted partition from a configuration file?
<rhou[m]>I just naively created a configuration file with luks-device-mapping and ran guix system vm-image
<rhou[m]>but when I boot the machine my partitions are not encrypted...
<rhou[m]>Do I have to encrypt the partitions manually ?
<kmicu>Hi rhou[m] last time I checked Guix System didn’t prepare file system layer and layout (including encryption) for us. The grapical installer has some helpful workflow but otherwise follow docs and prepare disk manually
<rhou[m]><kmicu "Hi rhou last time I checked Guix"> Thanks for the reply
<guix-vits>i can't make guix: "en@boldquot.po:4584: format specifications in 'msgstr[0]' are not a subset of those in 'msgid_plural' /gnu/store/cdf88q6si537hkqimkr985rr4pmwj40c-profile/bin/msgfmt: found 1 fatal error"
<bricewge>guix-vits: Have you tried to `make clean`?
<guix-vits>bricewge: yes.
<guix-vits>i now run `make release`
<guix-vits>instead of `make`
<guix-vits>seems working.
<mbakke>civodul: any idea why cuirass attempts to build a different derivation for %bootstrap-tarballs on armhf and aarch64 than 'guix build -s armhf-linux bootstrap-tarballs -d'? ref
<guix-vits>can someone, please, tell me how to do '(wrap-program' to set LANG="en_US.utf8" properly? i use `("LANG" = (,(getenv "I_AM_DUMMY"))) now.
<brendyyn>`("LANG = "en_US.utf8")
<brendyyn>But i think maybe also use en_US.UTF-8
<brendyyn>i heard the other day there were mysterious issues with the utf8 version
<guix-vits>i'll, thanks brendyyn.
<brendyyn>guix-vits: I will update the documentation for the wrapper soon. the details of how to use it require looking at the source code and understanding scheme, but its ultimately not complicated
<wxie>mbakke: Yes. In coreboot, you can search USB, too. The problem is that the file system is not recognized.
<guix-vits>brendyyn: in my case it's `... ("LANG" = ("en_US.UTF-8") ))))) ...`. finally, i can remove the {ge,se}tenv.
<brendyyn>guix-vits: sorry i forgot the parens!
<brendyyn>i should go practice wriping parenthesis in the sand at the beach to improve my lisp skills
<apteryx>hello, Guix!
<guix-vits>brendyyn: for..he..yeah paren..hahaha
***apteryx_ is now known as apteryx
<rekado>g_bor[m]: do you know where I should upload the updated Guix videos? I see that they are currently hosted on
<rekado>I’ve updated all of them (also to fix, but I don’t think I can just replace what’s on
<rekado>I suppose I could put them on for the time being
<g_bor[m]>I don't know. Someone volunteered back then to handle this. I will have a look at my mails.
<rekado>the collection on appears to be owned by laura.
<g_bor[m]>I managed to find the mail thread.
*rekado just finished uploading them to
<g_bor[m]>The was created by Laura, as a place for final feedback.
<g_bor[m]>The original plan was to ask Mark Weaver to add it to, which he would do for us, but somehow we finally did not request the upload.
<guixer>Hi, I am trying to build a custom package. I receive a few warnings while building that perl and python3 is not in PATH. How can I fix that?
<guixer>It's my first custom package build.. so it might be a noob error..
<rekado>guixer: you should add the perl and python packages to the package’s inputs.
<guixer>rekado: --with-input ?
<guix-vits>guixer: probably to (inputs `( ("X" ,X)))
<guix-vits>not being a developer myself, though.
<guixer>guix-vits: awesome, that fixed the warning. Thanks!
<guix-vits>rekado, brendyyn: in freshest git-version of neverball camera behaves a lot better, but (game have a bundled fonts, and i have adobe CJK-fonts installed) with LANG=zh_CN.utf8 the fonts are steel "squares". So i'll keep default lang to "en_US.utf8" (in wrapper; this not prevent user's language settings from taking effect). Thanks.
<wxie>mbakke: Maybe the USB is not compatible.
<brendyyn>guix-vits: what did you say about big5?
<Rovanion>Does anyone happen to know why neither xfontsel, urxvt nor emacs knows how to find the terminus font on my Guix system even though I have font-terminus installed?
<brendyyn>Rovanion: try fc-cache -f
<guix-vits>brendyyn: not working as well
<Rovanion>brendyyn: Worked for graphical emacs but not urxvt or xfontsel.
<brendyyn>Rovanion: check what environment variables they use, and they are point to the right place in your .guix-profile, if any
<Rovanion>brendyyn: Hmm, perhaps only the xft font is installed in the terminus package. Because urxvt -fn 'xft:terminus:pixelsize=14' works.
<guix-vits>Rovanion: i've something similar. i'd to set "/share/consolefonts/ter-v24b.psf.gz" in (console-font-service-type of my sys. config. "ter-v24b" didn't worked, while "LatGr-something" worked.
<brendyyn>Rovanion: it says its a bitmap font
<brendyyn>sounds like you want Terminus-TTF, which doesn't seem to be in guix
<Rovanion>brendyyn: No its the bitmap font I want, not the truetype version.
<brendyyn>xft is different to bitmap?
<brendyyn>Rovanion: guix package -i terminus:pcf-8bit
<Rovanion>I'm not entirely sure how it works. In my .Xresources I can either set urxvt*font to -*-terminus-medium-*-*-*-14-*-*-*-*-iso10646-* or xft:terminus:pixelsize:\
<mbakke>wxie: how did you create the USB drive?
<Rovanion>14. Both lead to the same font being rendered but they are rendered using different methods; the first being faster, at least with urxvt.
<Rovanion>brendyyn: Installing the package like that and then running fc-cache -f did not help I'm afraid.
<brendyyn>does it not contain the bitmap one either?
<Rovanion>brendyyn: I'm trying to understand guix better, how did you know that you could give pcf-8bit as an argument to that package?
<brendyyn>Rovanion: people often forget or dont notice outputs exist. you run guix package --show=terminus
<brendyyn>and you will see the "outputs" out and pcf-8bit
<brendyyn>some programs are split into different outputs. its like how on debian you can have foo and foo-devel
<Rovanion>Okey, thank you for explaining!
<walafar>Hello to all! I am a new user of this system. I read from the manual how to update the system via the "guix pull" command and then enter "guix system reconfigurate / etc /config.scm". But I get an error: "
<sirgazil>brendyyn: I didn't get ibus to work on sway the same way it works on GNOME, but I worked around the issue, and could at least use it.
<sirgazil>brendyyn: I added this to my sway config:
<brendyyn>sirgazil: that just starts ibus. i have started in the terminal to test it, and set the IM_MODULE stuff, but nothing happens in any application
<sirgazil>brendyyn: Is this the first time you install and set ibus on the Guix System?
<brendyyn>sirgazil: its been in my .bash_profile for a long time
<brendyyn>i have ibus, ibus-anthy and ibus-libpinyin installed
<mbakke>reconfigurate, cute
<brendyyn>i was wondering why they left so fast. i guess that explains it
<sirgazil>brendyyn: And did you have to follow the instructions here before Because I always have to do that to get things working...
<brendyyn>only anthy comes up for me
<brendyyn>all mine are set to ibus btw, not xim
<brendyyn>i heard xim should be old and dying
<sirgazil>brendyyn: Yes, I don't use xim
<guix-vits>how to test package before sending?
<nckx>G'day, Guix.
<sirgazil>While in sway, I couldn't get ibus to alternate between input methods. It only selected Japanese Anthy, hence my sway configuration.
<mbakke>'evening nckx
<nckx>Did walafar ever paste a message? It's not showing up here.
<sirgazil>brendyyn: So I started ibus only to write in Japanese.
<mbakke>I think they realized their mistake
<nckx>I assumed it was a here-typo (like ‘/ etc /’) but you're probably right.
<sirgazil>brendyyn: But is ibus-setup listing all the input methods you use or just anthy?
<brendyyn>sirgazil: just anthy. i just found those two export module lines in my bash profile commented out where i wrote "forgot why this is needed"
<guix-vits>hi nckx
<nckx>guix-vits: Assuming it's a user programme (not a library, module, …), I test packages by running ‘~/guix/pre-inst-env guix environment --pure THE-PACKAGE -- THE-COMMAND’.
<nckx>Hi 🙂
<nckx>*--pure --ad-hoc, 'f course.
<brendyyn>sirgazil: i just tested int in a terminal and launched leafpad. it works!
<brendyyn>at leasd japanese does
<nckx>brendyyn: Heh. My configuration files are full of ‘XXX why is this here??’.
<sirgazil>brendyyn: But if ibus-setup is only listing Japanese anthy, then try adding the rest of the languages you use and then use Super+Space to see if you can switch between all of them.
<nckx>Second only to ‘XXX hack; remove!’ [written in 2015].
<sirgazil>One of the problems of using ibus in sway is that you don't have visual cues to know whether a given input method is active or not. And ibus usually takes some seconds to start,
<brendyyn>it will magically capture the super-space binding?
<sirgazil>brendyyn: Oh, no, sorry. That didn't work in sway, I had to set my own keyboard shortcuts
<brendyyn>alright. i can manage that bit
<brendyyn>but what about all that gtk2 gtk3 cache path stuff. how can we make guix so thats all automatically set right/
<sirgazil>But I moved away from sway because of things like this. You have to configure everything...
*sirgazil is a desktop environment person
<brendyyn>i wish life were easy but how does a tiling window manager is just so nice at what it does
<nckx>efraim: Just curious: why'd you remove youtube-viewer's gtk3 front-end? Broken?
<sirgazil>alextee[m]: I can't find your patch for the website in . Do you have the issue number or link?
<sirgazil>thanks :)
<guixer>Hej. I am trying to build certain software and I think I ran into some basic issue, that I can't figure out myself: /gnu/store/......0x0-coreutils-8.31/bin/install: cannot change permissions of ‘/etc/certaintool’: No such file or directory
<guixer>I think think I am missed to pass some --prefix arguments somewhere in my package definition
<nckx>guixer: Guix foo-build-systems pass --prefix (or the equivalent for foo) automatically. But some packages don't respect it, or need more convincing. I'd look at the Makefile (or equivalent) to find out which variable is actually passed to the ‘install’ command.
<guix-vits>nckx: what about new packages?
<nckx>guix-vits: Hence the pre-inst-env.
<nckx>Meaning ‘use my copy of Guix’ [to which I have just added this package]. How did you add this new package?
<brendyyn>Hmm. I thought wrap-program protected from creating wraps of wraps. i now have a
<guix-vits>nckx: i want to submit neverball (game) to Guix, but need to test it somehow :) it's in games.scm
<nckx>brendyyn: Never has, unfortunately.
<Veera>Hi guix
<brendyyn>nckx: i must have misread to code
<nckx>Same for wrap-script: it can't wrap itself because Guile scripts aren't supported yet.
<nckx>But that can change.
<Veera>can we create a file with some text during pkg building
<brendyyn>I was thinking we might want to improve wrappin in guix. like have some kind of wrapping spec that is produced, and then executed after install. currently wrapping is not composable.
<Veera>use lambda (invoke echo "abc" > file)
<nckx>guix-vits: Then ./pre-inst-env is the way to go, assuming you're working in a check-out and you've already built Guix.
<nckx>If not, see ‘Building Guix from source’ or so in the manual.
*nckx → unexpected AFK.
<pkill9_>Veera: yes, see xonotic for an example
<pkill9_>Veera: where it writes .desktop files
<bricewge>nckx: Could you review V2 of about youtube-dl and ffmpeg?
<nckx>bricewge: Sure. I haven't been around much, sorry.
<bricewge>It has been merged by accident and reverted, waiting for lfam feedback and yours.
<bricewge>nckx: No problem, thank you for your time :)
<guixer>nckx: I looked at the Makefile, it seems that etcdir and vardir are used to create CFGDIR and therefore CFGDIR starts with /etc
<guix-vits>nckx: `make authenticate` failed ("no rule")
<guixer>nckx: actually vardir is not used to create CFGDIR, but etcdir is. Variable vardir is also hardcoded without any prefix.. so it might need to be changed as well. Any hints on how to fix that?
<nckx>guix-vits: Going to be honest: I've never used ‘make authenticate’.
<nckx>guixer: If ‘vardir’ is hard-coded and causes problem's you'll have to substitute* the Makefile. And how is ‘etcdir’ set?
<nckx>Try to change it using a #:configure-flag, that's nicer than substitution 🙂
<nckx>(Or a #:make-flag.)
<Veera>pkill9_: mean to a file in source directory
<guixer>nckx: etcdir = /etc
<Veera>pkill9_: (with_output_to_file does it creates in source dir or final store
<nckx>guixer: I think you can still override ‘=’ assignments on the make command line (so #:make-flags (list "etcdir=" …) in Guix) but I'm not 100% certain.
<nckx>Easy to find out.
<sirgazil>Speaking of semver, alextee[m], packaged software comes from different project management cultures, so I think version precendence can't be checked using the the semver specification, right. Or am I missing something here?
<pkill9_>Veera: you can write to either
<guix-vits>Veera: try (with-output-to-file
<pkill9_>the build systems unpacks/copies the source to the temporary build directory
<Veera>"out" points to what
<pkill9_>the output directory
<nckx> /gnu/store/<hash>-<your package>/
<pkill9_>the build system generally is in the source directory, so you write to source files with relative paths
<pkill9_>e.g. "path/to/file"
<Veera>pkg tutorial say out points to store
<Veera>pkill9_: ok
<pkill9_>just assume that the build process is in the source directory
<sirgazil>And, speaking of which, I think the guix lint command has a bug regarding version ordering. It thinks that 2.0.1rc1 > 2.0.1 (
<pkill9_>though it would be good to have this as a variable
<pkill9_>because sometimes it moves to different subdirs
<nckx>sirgazil: You'll have to special-case ‘rc’ and ‘-rc’ or other things will break; 2.0.1rc1 < 2.0.1 but 2.0.1p1 > 2.0.1 because versioning is hopelessly broken.
<alextee[m]>sirgazil: well, it works for most software. i don't think you can reliably compare versions with so many version schemes available unless you accomodate all of them. but even if it doesnt work properly for some packages, i still think it's good to have any of them being the "main" one
<guixer>nckx: I'll try the configure flags first, but I don't understand how to refer to the current build context/folder as a prefix: #:configure-flags '("--etcdir=<whichvariablehere???>/etc")
<nckx>(assoc-ref %outputs "out")
<nckx>(string-append "--etcdir=" (assoc-ref %outputs "out") "/etc") in your case.
<nckx>guixer: It's often worth looking at the --help output of configure. Folks do that less often than I'd expect.
*brendyyn blinks profusely
<rekado>brendyyn: ’what about all that gtk2 gtk3 cache path stuff’ — that’s probably no longer needed for ibus in GNOME.
<alextee[m]>sirgazil: actually, how does guix decide what package to install when you enter a package that has different versions? we should use the exact same logic
<rekado>brendyyn: these variables should be set automatically when a gtk application is installed.
<guixer>nckx: I tend to look at the scripts from usually. I do not build that often.. and the slackbuilds are usually quite simple and give me a good idea on how to build stuff
<sirgazil>alextee[m]: I think so, yes, instead of semver.
<rekado>(though it could be prevented from being set due to an old bug)
<guixer>nckx: But I should definately look into the proper workflows for building :)
<nckx>guixer: That's fine, so do I. Just remember that those are written by humans which can make silly mistakes/refuse to read --help text too 🙂 I've seen some… things in PKGBUILDs that really shouldn't exist.
<brendyyn>export GUIX_GTK3_IM_MODULE_FILE=~/.guix-profile/lib/gtk-3.0/3.0.0/immodules-gtk3.cache
<brendyyn>export GUIX_GTK2_IM_MODULE_FILE=~/.guix-profile/lib/gtk-2.0/2.10.0/immodules-gtk2.cache
<starcrATI[m]>Hey guixers, I have a problem with gpg ... I am not able to decript any of gpg encrypted files due to gpg not finding any pinentry program. Even tho pinentry is installed, and "pinentry-program /home/$USER/.guix-profile/bin/pinentry" is set in my .gnupg/gpg-agent.conf. Rebooting and reloading the gpg-agent doesn't help unfortunately. Does someone experience the same problem?
<brendyyn>I added those two
<Veera>pkill9_: (with_output_to_file this directive is described where
<brendyyn>they do not exis in my .guix-profile/etc/profile
<brendyyn>there is GUIX_GTK_PATH tho
<sirgazil>alextee[m]: But if it is the same thing used by guix lint, then it will still be mistaken sometimes (e.g.
<Veera>I need to read documentation, as I am asking irc for each such one
<rekado>brendyyn: newer versions of GNOME integrate more tightly with ibus, so I’m not sure these variables will be needed for long.
<brendyyn>rekado: im in sway, with no desktop or login manager.
<nckx>starcrATI[m]: Add (e.g.) ‘pinentry-program /home/nckx/.guix-profile/bin/pinentry-tty’ to ~/.gnupg/gpg-agent.conf.
<alextee[m]>sirgazil: well, i'd say that's still good enough
<nckx>There will always be ‘mistakes’ because there are no rules.
<sirgazil>That's horrible :)
<nckx>Or liberating. We can certainly do our best, and recognising ‘rc/beta/pre/…’ as special negative funstrings is a good step.
<guix-vits>i did `guix environment guix --pure --ad-hoc help2man git strace` in ~/guix;
<guix-vits>`./configure --localstatedir=/var`
<guix-vits>`make check`
<guix-vits>-- is that correct way?
<nckx>I don't see anything wrong with that.
<nckx>What matters: did it work?
<guix-vits>nckx: format specifications in 'msgstr[0]' are not a subset of those in 'msgid_plural'
<guix-vits>fatal error
<rekado>brendyyn: yes, in that case you need these variables to be set.
<rekado>brendyyn: there’s a bug that causes search paths not to be propagated in the case of gtk and similar packages.
<nckx>guix-vits: Try ‘make -j`nproc` SUBDIRS=’.
<rekado>guix-vits: I’ve seen this error here on IRC earlier.
<starcrATI[m]>nckx: thanks for the suggestion, but didn't work ...
<rekado>I wonder what’s wrong with the translations.
<guix-vits>rekado: that was me, probably :)
<nckx>The -j`nproc` is optional but building guix parallelises so nicely that it's a shame not to.
<sirgazil>By the way, alextee[m], when I designed the packages URL paths, I thought that Guix would maintain all older versions of packages, so I thought pages in paths such as package-X.Y.Z or package/X.Y.Z would be kept available.
<nckx>starcrATI[m]: Well it should 😛 No stale gpg-agent running with the old configuration, by chance?
<alextee[m]>sirgazil: oh i see
<brendyyn>rekado: ok i can do that in my case. under what conditions is it supposed to be put in etc/profile
<nckx>sirgazil: Aha, that explains much, thank you.
<brendyyn>im having a look at profiles.scm
<guix-vits>"WARNING: 'help2man' is missing on your system." -- help2man is after --ad-hoc
<nckx>starcrATI[m]: /home/…/.guix-profile/bin/pinentry-{tty,…} does exist and run, right?
<nckx>guix-vits: If it's not fatal, ignore it.
<guix-vits>%) but it's building now. thank you all.
<nckx>guix-vits: So did SUBDIRS= fix it?
<guix-vits>nckx: yes.
<nckx>Good to know.
<starcrATI[m]>nckx: yes it exists and runs when I type pinentry or pinentry-tty into the terminal
<starcrATI[m]>but not when started from gpg -d or from within Emacs
<nckx>starcrATI[m]: Do you have ‘use-agent’ in your gpg.conf?
<nckx>For the record, here's my working configuration <>, but someone else got it working with just the 2 lines I mentioned above.
<bricewge>starcrATI: What revision of Guix are you using? ('guix describe')
<nckx>bricewge: Did something change in Guix land?
<bricewge>Ludovic pushed c7af9d0b5ebaa1fdb08ff5d8a56004998bcd8103
<bricewge>nckx: See
<bricewge>Oops wrong bug:
<guixer>nckx: FYI, the build now works. I used the make-flags to pass the correct values to the Makefile variables. Thanks!
<nckx>bricewge: Hehe, you and your subtle hints.
<starcrATI[m]>nckx: I didn't have a gpg.conf in my .gnupg, but vreating jt didn't help
<starcrATI[m]>guix describe:
<starcrATI[m]>guix aa7f3ec
<nckx>But OK, I was unaware of the GPG change. I leave you peeps alone for 2 weeks and you fix GPG. Typical.
<bricewge>He beat me to fixing #24076, I wanted to add `git-minimal' but it looks like the commit don't works, at least for Leo
<bricewge>nckx: ;-)
<nckx>bricewge: That said, doesn't it just make GPG default to what my ‘pinentry-program’ was? So it should still work.
<starcrATI[m]>and it worked before for me ... just after a reinstall it stopped working ^^
<nckx>starcrATI[m]: Your Guix already includes that fix to use your pinentry by default. Hm.
<nckx>Maybe that's why.
<bricewge>starcrATI: Try using 315b98b9eb71e1a56de6a49ffbfed0af3c92be7e
<starcrATI[m]>okay, how do I change to that commit ? :)
<bricewge>Or you may want to try lfam 's patch but it's untested.
<nckx>bricewge: You're aware that iaa7f3ec ncludes c7af9d0?
<nckx>starcrATI[m]: You'd use ‘guix pull --commit=<commit>’, but that shouldn't be necessary here, I think.
***wxie1 is now known as wxie
<guix-vits>any serious flaws there: ?
<nckx>These patches just make ‘pinentry-program ~/.guix-profile/…’ the default, they don't explain why GPG doesn't honour the explicit setting.
<starcrATI[m]>hmm okay :/
<bricewge>nckx: I can't find iaa7f3ec
<nckx>Right, ‘i’ was removed from the hex alphabet in 1985, try aa7f3ec.
<bricewge>starcrATI: What is the exact content of your ~/.gnupg/gpg-agent.conf?
<nckx>guix-vits: I don't spot anything serious. Haven't used the copy-b-s myself yet. Unserious things: ‘( "a" "list" )’ → ‘("a" "list")’; same for ‘) ))’ → ‘)))’ &c.; did passing all those setenvs directly as make arguments not work?; please use ‘.utf8’ locales unless this actually breaks something; did you run ‘./pre-inst-env guix lint neverball’ already?
<nckx>But that looks very good already 🙂
<bricewge>starcrATI: Rereading the conversion, if you followed nckx advice you should have tweaked the pinentry-program a bit: use your home and use pinentry-gtk-2 or pinentry insteadn of pinentry-tty
<starcrATI[m]>> liberdiko: starcrATI: What is the exact content of your ~/.gnupg/gpg-agent.conf?
<starcrATI[m]>pinentry-program /home/atila/.guix-profile/bin/pinentry
<starcrATI[m]>pinentry-program /usr/bin/pinentry
<nckx>Eh, doesn't that second line look very much like it overrides the first…?
<guix-vits>nckx: not yet, guix building currently. Thanks, i need to see thier Makefile again (1.6.0 lacks install, i think).
<starcrATI[m]>nckx: I think gpg-agent chooses the first matching one
<nckx>I don't know.
<starcrATI[m]>worked before like that
<bricewge>starcrATI: The first entry looks good. Maybe try removing the second one.
<starcrATI[m]>> liberdiko: starcrATI: Rereading the conversion, if you followed nckx advice you should have tweaked the pinentry-program a bit: use your home and use pinentry-gtk-2 or pinentry insteadn of pinentry-tty
<starcrATI[m]>I had it always point to the correct guix path for pinentry
<bricewge>It should work then...
<starcrATI[m]>wow ... it works when I remove the second line
<bricewge>starcrATI: Good!
<starcrATI[m]>Thanks so much :))
<starcrATI[m]>That one drove me nuts xD
<starcrATI[m]>But I don't know why it worked before then ...
<bricewge>This setting is always annoying when managing dotfiles across different systems.
<nckx>starcrATI[m]: Neither do we, but I'm glad to hear gpg.conf's syntax isn't as insane as it sounded for a minute.
<guix-vits>nckx: ah, "setenvs". i'll correct this.
<starcrATI[m]>I am managing all my dotfiles via a git repo and linking them with gnu stow on my machines ... that means I am not able to use one gpg-agent.conf for all my machines anymore now :/
<janneke>bricewge: there is probably not one upstream author that actually uses installed versions of their software
<nckx>guix-vits: Oh, I missed: never use git:// where https:// works.
<janneke>or something like that
<starcrATI[m]>liberdiko: exactly :D
<nckx>git:// is a MITM party. Even though we verify the hash, it still feels icky. So icky I'm surprised the linter doesn't warn.
<nckx>I just realised who ‘liberdiko’ is.
<nckx>Confusing business!
<bricewge>Yes I should do something about my identities...
<nckx>I didn't even know that was possible.
<nckx>guix-vits: Not that you need it anymore, but by complete coincidence mbakke's 388b432cea4ae2bb9bf4b044026b7764ab002e1e just fixed your msgfmt error.
<bricewge>starcrATI: Using stow also. To workaround this one I pass I run gpg-agent in my shepherd user deamon with `--pinentry-program'.
<wxie>mbakke: use dd as said in the instruction.
<guix-vits>nckx: cool; + https://.
<bricewge>starcrATI: Using an argument will overwrite the configuration in ~/.gnupg/gpg-agent.conf.
<mbakke>wxie: what payload are you using for coreboot?
<mbakke>nckx: woah, indeed I did not know that guix-vits was facing the same issue!
<wxie>I changed USB, and it is recognized.
<mbakke>wxie: you mean a different port, or a different USB drive?
<wxie>mbakke: different USB drive
<mbakke>wxie: with guix?
<wxie>mbakke: the USB is recognized, but installation of guix is still not. boot image path is not correct.
<starcrATI[m]>liberdiko: Ha, I just put /usr/bin/pinentry into the first line ... works now on Guix System and a Debian system I tested it on.
<mbakke>wxie: what error are you getting?
<wxie>mbakke: Downloading 1.0.1 is still on going. The error is for 1.0.0.
<mbakke>wxie: I suspect you'll get the same issue with 1.0.1 :/
<lfam>bricewge: My patch is definitely tested and works :) But you never know what terrible bug you may have introduced when patching GnuPG
<mbakke>wxie: the good news is that 1.1.0 will be released soon, so hopefully we can figure this out and work out of the box with coreboot for 1.1
<lfam>starcrATI[m]: Did you ever figure out your pinentry issue?
<wxie>mbakke: Isn't this error from coreboot?
<mbakke>wxie: what was the error message?
<wxie>mbakke: It finds the grub.cfg, but during booting it says it could not find the kernel ..., please load the image first...
<starcrATI[m]>lfam: It seems like that GnuPG on Guix did not like that I had another pinentry-program specified in the second line of gpg-agent.conf for non-guix systems ... it was "pinentry-program /usr/bin/pinentry" when I removed that line, it worked on Guix. So I guess the specified pinentry program for Guix System in the first line got overridden by the second line. After that, I put the line for non-guix systems into the first
<starcrATI[m]>line. It works now on Guix System and a Debian system I tested it on. Therefore, the debian GnuPG seems to not be affected by the second pinentry-program for guix systems in the second line of gpg-agent.conf
<lfam>Alright... at the moment the Guix GnuPG package is subtly broken for users on foreign distros, as you found
<lfam>I think I should revert the commit that introduced the issue
<lfam>You shouldn't ever need to do tell it about /usr/bin/pinentry on foreign distros. That should work automatically
<starcrATI[m]>I am not using Guix on the Debian system!
<starcrATI[m]>GnuPG was installed via apt there
<lfam>Nevertheless, it's broken if you tried
<starcrATI[m]>lfam: It could be that I had to specify that for an Arch system I am running, but I don't know for certain
<lfam>Hm, maybe it would never have worked right. Basically we broke the mechanism that tells GnuPG to look for pinentry in the same directory as the GnuPG executable
<lfam>I'm surprised nobody else reported the bug, though
<lfam>I wonder if anybody else tried removing their pinentry_program configuration on Guix
<starcrATI[m]>hmm yeah, as I said ... a couple of weeks ago it worked for me like I had the config before.
<starcrATI[m]>But I don't know since when it stopped working.
<lfam>Maybe about 2 days ago?
<starcrATI[m]>No, I think more like a week ago or more
<starcrATI[m]>but I can look it up if you want :)
<lfam>No worries
<lfam>Huh, ludo replied to me on that bug at <> but it didn't show up on the mailing list archive or the bug tracker
<mbakke>wxie: the grub.cfg uses UUIDs to locate the kernel and initrd, so I don't understand how it can fail to locate them
<mbakke>wxie: are you able to start a GRUB shell?
<guix-vits>nckx: checking with lint with ./pre-i-c
<mbakke>wxie: do you get the graphical boot menu that says "GNU Guix installation"? (I only have the 1.0.1 image at hand)
<sirgazil>Ah, I'm still getting the "Error downloading release information through the GitHub API" message...
<nckx>sirgazil: I don't know your history, but did you set the right magic variable to your personal API token?
<sirgazil>nckx: So you HAVE to use a GitHub token. I don't want to create a Github account...
<nckx>sirgazil: Yeah, that's how you bypass the rate limits for anonymous IPs.
<starcrATI[m]>lfam: okay, Ihope I was a little bit helpful maybe ^^
<starcrATI[m]>*I hope
<nckx>sirgazil: I understand, but it's not entirely unreasonable of them to limit anon requests.
<sirgazil>nckx: Do have information about the limits? I don't lint/build packages like a robot. I don't know why I get that message :(
<nckx>(Whether their real motivation is more technical than commercial is up for debate, of course.)
<nckx>sirgazil: No, last time I looked into them was a few years and a new owner ago.
<sirgazil>Ok, thanks.
<guix-vits>nckx: lint passed, building.
<nckx>guix-vits: So I've read up on the copy-b-s a bit; I didn't realise it was based on gnu- (instead of trivial-). Let's rename ‘setup-environment’ to what it really does: ‘build’.
<guix-vits>nckx: i'll
<guix-vits>ah, also i do need to add #t to some phases.
<nckx>If (invoke "make" … "CC=…" "DATADIR=…") worked, we can make this package more idiomatic by making them #:make-flags, adding make-flags to the lambda arguments, and using (apply invoke "make" "-j" (number->string (parallel-job-count)) make-flags). That's a nice-to-have detail, though 🙂
<lfam>Hm... something is up with debbugs.
<lfam>Cannot seem to reopen this bug, either through NNN-reopen or sending a message to control
<nckx>lfam: Is it archived?
<nckx>I guess you should've got an error message if that were the case.
<guix-vits>nckx: (let ((make-flags ?
<nckx>(lambda* (#:key make-flags outputs #:allow-other-keys) …)
<nckx>That will store the value of your package's #:make-flags argument once you add one.
<nckx>guix-vits: Another detail: ‘sdl-dir’ → ‘sdl’.
<abbe>installing Guix on a new host from a network booted rescue environment
*guix-vits thinks...
<lfam>nckx: No, it didn't make it to the mailing list archive
<lfam>It's really weird
<guix-vits>nckx: i'm not sure if copy-b-s supports #:make-flags.
<abbe>with /etc/config.scm prepared according to my hardware/software preferences: # guix system build /etc/config.scm => /gnu/store/8yb079mmhpik935brh776d827biyrgpl-system
<abbe>my question is with my root volume mkfs'ed, how do I use guix to write everything to it.
<NieDzejkob>yeah, copy-build doesn't have a #:make-flags keyword argument
<abbe>right now, /gnu lives on my rescue environment
<NieDzejkob>guix system init should do it
<nckx>That's kind of messy :-/
<guix-vits>nckx: i'll create an (let*, then?
<nckx>(Inheriting gnu-build-system only to throw away features.)
<nckx>guix-vits: Hm? No, just keep them in-line in the (invoke …) then.
<abbe>oh! thanks!
<abralek>hi, is there way to define services on a foreign distros? The same way as in Guix System?
<abralek>and run them in the user land
<bavier`>abralek: shepherd can run user services
<nckx>You can run the Shepherd as yourself and run user services (on both Guix Systems and non-), but that doesn't currently integrate with Guix at all. There would be no benefit over writing (say) systemd services apart from 3000% more brackets (yay!).
<nckx>abralek: ☝
<abralek>Yeah, so I am using something like this
<bavier`>nckx: much better said
<nckx>bavier`: You were much more efficient 😉
<abralek>let me rephrase
<abralek>is there way to define them the same way we define in operation-system block?
<abralek>or am I missing something?
<lfam>No abralek, it's not supported yet
<abralek>lfam: I see, thanks
<nckx>Well, ~/.config/{init,services}.scm are declarative, but that's about it.
<lfam>Right, but it's really different from what we do in config.scm
<nckx>Your question is obviously more clear to lfam than it is to me.
<lfam>It's a different syntax, different workflow, less featured
<lfam>The services don't even start automatically
<abralek>I was wandering if I could define everything the same way on my ubuntu, test it, and then migrate
<nckx>lfam: Something has to start el shep, but then sure they do.
<lfam>abralek: You'll need to keep doing what you're doing already, as shown in your paste
<lfam>Yes nckx, but it's really far from what systemd user services are like
<lfam>There is no integration with the rest of the system, at least "out of the box"
<nckx>(define nckxs-knowledge-of-user-services '())
<nckx>That's not really true. (define nckxs-knowledge-of-user-services 2015)
<nckx>there was little integration on systemd's end back whenever.
<lfam>The shepherd is currently very simplistic. The goal is to make it integrated like systemd, but there is relatively little energy being spent on that
<nckx>If there is now, that's good I guess. How do they integrate, lfam?
<lfam>nckx: They can depend on system-level services, and other things like mounts, timers, etc. The logging is all integrated in journald. Systemd automatically manages authentication when a user tries to manage system-level services that require privileges
<lfam>It's *really* easy to do basic services at the system or user level, and it can be managed by the user or administrator, either in an ad-hoc fashion or "from above"
<nckx>That's a steep mountain to climb for something that doesn't reliably capture stdout yet.
<lfam>Like, the user can define their own services, or the administrator can define services for users, that users can still control
<lfam>And even though easy things are easy, the capabilities are still very sophisticated
<lfam>Yes, I view it as a "feature moat" that will make it hard for other service managers to ever get the development attention to catch up
<lfam>Especially since many of the people who really dislike systemd dislike it because it integrates all this stuff
<lfam>So, they aren't going to come here and develop those features
<nckx>I was writing something similar s/it because it integrates all this stuff/Guile because it's not written in C89 and configured at build time using the preprocessor/.
<nckx>We fall between the two largest camps by far.
<guix-vits>nckx: renamed sdl-dir, added "Neverputt is included. " to (description. Now i'll run the game and make a patch.
<lfam>I do think not being written in C is a big plus for developers
<nckx>Sane ones, yes.
<nckx>That is not where the non-systemd ‘energy’ is.
<nckx>I'm very *glad* we're missing out on that, but we are missing out.
<lfam>I agree that it's okay to miss out on that
<Veera>is xcreensaver lib present in xorg
<nckx>guix-vits: Could you expand that just a bit more? ‘Also included is Neverputt, which is a foo that putts bars.’
<guix-vits>nckx: it's time to go raid the Debian again. they has a lot of beutiful descriptions :)
<apteryx>hey, I recently my ibus-daemon started defaulting to US keyboard layout instead of dvorak (listed as the first keyboard layout when I check ibus-setup). How can I control the default keyboard it uses?
<guix-vits>nckx: "Also included is Neverputt, which is a 3D miniature golf game."
<nckx>Good enough for me.
<nckx>Veera: No. What is ‘xscreensaver lib’? There's no libxscreensaver AFAIK. The actual executables are in <guix build xscreensaver>/libexec/xscreensaver.
<nckx>Also not libraries.
<Veera>i meant libxss1
<nckx>Veera: In libxscrnsaver.
<nckx>Because dropping 2 e's really saves valuable storage space, at an acceptable level of utter inconvenience.
<nckx>3 e's is where they draw the line, though.
<nckx>That would just be silly.
<efraim>nckx: still catching up on backlog, it was broken without perl-gtk3. I'll add a note, you're the second one to ask me
<abbe>getting this error: /gnu/store/dzr35fc1wvgvkgz2d4qp3xzhn6wg313c-grub-efi-2.02/sbin/grub-install: error: /gnu/store/dzr35fc1wvgvkgz2d4qp3xzhn6wg313c-grub-efi-2.02/lib/grub/i386-pc/ doesn't exist. Please specify --target or --directory
<abbe>while trying to do: guix system init /mnt/etc/config.scm /mnt
<abbe>what exists on host (outside /mnt) is: /gnu/store/dzr35fc1wvgvkgz2d4qp3xzhn6wg313c-grub-efi-2.02/lib/grub/x86_64-efi/....
<nckx>abbe: I don't know what, but something's wrong: grub-efi and i386-pc are mutually exclusive.
<nckx>abbe: Is this a UEFI system?
<abbe>it's a DigitalOcean VM, and has an EFI directory.
<abbe>is what I have in my config.scm: (bootloader (bootloader-configuration (bootloader grub-efi-bootloader) (target "/boot/efi")))
<nckx>As in /sys/firmware/efi, (mounted) /boot/efi, or both?
<nckx>Is the EFI partition mounted as /mnt/boot/efi?
<abbe>no /sys node exists, or /boot/efi exists, although /mnt/boot/efi exists as mounted by me.
<abbe>I meant /sys/firmware/efi and /boot/efi does not exist
<nckx>If /sys/firmware/efi doesn't exist, your current system wasn't booted using UEFI and AFAIK you can't install a UEFI boot loader. At least not using the ‘guix system’ interface.
<abbe>okay, so pass --no-bootloader then ?
<abbe>and re-use already install GRUB UEFI bootloader
<nckx>If your current system wasn't booted using UEFI, why do you think your new Guix System suddenly will be?
<abbe>well, current system is booted in rescue mode
<abbe>which I guess is PXE or something
<nckx>And ‘they do things differently there’? Oh joy.
<nckx>I don't remember whether --no-bootloader still updates grub.cfg. If so, I guess that's one way to work around this interesting decision.
<abbe>yeah, also after "guix system init --no-bootloader /mnt/etc/config.scm /mnt" i noticed /etc is empty. is this expected ?
<abbe>so no /etc/passwd et. al. files ?
<nckx>They are generated at every boot.
<abbe>thanks, time to test :)
<apteryx>about ibus overriding system layout, there's a switch to tell it not to (ibus-setup -> Advanced -> Check the "Use system keyboard layout" option)
<pkill9_>the earlyoom daemon is great
<pkill9_>i recommend putting it in the example desktop configuration
<civodul>any comments on ?
<civodul>looks like that silenced everyone :-)
<sirgazil>Grafts?! What's that :)
<civodul>heh :-) there's an intro in
<sirgazil>I was kidding :)
<sirgazil>I read that section :)
<raghavgururajan>Hello Guix!
<raghavgururajan>I am looking for glibc that has '/include/gnu/stubs-32.h' file. How do I get it? Our glibc packages has only "/include/gnu/stubs.h" and "/include/gnu/stubs-64.h".
<janneke>civodul: yeah, when i read that i thought "better not bother civudul too much and give him some time to hack and think"
<janneke>i did/do like this a lot: "The insight here is that the call graph mirrors the dependency graph."
<roptat>civodul, I can't really comment the code, but the behavior is still a bit surprising, -n still doesn't tell you everything (although it's much better than the current situation I think)
<roptat>do you think it's possible for -n to execute all the same steps as without, but without building or downloading any package?
<raghavgururajan>I appears I need libc32.
<efraim>when bootstrapping on powerpc (big-endian) using binaries built on core-updates: malloc.c:2382: sysmalloc: Assertion `(old_top == initial_top (av) && old_size == 0) || ((unsigned long) (old_size) >= MINSIZE && prev_inuse (old_top) && ((unsigned long) old_end & (pagesize - 1)) == 0)' f
<aidenholmes>does guix have the ability to replicate what this does, either with guix containers or vms
*sirgazil compromised, but couldn't create a GitHub account because he couldn't solve the puzzles to verify that he is a real person.
<watman>Good evening! Can someone help me with the config.scm file needed for running StumpWM?
<guix-vits>Hi watman.
<watman>I tried to do something of a copy of the i3-wm exapmle file, but it doesn't work
<guix-vits>watman: please paste this to
<watman>@guix-vits: how can I do it? I am here currently from my windows 10 boot.
<abbe>w00t, it works.
<guix-vits>watman: is windows forbid copying from files to Web :) ?
<abbe>is static-networking-service also capable of handling IPv6 ?
<watman>@guix-vits The login manager is working but after I login, I am returned to the Password field - no window manager showing up
<guix-vits>watman: btw, i'm not a developer; i'm just try to check the synthax.
<raghavgururajan>sirgazil Here are some github alternatives. and :-)
<guix-vits>watman: can you login from tty2 as either user or root?
<sirgazil>raghavgururajan: I was trying to create a GitHub account to get a token and be able to lint/build Guix packages I'm defining of software hosted by them :)
<guix-vits>watman: also you can use (packages (append (map specification->package '("package" "package"))))
<raghavgururajan>sirgazil Cool!
<sirgazil>raghavgururajan: I've been able to package software from GitHub before, but, for some reason, I haven't been able to lint/build a package I started yesterday because of github limits for request from anonymous users or something like that.
<raghavgururajan>sirgazil Ah I see.
<NieDzejkob>aidenholmes: Hi, former Qubes user here. You won't see the approach to minimize the trusted code base over here, but modulo 0days, guix environment --container could do some of what you want
<NieDzejkob>There's no seamless GUI virtualization either
<nckx>efraim: Thanks! 🙂
<nckx>abbe: Unless things've changed: no ☹
<abbe>oh, okay, this is good enough for now. thanks!
<nckx>(As in: in the past 2 weeks. Otherwise my answer is completely pointless.)
<Blackbeard>nckx: hi :)
<nckx>Hullo, Blackbeard.
<guix-vits>Hi Blackbeard
<Blackbeard>nckx: how have you been
<Blackbeard>guix-vits: hey!
<nckx>Blackbeard: Not great. But I'm bettering now. Much bettering.
<nckx>Stay at home, peeps.
<Blackbeard>nckx: that's good, I noticed you weren't around for a few days, are you sick?
<nckx>Yep 🙂
<nckx>Got to visit hospital. Fun.
<Blackbeard>nckx: ouch 😥
<Blackbeard>guix-vits: how are you ?
<guix-vits>Blackbeard: planning to buy a heatsink, as stock one didn't arrived yet, or smth.
<lfam>I'm glad to hear you're getting better nckx
<Blackbeard>Yes, it is good indeed
<efraim>kinda OT here, but I'm looking to host somewhere between 15-30 GB of (mostly) photos & videos for my child's daycare, as an alternative to the 15GB max of google photos, any suggestions? I was thinking mediagoblin but I'm unsure about other options
<Blackbeard>efraim: web hosting? I use syncthing but not sure that's what you want
<nckx>Thanks everyone. I'm doing much better now 🙂 Just take this seriously and take care of each other.
*nckx → AFK.
<Blackbeard>nckx: feel better :)
<efraim>syncthing could work but I didn't want to worry about people deleting photos accidentailly, or needing to sync the whole thing
<Blackbeard>efraim: syncthing can choose directories and can do backups according to what you select
<Blackbeard>It has a trashbin option so if you delete something it stays there
<lfam>Syncthing isn't really "web hosting" though. It's just p2p file sync
<lfam>And people would have to sync the whole thing
<Blackbeard>lfam: no I know it isn't, I worded it wrong
<Blackbeard>lfam: but no, you don't have to sync the whole thing, you can add multiple directories
<Blackbeard>For example I have my desktop
<lfam>You have to sync the entire directory, though. It's not per-file like a photo sharing tool
<Blackbeard>And I share a directory with my laptop
<Blackbeard>But I only sync a subdirectory with my phone
<starcrATI[m]>efraim: perfect task for a Raspberry Pi 4 and Nextcloud
<efraim>currently it's aranged one album per month
<efraim>nextcloud seems a bit much for just the photos part of it
*Blackbeard uploaded an image: Screenshot_2020-03-28-13-01-09-320_com.github.catfriend1.syncthingandroid.png (48KB) < >
<Blackbeard>You can also configure the directory to only send
<Blackbeard>And you can always create and empty directory and save the pictures you want to sync there
<Blackbeard>You could also create an intance of the Instagram-like
<lfam>I use syncthing a lot and unless this daycare is full of computer programmers they aren't going to like it
<Blackbeard>Pixel Feed
<lfam>It's Pixelfed
<efraim>i also found lychee and piwigo
<efraim>I assume they're mostly using web upload now to upload the photos
<starcrATI[m]>piwigo seems like a good choice
<Blackbeard>Ah yes indeed piwigo looks nice
<guixer>Hej. Possible build-noob error ahead: /gnu/store/29jh...-bash-minimal-5.0.7/bin/sh: ./configure: /bin/sh: bad interpreter: No such file or directory
<guixer>Any hints?
<efraim>piwigo even has an autoupdater extension and support for RTL languages
<lfam>guixer: Where did you see this error?
<guixer>lfam: in the build phase, there is some autoreconf going on, then it changes to a subdir and runs ./configure. Directly after that I receive this error. Could it be, that /bin/sh is not available in the environment?
<lfam>That's correct, /bin/sh is not available
<lfam>You can patch the file that is calling it or there might be an environment variable you can set
<lfam>This is supposed to be handled automatically, though
<guixer>lfam: I think it is because of the autoreconf stuff and I receive a few warnings about subdirs... the configure in the subdir has /bin/sh as shebang.
<guixer>lfam: I don't know how to patch that file since it is generated on build. How could I make /bin/sh available to it?
<lfam>guixer: You can patch the file before it gets invoked, or if it gets invoked in the same phase it is built, patch the code that builds it
<lfam>It should be possible to search the source code for '/bin/sh' and find the place that needs to be changed
<lfam>You might also search the packages for examples of using the patch-source-shebangs phase again
<lfam>Or check the package of nqp which has a patch-more-shebangs phase which should help
<alextee[m]>i can't upgrade my guix:
<alextee[m]>any ideas what's wrong?
<lfam>What command did you run alextee[m]?
<alextee[m]>lfam: guix upgrade (after doing guix pull)
<lfam>Just `guix upgrade`?
<lfam>No options?
<lfam>The message at the end is saying that you have both epiphany and gtk+ installed in your profile
<lfam>But, it's saying that you are only trying to upgrade epiphany. This causes a conflict that makes it bail out
<lfam>It's weird that it wouldn't try to upgrade gtk+ too, though, if you just did `guix upgrade`
<lfam>Can you do `guix package --list-installed` and check if gtk+ is really listed there?
<alextee[m]>i did remove gtk but i forgot i have docs too
<lfam>Interesting that it doesn't show up in the list
<lfam>So, you had installed gtk+:doc in your profile?
<alextee[m]>yeah just removed it, retrying
<lfam>I guess it wouldn't show up in that list if it didn't need to be upgraded
<lfam>In that case, the error message should try to say gtk+:doc instead of just gtk+
<lfam>Can you file a bug about that?
<alextee[m]>woah it seems to be doing something now! thanks
<rhou[m]>I tried to manually install guix-system in a vm but got stuck with guix system build, no space left on device
<alextee[m]>lfam: yeah i'll send a bug report now
<rhou[m]>I have allocated 6GB, is this not enough?
<NieDzejkob>6 is quite a small number, to be honest
<jonsger>efraim: dont go for nextcloud, it's nice but not for file syncing :(
<efraim>jonsger: I'm thinking piwigo
<efraim>I allocated 20GB when I had a separate partition
<NieDzejkob>rhou[m]: you did remember to run cow-store, right?
<rhou[m]>nope, what does this command do?
<rhou[m]><NieDzejkob "6 is quite a small number, to be"> I wanted it to it on my USB stick
<NieDzejkob>see info "(guix)Proceeding with the Installation"
<rhou[m]><NieDzejkob "rhou: you did remember to run co"> I saw this in the install.scm file
<guixer>lfam: I am still on the shebang patching. I followed your advices and found the parts to patch shebangs after certain phases. It seems to be like you said, that the 'configure' file is autocreated in the same phase it is executed. I could not find /bin/sh or /bin/bash in the source files. Only occasion I found is in AC_P
<guixer>ATH_PROGS(BASH, bash). Could that be the line which creates the shebang for configure file?
<guixer>It would be nice to debug the build process.. is there a possibility to run the build phases manually and to trace which command creates certain files at runtime?
<guix-vits>guixer: i'm not a dev. You're probably can `guix environment --pure --ad-hoc x y z`, and run things manually.
<guix-vits>guixer: to not run everything from scratch, you can use `guix build X -K` -K mean keep failed, you can see the failed build in /tmp.
<g_bor[m]>hello guix!
<g_bor[m]>I just pulled, and tried to reconfigure
<g_bor[m]>the dnsmasq build sigsegvd
<guixer>guix-vits: yeah, I really like -K, helps a lot. Just tried the environment a little, but I don't get it right now. I think I'll continue tomorrow. Thanks
<g_bor[m]>any idea what's going on?
<g_bor[m]>python wrapper also
<g_bor[m]>after several attempts it finally worked.
<cbaines>g_bor[m], was it the grafting that segfaulted?
<cbaines>I had this earlier today when doing guix package -u
<pinoaffe1> < I have this same problem with context / texlive - anything new?
<g_bor[m]>yes, it was
<cbaines>I wonder if it could have been this change:
<rekado>segfault is worse than just a random crash
<rekado>g_bor[m]: can you reproduce the segfault somewhat reliably?
<rekado>then you could try to run the derivation “manually” with a debug version of Guile 3.0.2 to see where it crashes.
<civodul>roptat: re grafts and all, -n cannot evaluate the steps without building
<civodul>precisely because some of the steps depend on build results
<roptat>oh, I see
<civodul>that said, we can leave -n as it is now, meaning that it implies --no-grafts
<civodul>dunno which is better actually
<roptat>I think I prefer your solution
<civodul>ideally, -n and -n --no-grafts would print roughly the same thing
<civodul>cbaines: if you see grafting segfaults, please do report!
<civodul>to me it seemed to be fixed with 3.0.2
<civodul>like grafting libreoffice in a loop is just fine
<civodul>but if you find otherwise, we can refer guile-for-grafts to 2.0
<mbakke>anyone here familiar with Qt and 'moc'? For some reason the moc executable fails on core-updates because it attempts to parse GCC's C++ headers.
<mbakke>I can hack it to read C_INCLUDE_PATH instead of CPLUS_INCLUDE_PATH, but it's a bit silly.
<civodul>no idea how this all works
<fishyfriend>hey #guix - i have a question about setting up a guix dev environment
<fishyfriend>when i get to the step for verifying git-authenticate.scm, the most recent commit appears to be signed with a different key (39B33...) from the one expected (3CE46...).
<fishyfriend>this is following the manual
<fishyfriend>how would i go about verifying that the other key is legit?
<fishyfriend>the other commits are signed with the expected key 3CE46...
<lfam>fishyfriend: It's available on Savannah which is the canonical source for Guix commit-signing keys:
<NieDzejkob>huh, if so, I'm confused as to the threat model here
<fishyfriend>lfam: thanks - any idea why the wiki would specify just the one key?
<lfam>Which wiki is that?
<NieDzejkob>because it looks like we trust savannah to distribute the correct keys, but not to keep the git repository secure?
<lfam>The commit you're highlighting was made today, and is supposed to handle this very issue
<lfam>I'm not sure how the authenticate stuff works under the hood but maybe after you `guix pull`
<lfam>NieDzejkob: I'm not sure about the threat model for `make authenticate`. It's pretty new and I wasn't paying much attention when it was added
<bandali>hey folks, is there an issue with my commit or key?
<lfam>The idea with signing commits is just to be able to attribute authorship
<lfam>We aim to implement "The Update Framework (TUF)" eventually but it's slow-going
<fishyfriend>could it just be a documentation issue? manual says to expect just the one RSA key, but that seems wrong
<lfam>bandali: I think your commit is fine. fishyfriend doesn't have your new key in their keyring yet so the signature verification failed
<fishyfriend>verification didn't fail AFAICT
<lfam>The documentation is not clear enough
<lfam>The manual doesn't specify *any* key here
<lfam>What you are looking at in the manual is an example
<bandali>oh, maybe fishyfriend was expecting ludo's key
<bandali>which i think begins with 3CE46, whereas mine begins with 39B33
<fishyfriend>bandali: i think so, and being unschooled in the world of GPG security, i took the instruction in the manual very literally
<bandali>ah :-)
<bandali>that's for release signatures
<bandali>signed by ludo
<lfam>It really needs to just happen automatically, or not be recommended in the manual
<bandali>individual commits are signed by their authors
<lfam>It's way too confusing for people who aren't super familiar with GPG
<fishyfriend>in the meantime what would clarify this? maybe a link in the manual to some GPG reading material, or a quick explainer how the project makes use of gpg security?
<lfam>The basic idea is that all Git commits must be signed with a key from our Savannah project page:
<lfam>Verification of this is semi-automated, as you found
<lfam>"How to use GPG" is a tome unfortunately
<fishyfriend>it seems i had all the keys already, perhaps i started this setup earlier and forgot. maybe it's a "me" issue and not the manual...just wanted to raise this since, i'm a fairly new user and it confused me
<NieDzejkob>bandali: huh, I was under the impression that git-authenticate.scm was supposed to be only modified by ludo
<lfam>That seems tricky in practice ;)
<mbakke>yay, all tests are now passing on core-updates
<civodul>lfam: i'd need to dig the discussion but that was supposed to be temporary until we get a new signed tag
<civodul>it's obviously suboptimal as it is
<bandali>NieDzejkob, oh woops!
<civodul>mbakke: yay!
<bandali>civodul, is that true?
<bandali>if so, i'm very sorry
<mbakke>I though committers were supposed to update their own keys.
<civodul>yes, though that never happened in practice :-)
<civodul>bandali: np!
<civodul>we should adjust the instructions, though
<bandali>ah... :-(
<bandali>okay this is very embarrassing
<bandali>it would've served me right to do a git log or blame on git-authenticate before changing it myself
<bandali>and notice that only ludo has changed it so far
<NieDzejkob>I feel like the list of trusted keys should be in a data file
<NieDzejkob>so that it's possible to parse it without executing arbitrary code
<civodul>yeah, that's temporary
<civodul>eventually that should be in .guix-channels probably
<civodul>view it as the seeds of a prototype of a real thing :-)
<bandali>so, uh, what gives? it seems like i just broke git-authenticate for everyone who was using it? -_-
<civodul>no no, it's just the instructions that are off
<fishyfriend>bandali: the instructions are for verifying the commit history of git-authenticate.scm using `git verify-commit', prior to actually using git-authenticate. they listed one key but it seems they should also include yours now
<fishyfriend>should i send a patch do this? or is it better left alone till another fix is in place?
<mbakke>I think I understand the issue with 'moc' and have attempted to patch it so that it ignores the GCC _GLIBCXX_VISIBILITY macro. I'll bring the issue upstream tomorrow.
<mbakke>Guix should probably come with some sort of addiction warning like the cigarette packs.
*civodul -> zZz
<bandali>fishyfriend, ah, let me double check
<bandali>yeah so reading the manual, it seems to imply that only ludo's key is supposed to sign the commits to build-aux/git-authenticate.scm
<raghavgururajan>Is Maxim Cournoyer here?
<bandali>but i guess this was bound to happen, be it me or someone else, someone other than ludo would probably eventually end up changing that file
<bandali>fishyfriend, so, yes please, let's clarify the manual to state that other contributors and/or maintainers may commit to that file and thus their keys should be pulled from savannah as well
<bandali>raghavgururajan, that'd be apteryx
<fishyfriend>bandali: great, will do. i think there's already docs somewhere on getting those keys so will link to those.
<fishyfriend>thank you!
<bandali>fishyfriend, yeah i think fetching gpg keys from savannah may already be mentioned or alluded to in the manual
<bandali>and thank *you* for noticing this and volunteering to submit a patch :-)
<bandali>and sorry to anyone whom i have/will inconvenience with my commit
<fishyfriend>i'd hoped my first guix submission would be actual code, but it's something.
<fishyfriend>you just gave me the opportunity to unblock others so - all's well that ends well
<bandali>haha. this is no less valuable :-)