diff options
| -rw-r--r-- | etc/guix/home.scm | 20 | ||||
| -rw-r--r-- | etc/sh/rc | 6 |
2 files changed, 19 insertions, 7 deletions
diff --git a/etc/guix/home.scm b/etc/guix/home.scm index 214ee4d..891142a 100644 --- a/etc/guix/home.scm +++ b/etc/guix/home.scm @@ -7,6 +7,7 @@ (gnu home services mcron) (gnu home services shells) (gnu home services shepherd) + (gnu home services xdg) (gnu packages) (gnu packages base) (gnu packages dunst) @@ -240,6 +241,10 @@ It has no configuration."# name)))) +(define xdg-prefix "$HOME/.usr") +(define (xdg path) + (string-append xdg-prefix "/" path)) + (home-environment (packages (append @@ -550,8 +555,21 @@ (service (home-service 'dunst dunst "/bin/dunst")) (service (home-service 'poweralertd poweralertd "/bin/poweralertd")) (service (home-service 'remhind remhind "/bin/remhind")) + (service home-xdg-base-directories-service-type + (home-xdg-base-directories-configuration + (cache-home (xdg "var/cache")) + (config-home (xdg "etc")) + (data-home (xdg "share")) + (log-home (xdg "var/log")) + (state-home (xdg "state")))) (simple-service 'my-shell-profile home-shell-profile-service-type - (list (plain-file "my-profile" ". ~/.usr/etc/sh/rc"))) + (list (plain-file + "my-profile" + (format #f + #"- + export XDG_PREFIX="~a" + . "$XDG_CONFIG_HOME"/sh/rc"# + xdg-prefix)))) (service home-mcron-service-type (home-mcron-configuration (jobs cronjobs)))))) @@ -3,12 +3,6 @@ export ENV=~/.profile -export XDG_PREFIX=~/.usr -export XDG_CACHE_HOME="$XDG_PREFIX/var/cache" -export XDG_CONFIG_HOME="$XDG_PREFIX/etc" -export XDG_DATA_HOME="$XDG_PREFIX/share" -export XDG_STATE_HOME="$XDG_PREFIX/state" -export XDG_LOG_HOME="$XDG_PREFIX/var/log" export XDG_DATA_DIRS="$XDG_DATA_HOME/flatpak/exports/share:/var/lib/flatpak/exports/share${XDG_DATA_DIRS:+:}${XDG_DATA_DIRS:-}" |
