Files
nicotine-less/README.md
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

2.3 KiB

Nicotine-Less

Lightweight Docker container for Nicotine+ (Soulseek client) with noVNC web interface and integrated Firefox ESR browser.

Features

  • Web interface accessible from browser (noVNC)
  • Integrated Firefox ESR browser
  • Dynamic VNC window resizing
  • SSH X forwarding support
  • Persistent volumes for configuration and downloads

Requirements

  • Docker and Docker Compose installed
  • Available ports: 6080 (web), 2234 (TCP), 2235 (UDP)

Installation

1. Clone the repository

git clone https://git.nicola.sh/public/nicotine-less.git
cd nicotine-less

2. Configure docker-compose.yml

Copy the example file and edit it:

cp docker-compose.yml.example docker-compose.yml

Required changes in docker-compose.yml:

  • Set your download and incomplete paths:

    volumes:
      - ./data/config:/config
      - /path/to/your/downloads:/downloads        # CHANGE THIS
      - /path/to/your/incomplete:/incomplete      # CHANGE THIS
    
  • (Optional) Add shared folders:

    - /path/to/your/music:/shares/music:ro       # ADD YOUR SHARES
    
  • (Optional) Adjust PUID/PGID to match your user (to avoid permission issues):

    id -u  # Get your user ID
    id -g  # Get your group ID
    

    Then update in docker-compose.yml:

    environment:
      - PUID=1000  # Change to your user ID
      - PGID=1000  # Change to your group ID
    

3. Create config directory

mkdir -p data/config

4. Build and start

docker compose build
docker compose up -d

Usage

Web access

Open browser:

http://localhost:6080

Or from another device:

http://YOUR_HOST_IP:6080

SSH X Forwarding

ssh -X user@host_ip
docker exec -it nicotine-less nicotine

Updates

Automatic updates: The container image is automatically rebuilt every hour when a new Nicotine+ version is released on PyPI.

To update to the latest version, pull the new image:

docker compose pull
docker compose up -d

Or rebuild locally:

docker compose down
docker compose build --no-cache
docker compose up -d

License

This project is provided "as-is" without warranties.