feat: inject custom CSS theme into asciinema
Added entrypoint wrapper script that injects custom.css into the main app.css file at container startup. This allows the custom Pivoine theme to be applied without building a custom image. Changes: - Mount custom.css to static assets directory - Add entrypoint-wrapper.sh to inject CSS on startup - Append custom CSS to both app.css and hashed app-*.css 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -3,13 +3,16 @@ services:
|
||||
image: ${ASCIINEMA_IMAGE:-ghcr.io/asciinema/asciinema-server:latest}
|
||||
container_name: ${ASCIINEMA_COMPOSE_PROJECT_NAME}_app
|
||||
restart: unless-stopped
|
||||
entrypoint: ["/entrypoint-wrapper.sh"]
|
||||
command: ["start"]
|
||||
networks:
|
||||
- compose_network
|
||||
extra_hosts:
|
||||
- "smtp.ionos.de:213.165.67.97"
|
||||
volumes:
|
||||
- asciinema_data:/var/opt/asciinema
|
||||
- ./theme/custom.css:/app/assets/css/custom.css:ro
|
||||
- ./theme/custom.css:/opt/app/lib/asciinema-1.0.0/priv/static/assets/custom.css:ro
|
||||
- ./entrypoint-wrapper.sh:/entrypoint-wrapper.sh:ro
|
||||
environment:
|
||||
SECRET_KEY_BASE: ${ASCIINEMA_SECRET_KEY}
|
||||
URL_HOST: ${ASCIINEMA_TRAEFIK_HOST}
|
||||
|
||||
17
asciinema/entrypoint-wrapper.sh
Executable file
17
asciinema/entrypoint-wrapper.sh
Executable file
@@ -0,0 +1,17 @@
|
||||
#!/bin/sh
|
||||
set -e
|
||||
|
||||
# Inject custom CSS into app.css if it exists
|
||||
if [ -f /opt/app/lib/asciinema-1.0.0/priv/static/assets/custom.css ]; then
|
||||
echo "Injecting custom CSS into app.css..."
|
||||
cat /opt/app/lib/asciinema-1.0.0/priv/static/assets/custom.css >> /opt/app/lib/asciinema-1.0.0/priv/static/assets/app.css
|
||||
# Also append to the hashed version
|
||||
CSS_FILE=$(ls /opt/app/lib/asciinema-1.0.0/priv/static/assets/app-*.css 2>/dev/null | head -1)
|
||||
if [ -n "$CSS_FILE" ]; then
|
||||
cat /opt/app/lib/asciinema-1.0.0/priv/static/assets/custom.css >> "$CSS_FILE"
|
||||
echo "Custom CSS injected successfully"
|
||||
fi
|
||||
fi
|
||||
|
||||
# Execute the original entrypoint
|
||||
exec /opt/app/bin/asciinema "$@"
|
||||
Reference in New Issue
Block a user