IRC channel logs

2023-07-02.log

back to list of logs

<reed68>I'm trying to get the package "teensy-loader-cli" package working on my machine. If I create a shell with
<reed68>$ guix shell --container teensy-loader-cli coreutils
<reed68>and then run
<reed68>[env]$ teensy_loader_cli
<reed68>I get the following error:
<reed68>teensy_loader_cli: error while loading libusb-1.0.so.0 from libusb-0.1.so.4: libusb-1.0.so.0: cannot open shared object file: No such file or directory
<reed68>If I do
<reed68>[env]$ ls $GUIX_ENVIRONMENT
<reed68>I see that there is no /lib directory. If I add libusb to the shell environment with
<reed68>$ guix shell --container teensy-loader-cli coreutils libusb
<reed68>I do see the correct .so file in $GUIX_ENVIRONMENT/lib
<reed68>however, running teensy_loader_cli still gives the same error. Is there a guixy way to fix this? Searching the error comes up with people manually creating symlinks to the library, but this feels like not the correct thing to do in guix?
<nckx>reed68: Welcome. Please use paste.debian.net for many-line texts. You were quieted by a bot, twice, and your messages might have been truncated.
<reed68>ahhh, thanks for the info. I'll do that
<nckx>Wish I could help you with your actual problem, but off to bed.
<nckx>(It's possible no lines were lost; your text above makes sense; but who knows. Good night!)
<nckx>IMO this is worth a bug report at bug-guix at gnu dot org if nobody responds.
<reed68>Reposting with pastebin. I'm trying to get "teensy-loader-cli" working on my machine. Here is a description of the problem https://paste.debian.net/1284722/
<frog>i don't know anything about libusb or this program, but it looks like a problem with libusb-compat not properly having a full path to libusb-1.0.so.0 compiled into it.
<frog>you can force a program to load libraries from a specific directory, although it's a fragile temporary solution.
<frog>LD_LIBRARY_PATH=$GUIX_ENVIRONMENT/lib teensy_loader_cli
<reed68>That worked! That is good enough for me to do what I needed to with teensy_loader_cli, but I want to be a good community member. Do you think this is still worth filing a bug report?
<frog>of course. if you want to add more info, the problem is that libusb-compat needs to be configured with LIBUSB_1_0_SONAME as the full path to the libusb-1.0.so.0 file.
<anemofilia>I was asking myself if there was some way to put a manifest-1.scm in a parent dir, put a manifest-2.scm in a inner dir and make guix shell use both manifests
<anemofilia>Is it possible?
<anemofilia>If yes, how can I do so?
<frog>i dont think so, but you can write code inside of manifest-2.scm to automatically find manifest-1.scm, load it, add packages to it, and return the new manifest object
<anemofilia>Seems reasonable
<zeropoint>does anyone know if it is possible to use guix deploy to deploy home configurations?
<vagrantc>June was clearly the month to submit python-pyelftools updates https://issues.guix.gnu.org/64144 https://issues.guix.gnu.org/64368 https://issues.guix.gnu.org/64379
<vagrantc>ACTION finally found the wait time part of the policy ...
<takev[m]><zeropoint> "does anyone know if it is..." <- I am pretty sure that guix deploy requires an opening system definition.
<zeropoint>right, I'd like for there to be a way to deploy home configurations from the coordinating machine, but afaict that doesn't appear to exist
<Kolev>I can't get Tor to work. System declaration: <https://codeberg.org/csh/dotfiles/src/branch/main/guix/hosts/bender.scm>. torsocks error: `Resolving example.com (example.com)... 1688266966 PERROR torsocks[5064]: socks5 libc connect: Connection refused (in socks5_connect() at socks5.c:202)`
<sughosha>Hi! Would it be possible for someone to merge this patch? https://issues.guix.gnu.org/63254#18
<Irvise>Hi! One question. GCC-Ada (GNAT) is not in Guix yet. And there seems to be no open issue for it https://issues.guix.gnu.org/search?query=ada+is%3Aopen
<Irvise>I am aware of its bootstrapping issues, it was never publicly bootstrapped. I suppose that is why it is still not in Guix. However, some users have approached me as they would like to have Ada support within Guix. The main talking point is that coreboot/libreboot requires Ada for some initialization procedures.
<Irvise>I wanted to ask first here, whether it would be okay to have a binary seed. Afaik, it should be fine if no other alternative is available. I think OCaml, Haskell and a few others used to require an external binary.
<Irvise>The hope/goal would be to create an Ada bootstrap compiler (talks are under way). But that will take several years.
<Irvise>So, the question would be "would it be fine for me to propose a patch to add GCC-Ada from an external binary and that way kickstart the packaging of the Ada ecosystem?"
<Irvise>(The ML thread is quite old at this point https://lists.gnu.org/archive/html/guix-devel/2017-01/msg01568.html)
<ngz>sneek: later tell cbaines I learned the hard way that you cannot do "incremental fixes" with branches; each time you push a fix, the branch has to start all over again. I naively thought the process would just catch up and just rebuild affected packages.
<sneek>Okay.
<mirai>Irvise: I'd take this to the guix-devel list (or resurrect that thread you've linked)
<mirai>lest it get drowned out among the IRC messages
<efraim>if I want to use the least-authority-wrapper and still expose /dev/net/tun, what should I expose?
<cbaines>morning o/
<sneek>Welcome back cbaines, you have 1 message!
<sneek>cbaines, ngz says: I learned the hard way that you cannot do "incremental fixes" with branches; each time you push a fix, the branch has to start all over again. I naively thought the process would just catch up and just rebuild affected packages.
<cbaines>ngz, I think you can do incremental fixes, I've been doing that with ruby-team. Although it takes the data service quite a lot of time to process each revision, which is maybe what you're talking about
<ngz>cbaines: In my case, this is a whole day between two changes (at the moment the branch rebuilds ganeti tests). Incremental fixes are probably not optimal. I'd rather wait for a complete build, fix all that I can, and start over again.
<Irvise>@mirai thanks, will do.
<ngz>cbaines: This might be troublesome under certain circumstances though. Let's imagine a large package that I cannot build locally. Let's also imagine it requires a dozen of changes to work (I'm looking at you mame). It will take two weeks just to make it build, blocking other branches during that time.
<cbaines>ngz, I think the data service can be sped up by improving the software and throwing more hardware at the problem, which will reduce the cycle time. Also, we now have a process to change the order in which we merge branches, so hopefully we can avoid blocking each other
<geri>why does system reconfigure make most files (system's profile, bashrc, localtime, /var/run/libvirt/*, etc) only have permissions for root user?
<ngz>cbaines: Of course, this will only become better ;)
<geri-->#guix
<xelxebar>Eek -- guix pull: error: Git error: failed to connect to gitlab.inria.fr: Connection refused
<xelxebar>Server is pingable, but services seem down.
<minima>hi, "guix shell --container --preserve='^DISPLAY$' ..." doesn't seem to be working on my system; it fails with "Display :0 unavailable" (:0 is my actual display, so the var seems to be preserved correctly)
<minima>anyone knows what could be the problem? maybe a too conservative xorg setting?
<efraim>xelxebar: I hear there's maintenance ongoing there, unclear when it'll be finished
<bjc>minima: you need to share /tmp/.X11-unix, as well
<minima>oh, interesting, thanks bjc!
<minima>bjc: still not allowed to connect, i'm told "Authorization required, but no authorization protocol specified"
<bjc>you might need to expose ~/.Xauthority as well
<bjc>or you can install xauth/xhost to set up authentication between the container and host, if you don't want to expose that
<gry>hi, is there a "how do i package my new software for guix" guide please?
<daviwil>gry: Check out the cookbook -- https://guix.gnu.org/en/cookbook/en/guix-cookbook.html#Packaging
<nckx>gry: There's https://guix.gnu.org/cookbook/en/html_node/Packaging-Tutorial.html . I haven't followed it ☺
<nckx>(Those are different links to the same thing.)
<minima>thanks bjc!
<daviwil>Hey folks, I'm using `run-with-store` to script the build of a gexp to test the output. Every time I run my script, it appears to be pulling and building the latest `guix`. Is there any way to avoid that? Perhaps I'm doing something wrong?
<bjc>‘run-with-store’ by itself shouldn't do that, so it's probably something in the gexp you're building, somehow
<daviwil>OK, it's possible that's the case, I'm building an altered version of the `installer-program` gexp
<daviwil>I'll keep digging
<daviwil>Might be the use of `(current-guix)` in the module list
<panosalevro>is there a way I can make my home config.scm modular? e.g. only install a certain group of defined packages or exclude others. would be helpful for using one config for different machines without maintaining several configs
<janneke_>panosalevro: i'm doing this: https://dezyne.org/janneke/home.scm
<panosalevro>janneke: im not sure I understand how it's modular, can you give an example on how you invoke it?
<daviwil>Check the nested `cond` statements inside of the package list
<daviwil>s/statements/expressions/
<daviwil>Basically it's splicing additional packages into the list depending on which machine is running the configuration
<panosalevro>oh, I get it now. interesting, even though it's not what I had in mind
<daviwil>Yeah, that's not the way that I do it. I have separate configuration files per machine with a shared config module that has common home services that get pulled in
<panosalevro>that's exactly what I had in mind. could you share the link?
<daviwil> https://codeberg.org/daviwil/dotfiles/src/branch/guix-home/daviwil/systems
<daviwil>common.scm contains the common bits, files like acidburn.scm are system-specific
<daviwil>The trick here is that you need to add your dotfiles path as a module path in Guix when running guix home/system
<daviwil>In my case, `guix home -L ~/.dotfiles reconfigure ~/.dotfiles/daviwil/systems/acidburn.scm`
<panosalevro>why do you need to add the dotfiles path?
<daviwil>Because my configuration files are Guile modules. This makes it easier to import other modules like common.scm
<panosalevro>right. my dots are not written in Guile (yet)
<panosalevro>the approach I was thinking of is a bit simpler I think. have a common.scm where I defined groups of packages and create separate config.scm for each machine, appending the groups of packages I want to each machine
<panosalevro>would that work?
<nckx>-L ~/.dotfiles doesn't mean *all* your dotfiles are Scheme, just that (use-modules (panosalevro foo)) will find ~/.dotfiles/panosalevro/foo.scm.
<nckx>You could also try something like (add-to-load-path (dirname (current-filename))) if the constant adding of -L bugs you.
<panosalevro>nckx: I see, thanks
<janneke>trying to build an installer from a custom branch in a VM, I get
<janneke>Git error: cannot locate remote-tracking branch 'origin/keyring'
<janneke>ACTION already tried: git branch -f keyring origin/keyring
<janneke_>hmm: error: cannot run gpg: No such file or directory
<janneke>no, that's not it...sigh
<NaN38>Hello!
<NaN38>I have installed the python package and tried to import tkinter and got the error "ModuleNotFoundError: No module named '_tkinter'".
<pjals>nckx: the addition of (god (knows (how (many (dirname (current-filename))))) is quite clumsy for each file and generally not the Scheme Certified™ way of doing it. e.g. you wouldnt make a program that is used in production which does that
<pjals>also, too many parens to remember!
<NaN38>I couldn't find any dedicated python-tkinter (or python-tk) package in the reposiotry. Probabley it is intended to be included in the main python package.
<bjc>imo, guix should be able to take a directory, in addition to a file name, and do all the load path magic automatically. you'd also be able to use that to store the entire configuration, instead of just ‘configuration.scm’
<bjc>i don't really get the fetish for single huge files
<nckx>Joke's on you. Scheme isn't used in production.
<nckx>Mind you, the enterprise-ready (add-to-load-path (dirname (current-filename))) doesn't even work here. Turns every error into an inscrutable ‘Wrong type argument in position 1 (expecting string): #f’. I have to use "/etc/guix" explicitly.
<nckx>NaN38: I see there's a python:tk output.
<nckx>ACTION away.
<futurile>NaN38: I think you want python:tk - but haven't messed with it mysefl
<NaN38>nckx: What should "there's a python:tk output" means? I have just started to learn guix.
<futurile>NaN38: a package can have more than one output - for example one output might be a library, and the other a binary - it's relatively unusual. If you do `guix search python` it shows you that the Python package has `idle`, `tk` and `out` (out is the default). If you want to install the tk part of the package you do `guix install python:tk`.
<HiltonChain[m]> <https://guix.gnu.org/manual/devel/en/html_node/Packages-with-Multiple-Outputs.html>
<NaN38>futurile: Thanks for the explanation. I have now installed python:tk, but still getting the same error if I try to import tkinter. Are any further steps necessary to get it working?
<HiltonChain[m]>Is python installed as well?
<NaN38>Yes!
<HiltonChain[m]>I don't have a problem with "guix shell python python:tk -- python3 -c 'import tkinter' "
<HiltonChain[m]>Is GUIX_PYTHONPATH the environment variable defined?
<NaN38>$ python3 -c 'import tkinter'
<NaN38>Traceback (most recent call last):
<NaN38>  File "<string>", line 1, in <module>
<NaN38>  File "/gnu/store/dy3xh053ahkhrp2jamggq8cpsyvp8mg0-python-3.10.7/lib/python3.10/tkinter/__init__.py", line 37, in <module>
<NaN38>    import _tkinter # If this fails your Python may not be configured for Tk
<NaN38>ModuleNotFoundError: No module named '_tkinter'
<NaN38>GUIX_PYTHONPATH is not defined.
<NaN38>Should I set it?
<HiltonChain[m]>You might relogin
<HiltonChain[m]>or do a "bash --login"
<HiltonChain[m]>and see
<NaN38>That's it!
<NaN38>It works now:-)
<NaN38>Thanks!
<geri>did anyone have the issue of sound not working in libvirt/qemu user session machines by default?
<panosalevro>ACTION managed to create a modular home config.scm
<nckx>🎉
<nckx>Your practices. They're so best.
<hwpplayer1>Does Guix have an organization scheme for it's own development like teams ?
<pjals>you mean like legal stuff?
<hwpplayer1>Nope community organization model
<pjals>what
<hwpplayer1>but it is related with legal also
<hwpplayer1>There should be teams for grouping members I mean
<hwpplayer1>Like web developers infrastructure team etc
<jakiki6>What's the current status of adding kde plasma? I saw that most packages are already there including plasma-desktop.
<hwpplayer1>pjals: Did you understand what I mean ?
<bjc>isn't plasma-desktop what most people mean by “kde plasma”?
<jakiki6>yeah but there is no associated desktop service
<bjc>so you can start it from gdm or sddm or whatever?
<bjc>that's probably deserving of a bug report
<jakiki6>I mean it is mentioned in the handbook that kde is still missing but I don't see why it shouldn't work if the packages are there
<bjc>that may be outdated. kde got pulled in some months ago, but was absent for quite a long time before that
<jakiki6>I'll try to start kde by hand in a vm
<atka>hello guix
<atka>I'm trying to set my keymap on wayland (dwl-guile) and having issues. I think I'm supposed to use setxkbmap however it returns "cannot find display".
<atka>anyone else use the dwl-guile home service?
<spacecadet[m]>hwpplayer1: I've heard tell of etc/teams.scm in the guix source tree, but I don't know how to use it. Hope that points you in the right direction at least.
<hwpplayer1>spacecadet[m]: yes
<hwpplayer1>I don't have a GNU Guix system now but I'll keep that in my mind
<hwpplayer1>could you please copy paste it to termbin or somewhere else spacecadet[m] ?
<spacecadet[m]>I'll do you one better. https://git.savannah.gnu.org/cgit/guix.git/tree/etc/teams.scm.in It's a file in the source tree, not in /etc/ on the os, so you check it out from the git.
<hwpplayer1>Thanks that is better and better spacecadet[m]
<spacecadet[m]>Sure thing
<hwpplayer1>nice design spacecadet[m] Thanks
<hwpplayer1>What a big project !
<nckx>There are also other things like 'the list of sysadmins' in places like https://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/berlin.scm#n29
<nckx>And the maintainers listed at https://guix.gnu.org/en/about/ kinda sorta oversee the whole thing.
<hwpplayer1>Thanks nckx
<nckx>atka: AFAIK the 'x' in setxkbmap is to be taken literally, and it's looking for an X display. I think Wayland compositors are expected to handle layouts themselves (usually through libinput). Sway does so. I don't use dwl, but check its docs first.
<festerdam>I'm getting the error guix pull: error: failed to get list of supplementary groups for 'myuser'. What did I do wrong? I created the guixbuild group, added my user to it and launched the dæmon with --build-users-group. When I do guix pull, it updates the substitutes, but then fails with the error mentioned.
<atka>nckx: I think some compositors choose to use the old x tooling for some of these, dwl-guile uses xkb, xkeyboard-config. I think setxkbmap is supposed to work, looks like might be a bug as another user has an issue open.
<nckx>Ah.
<nckx>Then ignore my nonsense lies.
<atka>nckx: new to me too, just learned aboot it yesterday :)
<nckx>Canadian detected.
<atka>I'm having an issue with hanging on shutdown after a guix system reconfigure. if I've done a system reconfigure while the current system is up, if I shut down at some point in the future it will hang, all I can do at that point is switch ttys
<atka>but I can reboot/shutdown normally if I didn't do a system reconfigure that session
<atka>sits on syslogd exit 15 or something along those lines
<podiki[m]>i've had that problem too, but only when switching login managers
<podiki[m]>you can use the magic sys req keys to manually force a (safe) reboot at least
<atka>I'm not using a login manager, I boot into the tty then start dwl manually
<atka>I wonder what triggers it
<atka>I think it was happening before I even set up a wm on a fresh install
<atka>it's pretty consistent on my end right now, anything I can try to log the behavior?
<podiki[m]>i'm not sure; syslog, the x log, I guess?
<atka>I have had elogind as a system package and a service since initial setup, possible culprit?
<evilsetg[m]>Hi Guix, I want to run the guix installer on my desktop, but when I get into the intrd it stops with the message `uclogic [some numbers] No inputs registered, leaving`.
<evilsetg[m]>I tried to get into the repl by setting `gnu.repl` in the command line. I do get into the guile repl but I get no keyboard input. Do you know anything that I could try?
<nckx>That uclogic message is unlikely to be related to the freeze/failure. The kernel keeps initialising hardware in parallel. Anything more suspicious above it? You could also try booting with ‘quiet’ on the kernel command like (the line beginning with ‘linux’ when you hit ‘e’ on a boot entry in GRUB) to reduce the noise somewhat. Errors should still be printed.
<nckx>You could also try ‘nomodeset’ on that same line if the problem could be graphics drivers/firmware.
<nckx>The missing keyboard issue doesn't ring a bell.
<evilsetg[m]>Thank you. I will try that.
<nckx>Missing/broken graphics could explain both, since the kernel will keep printing things to the screen (including your keyboard input) but has ‘forgot’ how to actually display it.
<evilsetg[m]>You were right, nomodeset fixed it, getting into the installer at least. Keyboard in the initrd repl still does not work though, so I guess that is something different.
<patched[m]>I managed to put myself with one system generation, without nss-certs. Now `guix system reconfigure` yields "SSL certificate is invalid". Can I get myself out of this?