immichframe: set the admin password the new admin UI requires (#17315)

* immichframe: set the admin password the new admin UI requires

immichFrame/ImmichFrame#698 added an admin UI that refuses to open
/admin unless IMMICHFRAME_ADMIN_PASSWORD is set, leaving users to edit
the unit by hand after an install or an upgrade from an older version.

Generate one, put it in the unit next to the other Environment lines,
and record it in ~/immichframe.creds the way the other scripts record
credentials. The update adds the line only when it is missing, so a
password already set by hand survives.

* immichframe: write the creds file the way the other scripts do

Sixty install scripts use cat <<EOF for their .creds file and exactly
one used an echo block, which was this one. Match the rest.

The install writes the file, the update appends: on an existing
container the file may already be there from the original install, and
the password line is only added when the unit has none.
This commit is contained in:
CanbiZ (MickLesk)
2026-09-18 08:42:44 +02:00
committed by GitHub
parent addda5f6a9
commit afbdf20aed
2 changed files with 17 additions and 0 deletions

View File

@@ -79,6 +79,17 @@ function update_script() {
restore_backup
chown -R immichframe:immichframe /opt/immichframe
if ! grep -q '^Environment=IMMICHFRAME_ADMIN_PASSWORD=' /etc/systemd/system/immichframe.service; then
msg_info "Setting Admin Password"
ADMIN_PASSWORD=$(openssl rand -hex 16)
sed -i "/^Environment=DOTNET_CONTENTROOT=/a Environment=IMMICHFRAME_ADMIN_PASSWORD=${ADMIN_PASSWORD}" /etc/systemd/system/immichframe.service
cat <<EOF >>~/immichframe.creds
ImmichFrame Admin User: admin
ImmichFrame Admin Password: $ADMIN_PASSWORD
EOF
systemctl daemon-reload
msg_ok "Set Admin Password (see ~/immichframe.creds)"
fi
msg_info "Starting Service"
systemctl start immichframe

View File

@@ -60,6 +60,11 @@ chown -R immichframe:immichframe /opt/immichframe
msg_ok "Setup ImmichFrame"
msg_info "Creating Service"
ADMIN_PASSWORD=$(openssl rand -hex 16)
cat <<EOF >~/immichframe.creds
ImmichFrame Admin User: admin
ImmichFrame Admin Password: $ADMIN_PASSWORD
EOF
cat <<EOF >/etc/systemd/system/immichframe.service
[Unit]
Description=ImmichFrame Digital Photo Frame
@@ -74,6 +79,7 @@ ExecStart=/usr/bin/dotnet /opt/immichframe/ImmichFrame.WebApi.dll
Environment=ASPNETCORE_URLS=http://0.0.0.0:8080
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_CONTENTROOT=/opt/immichframe
Environment=IMMICHFRAME_ADMIN_PASSWORD=$ADMIN_PASSWORD
Restart=always
RestartSec=5
StandardOutput=journal