IRC channel logs

2023-07-03.log

back to list of logs

<gry>daviwil and nckx thank you for the links about packaging, i will check
<djeis>Anyone else getting hiccups from ci.guix?
<djeis>Friend's doing a system install and he's had multiple substitution failures, the first a TLS error and most recently a 504 gateway timeout.
<elevenkb>How do you do haskell development on guix? GHCUp isn't working,,,, considering install nix tbqh.
<elevenkb>of course via ~guix install nix~.
<atka>seatd will not not actually create the XDG_RUNTIME_DIR correct?
<festerdam>Ok, I reinstalled guix using the guix.git/plain/etc/guix-install.sh install script. Now guix pull seems to download some packages, but after downloading 5 packages it again fails with guix pull: error: failed to get list of supplementary groups for ‘myuser’
<festerdam>This is on Debian.
<iyzsong>festerdam: does 'guix-daemon' running with '--build-users-group=guixbuild'? and in /etc/group guixbuild should have some guixbuilderXX users
<vagrantc>did you also install with the debian package of guix?
<vagrantc>not sure how well the installed guix package will work with a guix-install.sh guix ...
<festerdam>The error also happened with the guix from the debian repositories. guix-daemon is running with --build-blabla=guixbuild. There are references to guixbuilderXX in /etc/group
<festerdam>iyzsong: It goes up to 10.
<festerdam>the XX
<festerdam>The command groups however doesn't list the group for some reason.
<festerdam>Not sure if it is supposed to.
<festerdam>But I imagine the dæmon wouldn't even let me connect me with it, if I were not part of the group.
<festerdam>iyzsong: Not sure if you caught it, since I think you wouldn't have seen it in those 246 seconds, but I said that guixbuild doesn't appear in my output of the «groups» command, which I don't know if it is supposed to.
<iyzsong>festerdam: oh, 'groups guixbuilder01' return 'guixbuild' for me, and should for you...
<festerdam>iyzsong: Ah, yeah it does. Wasn't sure if my account needed to be in guixbuild (which I think it is, despite it not appearing in the output of the command).
<iyzsong>no, your account shouldn't be in it, and guix-daemon should be run by root (via systemctl)
<festerdam>iyzsong: Ok I think doing gpasswd -d fixed it, despite guixbuild not being listed in the «groups» output of my user.
<iyzsong>okay :)
<dissoc>im trying to create a package that inherits ungoogled-chromium. all i want to do is add a stage to the phases. here is my attempt: https://paste.debian.net/1284789/ but i get an error code (appended to paste). any ideas?
<dissoc>i have no idea what ' Unknown # object: "#<"' could mean
<frog>phases is a gexp for ungoogled chromium, so you have to use gexps here. https://paste.debian.net/1284790/
<dissoc>thanks. it appears to work now. i still have a difficult time knowing when to use gexp or not.
<audit>can hurd run on physical pc now?
<atka>how do guix install "package" and guix home package profiles interact?
<atka>I installed some packages via guix install to test, then added them to my guix home configuration
<atka>I would like to keep the guix home versions of the packages
<atka>when I guix package roll-back or switch-generations I lose them even though they should be in my guix home profile
<ChocolettePalett>You could try to check what packages are currently installed, then do "guix home reconfigure" and check the list of installed packaged again
<ChocolettePalett>I always thought that "guix home reconfigure" will create a new generation and link your environment to it, though I might be wrong: still learning too
<atka>ChocolettePalett: just tried, no new packages or generations
<atka>I added another package to guix home config when I tried, new guix home generation but the package I added isn't here either
<atka>not availble to use or in the list of packages
<frog>the ones installed with "guix package install" are the "~/.guix-profile" profile and the ones that are part of the home configuration are the "~/.guix-home/profile/" profile. it sounds like you're missing the environment variables (PATH, etc) to use your guix home profile. check if "~/.guix-home/profile/bin" is in $PATH
<atka>frog: yes you are correct, .guix-home/profile/bin isn't in path at the moment. but it was a couple reboots ago, I wonder what happened, I just rolled back guix package...
<atka>what is in charge of exporting guix home's env vars? guix home reconfigure doesn't seem to be
<frog>~/.profile laods the home profile. it should be loaded by ~/.bash_profile.
<atka>ok, .bash_profile is sourcing .profile and the contents look correct
<atka>I just switched over to sway + elogind without %desktop-services, could that have something to do with it?
<frog>not sure, but i dont think so. if you login on a new tty, is the profile still not loaded?
<atka>yeah, just the regular guix stuff, no guix home
<atka>guix pull and guix home recofigure don't complain about anthing, and guix home seems to be generating my .bashrc and .bash_profile correctly
<atka>but the profile isn't being sourced, strange
<atka>dunno, I nuked it somehow
<atka>anyway to get rid of this home profile and start over from generation 1?
<atka>or make it like I never guix home import and guix home reconfigure?
<frog>you can just delete .guix-home
<frog>actually, that doesnt work. somehow keeps generation history through magic
<atka>I wish there was a guix home reset and guix package reset
<atka>a way to throw away all generations and start over
<atka>make them able to be gc'd
<frog>for your guix home problem, my guess is that you're messing up PATH somewhere. like maybe you accidentally have an "export PATH=" that doesn't preserve the old $PATH. (note that setting vars in home-environment-variables-service-type does not preserve old value)
<atka>the only thing in my home is a few packages and home-bash-services-type at the moment
<frog>you can also try running the three lines in .profile manually just to see if that works.
<atka>it was working fine an hour or 2 ago, I did change from dwl-guile to sway in my guix system config, rollback guix package to gen 1, and add some packages to guix home and reconfigure
<atka>yeah source .profile works fine
<atka>packages are there now
<atka>first line in my .bash_profile is to source ~/.profile if it exists though..
<frog>well, you can debug it by just putting a bunch of "echo path is $PATH" lines in your bash_profile and bashrc to see if PATH is ever set and where it's destroyed. you can edit the bashrc and bash_profile directly if you delete the symlinks put by guix-home and replace them with regular files with the same contents.
<HiltonChain[m]><atka> "a way to throw away all generati..." <- You can switch to the oldest generation, then roll-back and delete-generations
<atka>HiltonChain[m]: does this work for guix home or guix package? both?
<atka>frog: I'll think about it.. I don't even know if I need guix home for anything, always gives me a headache for some reason
<atka>thoug I think guix home is the way for configuring xdg stuff and pipewire, not sure, haven't gotten that far
<atka>also, what would cause my guix home generations to start at gen 4?
<atka>I'm on gen 7 but list-generations starts at 4
<HiltonChain[m]>you deleted previous generations
<atka>ah ok, guess it doesn't start over
<atka>so I switched to gen 4, then tried to roll back from there
<atka>won't let me, cannot switch to home environment -1
<atka>oh, well thanks for the help everyone
<HiltonChain[m]>that works for guix package, I didn't checked home
<HiltonChain[m]>check*
<atka>any sway + pipewire tips for guix/home?
<atka>I have sway set up without %desktop-services, using elogind (not sure if seatd is a better/leaner option), foot as my terminal, tofi as my menu
<atka>last thing to set up is xdg-portals/pipewire/wireplumber, haven't found many guixy resources for those
<janneke>audit: using the hurd-team branch, the Hurd runs on my thinkpad x60
<cnx>nix has not been working on guix system for almost a month now, could we have some attention over https://issues.guix.gnu.org/63893
<cnx>i'm packaging klee, a symbolic executor
<cnx>should it fall under maths?
<ulfvonbelow>does offloading effectively disable local builds (aside from derivations that specifically request a local build)?
<ulfvonbelow>I find that it will just keep checking the one build machine I have specified, waiting for the load average to go down, instead of ever doing anything itself
<nckx>Yjp.
<nckx>* Yep.
<audit>janneke how can i get the hurd-team branch iso file
<mekeor-unauth>hello guix! i have two custom guix packages in my GUIX_PACKAGE_PATH, emacs-bicycle and emacs-jinx (which i'm already trying to upstream to guix proper). but i can't install either of them. i get a hash mismatch. the weird thing is that /gnu/store/...-emacs-bicycle-20230515.943-1.7fced90-checkout contains the files of the other package, emacs-jinx. what's going wrong?
<janneke>audit: there is no (such) installation support yet
<janneke>we just got it to run for the first time, lots of work still ahead
<rekado>mekeor-unauth: is emacs-bicycle using the hash of emacs-jinx?
<mekeor-unauth>rekado: i just found the cause: i accidentally used the same git commit hash for both packages. i guess, it's still a bug.
<rekado>a Guix bug?
<mekeor-unauth>rekado: yes, because guix should not mix up the packages even if they use the same git commit hash
<rekado>when you specify a hash in the source field it means that Guix doesn’t have to download the sources again if it already has sources with that hash in the store
<rekado>the *hash* is authoritative
<rekado>not the URL or fetch method
<mekeor-unauth>rekado: but shouldn't the package name or so be used as part of the "identifier", addiionally to the git commit hash?
<mekeor-unauth>(i also use (file-name (git-file-name name version)), so the name *should* be part of the checkout, i'd think)
<rekado>all these things are just instructions for how to get and store the sources — if they aren’t already available (as identified by the hash)
<mekeor-unauth>alright :D then there's no bug. thanks!
<jpoiret>lechner: just saw your patch about modify-services, will try to have a look
<nckx>Hmm, but mekeor's point about names is valid in practice, no? Unless something's changed, package "a" won't snarf package "b"'s sources just because the hash matched.
<nckx>s/about names/about file-names/ to be clear.
<aitzkora>Hi, I need an example of recipe when output directory of a input is used in the configure stage as an command line parameter of a cmake command. It somebody knows a example, it would be very practical
<rov>Just wanted to say thanks for https://guix.gnu.org/en/blog/2023/from-development-environments-to-continuous-integrationthe-ultimate-guide-to-software-development-with-guix/ . I've tried doing the first steps for a couple of repos but never been sure "if I've done it right".
<ngz>sneek: later tell rekado Hello! I'd like 1. to remove texlive-tiny for it is redundant with texlive-updmap.cfg and not so tiny 2. rename texlive-updmap.cfg because the name is too technical; I'm thinking about something along the lines of `texlive-custom-tree' or `texlive-static-tree'. WDYT?
<sneek>Got it.
<rekado>ngz: sounds good
<sneek>rekado, you have 1 message!
<sneek>rekado, ngz says: Hello! I'd like 1. to remove texlive-tiny for it is redundant with texlive-updmap.cfg and not so tiny 2. rename texlive-updmap.cfg because the name is too technical; I'm thinking about something along the lines of `texlive-custom-tree' or `texlive-static-tree'. WDYT?
<rekado>texlive-updmap.cfg used to be called texlive-union, because it would create a union tree of all texlive things and then add its configs to it
<rekado>it was renamed because that’s no longer what it does
<ngz>`texlive-merge-texlive-and-generate-updmap.cfg' is clearer, but not optimal ;)
<ngz>I think it currently creates a standalone partial TeX Live distribution that can be used as a native input. I don't know how to name it.
<nckx>aitzkora: Do you mean something like (invoke "cmake" (string-append "FOODIR=" #$(this-package-input "foo"))) ...?
<aitzkora>@nckx : yes, it was something like that, I found a solution using %build-inputs ",(string-append "-DBLT_SOURCE_DIR=" (assoc-ref %build-inputs "blt") "/blt_dir")
<aitzkora>"
<ngz>rekado: OK, what about `texlive-transient-tree'?
<ngz>(naming things is hard)
<rekado>ngz: I don’t know if the “transient” is necessary. We’ll need to document it in the manual anyway, because no name will really be obvious.
<rekado>hmm, interestingly, “guix locate pigz” only returns “bash-completion” as the only result, not the pigz package, which I have on my machine
<rekado>is that because it’s limited to only things that have been *installed*?
<janneke>rekado: i think so
<janneke>--method=manifest is the fast, default mode
<janneke>--method=store is slower...
<_graywolf>Lately when reconfiguring my system, I am getting warnings about collisions for few files (just warnings, the first one gets used, so everything works), is that something that should be reported or is it pretty much expected to happen?
<acrow>"guix locate" is nice.
<nckx>sneek: later tell aitzkora: OK, but %build-inputs is a poorly (or un?)documented hack that is deprecated in favour of the gexp form I suggested.
<sneek>Got it.
<Miro14>Всем привет
<davidl>sneek: later tell civodul: Hi I read your blog post from June 5th reg. dev environments and CI. Thanks for that write-up it was very useful! I had one hickup though when following it: the part saying "The end result looks like this (not repeating things that haven’t changed):" - actually I had to change the vcs-file? procedure and the *file* argument to local-file used by the package source field. Dunno if others find that self-evident,
<davidl>otherwise it might be worth editing that part.
<sneek>Will do.
<mirai>how does guix handle package building/installation behind the scenes? Does it operate some sort of queue in the background?
<mirai>What happens if power goes out before “guix build foo” returns/finishes?
<jpoiret>mirai: it uses temporary directories and chroots to pretend it's writing to the actual directory
<clemens3>i guess some transaction lock somewhere
<jpoiret>ie. if guix build foo crashes only the temporary directory is unclean
<clemens3>if it doesn't finish, the old state stays
<jpoiret>other than that it's the guix daemon managing that
<mirai>hmmm… does guix daemon understand the concept of “tasks”? i.e. restart the build of 'foo' if a power-off event happened, etc.
<mirai>it keeps going until the build either finishes or fails
<mirai>s/finishes/succeeds
<jpoiret>nope, not that i know of
<jpoiret>I think keep going is implemented at the daemon level yes
<metalforever>hi, sorry i dont know what im doing here with the guix distro very well. I am trying to edit the mate-menu. Sometimes i install packages (like VLC) and the package does not show up in the mate menu. I found the configuration files but they are in a read-only filesystem. I really want to edit this menu to have my favorite programs run. What is the procedure
<atka>any solution to guix hanging on shutdown after a system reconfigure?
<atka>REISUB is the only way I can reboot
<old>I'm trying to bump the version of the package dyninst
<old>which has a dependency on libiberty
<old>I get the following error while linking:
<old>relocation R_X86_64_32 against symbol `libiberty_demanglers' can not be used when making a shared object; recompile with -fPIC
<futurile>atka: I guess you're the same person asking about this problem on guix-users
<old>libiberty is packaged as a static library. I do not understand why the libiberty_demanglers symbol is marked as relocable
<atka>futurile: not me
<atka>it has been hapenning every reconfigure since a fresh install a few days ago
<futurile>atka: OK - so maybe someone else has the same problem - there's not really enough info on the mailing list thread - so maybe try putting symptoms into that thread
<futurile>atka: it sounds 'similar' as they say they've been trying Guix for about a week
<atka>futurile: not sure, I know it affected at least one other
<atka>futurile: looks like it was podiki[m] who had the issue
<podiki[m]>i've only had a problem when changing login manager, e.g. lightdm <--> gdm, logging out puts it in a weird state (probably previous service was removed or something/new one isn't started correctly)
<podiki[m]>but i've only done that a few times so i'm not sure if it is consistent
<mekeor[m]>how can i iterate over all packages exported by a module? i only found resolve-interface but i don't know how to get a list of all exported symbols or so