mirror of
https://github.com/alexbelgium/hassio-addons.git
synced 2026-01-10 09:51:02 +01:00
Refactor video_fix.sh for improved group handling
This commit is contained in:
42
jellyfin/rootfs/etc/cont-init.d/25-video_fix.sh
Normal file
42
jellyfin/rootfs/etc/cont-init.d/25-video_fix.sh
Normal file
@@ -0,0 +1,42 @@
|
||||
#!/bin/bash
|
||||
# shellcheck shell=bash
|
||||
|
||||
# DO NOT use set -e here — we want graceful degradation
|
||||
|
||||
RENDER_GID=104
|
||||
JELLYFIN_USER=abc
|
||||
GROUP_NAME=""
|
||||
|
||||
log() {
|
||||
echo "[render-fix] $*"
|
||||
}
|
||||
|
||||
# Find group owning GID 104
|
||||
GROUP_NAME="$(getent group "$RENDER_GID" | cut -d: -f1 || true)"
|
||||
|
||||
if [ -z "$GROUP_NAME" ]; then
|
||||
GROUP_NAME="render104"
|
||||
log "Creating group $GROUP_NAME with GID $RENDER_GID"
|
||||
if ! groupadd -g "$RENDER_GID" "$GROUP_NAME" 2>/dev/null; then
|
||||
log "Group creation failed (probably already exists). Continuing."
|
||||
fi
|
||||
else
|
||||
log "Group with GID $RENDER_GID already exists: $GROUP_NAME"
|
||||
fi
|
||||
|
||||
# Ensure user exists
|
||||
if ! id "$JELLYFIN_USER" >/dev/null 2>&1; then
|
||||
log "User $JELLYFIN_USER not found — skipping"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
# Check if already member
|
||||
if id "$JELLYFIN_USER" | grep -qw "$GROUP_NAME"; then
|
||||
log "User $JELLYFIN_USER already in group $GROUP_NAME"
|
||||
exit 0
|
||||
fi
|
||||
|
||||
log "Adding user $JELLYFIN_USER to group $GROUP_NAME"
|
||||
if ! usermod -aG "$GROUP_NAME" "$JELLYFIN_USER" 2>/dev/null; then
|
||||
log "usermod failed — probably read-only user or already applied"
|
||||
fi
|
||||
Reference in New Issue
Block a user