IRC channel logs

2023-02-12.log

back to list of logs

<mirai>nckx: do you think a guix ZNC service definition is feasible?
<KarlJoad>Maybe I am missing something, but I thing I can go operating-system -> image -> job, to have Cuirass build an operating-system config, right?
<KarlJoad>mirai: I was planning on writing my own too actually. I am also interested in the feasibility.
<mirai>KarlJoad: looking at <https://wiki.archlinux.org/title/ZNC>, it seems that it is also runtime configurable
<footlong>"ZNC - ArchWiki" https://wiki.archlinux.org/title/ZNC
<mirai>question is if it touches znc.conf or not
<gabber>KarlJoad: i think so -- and am interested in solutions (:
<mirai>even if it did touch, in theory it should be possible to make a service that would populate a writeable file
<mirai>but I'd like to hear from ZNC users first
<KarlJoad>gabber: That feels like a lot of steps, particularly ones I was not finding a ton of documentation about. I understand there are definitions for images in Guix itself, but do not see how to add to the cuirass specification to only build my images.
<gabber>i have asked the mailing list in hope to get some answers (there are these promising-sounding options in cuirass specifications `custom`, `images` and `manifests`) but i haven't found out yet how to make proper use of them
<KarlJoad>If you build Guix locally, you can see how they get defined in guix/gnu/ci.scm under the cuirass-jobs procedure.
<gabber>thanks for the hint!
<apteryx>perhaps interesting graphs: https://git.savannah.gnu.org/
<footlong>"Savannah Git Server" https://git.savannah.gnu.org
<lechner>cwebber / Hi, thanks for guile-sqee! It works great! Is there a way to pool connections while staying in Guile?
<the_tubular79>I'm reading wiki and wondering, what's the point of connecting to to a remote guix daemon ?
<rekado>wiki?
<rekado>the_tubular79: it makes sense for a shared deployment of Guix
<rekado>e.g. when you have an HPC cluster with hundreds of nodes that should all have access to Guix but all share the same /gnu/store
<DigitalKiwi>if you had guix on your potato
<DigitalKiwi>or raspberry pi
<the_tubular79>Err I meant manual
<the_tubular79>But to run the binary you have to have it on your machine right ?
<the_tubular79>What's the point of sharing the /gnu/store ?
<unmatched-paren>hello guix :)
<Lumine>Hello!
<unmatched-paren>the_tubular79: that lets them access the same built store paths, etc
<unmatched-paren>Lumine: hi!
<unmatched-paren>is there anyone available who could push my blog post to the website? :)
<cbaines>unmatched-paren, do you have a link to the patch/content?
<unmatched-paren>cbaines: https://issues.guix.gnu.org/61214
<footlong>"[PATCH guix-artwork] website: posts: Add Dissecting Guix, Part 2: The Store Monad." https://issues.guix.gnu.org/61214
<unmatched-paren>(v3 is the one you want ::))
<nckx>Morning, Guix.
<Lumine>Good morning
<cbaines>unmatched-paren, I've had a read of it now, I've got a few comments so I'll reply by email
<nckx>mirai: I guess you're referring specifically to configuration? That's the hardest part IMO. znc.conf is extremely dynamic and stateful; any Guix System service would have to defer to that, not try to manage it read-only.
<tex_milan>Hello, when a package is created or inherited, it is exported with define-public NAME, but inside there is also (name "NAME"). Where is the latter used? Why is the latter even needed?
<minikN>Hello, I wrote package definition for a kernel module (https://paste.debian.net/1270476/). When I build this using `guix build' it builds fine, but when I add it to `kernel-loadable-modules' and try to reconfigure my system it fails with https://paste.debian.net/1270477/ .. could some help?
<footlong>"debian Pastezone" https://paste.debian.net/1270476
<footlong>"debian Pastezone" https://paste.debian.net/1270477
<nckx>tex_milan: The CLI, the store directory name, etc.
<tex_milan>nckx: if I create my derivation, do I have to change (name "NEW_NAME") or can I use the existing one?
<ngz>Hello. I just encountered an issue I hadn't seen for ages. I use "emacs-org" package from Guix. But whenever I start Emacs, I get an error about a version mismatch ; it seems the package collides with built-in Org mode (I'm not using Straight or Babel). When I start Emacs with "emacs -q", so before my "init.el" is loaded, Org from Guix is before Org from Emacs is my load path. It may be obvious but I don't see the issue here.
<apoorv569[m]>Does env vars doesn't work the same way in Guix as in other distributions that has the standard directory structure /bin``/etc and all rather than /gnu/store thing?
<nckx>tex_milan: You can do whatever makes the most sense to you.
<nckx>minikN: Are you using (a) third-party channel(s)?
<apoorv569[m]>I use pass the password manager and have PASSWORD_STORE_DIR set to ~/.local/share/password-store also have a lot of other stuff moved like GNUPGHOME and all
<apoorv569[m]>doing just gpg --decrypt PATH_TO_FILE doesn't work as expected it could not find key or won't work correctly.
<minikN>nckx: Yes, I'm using kernel provided by nonguix channel.
<tex_milan>Anyone using cups and printing jpg from command line with lpr? Does it work? I doesn't for me. I know about https://issues.guix.gnu.org/57375 I tried to apply fix to my setup, but still doesn't work... What bothers me is that no-one here seems to be bothered by fact that cups is brokne for more than half year...
<footlong>"[PATCH] gnu: fix cups 'install-cups-filters-symlinks phase" https://issues.guix.gnu.org/57375
<nckx>minikN: There is somehow (I don't know where) an incompatible change in Guix that they haven't adapted to yet. When you ‘guix build’, you're building against the default Guix Linux-Libre kernel. When you build an OS, it uses the OS's (kernel …
<mirai>nckx: it's doable to still use guix to partially automate that, the constructor could make a copy from the read-only store to a writeable directory for ZNC
<nckx>tex_milan: Because it's not ‘broken’, we do care about helping people with their problems but I don't find such hyperbole very helpful motivation.
<mirai>but can the config structures be neatly structured as scheme records?
<mirai>or are they similar to nginx/lighttpd/xml ?
<minikN>nckx: I tried adding `#:linux ,linux' to the arguments list where `linux' is my OS kernel. Just for tests.. but still can't build OS, now I get: "Error while executing "gzip -c -q -d < /var/log/guix/drvs/ll/i9s8ccvf35n06cr8v9dfzw3bjr96al-linux-libre-6.1.9-guix.tar.xz.drv.gz" gzip: stdin: unexpected end of file" unclear to me why it's still using wrong kernel.
<nckx>mirai: They are structured in some kind of pseudo-XML (vaguely Apache-like) but I've never dug deep on the parsing.
<mirai>offtopic but what's the recommended way to backup a guix system (or at least, just the /home directory)
<tex_milan>nckx: I am trying to get printer working whole weekend and got frustrated. sorry, nothing personal. But CUPS is broken. Just look to your /gnu/storage/*cups*/lib/cups... filterbannertopdf, .... and empty filter folder? That is not supposed to be there. Fixed by 57375 which was fixed half year ago but not apparently delivered (as it is still open).
<mirai>my system partition is too small and I can't get guix to upgrade anymore
<nckx>mirai: What I meant is that this file stores both your TLS certificate file name, IP configuration, (hashed) password, and the list of channels you happen to be in at shutdown. One would not want to ‘guix system reconfigure’ to join channels :)
<mirai>(it was always a hassle to do test builds in the past due to the size but now it's just impossible to use further)
<nckx>*not want to have to
<cbaines>tex_milan, I'm pretty sure CUPS isn't broken, as it's working for me. It's possible that some specific functionality isn't working though.
<ngz>mirai: I use borg to backup my stuff. I don't know if that's the recommended way, tho.
<tex_milan>cbaines: it "works" when I print from IceCat, or LibreOffice. but when I want to print with lpr form command line, it is broken.
<mirai>ngz: my plan is to copy the home directory stuff to somewhere else and reinstall guix but this time with a single partition scheme
<mirai>and then place the files back
<ngz>mirai: This sounds like a basic operation provided by a backup software, doesn't it?
<tex_milan>cbaines: can you try to print jpg picture with lpr?
<mirai>nckx: the secrets could be "templated" in by constructor and the idea is that the service merely "pre-populates" a configuration if it's absent
<cbaines>tex_milan, what package is lpr in?
<mirai>a herd action could be added to "wipe and re-template config"
<tex_milan>cbaines: it is in cups directly
<ngz>mirai: For example, I use borg to backup everything in an external hard-drive at least every week or after a major achievement (i.e., when I beat my high score at burgerspace), and can copy it back on a new HDD.
<mirai>ngz: does guix place any special symlinks in /home?
<ngz>It does, but you don't need to save them, as the same configuration will re-create the same symlinks
<mirai>I dont know if simply rsync'ing that directory will do the job
<ngz>mirai: I think that will work, too.
<ngz>Anyhow, is anyone actually using emacs-org package currently, with a satisfying outcome? If so, is there any special stuff to write in "init.el" in order to get the same result?
<cbaines>tex_milan, I ran lpr on a jpg from the guix-artwork repository, and my printer printed it
<minikN>nckx: Just so I understand, is the problem with Guix itself or the third party channel? So I know where I can open an issue
<cbaines>tex_milan, I guess that's the expected behaviour
<mirai>cbaines: are there plans on merging core-updates soon?
<cbaines>mirai, roptat (Julian) started a mailing list thread about this https://lists.gnu.org/archive/html/guix-devel/2023-02/msg00106.html
<footlong>"Merging core-updates?" https://lists.gnu.org/archive/html/guix-devel/2023-02/msg00106.html
<cbaines>I don't know much about it though
<tex_milan>cbaines: Thanks, yes expected behavior. are you on GuixSD? What printer? Maybe mine needs that filter, yours can print it directly?
<mirai>yes, I just finished reading that thread
<cbaines>tex_milan, I'm using Guix System yes, and I have a Brother HL-11 printer
<mirai>I was wondering if <https://issues.guix.gnu.org/61015> could make it in time to core-updates since it will fix many problematic packages
<footlong>"[PATCH core-updates 0/9] Modernize and fix docbook-xml" https://issues.guix.gnu.org/61015
<mirai>naturally, it triggers obscene amounts of rebuilds
<tex_milan>cbaines: [Job 54] PID 9653 (/gnu/store/rl7hbmq8b9n3p5ip0zpww7yc6hlin97r-cups-server-bin/lib/cups/filter/imagetoraster) crashed on signal 6.
<tex_milan>Do you have the imagetoraster in that path (lib/cups/filter/)?
<cbaines>tex_milan, yep
<nckx>minikN: The channel. I don't mean they did anything wrong, but they need to update ~something~ to fix the incompatibility.
<nckx>sneek: later tell tex_milan: I've recently lpr'd something to a Brother, no idea which model (I wager your 'L' means laser? Mine wasn't) or language. I'll try it again later. CUPS is extremely complex, lots of little annoyances, but not broken for most users. Let's fix another one :)
<sneek>Okay.
<minikN>nckx: Thanks. Can I quote you in the issue?
<nckx>Sure, but I don't think that's news.
<nckx>I only just found the issue I posted in their #channel.
<nckx>I'm not a user myself, sorry.
<unmatched-paren>cbaines: i've replied now :)
<unmatched-paren>related question: what, exactly, is the point of MBEGIN; why would you want to use it?
<unmatched-paren>another: how does %STORE-MONAD help with purity?
<cbaines>unmatched-paren, I believe mbegin is similar to begin, but monadic
<unmatched-paren>but why do you need a monadic begin :)
<cbaines>so in the simple case where you want to do several operations with the store in a sequence, you'd use (mbegin ... (op1) (op2) (op3))
<unmatched-paren>okay, fair
<unmatched-paren>i don't really know how you'd illustrate that with maybe-monad though
<cbaines>I believe you give earlier examples of chaining several operations together in the maybe monad right
<cbaines>that could sit within mbegin I think
<unmatched-paren>could they?
<unmatched-paren>ACTION tries
<cbaines>here's some mbegin's being used for the %store-monad https://git.savannah.gnu.org/cgit/guix.git/tree/guix/inferior.scm#n926
<footlong>"inferior.scm\guix - guix.git - GNU Guix and GNU Guix System" https://git.savannah.gnu.org/cgit/guix.git/tree/guix/inferior.scm#n926
<unmatched-paren>you can't really chain things with mbegin when there's no side effects
<unmatched-paren>e.g. (mbegin %maybe-monad (something "abc") remove-a remove-b)
<unmatched-paren>that doesn't work
<unmatched-paren>you'd need to be able to bind (something "abc") and the result of (remove-a that-thing) to symbols
<unmatched-paren>but that's what mlet does :)
<lechner>sneek / later ask ngz / Is the installation message for 'org' about switching to version 9.6 from (gnu) instead of Melpa? How many versions do you have installed?
<sneek>Got it.
<cbaines>unmatched-paren, my intuition is that it should work but I'm really just guessing
<minikN>Using `url-fetch/zipbomb', how can I allow for urls with spaces? It doesn't allow me to escape %
<nckx>You mean in the basename?
<nckx>Might be an oversight. ℅-escapement in general Just Works.
<nckx>If so, does it work if you explicitly set file-name to something less spacey?
<lechner>ACTION sometimes tries unescaped strings when functions accept strings
<nckx>ACTION realises that % ≠ ℅.
<nckx>Anyway, % should work.
<nckx>*Store items* can't contain all ASCII characters though, hence my above suspicion and suggestion.
<nckx>(string-append name "-" version ".zip") is the traditional bet.
<jlicht>I'm getting '550 Unroutable address' from my SMTP server when attempting to send out patches to guix-patches. Is there some kind of maintenance going on?
<minikN>nckx: I can't change the URL of the package. I tried to replace the spaces with `%20', but then I get an error saying "guix build: error: invalid character `%' in name ...", hence why I tried to escape it, but this isn't working as well.
<jlicht>s/Unroutable/Unrouteable/
<minima>hi! i'd like to run a simple tor-related script that basically launches a local tor instance and configures it to use bridges; i'm reading this https://tor.stackexchange.com/a/6049
<nckx>minikN: Don't change the URL.
<nckx>Use file-name.
<minima>i don't seem to see obfsproxy packaged under guix - would you recommend to try and package it or do you think i might be missing a simpler way to do what i'd like to do?
<mirai>minima: have you checked tor package files
<mirai>ls -alR $(guix build tor)
<minima>mirai oh, no, i haven't - thanks, checking now
<mirai>if obsfproxy isn't there and isn't in guix then a package is welcome
<minima>yeah, it doesn't seem to be there - cool, i'll see if i can put a package together, thanks mirai!
<unmatched-paren>cbaines: what should work? :)
<ngz>Hello. I'm struggling with Guix emacs-org package. I have it in my profile, but when I launch Emacs and then an Org document, I get (error "Org version mismatch. Make sure that correct ‘loa..."). I tried to put (add-to-list 'load-path "/gnu/store/…-emacs-org-9.6.1/share/emacs/site-lisp/org-9.6.1") as the first line in my "init.el" file as an experiment, but it doesn't solve the problem. Any idea?
<sneek>Welcome back ngz, you have 1 message!
<sneek>ngz, lechner says: / Is the installation message for 'org' about switching to version 9.6 from (gnu) instead of Melpa? How many versions do you have installed?
<ngz>Ah.
<nckx>jlicht: Not AFAIK, and this is the same MX I just successfully delivered to.
<ngz>lechner: I have apparently 2 version installed, the one from Guix and the one built-in. Org from Guix appears first in `load-path'.
<nckx>jlicht: ...and you, I see :)
<jlicht>Yeah, I still have the printed out version of the manual that has the wrong `git send-email' snippet
<jlicht>my bad
<jlicht>thanks for checking nckx :)
<nckx>Wow, vintage.
<apoorv569[m]>How can I install a custom package definition with guix?
<apoorv569[m]>trying to do `guix package --install-from-file=file.scm` gives me error, `guix package: error: cannot install non-package object: #<unspecified>`
<attila_lendvai>apoorv569[m], the last form in your file must return a package object
<apoorv569[m]>Can you give me an example?
<attila_lendvai>apoorv569[m], i.e. (define-public mypkg ...) and the last line should be 'mypkg'
<apoorv569[m]>with or without quotes?
<unmatched-paren>apoorv569[m]: imo the best way to do this is to do ``guix install PKG -L .'', which scans all the modules in the current directory for package definitions and adds them to the available packages
<apoorv569[m]>Ok, getting a different error now, ice-9/boot-9.scm:1685:16: In procedure raise-exception: error: libx11: unbound variable
<apoorv569[m]>ok I think I got it working
<apoorv569[m]>added the use-module thing for xorg
<apoorv569[m]>build failed though
<minikN>nckx: Thanks, I got it now.
<apoorv569[m]>now it just says killed when trying to build nothing else
<mirai>any erlang developers using guix around?
<attila_lendvai>apoorv569[m], do you have enough memory for the build?
<merula>hey guix! anyone knows whats ups with rust builds? Seems like the latest available substitute is of version 1.60.0 and I noticed that it has been like that for a while.
<merula>I accidentially gc'ed chain of .60-.63 compilers my laptop built for hours :)
<merula>I tried to look it up in ci.guix.gnu.org but when you look for "system:x86_64-linux spec:master rust" web page gives you paginated list of ALL rust packages
<ekaitz>hi all: `In procedure write_wait_fd: unimplemented` did you see this before?
<ekaitz>i just pulled and tried to update my packages
<ekaitz>and got that
<apoorv569[m]>Does guix has something like use flags on gentoo thing? to customize the compilation of software?
<elais[m]> https://guix.gnu.org/manual/en/html_node/Package-Transformation-Options.html
<footlong>"Package Transformation Options (GNU Guix Reference Manual)" https://guix.gnu.org/manual/en/html_node/Package-Transformation-Options.html
<gabber>has anyone else the issue of paredit-mode clobbering RET in emacs? i can't enter stuff (the mode prints newlines instead of entering my statements) and i'm pretty keen on using paredit wherever i write s-expressions...
<apoorv569[m]>Interesting. So the package has to defined as tunable for this to work?
<GNUtoo>Hi, does the embedded-bootstrap team handles u-boot ?
<andreas-e>GNUtoo: Some teams have modules assigned to them; this is not yet the case for the embedded team, which is furthermore very small. Probably they should be responsible for uboot.
<attila_lendvai>ekaitz, yes, it's a heisenbug in the sense that it only happens with certain network conditions
<ekaitz>attila_lendvai: oooh
<ekaitz>now it looks like everything is working
<ekaitz>(and building ungoogled-chromium :( )
<unmatched-paren>apoorv569[m]: no, guix has no USE-flag-like system at the moment
<merula>ekaitz: you can use --do-not-upgrade for chromium if you want to wait untill it becomes available
<ekaitz>yeah i know but... too late
<merula>:) unless you're using manifest, haven't figured out how to easily deal with that
<GNUtoo>ok, thanks
<jlicht>AFAICS, we can remove python-wrapper from the closure of node and all node-xyz packages. Shaves off almost 83 MB :D
<attila_lendvai>anyone around who would be a party to discussing shepherd logging?
<attila_lendvai>my immediate question is whether it's preferrable to have a /var/log/shepherd.log or keep it going to the syslog when run as root
<attila_lendvai>i'm leaning towards the latter
<apoorv569[m]>What package to install ld ?
<apoorv569[m]>is there a meta package for common build tools? Like Ubuntu has build-essentials or arch has base-devel?
<gabber>apoorv569[m]: binutils
<gabber>but i guess you're looking for `gcc-toolchain`
<apoorv569[m]>Ah! I installed gcc package ... what's different with gcc-toolchain?
<apoorv569[m]>Ah! gcc is just the compiler? and gcc-toolchain is complete toolchain glibc headers and all
<gabber>apoorv569[m]: yes, exactly. ld et al. are not part of gcc -- GCC does not include a linker
<apoorv569[m]>The mu package for Emacs fails to build.. i have installed meson ninja gcc-toolchain make binutils but it still wont build
<nckx>apoorv569[m]: Join us now, and share the… er… ror messages… ♪
<nckx>And maybe also your motivation(s) for building mu from source instead of using the Guix package.
<apoorv569[m]>Well I was using Arch before and I had mu4e in my init.el using straight it required me to have mu installed so it can compile mu4e now on guix i did install mu but it fails to build mu4e
<GNUtoo>hi, is nckx Maxime Cournoyer?
<GNUtoo>Or does someone knows Maxime Cournoyer IRC nickname?
<GNUtoo>ACTION found that there is no way to add Cc to an existing patch and that Maxime seems to be contributing a lot to u-boot packages
<GNUtoo>*Maxim
<nckx>Maxime is apteryx. nckx is me.
<nckx>*Maxim dammit.
<GNUtoo>ok
<GNUtoo>Thanks
<GNUtoo>apteryx: hi, I've tiny patches to add 2 u-boot targets in bug #60289 that are there since last December. Since you seems to have many commits touching u-boot packages, you might be interested in reviewing them or maybe you know people that could review them.
<footlong>"[PATCH v1] gnu: Add u-boot-qemu-arm" https://issues.guix.gnu.org/60289
<nckx>apoorv569[m]: A very important thing to know about Guix is that it cares not what you have installed and what you don't when building packages. *At all.* Builds are entirely self-contained.
<nckx>ACTION builds mu.
<apoorv569[m]>The vterm package also need to compile vterm-module using cmake it fails to do that as well
<apoorv569[m]>how would these work then?
<GNUtoo>apteryx: they can be tested with qemu-system-{arm,aarch64} -machine virt -nographic -bios u-boot.bin (reference: doc/board/emulation/qemu-arm.rst in the u-boot source code) and they need to be shipped separately from a system image so there is no need to define a special installation method for raw-with-offset for instance.
<nckx>apoorv569[m]: Mu builds fine here. Could you share the output? Guix should print it, or the file name of the (.gz) log file containing it. Or use ‘guix build mu --log-file’.
<nckx>Just throw the whole thing up on paste.debian.net.
<nckx>Oh, and the command you used to ‘install mu’ above.
<nckx>Since I'm not sure what you're doing and what's going wrong.
<gabber>apoorv569[m]: usually one fixes the build process by 1) cloning the guix repo, 2) building that from source, 3) ./pre-inst-env guix build foo 4) contribute the patch when succeeded :)
<gabber>np that `guix shell -D foo` throws you into a shell with all the necessary packages ready for developing package foo
<gabber>*nb
<nckx>Thing is, Guix's mu builds fine here, and on CI.
<nckx>As does emacs-vterm.
<nckx>So I think we're missing a piece of info.
<apoorv569[m]>guix install mu works fine here as well.. the emacs package mu4e using use-package :straight t fails to build
<gabber>apoorv569[m]: well, that's not the Guixy way ;)
<gabber>(maybe it's a problem with use-package?)
<nckx>Oofkay.
<nckx>Maybe. Still, error messages are the best messages.
<gabber>apoorv569[m]: you can use guix to manage your emacs packages (instead of using yet-another-package-manager within emacs)
<apoorv569[m]>I'm a Guix noob ATM :D
<apoorv569[m]>I basically want a standard way of doing thing so if I change distro tomorrow I should be able to do the same setup regardless of the distro
<nckx>ACTION away, but I'm not much of a use-package geek anyway. I know just enough to use emacs-use-package with Guix emacs-* ones.
<gabber>you could use guix (on top of whatever flavored distro) to do exactly that. but yeah, without error messages it's hard to help you out
<tex_milan>nckx: I found a workaround for my problem - edited ppd and disabled cupsFilter2 which called that crashing filter... it prints, no idea why it was there (created by cups web interface when printer was detected). but still, cups package is incorrectly prepared (although it seems to work) and needs that patch to be applied. sorry again for the buzz, I just wish sending and merging patches was more user friendly.
<sneek>tex_milan, you have 1 message!
<sneek>tex_milan, nckx says: I've recently lpr'd something to a Brother, no idea which model (I wager your 'L' means laser? Mine wasn't) or language. I'll try it again later. CUPS is extremely complex, lots of little annoyances, but not broken for most users. Let's fix another one :)
<tex_milan>nckx: yes, cups is very complex. I have laser Xerox :)
<apoorv569[m]>I have to files in .config/guix base.scm and system.scm.. system.svm files inherits base.scm
<apoorv569[m]>How do i guix system reconfigure using system.scm file
<apoorv569[m]>Doing sudo -E guix system reconfigure system.scm gives me error no code for module base
<apoorv569[m]>gabber: Yea.. I think I will slowly change my setup a bit.
<nckx>tex_milan: My bad, someone mentioned Brother and I obviosly confused them with you.
<nckx>apoorv569[m]: How exactly does it inherit?
<nckx>I use a similar system with (add-to-load-path "/etc/guix") at the top of my system.scm. [It should really be (add-to-load-path (dirname (current-filename))) but that leads to bugs I haven't bothered to diagnose.]
<gabber>apoorv569[m]: don't use the -E option; just `sudo guix system reconfigure foo.scm`
<nckx>(Guix's sudo defaults to -E, so it's pointless but not harmful.)
<jlicht>is there anyone using `opendoas` on guix? How do you invoke it with `guix system reconfigure ...`?
<jpoiret>nckx: Does it?
<jpoiret>I've had to manually --preserve-env for a couple of things
<jpoiret>yeah no, it's definitely not -E by default
<jpoiret>it does seem to keep some important env variables around that are guix-specific, but definitely not all of the env
<gabber>nckx lied!? wtf ;)
<nckx>Well, that's it for me. Bye all.
<gabber>nooooooo!!!!
<gabber>please stay
<nckx>No, jpoiret is right. This is something I've set in my configuration (you know, that thing that inherits from the thing that inherits…) and forgot. It's not Guix. Sorry. Good-bye.
<jpoiret>residents of Guix city will be able to sleep soundly knowing the sudo -E ploy had been thwarted
<nckx>I should really muck out the Augean stable that is my system configurations.
<jpoiret>(ftr: I did not intend for my messages to be this dry, i hope they did not sound aggressive and apologize if they did)
<nckx>Not at all.
<nckx>I was the one spreading disinformation.
<gabber>it happens to the best
<nckx>I wonder if anything will break if I revert to Guix's defaults…
<nckx>ACTION worries.
<gabber>isn't there `guix foo roll-back` against those worries?
<akirakyle>.
<nckx>Sure (‘guix foo’ just being ‘git’ in this case). But if it breaks something obscure in 6 months, I'm going to have no clue this change was to blame :)
<nckx>Still, I should really pare down my configurations and the number of rebased commits on top of Guix (currently >100 ☹). There's way too much custom stuff that should either go upstream or can be lived without.
<nckx>…such as this !env_reset. Gone!
<nckx>Does Guix have a way to specify file capabilities yet?
<nckx>No, right?
<gabber>WDYM? permissions and ownership and such?
<nckx>That seems like a nice thing to upstream if there's interest, although I'm not sure they're widely used.
<nckx>gabber: No, capabilities(7).
<nckx>Finer-grained privileges than setuid/setgid.
<vagrantc>nckx: i submitted a bug about that ...
<nckx>Used for example by mtr and nethogs (and other stuff).
<vagrantc>#55683
<footlong>"Support binaries that need "setcap" similar to "setuid-programs"" https://issues.guix.gnu.org/55683
<vagrantc>whoah, the bot is not metric?
<nckx>I never saw that or would have tried to sell you my patch-set.
<nckx>It's rather opinionated and extends+renames setuid-programs, because I don't believe it makes sense to separate the two.
<vagrantc>which links to other bugs that have similar needs
<vagrantc>heh. i include the same bug twice in a list of similar bugs ... surely there was a third and i just typoed something
<vagrantc>nckx: but is that the sort of thing you're talking about?
<nckx>Yes.
<nckx>I hadn't much considered extensions myself, but everything setuid-programs currently allows should still work.
<vagrantc>seems like renaming setuid-programs eventually ...
<vagrantc>e.g. if it is doing things other than setuid ... but yeah, figured extending setuid-programs would be the way to go
<vagrantc>nckx: so, consider me interested, if limited availability :)
<nckx>vagrantc: https://issues.guix.gnu.org/61462
<footlong>"Add support for file capabilities(7)" https://issues.guix.gnu.org/61462
<nckx>I meant that services(?) could extend this, not that I ‘extended’ (in the service graph sense) setuid-programs.
<nckx>In fact I renamed it.
<nckx>Yolo.
<nckx>This is one of those things I forgot wasn't in Guix until I had to rebase it recently…
<nckx>More merge conflicts… vagrantc: This set is incomplete, but should tell you whether it's what you envisioned or not at all. If not, let's talk. /me → 😴💤
<attila_lendvai>ACTION is proudly testing shepherd changes in a guix vm with a single cmd line. although, with about a minute long edit-compile-test cycle... :/
<attila_lendvai>and it's finally logging a backtrace when a service start GEXP throws
<vagrantc>nckx: thanks for the capabilities patchset! :)
<KE0VVT>I've installed Guix on Trisquel, but the directory that Guix put in my PATH does not exist. /home/caleb/.config/guix/current/bin
<ecbrown>KE0VVT: when you `guix install' a package that will get populated
<nckx>Have you run 'guix pull' yet? It's not mandatory, but it's recommended (as updating is always a good idea), and that's why that directory is in PATH.
<nckx>(Run 'hash guix' after 'guix pull' for bash caching reasons.)
<nckx>ecbrown: Slightly different directory.
<KE0VVT>ecbrown: I've installed Emacs but nothing shows up when I do "which emacs".
<nckx>guix/current is in $PATH so a user's pulled guix will shadow the older, system-wide one.
<nckx>KE0VVT: Is ~/.guix-profile/... in PATH? That's where packages go.
<ecbrown>oh right, ~/.guix-profile/bin
<nckx>It's the responsibility of the distro (Trisquel) package to add it, but it might require a log-out.
<KE0VVT>nckx: I installed Guix with the script.
<KE0VVT>nckx: .guix-profile is not in PATH.
<nckx>The script adds a snippet to /etc/profile.d that adds it.
<nckx>It's generally sourced on log-in by most distroes.
<nckx>Pretty sure that applies to Debian-alikes.
<KE0VVT>nckx: I'm running Sway from the TTY.
<nckx>Then you take some responsibility for setting up your own environment if your log-in shell didn't. Don't you log into a shell?
<KE0VVT>nckx: It runs exec sway as soon as I log in, but yes.
<nckx>Does it not source /etc/profile and/or does /etc/profile not loop over /etc/profile.d?
<nckx>Sway's rather opinionated that this is someone else's problem, i.e., yourse
<nckx>*.
<KE0VVT>nckx: I don't see anything about /etc/profile in my ~/.profile.
<nckx>If I remember my bash, ~/.profile existing does not prevent /etc/profile being sourced first by a log-in shell.
<nckx>Nope, the arcane masking logic is only within ~: When Bash is invoked as an interactive login shell, or as a non-interactive shell with the '--login' option, it first reads and executes commands from the file '/etc/profile', if that file exists. After reading that file, it looks for '~/.bash_profile', '~/.bash_login', and '~/.profile', in that order, and reads and executes commands from the first one that exists and is readable.
<nckx>It should source both.
<nckx>(From the Bash manual.)
<gabber>is "master" as the default branch to pull from a channel hard-coded or can i specify that in the channel?
<ecbrown>gabber: (branch "super-hacks")
<KE0VVT>nckx: So it does source /etc/profile?
<nckx>You tell me?
<gabber>ecbrown: in my .guix-channel (channel) s-exp?
<ecbrown>~/.config/guix/channels.scm is where i set this
<gabber>thanks!
<gabber>so "master" is a hard-coded default?
<nckx>KE0VVT: You haven't confirmed that you've logged out & back in yet. Have you?
<nckx>The profile.d drop-in snippet (I think it's called zzz-guix.sh nowadays; used to be guix.sh) is pretty clear on what should happen if ~/.guix-profile exists, as it will if you've installed a package such as emacs.
<nckx>If that's not happenin', it's not sourcin'.
<jlicht>gabber: Don't hold it agains me, but it might just be git's default branch (so depends on the remote repo, could be 'main' etc etc)
<jlicht>*t
<KE0VVT>nckx: I've logged out and logged back in, yes.
<jlicht>gabber: nope, it's plain old "master", as you said. I was wrong :)
<nckx>KE0VVT: Does manually ‘. /etc/profile’ in the log-in shell change $PATH?
<gabber>jlicht: that's what i would have guessed to be intended behaviour but i'm not sure -- i just switched my default branch from "master" to "trunk" and IIRC this didn't work out
<nckx>jlicht: I thought so too for a sec :)
<KE0VVT>nckx: I will try than once guix pull finishes.
<nckx>But no, (default "master") or whatever it was. Disappointing.
<nckx>KE0VVT: 👍
<nckx>They are technically independent but yes, let's wait.
<nckx>gabber: https://github.com/guix-mirror/guix/blob/master/guix/channels.scm#L123
<footlong>"guix/channels.scm at master · guix-mirror/guix · GitHub" https://github.com/guix-mirror/guix/blob/master/guix/channels.scm#L123
<KE0VVT>nckx: I'm scared to ^C guix pull.
<nckx>It's safe but don't, it's doing useful (if way too slow, known bug, to-do, etc.) work.
<nckx>gabber: IWBN® if it just used HEAD, if you're ever in the mood for patching that…
<gabber>i might as well get into the mood for that (i've been waiting for a nice opportunity to patch something *within* guix and not just bumping packages)
<KE0VVT>nckx: Done. Logging out.
<nckx>sneek: later tell KE0VVT: Good luck, try the manual sourcing if that doesn't work (so you'll at least know what to add to your own start-up files if needed). I'm going to feign sleep once more. 'night.
<sneek>Will do.
<KE0VVT>nckx: Fixed!
<sneek>KE0VVT, you have 1 message!
<sneek>KE0VVT, nckx says: Good luck, try the manual sourcing if that doesn't work (so you'll at least know what to add to your own start-up files if needed). I'm going to feign sleep once more. 'night.