IRC channel logs

2024-02-14.log

back to list of logs

<dissoc>does anyone have a usb tablet working with guix? im a little confused at how to configure it.
<PotentialUser-59>Can I configure a default --max-jobs? Is there an environment variable for it perhaps?
<jaft>Hey, Guix; I have this relatively simple library I'm building. Author uses a really small/simple bash script to build it (which, basically, runs a clang command, generates a static library); the install script, in turn, installs the .a file to "lib" and the header file to "include".
<jaft>As far as I can tell, what's run in the scripts run correctly, the files get installed under /gnu/store correctly, etc. But, when I try to use this package as a dependency for building a different package, ld doesn't seem to be able to find the library to link to it, I think. Is there any obvious reason as to why it wouldn't?
<jaft>I don't really do any C programming so very much out of my depth.
<lilyp>jaft, maybe it uses a subdir of /lib?
<jaft>Nope; directly in /lib (only there file there, too), I'm afraid.
<dissoc`>PotentialUser-59: maybe create an alias? or start guix-daemon with max jobs
<viperML>hello people,
<viperML>is it possible to call meta-commands ( ,build ) within guile instead of the repl?
<lilyp>Nope, guile only understands those in REPL mode
<futurile>jaft: you know about --keep-failed option to guix build - best way to debug what's happening with a build afaik
<jaft>futurile: I do; it was part of where I got my suspicions. Because it's running a bash script, no real errors are getting produced so I went to a failed version and tried running the commands of the script manually.
<jaft>clang is run against a bunch of file (which seems to work fine) before, finally, running clang -o <name of binary> $OBJECTS $LIBS (where $LIBS links to the first package).
<jaft>That gave me an error that ld couldn't find the first package so that's my only hunch as to why the file isn't getting made.
<lilyp>well, do you find the package if looking for it in the inputs?
<jpoiret>viperML: you can reproduce what they do in guile though
<jpoiret>have a look at evaluate/print-with-store in guix/monad-repl.scm
<jaft>lilyp: do you mean in the (second) package? I would expect so (though I didn't check so I'll do that); in the case of trying to run it manually, I just installed the first package when trying to run clang; I see it in the store so I'd expect it's available?
<jpoiret>janneke: sorry for the delay, I'll push to a new branch in a sec
<jpoiret>janneke: i've pushed to core-updates-glibc-2.39
<janneke>jpoiret: thanks!
<lilyp>jaft: I think you're overloading the term "package" here a little – what I'm asking is whether you can find the library that you want to pass to ld
<jpoiret>great, pyconfig.h propagates HAVE_CRYPT_H, which means any program that includes Python.h will think libcrypt is available
<jpoiret>why would you do this
<viperML>jpoiret: thank you, I'll take a look
<allana>rekado: I think that a patch that you helped me push through recently had a problem. I just now sent a new patch that hopefully resolves the issue. bug#69121
<peanuts>"[PATCH] gnu: vpn-slice: Fix substitution paths for "ip" and "iptables"." https://issues.guix.gnu.org/69121
<jaft>lilyp: I think, maybe, I'm just not sure what you mean by find. I can see the files, of the library, in the store (installed); ld (and, by extension, clang) cannot find the library, it seems. Beyond those two cases/ways, I'm not sure how I would find it (or tell if I can find it).
<lilyp>What's the file name (sans store prefix)?
<jaft>"printhex"
<jaft>Oh; wait. Mispoke. "libprinthex".
<lilyp>well, that's the issue.
<lilyp>It ought to be lib/libprinthex.so
<jaft>Oh; sorry; I mistook "sans store prefix" for hash. It's "lib/libprinthex.a" (since it's a static file).
<jaft>With the header file under "include/printhex.h"
<jaft>*library; not file
<ekaitz>hi, i reviewed a patch and now what? https://issues.guix.gnu.org/issue/68742
<peanuts>"[PATCH] gnu: river: add river.desktop on wayland-sessions" https://issues.guix.gnu.org/issue/68742
<ekaitz>those can be found in the issues.guix.gnu.org?
<ekaitz>i guess there's some discoverability there, right?
<graywolf>Assuming upstream program searches path for a binary, what is Guix's expected patch? Search PATH and if not found use the store abs path?
<graywolf>Or skip the PATH search completely?
<jpoiret>graywolf: depends, but most likely skip the PATH search completely
<jpoiret>for some uses searching the PATH is still the right thing to do
<graywolf>right, here it is podman searching for slirp4netns
<graywolf>So I guess I will just skip the path search
<graywolf>thx
<leth>Why do are the services that a services extends from named extensions? shouldn't it be extends rather than extensions? Or am I minsunderstaning how extension works for services?
<cbaines>ekaitz, in case you haven't spotted it, adding the reviewed-looks-good tag pushes issues to the top of this list https://qa.guix.gnu.org/patches
<peanuts>"Patches Guix Quality Assurance" https://qa.guix.gnu.org/patches
<rekado>I have a little container problem. I’m using “guix shell -CN --share=/var/lib/sss/pipes”; inside the container the files of /var/lib/sss/pipes are owned by “nfsnobody” (instead of “root”), which SSS does not like.
<rekado>is there a way to avoid this apparent change of ownership?
<andreas-e>cbaines, ekaitz: This is nice, but "failed to process revision". I will build it once more just to be sure and push it.
<cbaines>andreas-e, sorry, I've already pushed it
<erik>Hi! I've a problem on my config, someone willing to help me?
<graywolf>jpoiret: what about setuid binaries? Should packages always add /run/setuid-programs into the path? Or should that be left to the user?
<graywolf>s/packages/programs/
<graywolf>I cannot use store reference there
<jpoiret>graywolf: ah yes, that's one such corner case
<andreas-e>erikeah: I would just ask away and see whether someone knows the answer :)
<jpoiret>I don't think we have a good solution for this
<graywolf>I take that as that most packages do not care and leave that up to the user to sort out, is that reasonable interpretation?
<rekado>ACTION patches linux-container.scm to include a passwd and group entry for id 0.
<erikeah>SSH_AUTH_SOCK is set without using home ssh-agent service or home gpg-agent service, I would like to disable this behaviour, I have my home configured but without this services... However I suspect this behaviour is intended and I have to disable it?
<erikeah>SSH_AUTH_SOCK environment variable.
<erikeah>My system configuration uses %desktop-services, may this is injecting SSH_AUTH_SOCK envvar?
<andreas-e>erikeah: Too difficult a question for me... But I hope someone else may step in.
<graywolf>erikeah: There are to services that touch that variable, gnu/home/services/ssh.scm and gnu/home/services/gnupg.scm; Maybe you can check guix home extension-graph so see if they are included?
<graywolf>I do not see another way how guix could set it
<andreas-e>It is set in my Guix system not using "guix home".
<graywolf>Interesting, grepping the source gives just those two files (both are home services)...
<graywolf>Well now I am curious :D
<andreas-e>I do not see it in $HOME/.guix-profile/etc/profile either.
<erikeah>I have the same behaviour as andreas-e
<erikeah>Yesterday I spent almost all day on this xd, I didn't find from where it comes
<ekaitz>oh cbaines i didn't see that! thanks!
<graywolf>As a desperate step you could: grep -RF SSH_AUTH_SOCK / 2>/dev/null
<erikeah>The worst is that overrides my home-gpg-agent-service (if I want to use it)
<erikeah>graywolf thanks, I will add it to my bag and I will keep looking
<erikeah>I would like to have a clean solution
<erikeah>ekaitz, thanks for the review of the river.desktop patch! I'm the contributor!
<ekaitz>erikeah: yay!! welcome!
<jpoiret>oh no, transient failures in python-trio
<erikeah>I think I have found something about SSH_AUTH_SOCK with home-ssh-agent-service, I have switched xfce to river wm, I think could be xfce.
<iK0u>Attempting to download the latest install image returns a page with "{"error":"Could not find the requested build product."}"
<iK0u>The same error happens when clicking on the individual images on cuirass
<iK0u>Only the guix binary and pinebook images seem to work
<iK0u>This is also a bug in the latest version of the manual as the link to the installer does not work either
<graywolf>I have a question regarding the substitute* approach. There does not seem to be any way to check if it replaced something. Is that considered an issue? Are some alternative approaches explored?
<graywolf>Why I ask: It can (and will) "succeed" on newer version, just because it does not replace anything.
<rekado>graywolf: it can be an issue and it has been suggested to make it throw an error when no files were modified.
<rekado>but that would cause a world rebuild, and nobody has made a concrete proposal to change this.
<graywolf>Hm, shame
<graywolf>While I get it is handy, the downsides are real
<graywolf>I wonder how many packages would fail to build if the change was made
<graywolf>Or rather, what percentage of substitute* calls does nothing
<jpoiret>graywolf: I'd also like that
<old>rekado: Why would this cause a world rebuild?
<jpoiret>because the definition of substitute* is a dependency of all builders
<jpoiret>(thankfully)
<old>is it a macro or procedure?
<jpoiret>it's a procedure, but even if it was a macro, as long as it's something that's executed on the builder side
<graywolf>How long does world rebuild take for just x64_86 on 32 core 4.5GHz machine? Is that even doable or it would be weeks?
<sham1>I feel that for that kind of a setup, a large limiting factor would be the amount of RAM
<graywolf>128G
<graywolf>I *hope* that would suffice
<jpoiret>graywolf: i'd say something like 2 days for a big chunk of packages
<graywolf>Oh, that is much better then expected. In that case I might try it
<jpoiret>ah, 32 cores is quite a lot, didn't see that
<jpoiret>basically the bootstrap is *very* slow (which is expected), then you have llvm+rust+ghc as big deps
<graywolf>ACTION realizes that it is enough to build packages that call substitute* in the phases
<jpoiret>graywolf: we probably call that very early on in the dep chain so that will still cause a world rebuild
<graywolf>Yeah the point was that many leaves are maybe not necessary to build for what I am interested in
<graywolf>So yeah, technically world rebuild, but for "how many substitute* are NOP" not whole world needs to be actually built
<jpoiret>alright, GNOME built with glibc 2.39 :)
<janneke>\o/
<janneke>ACTION failed again building gcc-11 using offloading
<janneke>the build hangs at
<janneke>echo timestamp > s-fixinc_list
<janneke>and some time later /tmp/guix-build-gcc-11... is just gone
<janneke>ACTION goes to build on the build machine directly again, sigh
<janneke>possibly the connection is flaky, really don't know here
<graywolf>Maybe more of a linux question, but oh well: When packaging a software that has `ulimit -s' call in the makefile, can I just replace it with 8192? I don't really know if we can have different value...
<ieure>graywolf, I'd remove the ulimit call entirely. What a weird thing to have in a build.
<graywolf>ieure: Right, but what value to set? It 1024 (fallback the program uses for unlimited) or 8192 (what I get on my GuixSD machine)?
<ieure>graywolf, Re-read what I said.
<graywolf>But I need *some* number...
<graywolf>Sorry maybe I am just dumb today
<ieure>Why do you need some number?
<graywolf> 129 | #define NS_FN_STACK_SIZE (RLIMIT_STACK_VAL * 1024 / 8)
<graywolf>This fails to compile without a number
<graywolf>Since it expands to (*1024 / 8) which fails to be valid C
<graywolf>(RLIMIT_STACK_VAL is populated from ulimit -s)
<ieure>graywolf, That code is bananas, you should ask upstream what they're trying to do. ulimits are dynamic and can change at any time. It's a very poor idea to encode something like that in the output of a build.
<graywolf>¯\_ (ツ)_/¯
<graywolf>I will make a report
<graywolf>I seemed weird, glad I am not the only one to think so
<ieure>Anyway, I'd still remove the ulimit, but also patch the definition of NS_FN_STACK_SIZE to be a constant.
<graywolf>Ack, thx for consultaton
<graywolf>consultation*
<tex_milan>Hello, how to do this correctly? (simple-service 'qtwayland-vars-service home-environment-variables-service-type `(("QT_PLUGIN_PATH" . (list ,(file-append qtwayland "/lib/qt6/plugins") ,(file-append qtwayland-5 "/lib/qt5/plugins"))))
<tex_milan>For one item it works, but not for two...
<jpoiret>tex_milan: you want to remove list, since you're in a quote already
<jpoiret>also '(xxx . (a b)) is the same as '(xxx a b)
<graywolf>Can guix packages do optional dependencies? I guess not, right?
<jpoiret>so that should be equivalent to `(("QT_PLUGIN_PATH" ,(file-append ...) ,(file-append)))
<jpoiret>graywolf: no
<efraim>do you need (string-append ,(file-append qtwayland...) ":" ,(file-append qtwayland-5...)) instead?
<efraim>or I guess ,(string-append (file-append .......))
<jpoiret>the second will most definitely not work
<jpoiret>file-append doesn't return a string
<tex_milan>removed the list and got missing close paren: (,) error
<jpoiret>looking at the code for home-environment-variables-service-type, you can't give it a list, so you'll need some additional trickery there.
<jpoiret>you probably want `(("QT_PLUGIN_PATH" ,#~(string-append #$(file-append ...) #$(file-append))))
<jpoiret>with an additional ":" in between, forgot it
<tex_milan>`(("QT_PLUGIN_PATH" . ,#~(build-path-augmentation #$file-append qtwayland "/lib/qt6/plugins" #$file-append qtwayland-5 "/lib/qt5/plugins")))
<tex_milan> gives error: #<procedure file-append (base . suffix)>: invalid G-expression input
<tex_milan>build-path-augmentation is function that concats it with :
<efraim>#$(file-append, you're missing the open-parenthesis
<tex_milan>thanks! that fixed it.
<graywolf>So it is my first time trying to package a rust program. It is fun. So many dependencies. 132 dependencies. Awesome.
<efraim>I suggest you work against the rust-team branch if you're packaging stuff in rust
<graywolf>How often is is merged? The rust program is just a dependency of the real thing I am trying to package, so I am curious how long the wait will be (usually) before seeing the rust part on master.
<efraim>I was thinking of getting it merged soon. Historically every 6 months but I'm hoping for every 2 or 3 in the future, so it's about time
<graywolf>Ok, I will try to sent it as a separate thing to rust branch.
<futurile>graywolf: total sympathy for you on the number of crate dependencies - the crate import recursive thing was a total saviour for me personally; also the dependency tree gets quite convoluted - Efraim has some tricks for that
<graywolf>futurile: well at least I will finally give a try to emacs keyboard macros :)
<graywolf>futurile: Just a question, does packaging rust involves usually more then dumping importer to file and making sure it build?
<graywolf>My first attempt at rust, so bit overwhelmed
<jpoiret>graywolf: often that suffices but you'll definitely run into things that require some manual tweaking
<podiki>howdy guix
<podiki>how goes the core-updates?
<graywolf>I am starting to regret I gave a shot to upgrading podman (╥﹏╥)
<jpoiret>podiki: trying to build `guix system vm desktop.tmpl` currently
<jpoiret>gnome builds at least
<jpoiret>it's sitting on core-updates-glibc-2.39 currently, since I was not sure about the switch to the new version
<jpoiret>but I guess it should be fine now
<podiki>wow! nice work
<jpoiret>I'll send a new mail and see what people think
<jpoiret>graywolf: I don't think you chose the easiest first target :)
<podiki>jpoiret: sounds promising to me, thanks for doing some heavy lifting!
<jpoiret>we're not there yet :p
<jpoiret>once the vm works, I'll try on bare metal and see where we end up from there
<graywolf>The current latest podman is (mostly) fine (and the patch sent), but the next major version will remove support form cni-plugins, so there starts my rust adventure :/
<graywolf>Oh, btw anyone knows when we get emacs 29.2? Is it in the core updates or a separate workstreams? I noticed it landed and was promply reverted.
<jpoiret>maybe emacs-team?
<wingo>hello comrades
<wingo>i have an emacs + wayland + fractional scaling question. it would seem that on gnome, fractional scaling works as expected on native wayland applications but is blurry for xwayland applications. emacs is an xwayland application
<jpoiret>wingo: the first sentence immediately triggered a mental "uh ho"
<wingo>but apparently there is a pure gtk3 backend to emacs that plays nicely with wayland; flatwhatson has a guix channel from a while back
<jpoiret>regarding emacs, you can try with emacs-pgtk to get the "pure gtk" version
<jpoiret>we also have emacs-next-pgtk
<dthompson>I haven't dared try wayland on guix yet
<wingo>right! where is emacs-pgtk
<jpoiret>but it's not going to support fractional scaling anyways
<jpoiret>on master? i think?
<wingo>ah!
<wingo>indeed. will give it a go
<jpoiret>I mean it's going to work better than xwayland for sure, but not as well as the recent "true" fractional scaling that's been implemented in graphical toolkits
<jpoiret>only GTK4 supports the wayland protocol for fractional scaling
<jpoiret>and even then the "pure gtk" version of emacs is GTK in name only, it doesn't re-use that much graphical stuff from the library
<dthompson>are people using wayland more or less successfully on guix these days?
<wingo>jpoiret: thank you! it would seem that is good enough.
<jpoiret>I've been using it for, what, 3+ years now?
<dthompson>I stick with default settings for most services so I'm using X I think
<jpoiret>as long as I've been using Guix almost
<jpoiret>there are some rough edges but I think Gnome works fine?
<wingo>i just decided to give it a go because a new laptop really wants 1.5x scaling :P
<dthompson>I guess I should try it
<wingo>and gnome doesn't do that on x any more it seems
<dthompson>I wonder if it will fix some graphical issues I have
<jpoiret>lilyp was thinking of enabling wayland as default soon-ish
<dthompson>for a long time I thought guile gc was causing graphics stutter in something I was working on but then I noticed it only happens on my external monitor and not the main laptop screen.
<dthompson>would be curious to see if wayland does a better job with syncing things
<dthompson>I also want to try pipewire but I haven't had the mental energy to want to debug system issues 🙃
<wingo>well with this i managed to get a new laptop going with guix in less than 24h. progress. thank you to all guix hackers!
<dthompson>wow that certainly is a testimonial
<dthompson>you should share your config.scm :)
<wingo>it's pretty much the standard one, with a vanilla kernel tho, and wayland turned on
<dthompson>ACTION turns wayland on and loses a day of productivity
<dthompson>jk jk jk
<wingo>ahahahah lololol
<dthompson>"it just works"
<wingo>(modify-services %desktop-services (gdm-service-type config => (gdm-configuration (inherit config) (wayland? #t))))
<dthompson>👍
<dthompson>I think I'm just many years out of date on how stable wayland is
<theotherone>Hello, I would like to register a scheme handler for the org-capture protocol for use in a browser but I can't figure out how to make a desktop entry in guix. Is there some function in the system config file for that? How can I add a handler in guix?
<theotherone>Any help is as always appreciated :)
<theotherone>Figured it out: Add a desktop entry to ~/.local/share/applications/ and run `update-desktop-database ~/.local/share/applications/`. The command is provided in the `desktop-file-utils` package.
<podiki>i believe we have some functions for making .desktop files in packages too
<podiki>any emacs debbugs users? what is the simplest/quickest way to apply a patch from debbugs gnu interface? debbugs-gnu-apply-patch does it, but just as a diff (doesn't make a commit and ask to sign)
<snape>hi, how do I cc someone while sending an email to guix-patches@gnu.org?  (given that X-Debbugs-Cc is set by teams.scm already)
<ieure>snape, Does the normal Cc: header not work?
<snape>the normal cc header would make people reply to guix-patches@gnu.org I believe
<snape>instead they should reply to xxxxx@debbugs.gnu.org
<ieure>Ah. Can you edit the message to include them in X-Debbugs-Cc before it's sent?
<snape>yes but if I do this the teams.scm X-Debbugs-Cc is ignored
<ieure>Ah, I meant, is there some point where you can edit the message in its final form, just prior to sending -- where X-Debbugs-Cc has been populated already? You could add the address there.
<ieure>Maybe the simplest thing is to write the X-Debbugs-Cc header yourself and include the people from teams.scm and whoever else you want to send it to.
<snape>yes, that's what I do but it's a bit sad
<snape>(it's populated late: upon executing git-send-email)
<euouae>I've been trying to get grub to work with luks2 so guix can boot from FDE using Argon2
<sneek>euouae, you have 2 messages!
<sneek>euouae, mwette says: if you use ffi-helper on examples/ffi/cairo.ffi from https://savannah.nongnu.org/projects/nyacc you will get more of cairo; (it depends on how many includes you put in the .ffi file)
<sneek>euouae, mwette says: see also examples/nyacc/lang/ffi-help/cairo-*.scm
<euouae>but unfortunately I'm not getting help in the grub mailing list. it looks like the entire project hangs on 1 maintainer
<euouae>why is open source so frustrating?
<podiki>grub seems notoriously slow/out of date when i last checked (as in wouldn't support a filesystem feature from like 4-10 years prior, in ext)
<podiki>in better news...hooray for emacs keyboard macros, easy to respond/close a bunch of patches i just pushed
<euouae>I'm thinking the other route might be kexec.
<euouae>and boot from usb
<ieure>euouae, Could be worse. Friend of mine is trying to reset the password for their Apple account. After initiating the reset, they said they'd be in contact "in several days." Today, after that several days, they sent him an email saying to look out for a text with a code to reset it. And they'd be sending this text on *February 27th*. Like literally an entire month to reset a password.
<euouae>Well that's a bit unrelated to open source
<euouae>although your friend has my sympathies
<darkexior>is flac a libre format for music/audio?
<jpoiret>euouae: I've been thinking about a kexec-based booting solution as well
<Altadil>darkexior: yes :)
<jpoiret>but there are some complications, esp. wrt suspend-to-disk
<jpoiret>also euouae grub 2.12 will work with luks2
<jpoiret>I'm using it currently
<darkexior>how do i play flac files? i can u recommend some program?
<jpoiret>but it's definitely not ready for upstreaming
<Altadil>darkexior: I know mpv works, but probably many others as well.
<darkexior>awesome!!
<darkexior>thank you
<euouae>jpoiret: argon2 pkdf?
<jpoiret>no, only pbkdf2
<euouae>well that's what I'm talking about
<jpoiret>argon2 will require way too much refactoring
<euouae>I want to get argon2 kdf
<euouae>I was willing to give it a go but it would be useful to have someone who knows how libgcrypt is incorporated into GRUB
<darkexior>what is the guix command to install applications in terminal?
<euouae>I found this library called monocypher which is just 2 files, .c and .h and compat LICENSE so I thought maybe I'd strip libgcrypt off GRUB or add monocypher just for argon2
<jpoiret>darkexior: `guix install`?
<euouae>For example, I can't even answer this question: What version of libgcrypt is used in GRUB?
<podiki>darkexior: see https://guix.gnu.org/en/manual/devel/en/html_node/Getting-Started.html for the basics to get started (and there is only terminal commands, no gui; well emacs i guess)
<Altadil>darkexior: see here for all the details on this https://guix.gnu.org/en/manual/devel/en/html_node/Package-Management.html :)
<darkexior>Thanks guys
<darkexior>i have a question, i went and browsed the guix store for a bit and i noticed that there are a lot of programs written in .go and a lot of other files, they are in what seem to be machine code? is this right?
<darkexior>or a lot of @@@@@@@@@@@@@@@
<jpoiret>.go is compiled Guile, not Golang
<darkexior>Ohh!
<jpoiret>well, it could also be golang but usually it's compiled Guile
<darkexior>Mreover, i checked the gcc store directory and its filled with header files, practically no .c files, is this because the OS only needs header files? if so, where in the documents does the OS actually execute the header files?
<darkexior>is it compiled code?
<euouae>header files are needed for the compilation of programs
<euouae>(and libraries)
<darkexior>so the compiled programs are the actual executables?
<euouae>darkexior: a (computer code) library comes (typically) with 1 binary .so file and several text .h files
<euouae>users of the library write code that includes the .h files and links to the .so file
<darkexior>yeah okay i got it!
<euouae>the .c files of the library do not need to be present; they are - in compiled form - in the .so file
<darkexior>thank you!
<euouae>you're welcome
<darkexior>Precisely
<darkexior>okay awesome!!
<darkexior>is there a way to look at the compiled form?
<darkexior>that is human readable?
<euouae>Not unless you have the .c files as well. The binary format supports notes which can be used for debugging purposes to display the assembly next to the corresponding C lines
<euouae>This is related to debugging
<euouae>You can obtain the source code with guix by the way
<darkexior>interesting, how do i do that?
<euouae>`guix build --source hello` will grab the guix-patched source
<euouae>of hello
<euouae>jpoiret: this is SAD. Let's do a kexec solution. I'm still on debian because I can't get FDE
<euouae>Do you think it would be of interest to Guix users to have the kexec solution? I can look into it. I lose motivation when there's so much indifference in a project (speaking from experience with projects I've dealt in the past)
<levenson>Hello Guix
<darkexior>euouae dude you are wonderful, thank u for your patience!!!
<euouae>darkexior: but to get the debug files, you'd use a different command. See <https://guix.gnu.org/manual/devel/en/html_node/Installing-Debugging-Files.html>.
<euouae>This is only interesting to you if you intent on using 'gdb'.
<ulfvonbelow>is there any particular reason that a nar containing only derivations needs to have a valid, trusted signature in order to be imported via 'guix archive'?
<darkexior>euouae Perfection
<ulfvonbelow>shouldn't derivation outputs be the only thing that needs to be signed?
<euouae>ulfvonbelow: why do you think that?
<ulfvonbelow>because everything else is independently verifiable
<ulfvonbelow>there's no way to "fake" a fixed-output derivation or a derivation itself
<euouae>what about a dos of a nar archive?
<darkexior>do you guys have a particular website to get your copyleft music fix?
<euouae>a nar archive that expands to gigabytes or whatnot
<ulfvonbelow>nars don't use any compression
<ulfvonbelow>at least, not as output by 'guix archive --export'
<euouae>what about ulimits on files?
<ulfvonbelow>also, if you have the ability to 'guix archive --import', you can create an arbitrary amount of files in the store anyway
<ulfvonbelow>since you can clearly access the daemon and tell it to add-data-to-store
<euouae>it's not that you have the ability, it's that you wouldn't want an untrusted source to do something like that
<jpoiret>euouae: it would!!
<jpoiret>at least I would be interested
<jpoiret>but I think imo that it would require some refactoring of the bootloader code, so it's a non-trivial amount of work
<euouae>ah, kexec requires refactoring of the bootloader?
<euouae>That definitely makes it complicated. I felt more comfortable hacking GRUB to be honest
<ulfvonbelow>trust isn't all-or-nothing. It's hard to imagine a situation where importing a 1MiB nar without compression containing only derivations causes any meaningful resource exhaustion. For example, I wanted to import some derivations to my substitute server to have it build them for my laptop without my laptop needing to gain offload access, but 'guix archive' refused to import them until I authorized my laptop's key
<jpoiret>euouae: at least I think so, but maybe that's not the case
<euouae>I can at least try the kexec approach on another distribution to get a feel for it and see where it gets me. If you don't know maybe I can at least document the issue as I encounter it.
<jpoiret>oh no, I just realized I built the base guile-3.0 without libcrypt support :(
<darkexior>Guys i have a question... i have a system set up with exwm, how do i set up the other available desktop environments afterwards finishing an installation with exwm only?
<darkexior>liek gnome, xfce, etc..
<darkexior>is there a link that explains this exactly?
<ieure>darkexior, This is the closest thing I'm aware of: https://guix.gnu.org/en/manual/devel/en/html_node/Using-the-Configuration-System.html#System-Services
<ieure>Generally, edit /etc/config.scm, add ex. (service xfce-desktop-service-type) to the services list, save, `sudo guix system reconfigure /etc/config.scm'