Files
nicotine-less/entrypoint.sh
Claude 74a50f3434
Some checks failed
Build and Push Docker Image / check-version (push) Successful in 3s
Build and Push Docker Image / build (linux/amd64, linux-amd64) (push) Failing after 27s
Build and Push Docker Image / create-manifest (push) Has been skipped
Initial commit: Nicotine-Less Docker container
A containerized Nicotine+ (Soulseek client) with noVNC web interface.

Features:
- Web-based VNC access with dynamic screen resizing
- Firefox ESR browser included for port testing
- Multi-architecture support (amd64, arm64)
- Automated builds when Nicotine+ releases new versions
- Mirrored Alpine base image to avoid Docker Hub rate limiting

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-10-20 13:30:47 +02:00

44 lines
1.1 KiB
Bash
Executable File

#!/bin/bash
set -e
# Update PUID and PGID if needed
if [ ! -z "$PUID" ] && [ "$PUID" != "1000" ]; then
usermod -u $PUID nicotine
fi
if [ ! -z "$PGID" ] && [ "$PGID" != "1000" ]; then
groupmod -g $PGID nicotine
fi
# Fix permissions on volumes
chown -R nicotine:nicotine /config /downloads /incomplete 2>/dev/null || true
# Create necessary directories
mkdir -p /home/nicotine/.local/share/nicotine
chown -R nicotine:nicotine /home/nicotine/.local
# Create symlink from Nicotine+ config to persistent volume
if [ ! -L "/home/nicotine/.config/nicotine" ]; then
rm -rf /home/nicotine/.config/nicotine
ln -s /config /home/nicotine/.config/nicotine
fi
# Configure VNC password if specified
if [ ! -z "$VNC_PASSWORD" ]; then
mkdir -p /home/nicotine/.vnc
echo "$VNC_PASSWORD" | vncpasswd -f > /home/nicotine/.vnc/passwd
chmod 600 /home/nicotine/.vnc/passwd
chown nicotine:nicotine /home/nicotine/.vnc/passwd
fi
# Export environment variables for supervisord
export DISPLAY
export VNC_PORT
export NOVNC_PORT
export VNC_RESOLUTION
export VNC_DEPTH
export USER
# Start supervisord as root (which will start processes as nicotine user)
exec "$@"