{"id":21805783,"url":"https://github.com/yr72dpi/spotimy","last_synced_at":"2026-05-13T07:33:50.564Z","repository":{"id":264679268,"uuid":"894054532","full_name":"YR72dpi/spotimy","owner":"YR72dpi","description":"Raspberry Pi 2B media manager","archived":false,"fork":false,"pushed_at":"2025-02-04T12:52:32.000Z","size":8,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-21T07:43:32.413Z","etag":null,"topics":["32bit","armv7","armv7l","docker","docker-compose","media","raspberry2","raspberrypi","spotify"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/YR72dpi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-11-25T17:08:06.000Z","updated_at":"2025-02-04T12:52:35.000Z","dependencies_parsed_at":"2025-02-04T13:33:06.655Z","dependency_job_id":"fcca8d8e-a5ec-412b-89ed-d930a2ec5f47","html_url":"https://github.com/YR72dpi/spotimy","commit_stats":null,"previous_names":["yr72dpi/spotimy"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YR72dpi%2Fspotimy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YR72dpi%2Fspotimy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YR72dpi%2Fspotimy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/YR72dpi%2Fspotimy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/YR72dpi","download_url":"https://codeload.github.com/YR72dpi/spotimy/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244759817,"owners_count":20505710,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["32bit","armv7","armv7l","docker","docker-compose","media","raspberry2","raspberrypi","spotify"],"created_at":"2024-11-27T12:15:37.316Z","updated_at":"2026-05-13T07:33:50.559Z","avatar_url":"https://github.com/YR72dpi.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Why ?\n\nAds pissed me off on Spotify so i made a stack to get musics \u0026 play it without ads.\n\n__Jellyfin__ to play, \n__File Browser__ to manage files, \n__MeTube__ \u0026 __qBitTorrent__ to download medias in a very very legal way. 🤡\n\n## Config\n\n```\n        _,met$$$$$gg.          pi@pi5\n     ,g$$$$$$$$$$$$$$$P.       ------\n   ,g$$P\"\"       \"\"\"Y$$.\".     OS: Debian GNU/Linux 13 (trixie) aarch64\n  ,$$P'              `$$$.     Host: Raspberry Pi 5 Model B Rev 1.1\n',$$P       ,ggs.     `$$b:    Kernel: Linux 6.12.47+rpt-rpi-2712\n`d$$'     ,$P\"'   .    $$$     Uptime: 136 days(!), 6 hours, 52 mins\n $$P      d$'     ,    $$P     Packages: 787 (dpkg)\n $$:      $$.   -    ,d$$'     Shell: bash 5.2.37\n $$;      Y$b._   _,d$P'       Cursor: Adwaita\n Y$$.    `.`\"Y$$$$P\"'          Terminal: /dev/pts/1\n `$$b      \"-.__               CPU: BCM2712 (4) @ 2.40 GHz\n  `Y$$b                        GPU: Broadcom bcm2712-vc6 [Integrated]\n   `Y$$.                       Memory: 3.13 GiB / 7.87 GiB (40%)\n     `$$b.                     Swap: 419.44 MiB / 2.00 GiB (20%)\n       `Y$$b.                  Disk (/): 27.74 GiB / 57.99 GiB (48%) - ext4\n         `\"Y$b._               Disk (/mnt/jellyfin): 356.00 GiB / 931.50 GiB (38%) - exfat\n             `\"\"\"\"             Disk (/mnt/note): 192.00 KiB / 7.28 GiB (0%) - exfat [External]\n                               Local IP (eth0): 192.168.1.197/24\n                               Locale: fr_FR.UTF-8\n```\n\n# Spotimy Docker Compose Documentation\n\n_Documentation generated by chatGPT from the docker-compose.yml_\n\nThis documentation describes the setup \u0026 configuration of the **Spotimy** project using `docker-compose`. The project deploys multiple services for managing media content, downloads, \u0026 file browsing. Below is a breakdown of the services, their configurations, \u0026 their purposes.\n\n---\n\n## Table of Contents\n\n1. [Overview](#overview)\n2. [Services](#services)\n   - [Jellyfin](#jellyfin)\n   - [File Browser](#file-browser)\n   - [MeTube](#metube)\n   - [qBittorrent-nox](#qbittorrent-nox)\n3. [Volumes](#volumes)\n4. [Environment Variables](#environment-variables)\n\n---\n\n## Overview\n\n**Spotimy** leverages Docker Compose to run a stack of services tailored for media management:\n- **Jellyfin**: A media server for organizing \u0026 streaming content.\n- **File Browser**: A web interface for managing files.\n- **MeTube**: A downloader for video \u0026 audio content.\n- **qBittorrent-nox**: A torrent client with a web interface.\n\n---\n\n## Services\n\n### Jellyfin\nA media server for organizing, managing, \u0026 streaming content.\n\n#### Configuration:\n- **Image**: `ghcr.io/jellyfin/jellyfin:latest`\n- **Container Name**: `jellyfin`\n- **Ports**: `8041:8096`\n- **Volumes**:\n  - `${JELLYFIN_CONFIG_PATH}:/config`\n  - `jellyfin_cache:/cache`\n  - `${MEDIA_PATH}:/media`\n- **Environment**:\n  - `TZ=Europe/Paris`\n  - `UID` \u0026 `GID` should be set via environment variables.\n\n---\n\n### File Browser\nA web-based file manager for managing media files.\n\n#### Configuration:\n- **Image**: `filebrowser/filebrowser:latest`\n- **Container Name**: `filebrowser`\n- **Ports**: `8031:80`\n- **Volumes**:\n  - `${MEDIA_PATH}:/srv`\n  - `${FILEBROWSER_CONFIG}:/database`\n- **Environment**:\n  - `FB_BASEURL=/`\n\n---\n\n### MeTube\nA downloader for video \u0026 audio content.\n\n#### Configuration:\n- **Image**: `ghcr.io/alexta69/metube:latest`\n- **Container Name**: `metube_container`\n- **Ports**: `8021:8081`\n- **Volumes**:\n  - `${MEDIA_PATH}:/downloads`\n- **Environment**:\n  - `UID` \u0026 `GID` should be set via environment variables.\n  - `OUTPUT_TEMPLATE`: Custom naming template for downloaded files.\n\n---\n\n### qBittorrent-nox\nA lightweight torrent client with a web UI.\n\n#### Configuration:\n- **Image**: `ghcr.io/qbittorrent/docker-qbittorrent-nox:latest`\n- **Container Name**: `qbittorrent-nox`\n- **Ports**:\n  - `6881:6881/tcp`\n  - `6881:6881/udp`\n  - `${QBT_WEBUI_PORT}:${QBT_WEBUI_PORT}/tcp`\n- **Volumes**:\n  - `${QBT_CONFIG_PATH}:/config`\n  - `${MEDIA_PATH}:/downloads`\n- **Environment**:\n  - `PUID` \u0026 `PGID` should match your user.\n  - `TZ=Europe/Paris`\n  - Additional environment variables:\n    - `QBT_LEGAL_NOTICE`\n    - `QBT_VERSION`\n    - `QBT_WEBUI_PORT`\n- **Misc**:\n  - Temporary file storage in `/tmp`.\n  - Grace period on stop: 1 hour.\n\n---\n\n## Volumes\n\nThe following named volumes are used for persistent data storage:\n- `jellyfin_cache`: Stores Jellyfin cache data.\n- `filebrowser_data`: Stores File Browser configuration data.\n\nOther paths are bind-mounted via environment variables (`JELLYFIN_CONFIG_PATH`, `MEDIA_PATH`, `FILEBROWSER_CONFIG`, `QBT_CONFIG_PATH`).\n\n---\n\n## Environment Variables\n\nConfigure the following environment variables before deploying the stack:\n- **UID**: User ID for file ownership.\n- **GID**: Group ID for file ownership.\n- **MEDIA_PATH**: Path to the shared media directory (used by Jellyfin, File Browser, MeTube \u0026 qBittorrent).\n- **JELLYFIN_CONFIG_PATH**: Path to Jellyfin configuration directory.\n- **FILEBROWSER_CONFIG**: Path to the File Browser database file.\n- **QBT_CONFIG_PATH**: Path to qBittorrent configuration directory.\n- **QBT_LEGAL_NOTICE**: Legal notice confirmation for qBittorrent.\n- **QBT_VERSION**: Specify qBittorrent version.\n- **QBT_WEBUI_PORT**: Port for the qBittorrent Web UI.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyr72dpi%2Fspotimy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fyr72dpi%2Fspotimy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fyr72dpi%2Fspotimy/lists"}