Hello,
Trying to set up a server with guix home it appears to me after some
research that there is no way to use guix home on a server.
What i mean is that:
- the server currently is set up with base services in its system config
as you can see here
https://codeberg.org/joinjabber/Infra/src/branch/main/System%20Declaration/system.scm
- and there is a persistent error appearing when somebody logs in that says:
warning: XDG_RUNTIME_DIR doesn't exists, on-first-login script
won't execute anything. You can check if xdg runtime directory exists,
XDG_RUNTIME_DIR variable is set to appropriate value and manually
execute the
script by running '$HOME/.guix-home/on-first-login'
this error comes from the service home-run-on-first-login which is a
home service and is in base requirements of guix home as per the manual
here:
https://guix.gnu.org/en/manual/devel/en/html_node/Essential-Home-Services.html
it can only be extended. what this specific service is doing according
to the code here
https://git.savannah.gnu.org/cgit/guix.git/tree/gnu/home/services.scm#n409
is checking if the XDG_RUNTIME_DIR exists. which according to the manual
if this is supposed to go away you need to:
*Note:* Make sure the operating system has elogind, systemd, or a
similar mechanism to create the XDG run-time directory and has the
|XDG_RUNTIME_DIR| variable set. Failing that, the on-first-login script
will not execute anything, and processes like user Shepherd and its
descendants will not start.
I tried to add just the elogind service to the system declaration but
that changed nothing. Obviously the server doesn't need all of desktop
services and removing stuff like gdm or bluetooth manually to reduce
attack surface seems too much work to just have guix home not complain.
the guix home config is here:
https://codeberg.org/joinjabber/Infra/src/branch/main/Home%20Declaration/home%20declaration.scm
So my Questions are:
1. Is there a way to remove or edit the on-first-login service? Or a way
to make the warning disappear without installing all desktop services?
2. This seems like a bug. Is the intention of guix home to not work in a
non desktop setting? if its supposed to work the first login service
needs to be removed from base services.
MSavoritias