IRC channel logs
2024-11-01.log
back to list of logs
<cow_2001>some of my package definitions cannot be `guix build --check`-ed right away because guix tells me the derivations are not well formed or somesuch. what are the laws of well formed derivations? <cow_2001>i assume it is something to do with the directory structure under #$output? <apteryx>ArneBab: is 'shutdown' some API of libc? I was surprised that reboot is, and that is what Shepherd uses. <apteryx>if it's part of libc, then a few bindings should in Shepherd should be enough. <apteryx>ArneBab: by the way, apologies for not getting back to you on the SRFI-64 doc for Guile; I'll try to update it with Wolf's rewritten implementation (I've been slacking off... packaging... games!) <[>reboot is part of libc? it should be part of libreboot <[>apteryx: shutdown is done via reboot() according to the man page <[> LINUX_REBOOT_CMD_POWER_OFF <[> (RB_POWER_OFF, 0x4321fedc; since Linux 2.1.30). The message "Power down." is printed, the system is stopped, and all power is removed from the system, if possible. If not preceded by a <[> sync(2), data will be lost. <getstate>Trying to review patches, but got skill checked by debbugs. <getstate>Do I have to email (#numbergoeshere)@debbugs.gnu.org? <apteryx>haven't tried it yet, but 'mumi compose' should send an emmail to the currently selected issue ('mumi current #number') <apteryx>it'll make sure to CC all participants for you <apteryx>Otherwise, in your favorite mail client, a wide reply on a thread typically CC's participants of the thread, but this depends on whether everyone used wide replies <apteryx>[: what do you mean 'reboot' part of libreboot? I meant the 'reboot' command. <apteryx>such as 'sudo reboot' to reboot your system. It comes from Shepherd, which is implemented as a binding to something provided by libc. <apteryx>ACTION was able to reboot QEMU and have the guest marionette REPL auto-reconnected <apteryx>now is this really useful, to be seen ;-) <apteryx>if the storage disk attached to QEMU during tests was persistent, it could be used in system tests to verify that some state is persisted and handled correctly across reboot <apteryx>I guess currently it's volatile though, otherwise the disk would have to be copied out of the store and made writable. <[>apteryx: it was a joke (libreboot sounds like it should be the library providing reboot - lib reboot) <getstate>Looks like debbugs replied. I didn't CC: the patches list, already resent once and don't want to add more noise. Would mumi also talk to debuggs and add the review usertag, etc? <vhns>Is it possible to define custom network-links *and* use dhcp on them? <apteryx>getstate: I think 'mumi compose' will open your text editor to type some email text and send that. You could add the "Reviewed-by your-name <your-email>" to this message. <apteryx>(it's a git trailer, to be added to the git commit messages -- some tool handle that automatically such as 'b4 am', although it doesn't look like mumi currently does. <apteryx>interesting, our qemu launching tooling already supports using a writable image that gets copied out of the store to /tmp <apteryx>the logic is in system-qemu-image/shared-store-script <apteryx>rekado: I've implemented a system test that checks if anonip runs fine following a reboot -- and it does. <apteryx>so I guess our woes on berlin is a race with nginx <vhns>Here's a snippet of how I configured a bridge interface on my system: https://paste.debian.net/hidden/22f5d181/ it does work, but all interfaces are "DOWN" on boot. If I manually log in and set the slave interface to "UP", everything works fine. Do I have to set the slave interface as up in the configuration somehow? <getstate>I get `guix system: warning: while talking to shepherd: Connection refused' when trying to check herd status as root? <lh>has anyone else been getting 502 responses from ci over the past couple days? <ulfvonbelow>had a power blink and when the computer came back on grub only starts up in black-and-white without the graphical background, and whenever it tries starting guix is complains about some shim lock symbol not being found <PuercoPop>How do I source the ble.sh from the blesh package in my home-configuration? Does it require a gexp? <mange>I think you can extend the home-shell-profile-configuration (or whichever profile you want) to add (file-append blesh "/share/blesh/ble.sh"). This is a file-like object which can be use with a gexp, but you don't need the reader syntax for this case. <PuercoPop>by not reader syntax you mean that all I need is blesh to be bound to the package? <mange>You'll need to import (guix gexp), too, but you don't need to use #~/#$. <PuercoPop>Does that mean that I've been doing it wrong by adding atuin and direnv directly assuming they will be in path? <mange>In the list that you're using for bash-profile, add (file-append blesh "/share/blesh/ble.sh"). <mange>You're already importing blesh from (gnu packages bash), so that's fine, and you're already importing (guix gexp) so you have file-append in scope. <PuercoPop>Ok, that works in that it copies the contents of ble.sh to my bashrc. But I need to source that file instead <mange>Why do you need to source it instead? <PuercoPop>that is how I've seen it 'installed'. including the contents verbating led to errors when opening a new shell <PuercoPop>Honestly, I don't really like it as it seems to be an editor implemented in bash, but atuin depends on it to install its prompt command hook ina composable manner (for bash at least) <mange>Huh, okay. Well, you could use (mixed-text-file "source-blesh" "source " (file-append blesh "/share/blesh/ble.sh")). <mange>Oh, well, you don't need the file-append, actually. (mixed-text-file "source-blesh" "source " blesh "/share/blesh/ble.sh") will do the same thing. <PuercoPop>mange: Thanks. That worked like a charm. Now atuin actually updates the history without manual intervention. <apteryx>rekado: I've now sent the series as #74151 <apteryx>rekado: I have a test reproducing the race <apteryx>I'm guessing the nginx activation script causes the plain files to be written in place of anonip's named pipes <erin93>Has anyone had any trouble running blender recently? I keep getting a segmentation fault on startup and I'm not sure how to debug <mccd>Heya, is there a name for the xorg development libs? Xresource, XKBlib, Xlib, Xutil <dariqq>Hi apteryx, did you see the thing I sent last week regarding the empty lightdm session list? A workaround seems to be to put the config into /etc and configure lightdm to use a global sysconfdir <dariqq>i think the main issue is that the greeter is unaware of the lightdm conf file (which is just being passed as an argument ot lightdm) <Rutherther>sneek: later tell erin93: I don't know why, but seems blender has same issue as telegram did - since update to glibc 39 there is an issue with jemalloc. Solvable by adding -DWITH_MEM_JEMALLOC=OFF to configure flags of blender https://paste.debian.net/1334182/ <apteryx>dariqq: hadn't seen that yet! it seems promising! <apteryx>so it's a question of lightdm being hard-coded to look for something? <apteryx>it doesn't follow XDG_DATA_DIRS, by chance? If so, we could wrap its binary or set the env in the service <dariqq>apteryx: The greeter just calls to lightdm-gobjects update_sessions which passes NULL as the path for the config file which makes it read from default location, which seems like a bug to me <dariqq>i guess we could patch that to refer to an envvar instead and set that via the service. Not sure what this has to do with XDG_DATA_DIRS? <dariqq>for the sake of consistency i think it is a bit awkward to have the greeter conf in /etc/lightdm/ but not the used lightdm conf itself <itflakes>Is anyone using Guix system on apple silicon based computer? <apteryx>dariqq: has nix worked around that issue themselves? <apteryx>it's a good source of inspiration sometimes <dariqq>apteryx: They seem to use the global sysconfdir (lightdm has -sysconfdir=/etc and i assume they put their config into the right palce, but i find it hard to find things how their equivalent of service-types works) <metsomedog>Hi. I'm trying to recursively replace DEBUGVM with 0 as part of a Guix package definition. Relevant snippet is here: https://paste.debian.net/1334200/ To traverse the subdirectories I tried using '(for-each <some-func> (find-files dir directory-exists? #:directories? #t)) but it raises an exception "Wrong number of arguments to #<procedure directory-exists? (dir)>". Is there some better way to approach this problem? <dariqq>apteryx: Just found it, they seem do the same thing as my workaround: put the config into /etc and configure lightdm to read from there. <apteryx>it'll always be 100% better than being unable to switch sessions ^^' <apteryx>metsomedog: grep the code, yo could create a lambda or use cut (from srfi-26) ot specialize directory-exists? <skrech>hey, somebody using `telegram-desktop` from guix? it works when started from terminal (or from `dex`/`gio` utility by pointing to the .desktop file), but it doesn't when started from gnome desktop menu or `gtk-launch`. I tried on two PCs with openSuse. <metsomedog>Oh I see, PRED arg to FIND-FILES takes 2 arguments <metsomedog>apteryx: Wrapping directory-exists? in a lambda of 2 arguments works, thanks. Seems like I managed to do infinite recursion though, I guess because "." is a directory too <skrech>-- for the telegram-desktop issue, by not starting I mean, it just doesn't do anything, no window is opened, no error is shown, no process is shown in `ps` after starting <apteryx>metsomedog: yep, you'll want to avoid '.' and '..' <apteryx>metsomedog: I suggest grepping the guix source code, you'll find plenty of such usages <metsomedog>apteryx: Oh I see, I misunderstood your original post as "use grep as part of the package code that does the replacement." Thanks I will try to look for similar examples. <rekado>apteryx: Guix complains about anonip-configuration-debug? being undefined when I run "make" <rekado>is commit 49375f83fc53f8286c5127a07d603ef7967c1b1f complete? <apteryx>rekado: ah, I must have overlooked a merge conflict <apteryx>actually, no, I don't see any debug? being added to that commit <metsomedog>Do people use some Emacs packages for completion and warnings as you are developing Guix packages? <apteryx>rekado: I've now pushed the 'services: anonip: Add 'debug?' configuration field.' commit I had on a branch as well <apteryx>metsomedog: I use geiser to try stuff at the REPL <apteryx>for completion I use M-/ and Company <apteryx>I also have ispell configured for checking my comments <apteryx>ws-butler to avoid adding trailing whitespace... well emacs configuration is endless <metsomedog>apteryx: Thanks. Need to look into how to setup Geiser. Currently editing scm files as plaintext with some indentation more or less, so don't catch any errors until "compiling" <apteryx>ah, paredit and electric mode for handling the parens <apteryx>I can't stand editing lisp code without it now <metsomedog>Ah yes and I have automatic parens + highlighting <metsomedog>I'm used to CL which is more interactive in general from my understanding, but making Guix packages caveman style is frustrating <metsomedog> https://paste.debian.net/1334206/ Getting ''`decoding-error' with args `("peek-char" "input decoding error" ...'' in SUBSTITUTE*, which I think is due to file-encoding error of some sort. Any ideas on how to proceed? <metsomedog>(need to go out for a while, will check back later if anyone responded) <metsomedog>I found out that the file causing the error has iso-8859-1 encoding, which seems pretty common. <hapst3r>is anyone here using the emacs-eat package and can confirm that the user variables `eat-shell` and `eat-tramp-shells` are available? <noe`>hapst3r: I can’t see them with 'guix shell emacs-no-x emacs-eat'. <metsomedog>Is there a way to execute grep in a package definition and read the output? <metsomedog>I have looked at invoke (Guix), system/system* (Guile) but it seems they don't return the stdout output <ieure>metsomedog, Are you debugging a build failure? <metsomedog>ieure: I'm trying to make a predicate for find-files that excludes files that don't contain a regex pattern. <ieure>metsomedog, Grep returns a 0 status code if it finds a match, and non-zero if it doesn't. In the latter case, I believe that ends up signaling an error -- you probably want that instead of trying to read the output. <ieure>But if you're hell-bent on using grep(1), the status code is preferred. <metsomedog>I can't substitute* the file because there is an error due to encoding/locale (from my understanding). I tried converting files first with enconv which also fails. Finally I have tested it works with sed, so I will try to use this instead. Very hacky... <metsomedog>ieure: Do you know a function to read an entire file into a string given the path? <ieure>metsomedog, Ran into a similar problem recently, I added a build step that set LANG=C in the build environment. <ieure>Similar approach may work for you. <metsomedog>ieure: Still getting the same decoding-error despite adding a phase which does (setenv "LANG" "en_US.UTF-8") <ulfvonbelow>metsomedog: (call-with-input-file FILE get-string-all) after (use-modules (ice-9 textual-ports)) <metsomedog>I love how the "unbound variable" error doesn't tell you the name of the unbound variable <metsomedog>So weird, getting "Unbound variable: string-match" even though the (ice-9 regex) is included <metsomedog>Ah, you need to do (use-modules regex) in the build phase itself <noe`>Just made a big mess on the bug tracker :/ <ieure>noe`, Sent every patch of a series as one bug per patch? <noe`>Should I close them individually ? <ieure>No, send one email to control@ and close all but the first one (for the cover letter). <noe`>Will do, it’s a new patch version though <[>How can I make a shepherd service that writes 0 to /sys/bus/pci/devices/0000:03:00.0/link/l0s_aspm on boot? <[>I tried (simple-service 'disable-wifi-card-aspm activation-service-type #~(with-output-to-file "/sys/bus/pci/devices/0000:03:00.0/link/l0s_aspm" (lambda () (display "0")))) but it just causes a kernel panic on boot <attila_lendvai>shepherd is not very forgiving when there are errors, hence the kernel panic <ulfvonbelow>also worth noting that activation-time is usually either very early in the boot process (before shepherd has even started), or at reconfigure-time <ulfvonbelow>it's possible that /sys hadn't yet been mounted at that time, which is why it has to be done in shepherd instead <futurile>noe`: wouldn't worry about messing up sending the emails; everyone does it all the time - I'm pretty much guaranteed to do it every time ;-) <acrow>SeaGL is next weekend if anyone hasn't yet booked their plane flights. <acrow> For the purposes of this channel SeaGL => Seattle Guix Linux <fnat>I need to concatenate some local files into a Guix Home configuration file. This is my naive attempt at it https://bpa.st/KHJW2 - it doesn't work, anything immediately obvious that I should fix? <fnat>Also, am I missing a simpler (kind of built-in) way of doing this? <jaft_r>acrow: is there any remote attendance option? With COVID levels rising again and the emergence of a new variant, attending in person, even while masking, is probably broaching too much of a risk. <Rutherther>fnat: you can't make a loop inside of gexp where inside of it you would ungexp variable inside the gexp. ungexping is for getting variables out of the outer scope, the one outside of the gexp <dthompson>acrow: I won't be there this year but just wanted to say it was fun hanging with you and everyone else last year! <fnat>Rutherther: Hm right. I always get lost after the first or second "inception" level! <fnat>dariqq: Thanks! It looks like what I was looking for, I'm going to test/study it, thanks. <viaken>In an oci-container-service-type, how does one specify a requirement of another container? <getstate>Did I sent my patch series cover to the correct address? Is it `guix-patches@debbugs.gnu.org`? <acrow>dthompson: Yep, last year was nice. I regret not getting aboard for the office hours the other day to hear the latest progress with hoot. I'm also looking forward to the day that our ungoogled-chromium version increments to a wasm tail-call capable version. <old>Is it normal for no packages from Racket to be define in Guix ? <old>guile and python both have a {guile,python}-xyz.scm. I would have expected the same from Racket <dthompson>acrow: wow is the guix chromium build that old? oof! <dthompson>acrow: the tl;dr on hoot is that we've got wingo working on a macroexpander so we can have something resembling a true scheme repl in the browser. I've been working on some more minor stuff but haven't had a ton of time to focus on it lately. <jaft_r>acrow: oh, nice; I'm gonna dig furtheer into that. Thanks for pointing it out! <acrow>dthompson: Yeah, I should, at least try, to just build a newer release using the guix magic before pointing that out; but on my hardware that would take days to try out. A scheme repl in the browser would be a joy. No guilting intended; I see you are a busy man. :) Doing good work. BTW, Vote! <vagrantc>acrow: guessing there might be much less guix presence at seagl this year ... we'll just have to guix harder. :)