You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
pixelfed.sh update_script: composer install fails (runs from /root instead of /opt/pixelfed) #2255
Running the update script for the Pixelfed LXC (update / ct/pixelfed.sh) reliably fails during update_script() at the composer install step, aborting the update with services already stopped.
Error
⏳ Updating Pixelfed
Composer could not find a composer.json file in /root
To initialize a project, please create a composer.json file. See https://getcomposer.org/basic-usage
✖️ in line 53: exit code 1 (General error / Operation not permitted): while executing command composer install --no-dev --no-ansi --no-interaction --optimize-autoloader
There's no cd /opt/pixelfed before the composer install call. Composer therefore runs against whatever the caller's current working directory happens to be (e.g. /root when the update is triggered from an interactive root shell), not the app directory, and fails immediately since there's no composer.json there. Because this happens after "Stopping Services" and after the release has already been deployed, the script aborts with Pixelfed's services left stopped and the update incomplete (no composer install, no artisan migrate, no service restart).
Suggested fix
Add cd /opt/pixelfed && before the composer call (or an explicit cd /opt/pixelfed on its own line before it), matching how the rest of update_script() already assumes /opt/pixelfed as the working directory:
Activity
MickLesk commentedon Sep 12, 2026
#1573