You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
HomeTube is a web UI for yt-dlp that downloads single videos or whole playlists into a clean folder structure for Plex, Jellyfin or Emby. It picks the best AV1/VP9 quality profile automatically, embeds subtitles, chapters and metadata, marks or removes sponsor segments with SponsorBlock, cuts clips, keeps playlists in sync and can trigger a Jellyfin library refresh after each download.
HomeTube has no login. Anyone who can reach port 8501 can download to your media folder, so keep it on a trusted network or put it behind a reverse proxy with authentication.
Videos are saved to /opt/hometube_data/videos (VIDEOS_FOLDER), into the destination folder chosen in the UI; playlists get a folder of their own. To write straight into a Plex, Jellyfin or Emby library, bind-mount it there, e.g. pct set -mp0 /mnt/media/youtube,mp=/opt/hometube_data/videos, then restart the container. In an unprivileged container the host folder must be writable by UID 100000.
YouTube increasingly needs cookies, even for public videos. Export them with a cookies.txt browser extension and copy the file to /opt/hometube_data/cookies/youtube_cookies.txt, then reload the HomeTube page so it switches to file cookies.
Settings such as LANGUAGE_PRIMARY, VIDEO_QUALITY_MAX, YTDLP_CUSTOM_ARGS or JELLYFIN_BASE_URL/JELLYFIN_API_KEY go in /opt/hometube_data/.env, then run systemctl restart hometube. Temporary files are removed after each download (REMOVE_TMP_FILES_AFTER_DOWNLOAD=true) so videos are not stored twice; set it to false to keep them as a re-download cache.
yt-dlp updates itself on every HomeTube restart and with every update run, since YouTube breaks older versions regularly. YouTube challenges are solved with the installed deno.
Note: This is not in the official repo yet—it's just a dev version! After merging into ProxmoxVE, it will need to be recreated.
Activity
github-actions commentedon Oct 4, 2026
The HomeTube script is ready for testing. Run it in the Proxmox VE shell (or on an Incus host) to create a container:
HomeTube has no login. Anyone who can reach port 8501 can download to your media folder, so keep it on a trusted network or put it behind a reverse proxy with authentication.
Videos are saved to /opt/hometube_data/videos (VIDEOS_FOLDER), into the destination folder chosen in the UI; playlists get a folder of their own. To write straight into a Plex, Jellyfin or Emby library, bind-mount it there, e.g. pct set -mp0 /mnt/media/youtube,mp=/opt/hometube_data/videos, then restart the container. In an unprivileged container the host folder must be writable by UID 100000.
YouTube increasingly needs cookies, even for public videos. Export them with a cookies.txt browser extension and copy the file to /opt/hometube_data/cookies/youtube_cookies.txt, then reload the HomeTube page so it switches to file cookies.
Settings such as LANGUAGE_PRIMARY, VIDEO_QUALITY_MAX, YTDLP_CUSTOM_ARGS or JELLYFIN_BASE_URL/JELLYFIN_API_KEY go in /opt/hometube_data/.env, then run systemctl restart hometube. Temporary files are removed after each download (REMOVE_TMP_FILES_AFTER_DOWNLOAD=true) so videos are not stored twice; set it to false to keep them as a re-download cache.
yt-dlp updates itself on every HomeTube restart and with every update run, since YouTube breaks older versions regularly. YouTube challenges are solved with the installed deno.
Note: This is not in the official repo yet—it's just a dev version! After merging into ProxmoxVE, it will need to be recreated.
Discord testing thread: https://discord.com/channels/1302816934508630047/1556241410099773470