IRC channel logs

2023-11-15.log

back to list of logs

<Kabouik>In a package definition, is there a way to inherit a package that is only in a private channel (it has its own scm, and is not in a bigger .scm containing multiple packages like compression.scm for instance. How could I use-module on this package.scm so that I can inherit from it?
<Kabouik>I plan on submitting the patches to Guix, but got a couple things to iron out first.
<stellarskylark>Hiya folks! I'm attempting to package a Rust package, wiki-tui. wiki-tui requires rust-syn 1.0.57 exactly, but its dependencies require 1.0.69 or greater, so the build fails. I'm not sure how to resolve this dependency conflict.
<ulfvonbelow>Kabouik: if it's in GUILE_LOAD_PATH, you should be able to use the same #:use-module or use-module form as usual.
<stellarskylark>here's the build log for reference https://paste.debian.net/1298175
<peanuts>"debian Pastezone" https://paste.debian.net/1298175
<ulfvonbelow>if you can't be bothered adding it to GUILE_LOAD_PATH for now, or want to use the value that the last sexp in the file evaluates to, use 'load'
<Kabouik>Hum, it seems GUILE_LOAD_PATH is not even set.
<Kabouik>Can you explain how to use `load`? https://0x0.st/HvuX.txt this is the package definition that tries to inherit nchat. nchat has a package too, in the same private channel, and works. But I'm trying to make a -git version that would be based on master instead of releases, and nchat-git.scm complains about unbound nchat variable.
<Kabouik>Oh but wait I see a wrong character.
<ulfvonbelow>for example, if next to nchat.scm you have some file somepackage.scm that evaluates to a package, you can use (package (inherit (load "./somepackage.scm")) ...)
<Kabouik>I would prefer keeping somepackage.scm (almost) like it should be when submitting the patch. Is that not possible?
<ulfvonbelow>this doesn't involve modifying somepackage.scm at all, assuming it already has as its last expression one that evaluates to the desired package
<KE0VVT>jpoiret: Re <https://issues.guix.gnu.org/56320>, I got it to install! :D But it won't boot. Does anybody know how to boot an encrypted disk from GRUB, manually?
<peanuts>""write_wait_fd: unimplemented" error from 'guix substitute'" https://issues.guix.gnu.org/56320
<KE0VVT>Franciman: ^
<Kolev>I can't mount my encrypted disk in GRUB.
<Kolev> https://share.csh.snikket.chat/upload/rttb8Faxpe753OzdPgT8UGrJ/zb2rhYaNm3U4NSJnFKZtpJPan4GmKREUdHYrMkUz552PcwXMe.jpg
<KE0VVT>Hm. Cannot mount disk in GRUB. Nuking and paving again.
<KE0VVT>Great. Installing the system is hit-or-miss.
<KE0VVT>How do I get `swaylock` to lock my screen? I employed `screen-locker-service-type` but `swaylock` won't let me unlock my screen once it's locked. It says `wrong` no matter what I type.
<ulfvonbelow>random guess, but maybe keyboard layout or caps lock issue?
<KE0VVT>ulfvonbelow: No Caps Lock.
<Kolev>I'd be willing to buy an offline distribution of Guix System.
<KE0VVT>I'm having trouble booting Guix System after installation. I have a Lenovo ThinkCentre. Here is my attempt at fixing the 1962 No Operating System Found error. https://paste.debian.net/1298188/
<peanuts>"debian Pastezone" https://paste.debian.net/1298188
<jpoiret>Kolev: are you using LUKS2?
<efraim>podiki: I think I have a fix for ghc-basement on i686-linux. Instead of pushing it to master should I just push it to mesa-updates after testing it? ~1400 rebuilds on x86_64 and i686, but it should get us pandoc back on i686
<KE0VVT>jpoiret: Submitted an email to help-guix about it. I used the installer wizard.
<efraim>podiki: looks like there's more packages to fix after :/
<Kabouik>KE0VVT I got the same issue with Swaylock. It used to work fine, then wouldn't lock anymore unless I ran `chmod -s (which swaylock)`, and now it locks but won't recognize my password.
<KE0VVT>Kabouik: Swaylock locks my screen but won't let me unlock it.
<efraim>Kabouik, KE0VVT: Here's how I have my swaylock configured: https://git.sr.ht/~efraim/guix-config/tree/master/item/3900XT.scm#L103-110
<peanuts>"~efraim/guix-config: 3900XT.scm - sourcehut git" https://git.sr.ht/~efraim/guix-config/tree/master/item/3900XT.scm#L103-110
<jpoiret>Kabouik: check out the documentation for screen-locker-service-type https://guix.gnu.org/manual/devel/en/html_node/X-Window.html
<peanuts>"X Window (GNU Guix Reference Manual)" https://guix.gnu.org/manual/devel/en/html_node/X-Window.html
<Kabouik>My config is fine I believe efraim, I didn't change it and it used to work nicely. It's just that after some update it would complain about requiring chmod -s or wouldn't lock at all, and when I run that, it locks but won't recognize the password. I'll check the link jpoiret, thanks!
<Kabouik>I'm on Wayland though.
<KE0VVT>efraim: It works! Thank you! :D
<efraim>:)
<civodul>hey! what’s up with debbugs.gnu.org? down?
<Kabouik>efraim: I failed to see it was your system config and not your swaylock config/command in Sway config, sorry. Will try that.
<efraim>:)
<efraim>I think I may have built a ghc cross compiler
<cbaines>hmm, the build coordinator on bayfront has a thread that seems to have been stuck in wait-condition-variable for over three hours now :(
<cbaines>I can see through strace -p 13815 that: futex(0x7f52a1495af4, FUTEX_WAIT_BITSET_PRIVATE|FUTEX_CLOCK_REALTIME, 0, {tv_sec=1700032632, tv_nsec=0}, FUTEX_BITSET_MATCH_ANY) = -1 ETIMEDOUT (Connection timed out)
<Kabouik>Are these 3.72 GiB safe to use for extending my Guix partition, or are they left unallocated for a reason (like extending the EFI partition)? https://0x0.st/HvQc.jpg
<TristanCottam>Hi everyone! I'm trying to package minetest-server for Guix, by modifying the existing minetest package. How can I determine which inputs are still relevant?
<efraim>I'm having a hard time building curl on mesa-updates for aarch64-linux
<efraim>... and I see it built fine on bayfront, need to get it built on berlin
<Kabouik>ulfvonbelow: good news, I was able to make a package definition for nchat that is not based on releases but on git master (and doesn't require a hash). It's not for the main Guix channel of course, but will be handy in my private channel: https://git.sr.ht/~mlaparie/guix-private-channel/tree/master/item/nchat-master.scm
<peanuts>"~mlaparie/guix-private-channel: nchat-master.scm - sourcehut git" https://git.sr.ht/~mlaparie/guix-private-channel/tree/master/item/nchat-master.scm
<Kabouik>Somehow I believe the CC and CXX envv variables are not taken into account when building because it still seems to build with gcc, that is something I'll need to solve before submitting the main nchat.scm as a patch to Guix.
<efraim>TIL you can use pandoc to read websites: pandoc -f html -t markdown https://guix.gnu.org
<peanuts>"GNU Guix transactional package manager and distribution ??? GNU??Guix" https://guix.gnu.org
<podiki>efraim: hi! Yes please do. I'm away from a guix computer during the day today but I'll look this evening for what I can fix
<podiki>efraim: I had a weird failure for skia that only built on bordeaux, seems some hardware dependency? I had to disable a test. So I saw unexpected results like that too
<efraim>it could be an older kernel version
<efraim>either way we should probably disable the test so its easier to build on more machines
<efraim>I ran into it on 10.0.0.8 and 10.0.0.9, even with 1 core
<podiki>Yeah if you need to disable a test for a certain arch at least that shouldn't rebuild the others
<podiki>I did enable parallel tests which is much faster but maybe that is a problem? (For curl I mean)
<efraim>interesting, it's test 1474, same one we skip on the hurd
<efraim>I'll skip it on aarch64
<efraim>parallel tests shouldn't be a problem if its only using 1 core, I really bet its a kernel config something
<podiki>That was the new skip? It had a different syntax (run but don't use maybe?) but maybe should have been added to the main test skip file
<efraim>it's not listed with the other skipped tests but in the check phase directly
<podiki>Yeah. I looked up the tilde which has some meaning and wasn't clear to me if it would do the same thing in the skip file
<podiki>I wasn't sure and didn't want to break the skip so kept it there
<podiki>Anyway, maybe just note a todo that we can probably simplify and skip it everywhere? Or maybe won't be needed next time
<efraim>ah, it was skipped only on hurd, then skipped everywhere after ungrafting, and then re-skipped only on hurd with the parallel tests
<efraim>I can see if the test fails on armhf. If it fails there we can just skip it everywhere, x86_64 and i686 will recover quickly
<efraim>huh, it looks like all the skipped tests are because of the hurd
<podiki>Thanks
<efraim>wait, that was clear from the code. nevermind.
<efraim>podiki: no problem :)
<podiki>I was worried I was going to mess that up and with getting parallel tests, but seems we had other problems :)
<podiki>I think the ~was maybe not fully intentional but you can check with janneke
<efraim>it's probably a 'not' to negate that test
<efraim>curl is fine on powerpc64le. I still need to check armhf, riscv64 and powerpc
<efraim>curl is building now on berlin for armhf
<efraim>wait, wrong window again :/
<podiki>Thanks again! I'm off for now but feel free to leave any messages for things you want my to check on later or what needs attention
<efraim>sounds good
<ieugen>anyone know where I can get guix system image? This does link is broken for me https://ftpmirror.gnu.org/gnu/guix/guix-system-vm-image-1.4.0.x86_64-linux.qcow2
<ieugen>I am trying to update clojure-tools and it fails from guix running on debian
<ieugen>will try to do that from guix system, maybe it will work
<vivien>Woops I think I destroyed my system
<vivien>I’ll try rebooting into the previous generation, wish me luck!
<Kolev>efraim, I left my screen locked overnight. Swaylock turned red and unresponsive again.
<ekaitz>hi, what's the easiest way to copy all files that follow an specific pattern?
<ekaitz>i'm too lazy to `copy-file` one by one
<efraim>ekaitz: I guess you could use for-each with find-files
<ekaitz>efraim: or even lazier: (invoke "cp" "*.h" "include/") ?
<efraim>install-file would probably be better, then you don't have to specify the name twice
<ekaitz>efraim: ok thanks!
<mirai>ekaitz: copy-build-system?
<ekaitz>mirai: it was kind of part of a broken build system so no, but thanks! i almost have it
<ekaitz>finally i decided to patch the broken CMakeLists.txt file and make it install properly
<phf>Hello #guix! I recently emailed an issue to https://issues.guix.gnu.org/issue/66801, but it hasn't appeared on the tracker even after a few hours. Could anyone inform me about the typical delay between sending an email and its corresponding display on the issue tracker? Thank you!
<peanuts>"[PATCH] mix-build-system: draft 1" https://issues.guix.gnu.org/issue/66801
<mirai>I've mixed build-systems in the past (xdgmime or shared-mime-info in gnome-team)
<mirai>neat
<mirai>see if you can upstream that as well
<ieugen>anyone getting this error while ./bootstrap ?
<ieugen>Makefile.am: error: 'version-es.texi', included in 'doc/guix.ru.texi', also included in 'doc/guix.es.texi'
<civodul>phf: hi! apparently debbugs.gnu.org is currently down
<phf>civodul: OK, that is why. Thanks!
<civodul>found this: https://hostux.social/@fsfstatus/111415210245447883
<peanuts>"FSF Out of Band Updates: "debbugs.gnu.org, download0.savannah.gnu.org, ema?" - Mastodon Hostux" https://hostux.social/@fsfstatus/111415210245447883
<ieugen>> Makefile.am: error: 'version-es.texi', included in 'doc/guix.ru.texi', also included in 'doc/guix.es.texi'
<ieugen>removing the docs.ru.* and docs.zh.* seems to make things work
<ekaitz>by default where should application associated data be installed? share?
<ekaitz>can anyone point me to an example?
<civodul>ekaitz: by convention it goes to $prefix/share indeed; the convention is documented at https://www.gnu.org/prep/standards/html_node/Directory-Variables.html
<peanuts>"Directory Variables (GNU Coding Standards)" https://www.gnu.org/prep/standards/html_node/Directory-Variables.html
<ekaitz>civodul: thanks
<civodul>it’s ‘datadir’
<efraim>note to myself and anyone else looking at adding cross-compilation support: cmake-build-system pretty much has everything set correctly
<ekaitz>efraim: (y)
<efraim>I suppose if I want to include a package in a manifest that is specifically cross-compiled I'd need to set the #:system and the #:target flags
<efraim>ACTION will get git-annex on aarch64 one of these days
<civodul>uh i’m hitting the dreaded “Could not prepare Boot variable: No space left on device” on AArch64
<mirai>ekaitz: <https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html>
<peanuts>"GNUInstallDirs CMake 3.28.0-rc5 Documentation" https://cmake.org/cmake/help/latest/module/GNUInstallDirs.html
<civodul>i always find myself feeding that into a search engine
<ekaitz>mirai: thanks! i was doing it kind of by hand... CMAKE_INSTALL_PREFIX/...
<ekaitz>but that's better
<mirai>civodul: I've just finished reading the cover of #54997, funnily I was thinking on something similar wrt '… basis of a new package transformation option.'
<peanuts>"[PATCH 00/12] Add "least authority" program wrapper" https://issues.guix.gnu.org/54997
<mirai>the problem with using 'least-authority-wrapper' behind the scenes of the service is that not only it couldn't be opted out, it wouldn't play well with things like symlinks
<mirai>I was thinking that the better way to go on using it would be via the 'package' field of a service, where we would wrap the original package object with the least-authority-wrapper to provide fine-grained controls
<mirai>perhaps this is already in the motions? :)
<civodul>mirai: heh, fun!
<civodul>i wanted to resume that line of work, haven’t gotten around to doing it yet
<civodul>for me the idea was to have good defaults in the transformation option
<civodul>similar to what ‘guix run’ did (something shared on guix-devel or help-guix a while back)
<civodul>like, if the thing depends on libx11, then you can enable X11-related settings
<civodul>and then, when that’s not enough, we’d add package properties to specify things similar to what firejail does
<civodul>does that make sense?
<efraim>I want to be able to access package properties from within the package arguments
<efraim>I also have plans for the package field in u-boot-bootloader to make it work with grub
<mirai>interesting
<civodul>efraim: you can always do (package-properties this-package) from the arguments
<civodul>ACTION finds itself fiddling with the OverDrive for the second time in one month :-/
<efraim>I think I wanted it inside a package transformation while working on tuning, to use one of the fields, but it's been a while so I don't remember as well as I should
<phf>That's not a thing right? (cut list "x" (string-append <> <>)) <=> (lambda (y) (list "x" (string-append y y)))
<mirai>phf: that won't work
<phf>mirai: Indeed. It would have been surprising though.
<cddry>hi, i am getting an error launching guix shell
<cddry>build of /gnu/store/bfirgq65ndhf63nn4q6vlkbha9zd931q-openssl-1.1.1l.drv failed
<civodul>cddry: hi! this .drv builds fine for me; did you disable substitutes?
<cddry>I am very new to guix, I just installed it, and trying to launch a dev environment from a repo.
<cddry>so I am not sure if I disabled it somehow, can you elaborate a little
<civodul>sure
<civodul>if you installed 1.4.0 with the installation script, it should have enabled “substitutes” (pre-built binaries)
<civodul>and then you should have gotten a pre-built binary for this specific variant of OpenSSL
<civodul>so i wonder why this was not the case
<civodul>could you try: guix build /gnu/store/bfirgq65ndhf63nn4q6vlkbha9zd931q-openssl-1.1.1l.drv --dry-run?
<cddry> substitute: guix substitute: warning: ACL for archive imports seems to be uninitialized, substitutes may be unavailable
<cddry>substitute: updating substitutes from 'https://ci.guix.gnu.org'... 100.0%
<cddry>substitute: updating substitutes from 'https://bordeaux.guix.gnu.org'... 100.0%
<cddry>The following derivation would be built:
<cddry> /gnu/store/bfirgq65ndhf63nn4q6vlkbha9zd931q-openssl-1.1.1l.drv
<peanuts>"Cuirass" https://ci.guix.gnu.org
<peanuts>"bordeaux.guix.gnu.org Build farm" https://bordeaux.guix.gnu.org
<cddry>this is what i get
<civodul>cddry: oh i see: the “substitutes may be unavailable” bit above is what matters
<roptat>hi guix!
<civodul>you’ll have to first authorize them
<civodul>hey roptat!
<civodul>cddry: check out this page: https://guix.gnu.org/manual/en/html_node/Substitute-Server-Authorization.html#Substitute-Server-Authorization
<peanuts>"Substitute Server Authorization (GNU Guix Reference Manual)" https://guix.gnu.org/manual/en/html_node/Substitute-Server-Authorization.html#Substitute-Server-Authorization
<roptat>still trying to import android 14's adb...
<civodul>heroic!
<roptat>I managed to import it once, but that needed some changes in the importer, which also broke the build system, and then I fixed the build system but had to add more stuff, which broke the importer again ^^'
<cddry>ohh thanks you saved me, it's doing the right thing now
<Kabouik>I cloned my 1TB SSD onto my 2TB SSD with dd and the 2TB one booted fine, then I resized the btrfs partition on it to use the extra space. Everything worked except I allocated 3.72 GiB of unallocated space between the EFI partition and the Guix partition. I think I shouldn't have, because then on the next guix system reconfigure, it complained about now having any free space for boot. Therefore, I redid the whole dd cloning and hoped to restart from
<Kabouik>there without such mistake, but now my BIOS doesn't even see a bootable partition on the 2TB SSD. Any ideas?
<roptat>fixed the importer again, but the build system is broken again ^^'
<Kabouik>This is the 2TB drive after the dd cloning: https://0x0.st/Hvjq.png I can't figure out why it won't boot on any computer (tried two, including the one where the original drive was) if it did in a previous attempt.
<Kabouik>Also, the original drive no longer boots either, I'm clueless.
<roptat>and fixed, with a build success. hopefully, it's not too hard to fix the rest :)
<Kabouik>This is the content of /dev/sdb1 (the EFI partition of the 2TB drive, currently plugged in USB): https://0x0.st/Hvja.txt
<Kabouik>Going through this, hopefully there's a fix to that situation: https://guix.gnu.org/manual/devel/en/html_node/Chrooting-into-an-existing-system.html
<peanuts>"Chrooting into an existing system (GNU Guix Reference Manual)" https://guix.gnu.org/manual/devel/en/html_node/Chrooting-into-an-existing-system.html
<pastor>Hello. I'm trying shepherd and according to the manual I should be using `(perform-service-action 'shepherd 'daemonize)`. If I do I get this error:
<pastor>`(goops-error #f "No applicable method for ~S in call ~S" (#<<generic> service-actions (1)> (service-actions shepherd)) ())`
<pastor>This is the only line I have on the config.
<pastor>Well, also: `(use-modules (shepherd service))`
<pastor>If I use `(action 'shepherd 'daemonize)` I get the deprecation warning. Is it a bug?
<jackhill>what's up with https://data.qa.guix.gnu.org/gnu/store/ka66rfc1i4qjbvb3y5v5i86fsnz65y8i-pdfarranger-1.10.1.drv ? Clicking through, it looks like the source can't be build, but I don't know why. It built locally. https://data.qa.guix.gnu.org/build-server/2/build?build_server_build_id=f1136eac-5d66-457f-b173-4c04224650ae
<peanuts>"Guix Data Service" https://data.qa.guix.gnu.org/gnu/store/ka66rfc1i4qjbvb3y5v5i86fsnz65y8i-pdfarranger-1.10.1.drv
<peanuts>"Build Guix Data Service" https://data.qa.guix.gnu.org/build-server/2/build?build_server_build_id=f1136eac-5d66-457f-b173-4c04224650ae
<roptat>ah, I got one module that's referencing a module from a package I didn't even import... I guess I'll need to keep track of that too
<Kabouik>So I am trying this (https://guix.gnu.org/manual/devel/en/html_node/Chrooting-into-an-existing-system.html) and am at the latest step (guix system reconfigure), only added a step because my existing install is encrypted and needed a luksOpen, but guix system reconfigure fails to fetch the internet. I can ping 8.8.8.8, but not domains, so I assume it's a dns issue with the Guix installer. How can I fix it?
<peanuts>"Chrooting into an existing system (GNU Guix Reference Manual)" https://guix.gnu.org/manual/devel/en/html_node/Chrooting-into-an-existing-system.html
<Kabouik>Apparently I could just edit /etc/resolv.conf. That is unusual for Guix but hey!
<elevenkb>Hello there people, I'm having trouble with SSL stuff during installation, even `guix pull` doesn't work b.c. of "invalid SSL certificates."
<elevenkb>nvm, I fixed it. My date was far behind now, perhaps my hardware clock was broken. Good to remember those 'ol arch linux installation steps.
<Kolev>Hi Guix.
<sarg>hi guix maintainers, could you please merge openvpn verison bump [https://issues.guix.gnu.org/67176]? It fixes a couple CVEs
<peanuts>"[PATCH] gnu: openvpn: Update to 2.6.7." https://issues.guix.gnu.org/67176
<mhcat>hey everyone - I'm setting up guix on a debian system, and (tho I'm pretty sure I've been thru this before) I'm a bit confused by the instructions at https://guix.gnu.org/manual/en/html_node/Getting-Started.html
<peanuts>"Getting Started (GNU Guix Reference Manual)" https://guix.gnu.org/manual/en/html_node/Getting-Started.html
<mhcat>they include both the ~/.guix-profile and ~/.config/guix/current profiles in that page, and suggest pasting both setup bits into your shell init
<mhcat>is that right?
<ekaitz>mirai: any experience with CMAKE_INSTALL_DATADIR?
<ekaitz>looks like it's expanding to "haha screw you" aka ""
<efraim>ekaitz: git grep shows 3 instances of CMAKE_INSTALL_DATADIR
<ekaitz>lets see
<ekaitz>oh we don't set it by default in guix?
<ekaitz>looks like we do... hmmmmmmm
<efraim>doesn't look like we do
<efraim>we set CMAKE_INSTALL_PREFIX, CMAKE_INSTALL_LIBDIR and that's it for paths in (guix build cmake-build-system)
<ekaitz>meh
<ekaitz>that's sad
<ekaitz>efraim: so what's the way to go here? add that to cmake-build-system by default or set it in the package itself?
<efraim>I'd set it in the package itself like with ceph
<ekaitz>okay great! thanks!
<ekaitz>(I'm making the code itself so I can choose to use other variable, too)
<elevenkb>If I boot off of an installation image, is there any way to make it so that I may offload building to another machine on the same network?
<elevenkb>I'd like that, but methinks that if someone doesn't have the answer after 10 minutes of thought then they should stop thinking about it. I'm building a Guix System on a slow-ish system and have a much more powerful system available here... alternatively I can probably mount /mnt over sshfs... it's a bit weird but should be workable.
<Kolev>MY SYSTEM BOOTS!
<elevenkb>Kolev! Huzzah!
<elevenkb>yay you.
<elevenkb>alternatively I can stop being so impatient, I can still use my more powerful machine so a simple ~guix system init~ command an some time shohuld be enough.
<ieugen>hi, I would like to upgrade clojure-tools to 1.11.1.1413 . I checked the build locally (had to use a VM) and it works
<theesm>elevenkb: I think it'd be possible to define build machines to offload to in /etc/guix/machines.scm even when using an installation image.
<theesm>What I usually do is installing with a super minimal guix config on my less powerful computers & offload the second generation with a more extensive config.
<elevenkb>theesm: 'doh... thanks theesm I can't believe I didn't think of the most obvious thing to try first.
<elevenkb>ieugen: I'm curious about why you needed a VM to build the new definition of clojure-tools?
<ieugen>because guix on debian failed to run the build for clojure - inside guix shell -D guix --pure
<ieugen>*clojure-tools
<elevenkb>ieugen: ah so you tried something like ./pre-inst-env guix build clojure-tools and the build failed?
<ieugen>yes
<elevenkb>ieugen: next time, perhaps try going into a repl and saying something like ,m (gnu packages clojure) and evaluating the new definition there.
<ieugen>I also tried to ./bootstrap but it failed with building guix.ru.texi - I reported this a few hours ago here
<elevenkb>then you can ,use (guix) and you get to build the package with ,build clojure-tools; for example.
<ieugen>not that versed in guile - I hope to find some time to try that
<ieugen>if I have a guide, I can follow
<ieugen>for clojure-tools there are changes to tools-deps as well and a change from tools-deps-alpha -> tools-deps
<elevenkb>if it's just tools-deps that changes then you can just revaluate it first, then your new definition of clojure-tools.
<elevenkb>ieugen: what's your debian version? might want to try to replicate and file a bug.
<ieugen>bookworm - mostly
<ieugen>cc elevenkb
<elevenkb>ok, send me a patch at elevenkb@thunix.net and I'll try my best to replicate it over the next couple of days or so.
<ieugen>elevenkb: should I send a patch? or is this for someone else
<elevenkb>ieugen: sorry for not tagging you; but, yes please send me a patch.
<ieugen>ok, I will try. I think I did this once before
<elevenkb>ieugen: thank you.
<phf>In a function, is it acceptable to have (define xxx yyy) or should it always be replaced by (let ((xxx yyy)) ...)? I've seen G.J.Sussman use the first form but it seems to be a pretty Scheme specific point.
<Kabouik>The Grub rescue guide from the official Guix manual fails for me because it breaks my connection every time I try a guix pull or a guix system reconfigure: https://0x0.st/HveN.jpg (This is a wired connection, it worked before the guix system reconfigure, and now `ip a` says eth0 is down). Any insights?
<ieure>phf, You should let-bind unless you have a specific, compelling, technical reason not to.
<phf>ieure: Ok, thanks.
<ieure>phf, All Lisps strongly bias towards let-binding, not just Scheme. Not a Scheme expert, but in CL/Emacs Lisp/Clojure, the definition forms create their symbols in the package scope (or globally, for elisp) -- which opens you to concurrency bugs and pollution of the package namespace.
<phf>OK!
<Kabouik>Has anyone ever experienced network breakage in a Guix installer, after getting it to work in the first place (both wired and wireless)? This is preventing me from completing the Grube rescue how-to (https://guix.gnu.org/manual/devel/en/html_node/Chrooting-into-an-existing-system.html). It breaks during `guix pull` or `guix system reconfigure`, as if it couldn't handle the load.
<peanuts>"Chrooting into an existing system (GNU Guix Reference Manual)" https://guix.gnu.org/manual/devel/en/html_node/Chrooting-into-an-existing-system.html
<samplet>In Guile, putting a 'define' in a function is like using 'letrec'. If it is more readable, go for it.
<samplet>See “6.10.3 Internal definitions” in the manual.
<samplet>Hyperlink: https://www.gnu.org/software/guile/manual/html_node/Internal-Definitions.html
<peanuts>"Internal Definitions (Guile Reference Manual)" https://www.gnu.org/software/guile/manual/html_node/Internal-Definitions.html
<roptat>successfully built fastboot, but adb is failing. Getting closer though :)
<ieugen>elevenkb: do I need to start the guile repl inside guix shell -D guix --pure ?
<ieugen>the difficult part is to get the file out of the VM
<ieugen>does anyone know if guix system, running in a VM has support for clipboard sharing? In debian I need to install sudo apt install spice-webdavd spice-client-gtk but I can't find them in guix
<dthompson>ieugen: there's a spice service that you need to setup. I don't think I got it working with qemu, though.
<dthompson>spice-vdagent-service-type
<dthompson>I'm not very good with qemu stuff so probably just a "I don't know what I'm doing" problem
<Kabouik>If someone knowladgeable with Grub rescue on an existing install sees my above post, please ping me. I tried all solutions I found and that one seemed to go well until the last step when the guix system reconfigure breaks all my network interfaces and therefore fails. :[
<ieugen>thanks Kabouik . either I get clipboard / file sharing to work or I can build clojure-tools outside the vm so I can sent a patch
<Kabouik>dthompson ^
<phf>samplet: Thx!
<dthompson>anyone know how to debug inetd services? having some weird issues with vnc but having trouble getting any insight into the errors happening on the server
<ieugen>I got a guix repl running and I managed to build clojure-tools. How do I rebuild my changes?
<civodul>dthompson: a shepherd inetd service? what does /var/log/messages say?
<ieugen>,reload (gnu packages clojure) and then build again does not work
<ieugen>(I did change the files in emacs outside guix shell)
<ieugen>cc elevenkb , help if you are still here
<dthompson>civodul: I seem to have locked up shepherd for an unknown reason... waiting on a reboot to inspect logs further
<civodul>ouch
<Kolev>How do I enable mDNS? Where do I put this code? https://guix.gnu.org/manual/en/html_node/Name-Service-Switch.html
<peanuts>"Name Service Switch (GNU Guix Reference Manual)" https://guix.gnu.org/manual/en/html_node/Name-Service-Switch.html
<dthompson>a 'herd start xvnc' was just hanging forever so I did C-c. then even 'herd status' would just hang. ouch indeed.
<civodul>someone reported a bug along these lines some time ago
<dthompson>waiting on linode to rescue me
<civodul>i never encountered it though and never understood how it could happen
<civodul>but apparently… it’s very real
<civodul> https://issues.guix.gnu.org/65419
<peanuts>"[Shepherd] Non-reponding service control fiber" https://issues.guix.gnu.org/65419
<dthompson>I have no idea if I'll be able to reproduce it, but my context was that the xvnc service was disabled after a bad service update (I was experimenting with settings), so I reconfigured, did 'herd enable xvnc' then 'herd start xvnc' and that's when it stopped responding
<Kabouik>What could be the potential causes for Guix commands breaking network interfaces in the tty of Guix installer. Is there some way a high bandwidth could make them crash?
<civodul>dthompson: okay; i’ll look and hopefully it’ll click eventually
<dthompson>civodul: if I can reproduce I'll let you know
<dthompson>but it seems like one of those tricky bugs
<dthompson>Kabouik: I have no idea unfortunately :(
<civodul>dthompson: yep, also let me know if you can grab /var/log/messages
<ieugen>trying to make a patch for clojure-tools. how can I rebuild the version in guix-repl ? tried also ,compile-file gnu/packages/clojure.scm then ,build clojure-tools .
<dthompson>will do, I suspect this is more of a tigervnc issue than a guix/shepherd issue but I'll see what I can dig up
<civodul>Kabouik: that’d be surprising; does /var/log/messages have any clues?
<ieugen>I still get the old package version
<Kabouik>I'll retry a guix system reconfigure to break the interfaces again and look civodul. I was just waiting for some help here because this is like the 8th time I run all the commands in tty for the grub rescue…
<Kabouik>I don't understand how this breaks, I'm wired and the connection works rright now, but then the reconfigure (or pull) fails and the device eth0 is down and doesn't get an ip when I put it back up.
<dthompson>civodul: /var/log/messages tells me that the process for the transient service exited with 1, but I have no other logs explaining why
<Kabouik>I ran `guix system reconfigure` in the chroot at 22:51 civodul: https://0x0.st/Hvev.jpg
<civodul>dthompson: but you said shepherd had become unresponsive, did i get it right?
<Kabouik>So dbus seems to crash
<civodul>Kabouik: yeah, dbus-daemon got signal 9 (SIGKILL)
<civodul>could be OOM maybe?
<dthompson>civodul: that was a separate, strange issue while I was experimenting with some other service configurations. I'm back to my somewhat working config now.
<Kabouik>What is DOM?
<dthompson>basically only the first connection to xvnc works. any subsequent connection fails immediately but I don't have any insight beyond that it exists with status 1.
<Kabouik>OOM sorry. Unlikely, I have 16GB of RAM. But could this happen if my USB thumb is too small, given that I'm chrooting from the Guix installer?
<civodul>so shepherd does its job of spawning the xvnc process, but then xvnc exits?
<civodul>dthompson: ↑
<dthompson>civodul: the transient service started by the main inetd service does, yeah.
<dthompson>basically inetd for xvnc is supposed to enable multiple users to use vnc at the same time
<Kolev>I think I've got all my needs met with Guix System now. No need for foreign distros! 😀
<dthompson>but I can only get one user on. any additional connection fails.
<civodul>weird
<civodul>if you have time, you can “strace -p1 -f -s 500 -o /tmp/log.strace”
<civodul>(sounds scary the first time you do it, and then it’s fine :-))
<dthompson>ohhh, attach to pid and strace it? hadn't thought of that!
<civodul>yes
<dthompson>well... let's seee
<civodul>so you’ll see how the xvnc process is started and perhaps details of what happens before it calls exit_group
<dthompson>I had completely forgotten that you can attach strace to a running process
<dthompson>so thanks
<dthompson>I think I can run with this for a bit, maybe learn something new.
<Kolev>Is it (append-string) that combines several strings into one?
<civodul>neat
<civodul>Kolev: ‘string-append’ concatenates strings
<dthompson>civodul: yesss I can see an error now. thank youuuu
<dthompson>"Server is already active for display 5" - makes sense, since I already connected, but now I'm not sure what the docs mean when they say using inetd allows multiple users at once.
<Kabouik>I can't understand what kills dbus-daemon in the Guix installer :\
<Kolev>Where can I submit package requests?
<civodul>dthompson: could be the xvnc service is bogus?
<dthompson>civodul: could be :)
<dthompson>I think the service needs to somehow pick a new display for each client, but that would require a wrapper or something
<dthompson>this page is helpful. https://tigervnc.org/doc/Xvnc.html
<peanuts>"Xvnc" https://tigervnc.org/doc/Xvnc.html
<dthompson>feeling hopeful that I can patch this
<ieugen>elevenkb: I managed to build the package using "guix repl". but I don't know how to install my version to test
<Kabouik>nckx: would you by any chance have any idea what could kill dbus-daemon in the Guix installer (see above)? I'm sorry to ping you out of nowhere, but as far as I remember you did know stuff about the installer.
<dthompson>civodul: fixed it :)
<Kolev>Does Docker still require root?
<nate1>ieugen: I'm late to your conversation, but if you need to test a custom package you built, does running guix shell with either the -f or -e flag work?
<theesm>what's the general policy on copyright headers in guix? so far I've been adding them with every change I make to a file, but it feels kinda wrong doing so for super minor changes (e.g. diffstat of 1-2loc); is there a treshold when to add them?
<civodul>dthompson: yay!!
<dthompson>I'll send a patch tomorrow, probably. it's a one-liner.
<Kolev>theesm, good question!
<dthompson>the bug was that the service was always specifying a hardcoded display number, which is fine for the non-inetd case, but no good for inetd.
<dthompson>by simply omitting the display argument, xvnc just picks a free one.
<ieugen>elevenkb: I did send the patch, let me know if you received the email
<Kolev>I'm interested in running containers to quickly get Thumbsup and Jellyfin working on Guix. I don't see a docker-service-type or anything.
<dthompson>okay nvm I sent the patch now :)
<Kolev>Hm. Maybe there's no way to run container images on Guix System.
<dthompson>even if there's no service you can still run dockerd manually and run container images
<dthompson>but I just checked and there is a docker service
<Kolev>dthompson, and Podman does not work, right?
<dthompson>I have no idea. never used it.
<kaelyn>Kolev: There's a docker service defined in gnu/services/docker.scm. With the service running, non-root users can create containers as long as the user is a member of the docker group.
<dthompson>^ yeah that
<Kolev>kaelyn, thank you! 😀
<kaelyn>you're welcome! :)