
Medusa
Video File Manager for TV shows with automatic episode handling and manual search
Overview
Medusa is a Video File Manager for TV shows. It watches for new episodes of your favorite shows, performs automated handling when they are posted, and includes manual search capabilities.
QuickBox installs Medusa under /opt/username/Medusa, manages a Python virtual environment in /opt/username/lib/python/Medusa/.venv, and stores Medusa configuration in /home/username/.config/Medusa/config.ini.
Key features
Here is what QuickBox sets up for Medusa based on the install and service templates.
🌐 Path-based web access
Nginx exposes Medusa at /username/medusa and proxies to 127.0.0.1:8049 by default.
🧩 Systemd-managed service
Runs as medusa@username with the data directory and config under /home/username/.config/Medusa.
🔑 Dashboard-visible API key
The API key is read from /home/username/.config/Medusa/config.ini and shown in the QuickBox dashboard widgets.
🗂️ Repository-based install
QuickBox installs Medusa from the pymedusa/Medusa repository and tracks the release version.
When to use it
Use Medusa when you want automated TV show monitoring with manual search on top of QuickBox-managed installs.
Good fit when
- You want a TV show manager that watches for new episodes automatically
- You prefer a web UI served behind QuickBox nginx
- You need manual search in addition to automatic processing
What QuickBox provides
- Medusa watches and processes new episodes once they are posted
- QuickBox maps Medusa to a path-based URL and manages the service
- The dashboard surfaces the port and API key for quick access
Installation
QuickBox supports installing Medusa by CLI or from the dashboard, depending on your workflow.
Install from the QuickBox CLI
QuickBox provides standard Medusa lifecycle commands through qb.
qb install medusa -u username
qb reinstall medusa -u username
qb update medusa -u username
qb remove medusa -u usernameYou can also run qb help medusa for command help specific to Medusa.
Install from the Dashboard
In the Package Manager list, Medusa shows an Install action when it is not present. After installation, the UI shows Installed with a Reinstall option for the same entry.
Access and authentication
Medusa access details are defined by the QuickBox nginx template and the Medusa config file.
URL / route
Medusa is exposed as a path-based route at /username/medusa. The default web port is 8049, and the Medusa config sets the web host to 127.0.0.1 with the web root /username/medusa.
Credentials / tokens
The nginx template enforces HTTP Basic Authentication using /etc/htpasswd.d/htpasswd.username. Medusa’s API key is stored in /home/username/.config/Medusa/config.ini and surfaced in the QuickBox dashboard widgets.
Security notes
Because the nginx location block requires basic auth, the htpasswd file must remain in place. Keep the route in Medusa’s web_root aligned with the nginx location to avoid mismatched paths.
SSL and subdomain setup
The Medusa nginx template is path-based (/username/medusa) and sets proxy headers such as X-Forwarded-Proto and X-Forwarded-Port (443). No Medusa-specific subdomain configuration is defined in the Medusa nginx template.
Configuration and files
These paths are created or referenced during installation and service setup.
Common tasks
These tasks are surfaced in the QuickBox dashboard service controls for Medusa.
- Start and stop the Medusa service using the dashboard controls tied to the
medusaservice. - Use the Refresh action in the service list when Medusa is already running.
- Launch Medusa directly from the dashboard link when the service is active.
Best practices
Follow these guardrails to keep the Medusa route and authentication in sync with QuickBox.
Do
- Keep the Medusa web root aligned with the nginx location:
/username/medusa. - Store and manage the API key in
/home/username/.config/Medusa/config.iniso the dashboard can display it.
Don't
- Do not remove
/etc/htpasswd.d/htpasswd.usernamewhile basic auth is enabled for Medusa. - Do not change the Medusa web port without updating the nginx proxy port in the Medusa nginx template.
Troubleshooting
Use these checks when Medusa does not load or the dashboard shows missing details.
Medusa prompts for credentials or denies access
Confirm that /etc/htpasswd.d/htpasswd.username exists and matches the credentials you expect. The Medusa nginx template enforces basic auth for every request.
Medusa page does not load
Verify that the Medusa config has web_host = 127.0.0.1 and web_port = 8049, and that the nginx location is /username/medusa with the same web root.
Dashboard shows API Key Not Generated
Check the api_key value in /home/username/.config/Medusa/config.ini. The dashboard reads the key directly from this file.
Resources
Official upstream resources for Medusa.
Medusa resources
Join the Community
Media server operators sharing configs, getting support, and shaping the future of QuickBox Pro.