feat: update Jellyfin background with ultra-dark cinematic studio backdrop
This commit is contained in:
@@ -0,0 +1,18 @@
|
|||||||
|
# Jellyfin Theme – Aurora Noir
|
||||||
|
|
||||||
|
Custom Cinematic Theme für Jellyfin ([stream.free-warez.win](https://stream.free-warez.win)).
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📁 Struktur
|
||||||
|
- `web-assets/aurora_noir.css`: Quelldatei für das vollständige CSS-Theme (MUI Overrides, Glows, Glassmorphism).
|
||||||
|
- `web-assets/custom_bg.webp`: Hintergrundgrafik (1920x1080).
|
||||||
|
- `web-assets/custom_favicon.ico`: Benutzerdefiniertes Favicon.
|
||||||
|
- `branding.xml`: Jellyfin Server-Konfiguration mit eingebettetem XML-escaped CSS.
|
||||||
|
- `THEME-README.md`: Detaillierte Architektur & Historie (Traefik rewritebody Injection etc.).
|
||||||
|
- `deploy.sh`: Synchronisiert die Assets zum VPS, konvertiert CSS -> XML und startet den Jellyfin Container neu.
|
||||||
|
|
||||||
|
## 🚀 Deployment
|
||||||
|
```bash
|
||||||
|
./deploy.sh
|
||||||
|
```
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
# deploy.sh - Deploy Jellyfin Custom Theme (Aurora Noir)
|
||||||
|
# Domain: stream.free-warez.win
|
||||||
|
# Target Host: free-warez.win -> /opt/containers/jellyfin
|
||||||
|
|
||||||
|
set -euo pipefail
|
||||||
|
|
||||||
|
TARGET_HOST="free-warez.win"
|
||||||
|
TARGET_DIR="/opt/containers/jellyfin"
|
||||||
|
LOCAL_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
|
||||||
|
echo "🚀 Deploying Jellyfin Theme (Aurora Noir)"
|
||||||
|
echo " Target: $TARGET_HOST:$TARGET_DIR"
|
||||||
|
echo "==============================================="
|
||||||
|
|
||||||
|
# 1. Check SSH connection
|
||||||
|
echo "📡 Checking SSH connection to $TARGET_HOST..."
|
||||||
|
if ! ssh -q -o BatchMode=yes -o ConnectTimeout=5 "$TARGET_HOST" exit; then
|
||||||
|
echo "❌ Cannot connect to $TARGET_HOST via SSH."
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 2. Sync web-assets
|
||||||
|
echo "🔄 Syncing theme assets to VPS..."
|
||||||
|
rsync -avz \
|
||||||
|
"$LOCAL_DIR/web-assets/" "$TARGET_HOST:$TARGET_DIR/web-assets/"
|
||||||
|
|
||||||
|
# 3. Regenerate branding.xml & restart container
|
||||||
|
echo "🔄 Regenerating branding.xml from aurora_noir.css..."
|
||||||
|
ssh "$TARGET_HOST" "python3 - <<'PYEOF'
|
||||||
|
import xml.sax.saxutils as sx
|
||||||
|
css = open('/opt/containers/jellyfin/web-assets/aurora_noir.css').read()
|
||||||
|
out = ('<?xml version=\"1.0\" encoding=\"utf-8\"?>\n<BrandingOptions>\n'
|
||||||
|
' <LoginDisclaimer>Private media cloud. Authorized access only.</LoginDisclaimer>\n'
|
||||||
|
' <CustomCss>%s</CustomCss>\n'
|
||||||
|
' <SplashscreenEnabled>false</SplashscreenEnabled>\n'
|
||||||
|
'</BrandingOptions>\n') % sx.escape(css)
|
||||||
|
open('/opt/containers/jellyfin/library/branding.xml', 'w').write(out)
|
||||||
|
print('branding.xml updated with', len(out), 'bytes')
|
||||||
|
PYEOF
|
||||||
|
docker restart jellyfin
|
||||||
|
"
|
||||||
|
|
||||||
|
echo "✅ Jellyfin container restarted with updated theme!"
|
||||||
|
echo "✨ Deployment complete!"
|
||||||
Binary file not shown.
|
Before Width: | Height: | Size: 107 KiB After Width: | Height: | Size: 36 KiB |
Reference in New Issue
Block a user