diff options
| author | Sam Scholten | 2025-10-28 10:32:59 +1000 |
|---|---|---|
| committer | Sam Scholten | 2025-10-28 10:32:59 +1000 |
| commit | dfd7d9fa5cb11fd8af2da9394a5a5abb3230a4eb (patch) | |
| tree | 176349b7e28890b4db1675022e2212b480787d50 /setup.sh | |
| parent | 73347c8ab19904377a31224ced345a7cd28886e4 (diff) | |
| download | drestic-dfd7d9fa5cb11fd8af2da9394a5a5abb3230a4eb.tar.gz drestic-dfd7d9fa5cb11fd8af2da9394a5a5abb3230a4eb.zip | |
fix: remove hardcoded HOME=/root from systemd templates
- Remove hardcoded HOME=/root from systemd service templates
- Only set HOME explicitly for system scope in setup.sh and update.sh
- This fixes rclone config lookup issue for user installations
- Update sed patterns to correctly replace environment variables
Resolves issue where user backups failed with rclone permission errors
looking for config in /root/.rclone.conf instead of ~/.config/rclone/rclone.conf
Diffstat (limited to 'setup.sh')
| -rwxr-xr-x | setup.sh | 16 |
1 files changed, 12 insertions, 4 deletions
@@ -348,15 +348,23 @@ else fi log "Generating systemd service file: $SYSTEMD_DIR/restic-backup.service" +# Generate the service file with correct paths 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\"|" \ + -e "s|Environment=\"RESTIC_ENV_FILE=/path/to/be/replaced\"|Environment=\"RESTIC_ENV_FILE=$ENV_FILE\"|" \ systemd/restic-backup.service >"$SYSTEMD_DIR/restic-backup.service" +# Add HOME environment variable only for system scope +if [ "$SCOPE" == "system" ]; then + sed -i "/# HOME will be set by setup.sh for system scope only/a Environment=\"HOME=/root\"" "$SYSTEMD_DIR/restic-backup.service" +fi log "Generating systemd service file: $SYSTEMD_DIR/restic-check.service" +# Generate the service file with correct paths 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\"|" \ + -e "s|Environment=\"RESTIC_ENV_FILE=/path/to/be/replaced\"|Environment=\"RESTIC_ENV_FILE=$ENV_FILE\"|" \ systemd/restic-check.service >"$SYSTEMD_DIR/restic-check.service" +# Add HOME environment variable only for system scope +if [ "$SCOPE" == "system" ]; then + sed -i "/# HOME will be set by setup.sh for system scope only/a Environment=\"HOME=/root\"" "$SYSTEMD_DIR/restic-check.service" +fi # Copy systemd timer files log "Copying systemd timer file: $SYSTEMD_DIR/restic-backup.timer" |
