IRC channel logs

2023-09-13.log

back to list of logs

<mwette>Does anyone have static-networking-service-type working, meaning `herd status networking' does not report `stopped (failing)' -- even though networking (e.g., ssh) works?
<mwette>saw this in log: https://paste.debian.net/1291775/
<mwette>^ that error is not appropriate; the one I'm getting regularly is the `#<&netlink-response-error errno: 17>' one from #64653
<anadon>Is there a place to put packaging requests?  I know I should just make and commit the package myself, but I just don't have the time right now.
<anadon>In particular, I want to toss `timeshift` onto the pile.
<anadon>I need a scheduled job for `btrfs scrub start` and some defragmenting.  Is https://guix.gnu.org/manual/en/html_node/Mcron-Home-Service.html the right documentation?
<anadon>Ubuntu as base OS.
<RavenJoad>It seems that Guix's DHCP daemon (dhclient from isc-dhcp) does not automatically send the hostname of the machine as well. Is that not default behavior?
<jackhill>anadon: there's https://libreplanet.org/wiki/Group:Guix/Wishlist
<jackhill>dyou you have a link to timeshift by the way, I'm not familiar with it
<anadon>jackhill: https://github.com/linuxmint/timeshift
<anadon> All GPLv2+, so should be all good for FLOSS.
<anadon>Backed by Linux Mint, so it is actively developed, supported, and isn't going anywhere.
<jackhill>anadon: ah, cool!
<jackhill>an important property for backup software indeed :)
<anadon>jackhill, by chance, do you know where Firefox _actually_ stores it's user and session data.  I get entirely different experiences and saved sessions between Ubuntu's Firefox and Guix's analog.
<jackhill>anadon: no, sorry, I mostly use GNOME Web
<anadon>I'm doing an incremental change over to see how far I can get away from Ubuntu in practice.
<anadon>I require Firefox for cross-device synchronization, so that isn't an option for me.
<jackhill>An interesting adventure indeed.
<jackhill>ah yes, that does sound neat
<lilyp>anadon: in .mozilla, Firefox/Icecat stores its stuff in profiles
<lilyp>you might be using two different profiles by accident here
<RavenJoad>anadon: I believe Firefox stores all its local user data in $HOME/.mozilla/firefox
<anadon>lilyp: You'd think.  Tested wrong.
<anadon>I've sunk 20 hours in the last two days to fixing everything up and I am burning out getting everything pieced back together.  I just want to play Balder's Gate 3 right now.
<anadon>Hold on, need to reboot.
<lilyp>Is it balder than gates 1 or 2?
<anadon>No idea.  Haven't played them.  2 is sitting in my Steam Library collecting dust.
<anadon>lilyp Thanks Snap!  `/home/anadon/snap/firefox/common/.cache/mozilla/firefox/qkreelvk.default` is where firefox was saving it's data.
<bdju>peculiar that ioquake3 was packaged (not playable out of the box) but not openarena (depends on ioquake3 and is playable with free art/music I believe). would be cool to see openarena packaged
<unmatched-paren>interesting: PACKAGE seems to break in Geiser, but not in a terminal 'guix repl'
<unmatched-paren>the error is 'encountered raw symbol in macro output in subform socket of (current-location-vector)'
<unmatched-paren>if i add (location #f) it works in both, but without that it only works if you're not using geiser-connect to talk to the REPL
<rekado>what do y’all do to get the info documentation of your current project into Emacs?
<rekado>I don’t have automake and autoconf installed into my Emacs profile, so I don’t see their Info manuals in Emacs
<rekado>my workaround is to visit the info files by location (with C-u C-h i), but that’s rather inconvenient
<janneke>yeah
<janneke>i've just sent this <https://issues.guix.gnu.org/65586> patch for emacs-guix
<janneke>so that you have it after the clumsy
<janneke>echo $GUIX_ENVIRONMENT; M-x guix-set-emacs-environment RET C-y RET
<janneke>but i've just switched to using envrc.el and direnv (and sent a similar patch for envrc.el), that works wonderfully for me
<janneke>rekado: https://rednosehacker.com/combo-guix-shell-emacs-envrc-el (read to the end before nistalling stuff, because there's a twist)
<janneke>*installing
<rekado>janneke: thanks! I’ve been meaning to try envrc.
<janneke>rekado: i'm using an emacs shell-based workflow and then direnv+envrc is great; there's also a fully-elisp "direnv" implementation but i haven't really looked at that yet
<janneke>ACTION had been postponing to look at direnv/envrc for quite a while too
<janneke>i think that's emacs-buffer-env, but i'm not 100% sure
<janneke>rekado: see also <https://issues.guix.gnu.org/65439>
<andreas-e>Hello, cbaines! I am a bit confused as to the state of QA, maybe you can help me out. On the activity page, it looks like essentially nothing is happening, but there are still many open patches.
<sneek>Welcome back andreas-e, you have 1 message!
<sneek>andreas-e, ngz says: I have an idea. At the moment it is not possible for `guix shell' to extend a TEXMF tree without providing a full tree. For example `guix shell texlive-foo -- pdflatex file.tex' will not add `texlive-foo' to the available packages. However `guix shell texlive-bin texlive-foo -- pdflatex file.tex' will. My suggestion is to add `texlive-libkpathsea' as a propagated input for all TeX Live packages.
<cbaines>andreas-e, I think there might be some issue with submitting builds for patches, but I'm unsure
<cbaines>it doesn't help that the logs are filled with "Exception thrown while printing backtrace:"
<andreas-e>sneek: later tell ngz: This will break the compatibility of the monolithic texlive with packages such as texlive-biber, right? So I am not too fond of doing it for the time being.
<sneek>Got it.
<andreas-e>sneek: thanks, botsnack!
<sneek>:)
<andreas-e>cbaines: Okay. On the emacs-team branch, it says "Exception checking changes between merge base and master." The same potential bug, or does it mean that master needs to be merged into that branch?
<cbaines>andreas-e, that relates to data not being available for https://data.qa.guix.gnu.org/revision/db61bdd7f52270a35bd0a3a88650d98276dab20b
<cbaines>which can probably be fixed by merging master in, providing that master revison has been procesed by data.qa.guix.gnu.org
<andreas-e>I see, so something to be done by the emacs team.
<cbaines>the other thing which I can do is manually process this revision
<cbaines>it's been skipped as data.qa.guix.gnu.org isn't keeping up, but it's possible to just process it individually
<cbaines>on the QA submitting patch builds issue, I probably need to rewrite that bit of the code to use fibers as it's potentially hanging or not handling exceptions properly
<cbaines>it's not been particularly fun this week, but I have managed to make some similar changes to the nar-herder, which I think have turned out quite well
<andreas-e>Does this not just hide the root problem? I suppose that it then ends up creating new fibers that end up hanging as well?
<cbaines>andreas-e, hopefully not. Nonblocking I/O and suspendable ports in Guile are really useful for avoiding hanging when doing I/O, since that brings the control in to Guile
<cbaines>it's then possible to either hook in to the read or write waiters and have them poll with a timeout, or use fibers to wait and also raise an exception on timeout, I've now got a helper for doing this in the nar-herder https://git.cbaines.net/guix/nar-herder/tree/nar-herder/utils.scm#n772
<cbaines>I haven't tested it much, but I'm quite hopeful
<cbaines>and bringing the timeouts in to fibers is a bit more elegant that the hacky code to try getting the poll system call to timeout before it's restarted by the GC
<andreas-e>Ah, thanks for the explanations!
<sneek>andreas-e: Greetings!!
<minima>hi, is there an easy way to fix a missing `/run/.../shepherd/socket'? how do i recreate the socket? (i'm on foreign distribution)
<rekado>minima: are you using shepherd on the foreign distro? How?
<minima>rekado: i have services running that i manage with herd - but from your reply i understand i might be using the wrong terms
<minima>put more simply, `herd status' used to work and now complains that the socket is missing
<rekado>minima: this sounds like shepherd isn’t running.
<rekado>when shepherd starts it creates the socket file
<minima>yeah but then a friend was so stupid to nuke the socket, totally a friend, not me
<minima>:)
<minima>i suppose i can resume from this but "turnin-it-off-n-on-again" but i wondered if there was an alternative
<minima>s/but/by
<rekado>minima: there might be an alternative
<rekado>but I’m not sure
<rekado>you can check the PID of the shepherd process and go through its file descriptors
<minima>sure, no worries, thanks for helping anyway
<minima>ah interesting
<rekado>but I don’t know off hand if it’s possible to create a socket file for an existing file descriptor
<rekado>I messed around with /proc/PID/net/unix and socat, but I haven’t yet found a way to bind to a socket from the command line with just this information
<drewjose>hmm i sent a patch via git send-mail a few hours back and it's not on the ML archive
<cbaines>drewjose, if this is the first time you've sent a patch, it can take a little while to be manually approved
<rekado>I just noticed that update-package-inputs in guix/upstream.scm will always return #false for unchanged?, because it compares a list of symbols with a list of strings.
<graywolf>Hi, I am trying to properly sign my guix fork, and cannot figure out how to do so. I am looking into git-authenticate.scm, and it looks like it uses intersection of signing keys from all direct parents of a commit? Does that mean that when I authorized my key on my master, the merge commit merging updates from official master will fail to validate?
<graywolf>How exactly is one supposed to keep guix fork up to date?
<jpoiret>graywolf: you want to use the fork for guix pull?
<jpoiret>if so, you'll want to change the introduction commit to one adding your own key
<jpoiret>maintaining an authenticated guix fork is pretty hard
<graywolf>Well yeah, I did so. And commits to master directly correctly validates. But merging guix' master fails with error regarding the signing.
<jpoiret>was it a merge or a rebase?
<graywolf>Merge
<jpoiret>i'm not a specialist wrt. merges, but the merged commits should have the same sha so their signature should still work
<jpoiret>did you sign the merge commit?
<graywolf>Yeah, but as I wrote, I *think* it uses intersection of the allowed keys, so it fails to validate (since my key obviously is only in one of the two parents).
<graywolf>So I am curious what one is supposed to do.
<jpoiret>i don't think it should work like that (disclaimer: haven't looked at the implementation)
<jpoiret>ah, maybe all new commits need to be descendants of the introduction commit
<jpoiret>which won't be the case here
<jpoiret>that would also be weird though, since you only need to authenticate the merge commit
<graywolf> https://paste.debian.net/plain/1291815
<graywolf>Both commits seems to be signed, yet just the first one is accepted by the pubb
<graywolf>pull*
<jpoiret>no you're right, the merge commit has to be signed with a key in the intersection
<graywolf>While I somewhat get the reasoning, that makes forking a very difficult thing... :(
<jpoiret>graywolf: what is the reasoning?
<jpoiret>it would complicate the implementation but you only need to have an authentication chain from the introduction commit to the target one
<graywolf>Well in git you really cannot track which branch is what parent. Usually the first parent it the one being merged into (master), but that is a convention, not a hard rule.
<graywolf>Hm, I guess that is right?
<jpoiret>you don't need to know that, only need to find the chain of commits from one to the other (that's doable) and only authenticate those
<graywolf>No way to get that code into my fork though without being able to sign :D
<graywolf>I'll guess I will try to make due without the merge commit
<alethkit>Is it possible to inherit build systems, or would I need to copy-paste an existing definition to make my own?
<zamfofex>alethkit: You can use ‘modify-phases’ like in https://git.savannah.gnu.org/cgit/guix.git/tree/guix/build/copy-build-system.scm
<mirai>alethkit: copy-build-system is derived from gnu-build-system
<mirai>you can start looking there for ideas I guess
<jpoiret>deriving a build-system still requires a bit of boilerplate but re-using phases is easy
<mirai>also a valid tactic ^
<mirai>depends on how non-trivial or how often you're planning to use this “build-system”
<mirai>IIRC xdgmime or shared-mime-info in gnome-team branch shows how to mix phases
<alethkit>thank you!
<mirai>anytime
<euouae>Hello, how to lock down the root user?
<euouae>I thought about changing /bin/bash to /bin/nologin but I am not sure if that makes sense
<euouae>in /etc/passwd
<mirai>It should be through the config.scm
<mirai>followed by a reconfigure of course
<euouae>mirai, but how do I configure root like so?
<euouae>it's not like other users
<mirai>no example in the manual?
<euouae>I don't think so
<mirai>you will need to modify %base-groups
<msavoritias>yeah nothing in the manual just checked
<euouae>modifying base-groups does not seem to lead to passwordless root
<mirai>hmmm
<euouae>and in general, it's not clear how root is configured
<mirai>ah, wait
<mirai>no need to touch %base-group
<mirai>I think you can just add an user-account record for "root"
<euouae>got it
<mirai>a root account is automatically added if there isn't one present if I understood correctly
<mirai>so configuring one manually should do what you want
<euouae>hmm I get a bunch of errors
<euouae>guix system reconfigure /etc/config.scm gives a Backtrace: a Git error that the SSL cert is invalid
<euouae>oh maybe my internet connection isn't working for some reason
<euouae>It seems that DNS is working but I can't send or receive pakcets
<mirai>or time
<euouae>huh, time is off right
<euouae>I thought I had the right timezone
<euouae>in config.scm
<zamfofex>It might be worthwhile to set up an NTP service.
<euouae>I thought I made that choice during manual installation
<euouae>Did I need to configure it further after choosing it?
<euouae>oh nevermind, I mixed up graphical install with no WM and manual install. Indeed, no NTP was set up
<euouae>but my timezone was right. Not sure why it's so off
<mirai>drift
<mirai>you can have a watch and a clock in your house but how often are they correctly marking the exact same time? :)
<euouae>I see
<pastor>Good evening. Any hint on this error? `guix pull: error: Git error: config value 'safe.directory' was not found`
<pastor>I've been using guix for a few months now and this is the first time I see it
<pastor>Seems that removing `~/.cache` fixes the issue. How could this have happend?
<euouae>pastor: some git cache thing? newer git is more careful about safe.directory because git hooks can be malicious
<minima>i use password-store and gpg-agent and all works fine except for cron jobs; pass can't access gpg-agent unless i prepend the cron job command with `BASH_ENV=.../.bash_profile'
<minima>is there any recommended alternative here? or should i rely on `BASH_ENV' as above?
<minima>apologies this might not be very guix specific
<minima>it doesn't feel very elegant to pass the whole `.bash_profile'
<minima>all the commands involved are provided via g-expressions and have full path, i think the issue is for pass to access the gpg-agent
<vivien>Hi! QA did not pick the latest revision for my patch series: https://qa.guix.gnu.org/issue/65828. More specifically, the git branch that qa uses does not aggregate the latest revision of the patch series (the latest revision uses gegl 0.4.44 as a dependency for gnome-photos, instead of 0.4.46). Is there a way to reset the branch?
<vivien>Also, my patch series seems to be applied on top of a random commit on the master branch, and not on top of gnome-team. Why is that?
<minima>(of course, there's also the problem for pass to know where the PASSWORD_STORE_DIR is... and similarly for gpg to know of its homedir)
<minima>(or possibly those are the only problems with my config)
<minima>how do i reload mcron after "guix home reconfigure ..."? i've tried `herd restart mcron' but that doesn't seem to read the new job definitions
<mirai>herd reload?
<mirai>have you confirmed this with herd schedule mcron?
<minima>mirai: thanks, `herd reload' asks for a service; `herd reload mcron' says reload is not supported (restart is); i'm now checking `herd schedule mcron'
<mirai>I meant `herd reload mcron' my bad
<mirai>though looks like it doesn't matter as you've confirmed
<minima>mirai: you were right, herd schedule confirms the job gets reloaded after herd restart mcron
<minima>so there must be an issue in the way i pass the env vars to the pass command
<apteryx>ACTION sends qt patches with 'mumi send-email *.patch', and mumi is awaiting for the Debbugs ack: Server has not yet received our email. Will retry in 60 seconds. 14 retries remaining.
<apteryx>that's cool
<apteryx>it worked!
<bjc>on a recent pull with after a ‘make clean’ i'm getting: contributing.de.texi:1447: @menu reference to nonexistent node `Configuring Git'
<bjc>plus another one in ‘Sending a Patch Series’
<graywolf>bjc: I think you need to guix pull
<bjc>sorry, i mean from a git pull, not guix pull.
<graywolf>Yeah, but from guix shell -- ... right?
<bjc>yeah
<graywolf>You need a never guix pull to be able to build from git
<graywolf>Happened to me as well
<bjc>i'll try a guix pull then. what's the source of this interaction?
<zamfofex>I guess you meant “newer”.
<graywolf>Some package I don't remember was updated
<graywolf>newer, yeah :)
<graywolf>bjc: you can try to search irc logs, I recall last time someone actually wrote the reason I think
<bjc>👍
<graywolf>ACTION considers whether to install some font with emoticon support... because that is a pretty nice square bjc has there...
<zamfofex>I have somewhat recently installed OpenMoji.
<bjc>is there a make target for cleaning the post-translated texi files?
<nckx2>I never found one but you shouldn't need one?
<bjc>you do when the translation dumps texi files with errors in them
<bjc>deleting them by hand works, but ‘make clean’ should really clean up all the things that get built when you type ‘make’
<nckx2>I mean that my texi files never had errors in them.
<nckx2>Even with the old po4a.
<bjc>i just did because i didn't ‘guix pull’ before i tried to build from git today
<bjc>and i've introduced my own errors before when editing the docs
<nckx2>Right. In my case po4a barfed tasty stderr, but what it didn't do was produce corrupt texi files before dying.
<bjc>regardless, the default for ‘make clean’ should be to clean everything that ‘make all’ creates, which includes the translated texi files. you should need a reason *not* to do that
<apteryx>bjc: po4a was patched to support partial menus
<nckx2>Naturally.
<bjc>ok, but it still broke and i had to manually rm a bunch of stuff by guessing
<nckx2>Please report a bug if it the standard 'make clean' doesn't do that.
<bjc>i will
<nckx2>Or is it distclean? Whatever, senorproper.
<nckx2>Thanks!
<bjc>maybe even with a patch if i can figure out how to coerce automake into my bidding
<nckx2>That's dark arts them is.
<bjc>isn't the point of the ‘clean-go’ target to not touch the translations, though?
<nckx2>IMO the name implies this at the very least.
<bjc>i vaguelly recall that being their impetus when the target was created
<nckx2>So even if it does something else now it's debatable whether it should.
<nckx2>Right II.
<nckx2>(Are you implying it does more?)
<bjc>if i'm right, it implies that ‘clean’ got borked recently and it was supposed to be cleaning up the translations all along
<nckx2>I expect it to be as close to a git clean as possible without breaking some GNU standard.
<bjc>right. it wouldn't touch the ‘configure’ file, or other things made by ‘bootstrap’
<nckx2>TBH info/translation cleaning has always been a bit nondeterministic AFAICT.
<nckx2>So if you're willing to tackle that, I'd be even more obliged.
<bjc>i'll look into it when i get a bit of time. automake does frighten me, though
<nckx2>(That my own experience told me that merely upgrading po4a would have fixed your problem seems to imply that, too.)
<nckx2>Understandable.
<apteryx>bjc: info autoconf / info automake are your friends
<apteryx>how do I mark a package as linux-only?
<apteryx>(supported-systems (filter (cut string-contains <> "linux") %supported-systems)) ?
<apteryx>guile-fibers does so: (filter (cut string-suffix? "-linux" <>) %supported-systems)
<jpoiret>apteryx: you might want to use target-linux?
<jpoiret>uhm, I meant system-linux?, but I guess we don't have it
<jpoiret>only system-hurd?
<jpoiret>although its definition seems to also handle system strings, not just targets
<apteryx>yes, I guess we'd have to add system-linux?
<apteryx>or just %linux-systems
<euouae>Hello how would I add nologin as my root's shell?
<euouae>I tried with (shell (file-append nologin "/sbin/nologin"))
<euouae>but I get a nologin: unbound variable error
<nckx>There is no such package.
<nckx>Where did you find this tip(?)?
<nckx>shadow provides an /sbin/nologin. So does busybox, if you feel like being silly.
<euouae>nckx: nowhere, I came up with the tip
<euouae>how do you lock down root?
<euouae>oh, just do passwd -d
<nckx>‘Lock down’ meaning… setting nologin as the shell? Should be as you describe, but with the right package instead of nologin.
<nckx>Right.
<euouae>I get errors about my SSL certs
<euouae>and ping google.com drops packets
<lilyp>rekado: my workaround is to start emacs from guix shell
<euouae>SSL cert errors with guix system reconfigure
<nckx>One wonders what they say.
<euouae>Fair enough I'll let you know soon
<euouae>How can I disable passwordless root login at virtual terminal prompt though?
<euouae>passwd -d root didn't do it
<euouae>this is my guix system reconfigure /etc/config.scm <https://termbin.com/0u0l>
<nckx>Have you considered my shadow remark?
<nckx>Works here.
<euouae>I will consider it for removing root login, thanks.
<nckx>Re: the SSL fun: is your ‘date’ set correctly?
<euouae>I dont' know yet what 'objects' mean but I will study g-exprs tomorrow
<euouae>yeah my date is set correctly I made sure to install ntp srevice
<nckx>(user-account (name "root") (uid 0) (shell (file-append shadow "/bin/nologin"))) ; and don't forget to import the ‘admin’ package module
<nckx>A running NTP service doesn't imply a correct time, but I'll assume you've checked. This is odd! What does ‘echo $SSL_CERT_DIR and $SSL_CERT_FILE’ say?
<euouae>cool
<euouae>nckx, just so you're on the same page as I
<euouae>I installed guix with qemu on the bare-bones manual install
<euouae>SSL_CERT_DIR=/etc/ssl/certs, SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt
<nckx>Oh.
<nckx>Add nss-certs to the system's packages field.
<nckx>Save yourself a world of pain. The bare-bones system is just that.
<euouae>lol
<nckx>It's in the ‘certs’ package module (you can check this yourself with ‘guix show nss-certs’, location field).
<euouae>it sounds like I'm saving #guix my painful troubles
<euouae>nckx, so start with XFCE then?
<nckx>‘People should choose their own trust store in an informed fashion’ — The entire world: uses NSS.
<nckx>euouae: I didn't mean that, I only meant that you should add *at least* nss-certs to the very limited defaults of bare-bones.tmpl.
<nckx>But unless you *want* a very minimal system, sure, that'll work too.
<nckx>You can still experimentally remove stuff from that and at least roll back when it breaks.
<euouae>nckx, got it. IMHO those could be comments in the bare-bones.cfg
<nckx>#goodfirstpatch
<euouae>heh
<euouae>I should! thanks
<nckx>The ‘bare-bones’ name isn't supposed to sound cool and minimal, but I guess there's always the allure of the most minimal configuration…
<nckx>ACTION guilty.
<euouae>I figured out the best way to learn is to start minimal
<nckx>Wait until you learn about the trivial-build-system. /s (Don't. Yet.)
<nckx>But honestly, an extra warning specifically about the ‘missing’ certs is probably a good idea.
<bienjensu>Is there a theoretical replacement for the nss-certs package that would do the same job?
<euouae>in-house certs for example
<apteryx>nss-certs are basically 'mozilla's trusted CA roots'
<apteryx>perhaps there could be a package for 'google's trusted CA roots'
<bienjensu>ha
<apteryx>or similar
<nckx>I use an ‘nss-certs minus some of the nss-certs’ package.
<nckx>It's a valid use case, just arcane.
<apteryx>git log -G is so slow... I wish what I'm searching for was in the ChangeLog
<apteryx>(when was support for /etc/udev/rules.d support added)
<bienjensu>Wow. I thought my LUKS setup had broken but for some reason the second key prompt had its input method as dvorak.
<nckx>apteryx: e9fa17eb98efbd6211ab44ab49b8c078d4b73e04?
<nckx>Or are you talking about udev, because I know that name.
<nckx>(Saw it just to late, gah.)
<nckx>(Too, gah.)
<apteryx>nope, I mean 'udev-rules-service' now honoring rul files found under etc/udev/rules.d *in addition to* the legacy lib/udev/rules.d
<apteryx>uh, it doesn't?
<apteryx>according to %standard-locations in (gnu services base)
<apteryx>should it?
<apteryx>ah, Debian says: "Packages install rules in /lib/udev/rules.d), while the /etc and /run locations provide a facility for the administrator to override the behavior of a package-provided rule." (https://wiki.debian.org/udev)
<apteryx>so packages really should install their files to lib/udev/rules.d
<apteryx>ACTION forgets about that every now and then
<nckx>Yes. This is the general etc/lib rule in FHS distroes.
<apteryx>oh? maybe that's good enough for me to remember it :-) thanks
<nckx>Where I guess FHS is systemd now, de facto, because if they ever move, everyone's along for the ride.
<apteryx>what got me curious in the first place was this NixOS package: https://github.com/NixOS/nixpkgs/blob/release-22.11/pkgs/os-specific/linux/teensy-udev-rules/default.nix
<apteryx>which puts the file under etc/udev/rules.d
<nckx>I strongly suspect this is from the empirical experimentation school of package writing.
<nckx>It worked, how could it be wrong?
<nckx>Something something squirrel.
<apteryx>eh
<euouae>so do I also need this line (use-modules (gnu) (gnu system nss)) for nss-certs?
<euouae>I'm not sure what 'system' refers to
<euouae>my original line was (use-modules (gnu))
<nckx>You do not need it. (gnu system nss) has nothing to do with certificatos.
<euouae>Ah got it. It actually worked without it. I'll look into this tomorrow
<nckx>Er, certificates, sí.
<ssouth>The person who wrote the "Using TeX and LaTex" section of the manual is a saint.
<bienjensu>Don't want to know what sort of trouble I'd have to be in to be using all 6 ttys in %base-services.
<apteryx>a rare use of single file source: https://paste.debian.net/1291863/
<euouae>why is the hash base32'd?
<nckx>bienjensu: Am I in trouble? I have 12 and sometimes wish for more…
<apteryx>euouae: it's just the default output for 'guix download'
<vagrantc>so many ttys ... ever since i discovered screen and later tmux ... i usually only need at most two ttys ...
<sneek>Welcome back vagrantc, you have 1 message!
<sneek>vagrantc, efraim says: I tried manjaro's alsa asound.state on my pinebook pro and I had working sound through my speakers and headphones
<vagrantc>efraim: shiny!
<nckx>euouae: Because MD5 and CD-ROMs.
<nckx>Let me find the link.
<nckx> https://edolstra.github.io/pubs/phd-thesis.pdf page 94, second half.
<bienjensu>nckx: Do you work a lot in ttys? I only really use them during recovery or system setup.
<nckx>vagrantc: Does tmux handle framebuffer graphics?
<somenickname>What are advantages of using Guix to create a container?
<nckx>bienjensu: More than I expected to, nowadays. For one, they help keep me focused.
<nckx>That being a point of pain.
<bienjensu>I tried using emacs in ttys for a while but using things like gdb and getting a reasonable font working felt quite hacky.
<vagrantc>nckx: cannot recall, been a while since i've tried ... i know screen did not so many years ago.
<bienjensu>I've since become an RDE'r
<euouae>nckx, cool. is this the thesis that nixos was born out of? why does it say 1978?
<euouae>oh the author was born that date
<euouae>it's definitely too late to be reading pages from a thesis
<euouae>esp. not the thesis that nixos is based on :P
<euouae>however this thesis looks like it is very educational. thanks for linking.
<nckx>Glad to be of some use.
<apteryx>bienjensu: what are the rde novelties?
<bienjensu>I actually like the configuration idiom, and the defaults are sane enough.
<enzuru>Hey friends, does anyone know how to disable hibernate / sleep on Guix System? Search engines haven't turned up much.
<enzuru>wouldn't mind modifying the auto lockscreen behavior either
<mirai>enzuru: for GDM?
<apteryx>trying to get 'git submodule' to work in a from wrapper (not in a profile0
<apteryx>so far I've added $git-minimal/bin to PATH and $git-minimal/libexec/git-core to GIT_EXEC_PATH, but 'git submodule' still throws a 127 (not found)
<apteryx>any idea?
<enzuru>mirai: Yeah GDM is the login / lockscreen
<enzuru>honestly, would prefer if it never locked at all
<mirai>enzuru: can you open an issue about this to bug-guix
<apteryx>it's not an issue in Guix
<enzuru>yes i can -- wasn't sure if this was a bug or if it wasn't documented
<apteryx>it's just the default behavior of GDM
<apteryx>you can disable that with https://paste.debian.net
<mirai>I assume you already did the (suspend #f) on gdm configuration
<apteryx>ah, logind behavior?
<enzuru>nope, didn't realize GDM was behind the sleep/hibernate. i can do the (suspend #f) in GDM configuration, thank you
<mirai>GDM has its mysterious ways to subvert your expectations
<apteryx>enzuru: there's also (auto-suspend? #f) for gdm-service-type
<apteryx>I mean, for gdm-configuration
<enzuru>perfect, i'll try both
<enzuru>thank you
<mirai>Fun fact: (auto-suspend #f) is ignored under some conditions
<apteryx>which ones?
<nckx>…and ‘suspend’, assuming it exists, is undocumented.
<mirai>once you sign-in interactively once
<nckx>apteryx: Your paste link didn't link, by the way.
<mirai>the settings you configure via the Settings app take over
<apteryx> https://paste.debian.net/1291866/ ?
<nckx>That's better :)
<mirai>and it will suspend/etc. act contrary to what you expect
<apteryx>ACTION still scratches as to why GIT_EXEC_PATH won't allow 'git submodule' to work from a wrapper
<apteryx>maybe it's single-valued?
<apteryx>ah, yes
<mirai>I have a snippet in my config that sprinkles the necessary magic dust to coerce GDM in this regard
<ssouth>enzuru: If you're using a laptop you might be looking for the handle-lid-switch* and idle-action settings of elogind-service-type.
<ssouth>See "elogind-configuration" in section 12.9.9, Desktop Services of the manual,
<ssouth>Setting these options to 'ignore stopped my laptop from going to sleep when I didn't expect it to.
<mirai>perhaps I should take a stab at upstreaming it (yet one more task to the evergrowing TODO list)
<apteryx>git submodule still not happy...
<nckx>ssouth: The default idle-action *is* 'ignore, or should be.
<ssouth>nckx: True; I mention it for completeness, though I fact I have it in my config.scm makes me think that wasn't always the default.
<apteryx>here's the package: https://paste.debian.net/1291867/ (on top of some other changes)
<nckx>Poss.
<apteryx>ah, maybe just 'sed' not found
<nckx>ssouth: TBC, I've set plenty of ‘default’ options out of pure desperation myself 😉
<nckx>grep -Eic 'XXX|FIXME|TODO' /etc/guix/system.scm
<nckx>31
<ssouth>nckx: Could be why I set it myself. I remember the sleep-on-idle behaviour changing at one point and it annoyed me greatly.
<ssouth>The default behaviour, I mean.
<jpoiret>didn't the close lid while plugged in action change as well?
<nckx>I think so.
<jpoiret>i remember noticing that some time ago, it used to not sleep (great!) but now it does
<nckx>Or something adjacent.
<jpoiret>was too lazy to track it down
<mirai>the default was changed
<mirai>some at least
<jpoiret>i just keep it open and do an undocumented shortcut that sends the sleep key
<ssouth>nckx: That was probably it. Super annoying until I figured out what the cause was.
<nckx> https://git.savannah.gnu.org/cgit/guix.git/commit/?id=59ee837d8b11d7d688045b601e8b240ccbdbe7c7
<jpoiret>huh, disregard that, i don't want it to sleep, seems like it's me who needs sleep 🙃
<nckx>The change was for good.
<mirai>before, they carried a lovely comment that went like “… disable it temporarily…”
<apteryx>re git submodule, yep, happier now
<apteryx>was missing unpatched commands
<jpoiret>nckx: thanks!
<apteryx>that's bug#65924
<somenickname>I installed Emacs with home.  How can I install additional packages without restarting Emacs since I use EXWM?
<somenickname>as of, I need to restart my session or else it doesn't find the newly added package which is kinda annoying if you try things out
<nckx>Long shot is long, but: anyone using the Linux pstore_blk driver with anything remotely resembling success?
<ssouth>somenickname: If no one else replies, I use "M-x load-file ~/.guix-profile/share/emacs/site-lisp/subdirs.el" followed by "M-X guix-emacs-autoload-packages".
<ssouth>This works but I feel it's necessary only because I've missed setting something up properly.
<jpoiret>ssouth: couldn't you just (require 'subdirs) instead of the first? why is that needed even?
<jpoiret>is guix-emacs missing a require? 🤔
<ssouth>jpoiret: I honestly don't know. I feel like I've had "(require 'subdirs)" in my ~/.emacs before and it had no effect. But like I said, I'm pretty sure I've missed something here.
<ssouth>jpoiret: I do have in my ~/.emacs now: (load-file "~/.guix-profile/share/emacs/site-lisp/subdirs.el") and (guix-emacs-autoload-packages). Doesn't do the trick.
<jpoiret>wdym doesn't do the trick?
<jpoiret>i don't use guix emacs unfortunately
<ssouth>jpoiret: I was going to say, it doesn't make Emacs see newly installed packages automatically. But actually, it's not supposed to do that.
<bienjensu>Does the environment switching functionality in guix-emacs make visible the packages in the switched-to profile?
<ssouth>It _does_ make Emacs "see" packages installed by Guix at start-up, which is what it's meant to do. So really, that works, and I'm pretty sure it's documented in the Guix manual (I obviously got it from somewhere).
<ssouth>I don't think there's anything that allows Emacs to automatically discovered new Emacs packages installed by Guix. Unless someone can enlighten me...
<jpoiret>looking at the source, it should work
<ssouth>I remember struggling with this for some time myself though.
<jpoiret>as long as your EMACSLOADPATH was already set to the profile's directory
<jpoiret>and that's just for autoloads, you shouldn't need to do anything to just (require 'somepackage)
<ssouth>jpoiret: Right, I have an (add-to-list 'load-path') call on the line above.
<ssouth>But it's never _automatically_ loaded new Guix-installed packages though as far as I can recall.
<jpoiret>and i'm off to 💤, see you later
<jpoiret>ssouth: i don't know what you mean by _automatically_
<jpoiret>you have to do something manual to load a package, right?
<ssouth>jpoiret: As in, you install an Emacs package via "guix package --install" at a shell, and it's just automatically available in Emacs aferwards.
<ssouth>I should clarify: I do everything from within Emacs (from within EXWM, actually), including running shell comman ds.
<jpoiret>that should work OOTB though, since it'll be available at a path that's in emacs' load path
<jpoiret>if you need autoloads you'll probably need to run the guix-autoloads thing
<ssouth>So as an example: If I were to run "guix package --install emacs-elpher" at a shell prompt from within a shell running inside Emacs/EXWM, I could not then type "M-x elpher" and expect the command to work until I'd first done the "M-x load-file ..." dance I outlined above.
<jpoiret>ah yes, that's normal!
<ssouth>Okay, that's kind of what I thought. Although of course it would be nice to have that work automagically.
<jpoiret>maybe i'm too used to how emacs works that i thought it was obvious behavior
<jpoiret>you'd need to have some sort of file watch on the guix profile... too much work for too little imo
<ssouth>Right, probably true.
<somenickname>Ah it is because Emacs does not recheck the directory?
<ssouth>somenickname: I think so. It doesn't actually know anything has changed until you tell it so.
<somenickname>ssouth:  Okay kinda makes sense.  In other words this would be more an Emacs issue as a Guix issue
<ssouth>somenickname: I suppose so, although I think that (as jpoiret said) things are basically working as designed.
<somenickname>Now I better understand it.  I always thought that I may have configured something wrong.