YAMS: Yet Another Media Server
- Description
- Features
- Dependencies
- Before running
- To run
- Usage
- How to configure?
- Donations
- todo
[4/17]
- Special thanks
This is a highly opinionated media server.
- Website: https://yams.media.
- Code documentation and explanation: docs.org.
- Discord: https://discord.gg/Gwae3tNMST
- Matrix: https://matrix.to/#/#yams-space:chat.rogs.me
Description
This script installs the following software:
With this combination, you can create a fully functional media server that is going to download, categorize, subtitle and serve your favorite shows, movies, audio and books.
Features
In no particular order:
- Automatic shows/movies download: Just add your shows and movies to the watch list and it should automatically download the files when they are available.
- Automatic clasification and organization: Your media files should be completely organized by default.
- Automatic subtitles download: Self explanatory. Your media server should automatically download subtitles in the languages you choose, if they are available.
- Support for Web, Android, iOS, Android TV and whatever that can support Emby: Since we are leveraging from Emby, you should be able to watch your favorite media almost anywhere.
Dependencies
You need to have:
If you haven't installed them, don't worry! The script will attempt to run both installations (it only works in Debian and Ubuntu!)
Before running
Before installing, make sure you have:
- An installation location: The script is going to ask you for a install location, but it will default
to
/opt/yams
. Just make sure your current user has permissions to write on the selected directory. -
A media folder: This is the folder where all your files are going to be downloaded and categorized. If you choose
/srv/media
, the script is going to create the following folders:/srv/media/tv
: For your TV shows/srv/media/movies
: For your movies/srv/media/music
: For your music/srv/media/books
: For your books/srv/media/downloads
: For your torrent downloads/srv/media/blackhole
: For your torrents blackhole
- A regular user to run and own the media files: You shouldn't use
root
for this user, but I'm not your father, nothing is going to stop you lol -
A VPN service (optional but STRONGLY recommended): If you can, choose one from this list. The VPN I always recommend is Mullvad because:
- They don’t require your email or information to create a new account.
- It’s simple to configure.
- They only have monthly subscriptions, so you can leave them whenever you want.
- You can pay with crypto.
To run
$ git clone --depth=1 https://gitlab.com/rogs/yams.git /tmp/yams
$ cd /tmp/yams
$ bash install.sh
And follow the instructions.
So far, I've tested this in Debian 11 and Ubuntu 22.04.
Usage
When the script finishes installing without issues, just run:
$ yams
yams - Yet Another Media Server
Usage: yams [--help|restart|stop|start|destroy|check-vpn|update]
options:
--help displays this help message
restart restarts yams services
stop stops all yams services
start starts yams services
destroy destroy yams services so you can start from scratch
check-vpn checks if the VPN is working as expected
update updates YAMS
How to configure?
Go to https://yams.media/config/ and follow the config instructions
Donations
If you really wish to donate, first I would like to say thank you from the bottom of my heart! ❤️ Second, I would prefer you donate to any of the projects used in this script.
They are the ones doing the real work, I just created a docker-compose file and a couple of bash scripts:
- linuxserver.io donations page
- Sonarr donations page
- Radarr donations page
- Jellyfin donations page
- Emby premier page (Recommended! I personally use this service)
- Plex pass page
- qBittorrent donations page
- Bazarr donations page
- gluetun donations page
- Prowlarr donations page
Just let them know YAMS sent you there 😎
todo [4/17]
(in order)
- Support for multiple media servers (Jellyfin and Plex). [Done ✅]
- Add Portainer. [Done ✅]
- Add updatE Functionality (
yams update
). [Done ✅] - Consider moving to Alpine images (might not be possible without a big change on the docker-compose file).
- Add multiple download clients to choose from.
- Add Jackett as an "yams extra".
- Add jellyseer or Omby.
- Add a dashboard like Organizr.
- Consider adding Lidarr and Readarr. [Done ✅] Thanks to Jay Taggart!
- Support for qBittorrent themes (VueTorrent).
- Support for Wireguard.
- Check Filebrowser.
- Investigate FlareSolverr.
- Check unpackerr.
- Check Flemarr.
- Check usenet.
- Check Jellyfin Accounts Go.
Special thanks
- linuxserver.io for their amazing docker images
- Sonarr
- Radarr
- Jellyfin
- Emby
- Plex
- qBittorrent
- Bazarr
- Prowlarr
- Portainer
-
My friends:
For giving me ideas and helping me test the script
And finally:
- You 🫵, for being such an amazing human being, checking out my repo and (hopefully!) using it on your media server. Thank you! 🙇