aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xupdate.sh30
1 files changed, 26 insertions, 4 deletions
diff --git a/update.sh b/update.sh
index c6e64c9..34231eb 100755
--- a/update.sh
+++ b/update.sh
@@ -83,21 +83,43 @@ update_scripts() {
update_services() {
local install_type="$1"
local systemd_dir
+ local install_dir
+ local env_file
if [ "$install_type" = "system" ]; then
systemd_dir="/etc/systemd/system"
+ install_dir="/usr/local/bin"
+ env_file="/root/.restic_env"
log "Updating systemd services and timers in $systemd_dir"
- sudo cp systemd/restic-backup.service "$systemd_dir/"
- sudo cp systemd/restic-check.service "$systemd_dir/"
+
+ # Generate service files with correct paths (like setup.sh does)
+ sed -e "s|ExecStart=/path/to/be/replaced/restic_backup.sh|ExecStart=$install_dir/restic_backup.sh|" \
+ -e "s|# Environment variable will be set by setup.sh based on scope|Environment=\"RESTIC_ENV_FILE=$env_file\"|" \
+ systemd/restic-backup.service | sudo tee "$systemd_dir/restic-backup.service" >/dev/null
+ sed -e "s|ExecStart=/path/to/be/replaced/restic_check.sh|ExecStart=$install_dir/restic_check.sh|" \
+ -e "s|# Environment variable will be set by setup.sh based on scope|Environment=\"RESTIC_ENV_FILE=$env_file\"|" \
+ systemd/restic-check.service | sudo tee "$systemd_dir/restic-check.service" >/dev/null
+
+ # Copy timer files directly
sudo cp systemd/restic-backup.timer "$systemd_dir/"
sudo cp systemd/restic-check.timer "$systemd_dir/"
sudo systemctl daemon-reload
else
systemd_dir="$HOME/.config/systemd/user"
+ install_dir="$HOME/.local/bin"
+ env_file="$HOME/.config/restic/env"
mkdir -p "$systemd_dir"
log "Updating systemd services and timers in $systemd_dir"
- cp systemd/restic-backup.service "$systemd_dir/"
- cp systemd/restic-check.service "$systemd_dir/"
+
+ # Generate service files with correct paths (like setup.sh does)
+ sed -e "s|ExecStart=/path/to/be/replaced/restic_backup.sh|ExecStart=$install_dir/restic_backup.sh|" \
+ -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"
+ sed -e "s|ExecStart=/path/to/be/replaced/restic_check.sh|ExecStart=$install_dir/restic_check.sh|" \
+ -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"
+
+ # Copy timer files directly
cp systemd/restic-backup.timer "$systemd_dir/"
cp systemd/restic-check.timer "$systemd_dir/"
systemctl --user daemon-reload