<tissevert>but how does that interact with the code versioned in the repos ? are the various translations automatically generated by pulling from weblate while somehowe «interpreting» the versioned documentation ? I've seen translated versions directly in the repos, like contributing.de.texi
<efraim>They get translated in weblate and then manually synced back to the repository
<solene>to send a patch I use git format-patch HEAD~ and include the generate 000* file in a mail in my mail client, seems fine?
<vats>Hello. Would applying a manifest to a profile delete the packages not listed in the manifest (but were installed with guix package -i command)?
<tissevert>or simply the hash of the commit from which you want to compare, to avoid off-by-one errors
<vats>I haven't been using a manifest. And now my current profile is polluted with outdated packages which guix gc is unable to clean. I can't update the profile because it's taking up most of the space in the root partition. I was wondering if I make another profile with a minimal manifest, and set it as current profile, would guix gc clean up all the packages from the previous profile (which are not in the current profile) from the store?
<tissevert>I think you'd need to first release hold of those packages by deleting previous generations of your profile to allow the gc to consider removing them, but yes
<solene>what's the process to update patches in a package? I wanted to bump gnutls which fixes a new CVE but it has patches that doesn't apply anymore. I have no idea how to start working on the patch updates
<solene>on OpenBSD which I'm familiar with, I would extract the build, make changes and use "make update-patches" to regenerate patches from differences between files which has a .orig file and it automatigcally works :D
<tissevert>vats: I may be confused but by «outdated packages», do you mean that you have several older versions of those large packages ?
<nckx>solene: That sounds fancy IIUC (the automatic diff differ upper?) and also like something we don't have. I just: extract the sources in /tmp, twice (rsync-x.y, rsync-x.y.orig), make changes in one, then cd /tmp && diff -Naur rsync-x.y* > the original patch and commit it together with the update.
<nckx>Low tech perhaps, but straightforward enough.
<tissevert>well then you don't need to make yet another generation by using a manifest, you could start right away to delete old generations of your profile and check that guix gc frees space accordingly, or am I missing something ?
<nckx>vats: If you delete old profile generations (guix package -l) with guix package -d, otherwise they will all remain live and protected from GC.
<nckx>guix package -i and guix package -m both just create another new generation, neither delete older ones, that's separate.
<vats>nckx: How do I delete all the packages of a profile? IIRC, cookbook mentions that deleting the symlink is enough to delete a profile. How do I proceed to delete the packages installed in that profile from the store?
<vats>tissevert: I have deleted all the old generations. There is something that depends on those packages in my profile, or the system packages.
<vats>I can't figure out how to find those dependencies.
<tissevert>ahhh, well if it's in the system, then yes I don't see any way to make guix gc delete them
<tissevert>(I suppose you have also skimmed through the old generations of the system ?)
<vats>Oh, I didn't think about generations of the system. Does that mean listing generations as the root user?
<pkill9_>idk if there documentation on the inner workings much tbh
***bsima1 is now known as bsima
<mange>I just saw that magit has a new release, and I'm trying to use it with --with-commit=emacs-magit=v3.0.0 which works great. However, I also use emacs-magit-todos, and it complains about a conflict because it has emacs-magit as a propagated input and it's trying to bring in the Guix-packaged version of magit.
<mange>Is there some incantation I can use to be able to install both emacs-magit and emacs-magit-todos with magit version 3.0.0?
<mange>A specific command that fails for me: guix install emacs-magit emacs-magit-todos --with-commit=emacs-magit=v3.0.0
<ggg>Is it possible to use a macro inside the operating-system declaration? It seems like the record macro throws a syntax-violation as nested macros don't get expanded
<NieDzejkob_>(operating-system (my-macro)) won't work, but (operating-system (some-field (my-macro))) should
<ggg>That sucks, I was trying to make a "prepend" macro to add values to fields cleanly. Something like (prepend packages curl wget) instead of having to mess around with cons* and getting the current value
***betelgeuse6 is now known as betelgeuse
<apteryx>is --with-source=package=some-https-url supposed to be cached, or is it expected to always fetch the archive anew from the network?
<zap>Is it okay to set 'guix channel to local guix checkout?
<zap>I'll need to "make authenticate" and use --disable-authentication this way
<vats>tissevert: Aww, thanks for caring enough. No, I didn't crash my system. I cleared up 7GB of obsolete packages. Got a total of 15GB freed and left my system to build the manifest I generated from the current ephemeral profile. It's still building stuff.
<bone-baboon>Maybe this would be useful for #guix@Libera and #guix@Freenode. Parabola is using bridging bots to bridge between Libera and Freenode. <https://git.parabola.nu/~bill-auger/bridgin.git> (AGPLv3). libera-bot is relaying messages from #parabola@Libera to #parabola@Freenode. freenode-bot is relaying messages from #parabola@Freenode to #parabola@Libera.
<bone-baboon>One small downside of the bots relaying messages that I have noticed is that I can not tab complete a username for a someone who is only on Libera if I am only on Freenode or vice versa. My IRC client is not aware of user on the other network. However the IRC client I am currently using is Circe an Emacs IRC client so I can use `dabbrev-expand` with `M-/` to expand their username. So that is not problem for me. I would expect other IRC
<bone-baboon>clients also have some kind of auto completion capabilites.
<GNUtoo>solene: Since guix can be used for a lot of things, I can't really tell if it makes sense or not for you
<GNUtoo>In the case I described above I used guix for building a library I'm working on with different compilers to check if it built fine before pushing commits
<GNUtoo>So that diff came from the guix.scm I used to do that
<bone-baboon>GNUtoo: I am not sure what your question is. #replicant is in the alis output for both Freenode and Libera. I think volunteers for all the free and open source software focused IRC network currently have an increased number of support requests right now so that could explain the delay in response.
<tissevert>tversteeg: depending on whether the package you're considering is for a given binary util or library package, etc., it's usually possible to retriev the precise hash of the version you're interested in
<tissevert>for instance if it's a binary, readlink `which <some-tool-in-PATH>` will show you where it is in the store
<tissevert>it'll point to a file one directory too deep (in the bin/ subdirectory), but you'll be able to see the parent directory which is what you're looking for
<bone-baboon>solene: Based on stikonas point about use I do not know if a bridge between #guix@Libera and #guix@Freenode is needed. However I am currious why you think bridging #guix@Libera and #guix@Freenode would be harmful.
<stikonas>well, it can be harmful if there is spam...
<tissevert>first it requires us to be present at 2 places and moderate both of them
<tissevert>then, we moved out from Freenode out of security concerns about the handling of data, based on insights from the then-fleeing admin team, so letting people interact with us from Freenode would lure them into believing they'll have the same experience, safe on a personal-data level
<tissevert>which I think is currently harder to assume on Freenode than on Libera, hence the change
<dstolfa>aocusr: hostile takeover of accounts, servers, etc
<tissevert>IRC has email adress, ok, not big but still annoying for people who can't create temporary adresses at will, but also private conversations
<dstolfa>just because it's not end to end encrypted, it doesn't mean that you can't have levels of trustworthiness in between
<dstolfa>i trust libera admins that i personally know to not take over people's accounts. i can't say the same about freenode anymore.
<solene>bone-baboon: there are no direct threats but it adds maintenance, a SPOF, the bridge has to be trusted, you can't trust people from the other side, it brings really litle benefit to use a bridge, people will appear as "bridge_user: solene: hello!"
<solene>keeping the community split by using a bridge doesn't help IMO
<dstolfa>bone-baboon: i mean you're convincing the wrong person, i'm a strong believer of end to end encryption and decentralized internet
<bone-baboon>Thank you for the comments explaining the down sides of bridging IRC networks.
<lfam>I think a lot of us already were on multiple networks, since OFTC hosts a lot of major projects
<solene>bone-baboon: SSB isn't meant for the kind of use, IPFS doesn't handle messaging, Jami could work, retroshare is unreliable and hyper bloated and most distribution I know can't keep it up to date because it's a huge mess
<solene>xmpp or matrix would make sense as an IRC replacement
<dstolfa>+1 for XMPP, +0.5 for matrix just because element is hot garbage at the moment
<dstolfa>matrix itself is fine, i just wish there were better clients
<drakonis>you can use weechat-matrix or another cli client
<solene>the servers are not really mature yet though
<dstolfa>my matrix homeserver vm has a very "pretty" crontab for this very thing solene
<bone-baboon>solene: What did you mean by "you can't trust people from the other side" of a bridge?
<dstolfa>they probably meant that freenode is controlled by a person who has taken over at least one channel so far, so who's to say that it's really them? not to mention how many people dropped their accounts on freenode that can be taken over by anyone at this point
<solene>dstolfa: irc is bad at trust, but for people in a single channel you could at least have an idea if that's the real person you know (registered, always there etc..) but with a bridge you would need to be on the other side
<solene>look, I could connect to freenode and name myself bone-baboon and speak
<dstolfa>yeah... that too :). i guess the channel could be "registered users only", but even then with how many people dropped their accounts, it means nothing
<solene>that would be nice to have something like that for guix: https://cachix.org/ , everytime someone build a new derivation it could be uploaded in a central server and people could reuse it. That would be opt-in for use. Because of challenges it could be possible to regularly test contributors
<lfam>The only time we do special things with version numbers is when we have to update a package for a graft, and the new version number is a different length. The store path must be the same length when grafting
<lfam>Take a look at a9f84f93b45db712b3bd30943361a267cb85cf79 (libx11 security update) for the standard solution
<lfam>(We truncate the version and add the letter 'A')
<nckx>Why not start the daemon with nice 19? (20 is not a thing, but maybe it is on BSD 😉)
<solene>nckx: it could be started with nice 5 or 10, that would allow to use nice > 10 for even less priority processes
<solene>where would you change that setting? I'm curious ^^
<nckx>This reminds me of Paludis's ‘Rationale: Learn how to use nice. There's no GCC_NICENESS or VIM_NICENESS either.’, but Guix makes it impossible to just ‘nice guix build foo’ that it doesn't really apply.
<solene>I don't really understand how the pam limit works. If i use dd if=/dev/zero | gzip -f -c > /dev/null it's correctly niced to 10
<solene>but if I ssh to my own account locally and do dd if=/dev/zero | gzip -f -c > /dev/null, it's not niced to 10 but has a normal nice 0
<nckx>solene: I was thinking about this while AFK, and I don't think this approach will work for you anyway. limits.conf isn't some universal thing, it's specific to the PAM log-in framework, and PID 1 doesn't start after you log in. Nor do build users log in.
<solene>cbaines: do you think this would be possible to add a --nice parameter to the guix build-daemon? that could be configured from config.scm, the idea would be to run the builders with a high nice level than the user to reduce the impact of a compilation load over a laptop/interactive workstation
<nckx>Like gnu/packages. Guile modules are named after their location, or located after their name, whatever you prefer. They must match.
<Bumblehorse>It was just confusing because the sddm service is under "X Window" in the manual and it at the top it says to use (gnu services xorg) for X window support with no mention of any other modules like the sddm one.
<Bumblehorse>gdm and slim both being in the xorg modules but not sddm made it even more confusing
<Bumblehorse>thanks anyways, I will go restart and see what sddm is like