I doubt your using NixOS so this config might seem useless but at its core it is a simple systemd timer service and bash scripting.
To convert this to another OS you will use cron to call the script at the time you want. Copy the part between script=“” and then change out variables like the location of where docker-compose is stored since its different on NixOS.
Let me explain the script. We start out by defining the backupDate variable, this will be the name of the zip file. As of now that variable would be 2023-07-12. We then go to each folder with a docker-compose.yml file and take it down. You could also replace down with stop if you don’t plan on updating each night like I do. I use rclone to connect to Dropbox but rclone supports many providers so check it out and see if it has the one you need. Lastly I use rclone to connect to my Dropbox and delete anything older than 7 days in the backup folder. If you end up going my route and get stuck let me know and I can help out. Good luck.
systemd = {
timers.docker-backup = {
wantedBy = [ "timers.target" ];
partOf = [ "docker-backup.service" ];
timerConfig.OnCalendar= "*-*-* 3:30:00";
};
services.docker-backup = {
serviceConfig.Type = "oneshot";
serviceConfig.User = "root";
script = ''
backupDate=$(date +'%F')
cd /docker/apps/rss
${pkgs.docker-compose}/bin/docker-compose down
cd /docker/apps/paaster
${pkgs.docker-compose}/bin/docker-compose down
cd /docker/no-backup-apps/nextcloud
${pkgs.docker-compose}/bin/docker-compose down
cd /docker/apps/nginx-proxy-manager
${pkgs.docker-compose}/bin/docker-compose down
cd /docker/backups/
${pkgs.zip}/bin/zip -r server-backup-$backupDate.zip /docker/apps
cd /docker/apps/nginx-proxy-manager
${pkgs.docker-compose}/bin/docker-compose pull
${pkgs.docker-compose}/bin/docker-compose up -d
cd /docker/apps/paaster
${pkgs.docker-compose}/bin/docker-compose pull
${pkgs.docker-compose}/bin/docker-compose up -d
cd /docker/apps/rss
${pkgs.docker-compose}/bin/docker-compose pull
${pkgs.docker-compose}/bin/docker-compose up -d
cd /docker/no-backup-apps/nextcloud
${pkgs.docker-compose}/bin/docker-compose pull
${pkgs.docker-compose}/bin/docker-compose up -d
cd /docker/backups/
${pkgs.rclone}/bin/rclone copy server-backup-$backupDate.zip Dropbox:Server-Backup/
rm server-backup-$backupDate.zip
${pkgs.rclone}/bin/rclone delete --min-age 7d Dropbox:Server-Backup/
'';
};
};
I assume you will be using docker and this is a nice security tool to have that cleans PDFs https://github.com/freedomofpress/dangerzone
Self host games with https://crackpipe.de/
Bash scripting and rclone personally, here is a video that helps https://youtu.be/wUXSLmGAtgQ
Just found out about https://seez.su/ from the recent changes to FMHY and I really like the UI.
Everyone here is correct that what your thinking wont work and let me clarify why. When you torrent something the IP address used to download content is shared with everyone in the pool. You get caught when companies or 3rd parties trying to enforce copyright are in that pool and record every IP. So however you download the content, the front facing IP needs to be with an ISP that doesn’t give a fuck about copyright, usually another jurisdiction with lacks copyright infringement laws. If you host a VPN at your house your still using the same ISP which will still bring either a letter or shutdown of service.
I’ve setup Stremio with Real Debrid and the Torrentio Addon for a lot of people and it all just works. SmartTube for YouTube replacement is also a goto.
I usually use a Chromecast but any Android TV will work. For a lot more work than it’s worth but I still do it is remapping the Chromecast remote buttons to open SmartTube when hitting the YouTube button and Stremio when hitting Netflix.
Here is a quick guide on how to use Virus Total for pirated software https://rentry.org/Guide4VirusTotal
Yes just interface