From 56973528a9e4cab924951ad0e4c7b4eead4baa2c Mon Sep 17 00:00:00 2001 From: Sam Scholten Date: Fri, 24 Oct 2025 10:26:11 +1000 Subject: Fix systemd service environment variables in setup.sh - Properly set HOME environment variable based on scope (user/system) - Ensure RESTIC_ENV_FILE is correctly added to service files - Fixes issue where services had incorrect paths and env vars --- setup.sh | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'setup.sh') diff --git a/setup.sh b/setup.sh index 3650ef6..f667247 100755 --- a/setup.sh +++ b/setup.sh @@ -340,13 +340,21 @@ log "Making scripts executable: $INSTALL_DIR/restic_backup.sh, $INSTALL_DIR/rest chmod +x "$INSTALL_DIR/restic_backup.sh" "$INSTALL_DIR/restic_check.sh" "$INSTALL_DIR/common.sh" # Prepare systemd service files -# Use sed to replace the ExecStart path and add the environment variable +# Use sed to replace the ExecStart path and add the environment variables +if [ "$SCOPE" == "system" ]; then + HOME_PATH="/root" +else + HOME_PATH="$HOME" +fi + log "Generating systemd service file: $SYSTEMD_DIR/restic-backup.service" sed -e "s|ExecStart=/path/to/be/replaced/restic_backup.sh|ExecStart=$INSTALL_DIR/restic_backup.sh|" \ + -e "s|Environment=\"HOME=/root\"|Environment=\"HOME=$HOME_PATH\"|" \ -e "s|# Environment variable will be set by setup.sh based on scope|Environment=\"RESTIC_ENV_FILE=$ENV_FILE\"|" \ systemd/restic-backup.service >"$SYSTEMD_DIR/restic-backup.service" log "Generating systemd service file: $SYSTEMD_DIR/restic-check.service" sed -e "s|ExecStart=/path/to/be/replaced/restic_check.sh|ExecStart=$INSTALL_DIR/restic_check.sh|" \ + -e "s|Environment=\"HOME=/root\"|Environment=\"HOME=$HOME_PATH\"|" \ -e "s|# Environment variable will be set by setup.sh based on scope|Environment=\"RESTIC_ENV_FILE=$ENV_FILE\"|" \ systemd/restic-check.service >"$SYSTEMD_DIR/restic-check.service" -- cgit v1.2.3