diff options
author | Stonewall Jackson <stonewall@sacredheartsc.com> | 2023-03-31 10:35:42 -0400 |
---|---|---|
committer | Stonewall Jackson <stonewall@sacredheartsc.com> | 2023-03-31 10:35:42 -0400 |
commit | 523e0c3cc6163b7bd4b3003bbff0d6efda5eea87 (patch) | |
tree | f5ed617aed6d0bc61d9538171005fe7ccccd8974 | |
parent | feaa8fd229be6cc9507650bafd88806851df2ddf (diff) | |
download | selfhosted-523e0c3cc6163b7bd4b3003bbff0d6efda5eea87.tar.gz selfhosted-523e0c3cc6163b7bd4b3003bbff0d6efda5eea87.zip |
local_homedirs: add systemd environment generators
-rwxr-xr-x | roles/local_homedirs/files/etc/systemd/user-environment-generators/local-homedirs.sh | 13 | ||||
-rw-r--r-- | roles/local_homedirs/tasks/main.yml | 16 |
2 files changed, 29 insertions, 0 deletions
diff --git a/roles/local_homedirs/files/etc/systemd/user-environment-generators/local-homedirs.sh b/roles/local_homedirs/files/etc/systemd/user-environment-generators/local-homedirs.sh new file mode 100755 index 0000000..2b760e2 --- /dev/null +++ b/roles/local_homedirs/files/etc/systemd/user-environment-generators/local-homedirs.sh @@ -0,0 +1,13 @@ +#!/bin/bash + +set -eu + +uid=$(id -u) +username=$(id -un) + +if (( uid >= 1000 )); then + echo "XDG_DATA_HOME=/usr/local/home/${username}/.local/share" + echo "XDG_STATE_HOME=/usr/local/home/${username}/.local/state" + echo "XDG_CACHE_HOME=/usr/local/home/${username}/.cache" + echo "XDG_CONFIG_HOME=/usr/local/home/${username}/.config" +fi diff --git a/roles/local_homedirs/tasks/main.yml b/roles/local_homedirs/tasks/main.yml index 8823672..e7109d5 100644 --- a/roles/local_homedirs/tasks/main.yml +++ b/roles/local_homedirs/tasks/main.yml @@ -74,3 +74,19 @@ loop: - session optional pam_exec.so {{ local_homedir_script_ssh }} - session optional pam_env.so conffile={{ local_homedir_pam_env_path }} + +- name: create systemd environment generator directory + file: + path: /etc/systemd/user-environment-generators + state: directory + +- name: create systemd environment generator + copy: + src: etc/systemd/user-environment-generators/local-homedirs.sh + dest: /etc/systemd/user-environment-generators/local-homedirs.sh + register: local_homedirs_systemd_environment_generator + +- name: reload daemons + systemd: + daemon_reload: yes + when: local_homedirs_systemd_environment_generator.changed |