]> git.ipfire.org Git - thirdparty/shairport-sync.git/commitdiff
Check that the existing user startup script is replaceable.
authorMike Brady <4265913+mikebrady@users.noreply.github.com>
Mon, 14 Apr 2025 08:30:53 +0000 (09:30 +0100)
committerMike Brady <4265913+mikebrady@users.noreply.github.com>
Mon, 14 Apr 2025 08:30:53 +0000 (09:30 +0100)
user-service-install.sh

index 1d59f19e12e07eea16daaff14f173f3347047bda..4d09c9377ad8c34eb42f5ecd99a449bf5e5a3242 100644 (file)
@@ -117,6 +117,15 @@ if [ -d "$USER_SYSTEMD_DIR" ] && [ ! -w "$USER_SYSTEMD_DIR" ]; then
     exit 1
 fi
 
+
+# If the service file already exists, check that we can replace it
+
+if [ -f "$SERVICE_DEST" ] && [ ! -w "$SERVICE_DEST" ]; then
+    echo "[FAIL] The existing $SERVICE_DEST can not be replaced due to its ownership or permissions." >&2
+    echo "  [ADVICE] Please delete $SERVICE_DEST or ensure it is owned and writable by user \"$(whoami)\" before proceeding." >&2
+    exit 1
+fi
+
 # Create the service file
 
 if [ "$DRY_RUN" -eq 0 ]; then