From e994ad157e16ca3495994cc703e3c4ad5d610371 Mon Sep 17 00:00:00 2001 From: Sami Date: Wed, 6 May 2026 17:50:10 -0700 Subject: [PATCH] fix(systemd): drop MakeDirectory=yes from updater path unit `MakeDirectory=yes` on a `PathChanged=` directive whose target is a file (not a directory) causes systemd to create the watched path as an empty directory on unit start. The container's self-updater then crashes with EISDIR every time it tries to writeFile() the trigger, and the host script never runs. The parent `/opt/dashcaddy/updates/` is already created by the installer/Docker volume, so the flag is redundant and only here as a footgun. Drop it. Reproducer: enable the unit on a fresh system, watch `/opt/dashcaddy/updates/trigger.json` get materialized as a directory within milliseconds of `systemctl start dashcaddy-updater.path`. Co-Authored-By: Claude Opus 4.7 (1M context) --- dashcaddy-api/scripts/dashcaddy-updater.path | 1 - 1 file changed, 1 deletion(-) diff --git a/dashcaddy-api/scripts/dashcaddy-updater.path b/dashcaddy-api/scripts/dashcaddy-updater.path index 0506681..f73f2f0 100644 --- a/dashcaddy-api/scripts/dashcaddy-updater.path +++ b/dashcaddy-api/scripts/dashcaddy-updater.path @@ -3,7 +3,6 @@ Description=Watch for DashCaddy update trigger [Path] PathChanged=/opt/dashcaddy/updates/trigger.json -MakeDirectory=yes [Install] WantedBy=multi-user.target