IRC channel logs
2026-06-01.log
back to list of logs
<apteryx>hm, gdm doesn't seem to source .bash_profile on a logout/login? <apteryx>maybe just on a fresh reboot? was there a setting ta alter this? <acidbong>moin. when Guix scans a channel for packages, does it only look for those defined with `package`? <acidbong>also how does Guix match specifications? by `name` field or the Guile binding? <apteryx>the problem I have is that emacs packages installed to ~/.guix-profile are not discovered... but the 'guix package --search-paths -p $HOME/.config/guix/current -p $HOME/.guix-home/profile -p $HOME/.guix-profile -p /run/current-system/profile' command that is in my ~/.bash_profile seems to do the right thing w.r.t. to setting EMACSLOADPATH <apteryx>I believe it'll look for all exported package variables <apteryx>ah, I suppose Guix Home does not expect me to use a .bash_profile file, perhaps? <apteryx>yeah, saw that; it defaults to '(), which is odd since Guix System has a %default-bash-profile skeleton for it <apteryx>actually, it default to just if [ -f ~/.profile ]; then . ~/.profile; fi and if [ -f ~/.bashrc ]; then . ~/.bashrc; fi, implicits you cannot remove <apteryx>efraim: in 5ef5095ab101874e1ddee99fabb9c14e30888b9d you cleaned up the %default-zprofile skeleton; should the same be applied to %default-bash-profile ? <efraim>apteryx: uh, I haven't had to look at that in 2.5 years but I believe the intention was to decrease duplicate code and to move toward turning the home skeleton into a home-profile <apteryx>I'm not sure it's correct, especially for foreign distributions that won't have the Guix System provided /etc/profile <apteryx>(the profile merging part I see as potentially missing for them) <efraim>I think at the time there was a lot more "here be dragons" surrounding guix-home on non-Guix System <efraim>so I think you're right, we shouldn't assume that /etc/profile is provided by Guix <apteryx>I think the default should work for all users, even foreign distribution users, with perhaps a guix-defaults? to toggle to #f until we better automate it to remove extra code, if desired? <efraim>I still want to import gnu/home/... into gnu/system/shadow <efraim>I think at least some of the fields have a guix-default? toggle <apteryx>oh, I see, using guix home instead of skeletons? <apteryx>they need to be synced, currently skeletons do more than gui xhome <efraim>It needs more plumbing from the services first, for example the gdm service, but that's one of my forgotten TODO items <apteryx>for example we may want to splice user provided .bash_profile in the middle of %default-bash-profile, so that export PATH=/run/setuid-programs:$PATH gets set last <apteryx>ACTION was trying to figure out why EMACSLOADPATH is messed up <apteryx>(things from guix home are found, but not from the regular guix profile) <apteryx>that looks like a good problem for 'guix home container ' <efraim>thinking out loud for a moment, %default-skeleton-home-config is specifically "for" Guix System, but there's nothing preventing people from using it on non-Guix System, and the home-<shell>-service-types at a minimum shouldn't break login on non-Guix System when used on non-Guix System <apteryx>uh, 'guix home container' does not expose /etc/profile <efraim>I've definately noticed some inconsistencies between guix-home and the skeleton files, I just assumed I set something up wrong <apteryx>nor does it expose .guix-profile, so debugging is limited <apteryx>efraim: these are %default-bash-aliases <efraim>we have gnu/system/shadow imported into gnu/home/services/shells, so I think it makes more sense to make that the canonical location and note it explicitly <apteryx>looks like we should extend %default-bash-aliases instead of overriding it :-) <apteryx>the doc could help getting this right <efraim>unclear wording is unclear. make gnu/system/* the canonical location and then pull them into gnu/home/* <apteryx>efraim: I think the guix package --search-paths is more powerful that just sourcing each profile; it seems to really merge the profiles <apteryx>e.g. if I have emacs-some-lib in ~/.guix-profile and my emacs (consumer) in ~/.guix-home, it sets both in EMACSLOADPATH <apteryx>so even on Guix System it's beneficial to have it <efraim>that's a lot better than telling everyone the gotcha that it all needs to be sourced from the same profile <efraim>`guix package --search-paths` sets the search-paths in the order that they are listed, but I assume it overrides the ones that might already be set, breaking guix-home on non-guix-system <efraim>I think some of /etc/profile should be revisited, espeically the ones with an associated bug <efraim>also, we've removed lsh and lsh-service-type, so we can remove all those workarounds <apteryx>ideally we'd have a single thing to maintain ^^' <apteryx>including the installer and guix home <apteryx>now we have skeletons, guix system specifics, guix home and the installer <apteryx>it looks like what happens in my case is that GDM profile only sources ~/.profile and doesn't care about ~/.bash_profile <apteryx>if it did my EMACSLOADPATH would be set correctly <apteryx>I'm not sure why I'm the only one having found that ~/.guix-profile becomes useless on GNOME following a migration to Guix Home <apteryx>err, I just pushed two commits to master by mistake (forgejo) <apteryx>ACTION thought they had issued pull, but apparently my shift key didn't register ^^' <apteryx>the small doc improvement is in a809ff20a07 <apteryx>but to keep going for now I'll put everything in my home profile ^^' <efraim>it looks like we really do want 'guix package --search-paths' for all the things <apteryx>by the way, if someone would like deploying their own forgejo instance, I'd be happy to have feedback on codeberg.org/guix/guix/pulls/9006 <apteryx>cbaines: you may be interested, since I think I saw you are running forgejo yourself ^ <efraim>apteryx: for `guix package --search-paths` check out guix/scripts/profile.scm:590, there's --search-paths={exact,prefix,suffix} <efraim>TIL about home-xdg-data-files-service-type, time to put that into use <csantosb>Hi Guix ! I have a server with a small root partition; and a large /home partition. <csantosb>Is is possible to move /gnu/store under /home/me/gnu/store, creating a simlink to /gnu/store ? <efraim>csantosb: I think you can bind /home/gnu/store to /gnu/store but not /home/gnu to /gnu, but I'm not sure <iyzsong>csantosb: as i remember, both should work. you can try.. <csantosb>efraim: is home-xdg-data... documented somewhere ? just found 20645d84678 <efraim>yes, but I didn't realize it was there <gabber>is arunisaac not in etc/teams.scm? <csantosb>Regarding the move of the store somewhere else, it's documented in "2.1.1 Installation with a pre-mounted store" <csantosb>Works better if one reinstalls from scratch; cp of /gnu/store is problematic. <civodul>pulls.ci was restarted and in doing so forgot everyone’s pull requests <civodul>but you can trigger it by rebasing your pull request <ghil>by setting (home-fish-service-type) in the home config, it doesn't set the user's shell (which is declared in system) right? I tried adding to the user in system, pointing it to /bin/fish, only to not be able to reconfigure. What's the best solution to have Guix manage fish? <civodul>yelninei: good question; sorry for dropping the ball, lemme see <civodul>yelninei: i checked one of the build nodes: it’s running 642382f87564a0959a95ebabd197842334751601 from March <civodul>so i guess it has yet to be deployed, right? <yelninei>thank you, I hope it can build commencement with that (i can on my system), although there is still the issue with the reboot timer <civodul>alright, i started ‘guix deploy’ (which takes ages because it has to build those childhurd images) <yelninei>civodul: When it is finished can you reschedule the gcc-boot0 as well? <RavenJoad>Does Guix, Shepherd, or mcron have an alternative to schedule a command to run in the future? <ieure>What do you mean by "an alternative?" <rogerfarrell>What does generated code mean in the context of (gnu home services mpv)? <waffles2>did they fix the allow downgrades thing for stable yet <psycotica0>> Does Guix, Shepherd, or mcron have an alternative to schedule a command to run in the future? <psycotica0>Do you mean a one-off command, rather than a recurring one? <RavenJoad>ieure: I cannot seem to find a package that provides the 'at' command to run something at a future scheduled time. <RavenJoad>psycotica0: Yes, that is the tool I was thinking of. <ieure>RavenJoad, Indeed, it seems at is not packaged for Guix. Shepherd can do timers, but I don't think it has a convenient CLI for it like at does. <RavenJoad>That was what I was thinking. Ok. I am asking this because I want to schedule-send emails. <RavenJoad>cdegroot: Right, but those are for well-known tasks that occur at periodic times. In my mind, if I could create a one-shot mcron job, that would fit the bill. <cdegroot>Well, IIRC `at` was part of Vixie cron so i'd start looking at the cron packages that Guix bundles for similar functionality. <RavenJoad>mcron does not have a system where you can schedule a task to run once in the future by submitting a one-shot job to the mcron daemon. <RavenJoad>And the mcron manual says as such too. (mcron) AT commands <RavenJoad>At this rate, I wonder just how hard it would be to add what I want to mcron... <cdegroot>it's not hard to replicate at. Have a job that runs every minute that checks a directory that contains jobs. The easiest would be to name them the time they need to run (in seconds-since-epoch) and the contents to be any shell script. <cdegroot>That's pretty much exactly what `at` does anyway :) <RavenJoad>That was going to be my first cut at this with opensmtpd actually. Have a proc-exec filter, dump the info to disk, and leave an mcron job to check that every once in a while. <RavenJoad>But for cleanliness's sake, I think it would be cool to have one-shot jobs too. <RavenJoad>Then again, shepherd has timer services, which do pretty much what I want. (shepherd) Timer Service <cdegroot>You'll find that if you want to extend Shepherd in a clean way, you'll pretty much end up doing what I sketched out above (and how at works on *nixen anyway). <cdegroot>By the way, doesn't hurt the absence of cron and at (and batch!) Guix' POSIX-compliance? ;-) <cdegroot>ouch, that sentence was malformed. Hope y'all understand it anyways. <PotentialUser-80>Hi there! I have a question I hope someone could answer: I have download several cursors on an Openbox machine. However, they are only visible when using flatpaks. Anywhere else (i.e desktop) only the default cursor is visible. I have an Xresources file that uses an `Xcursor.theme = <cursor-name>` ,but even that does not change things. I have <PotentialUser-80>also tried installing the cursor globally in /usr/share/icons but no dice. Does anyone know a permanent fix for this issue? I know its not the cursors themselves since I tried several (from the pling store).