Renaming containers to application name, adding ytdl-subs. - selfhost - Incus configurations for my self-hosted setup.
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
---
(DIR) commit 83fe097630d507ebc562928330cce2d43554cff1
(DIR) parent 62b0fa7fad89fc5b453edcfb915fd8222b74bc86
(HTM) Author: Jay Scott <me@jay.scot>
Date: Sat, 22 Jun 2024 16:34:04 +0100
Renaming containers to application name, adding ytdl-subs.
Diffstat:
D feeds/feeds.yaml | 32 -------------------------------
D feeds/files/style.css | 68 -------------------------------
D feeds/init.sh | 13 -------------
M nas/nas.yaml | 3 ++-
R feeds/files/fetch.sh -> sfeed/file… | 0
R feeds/files/lighttpd.conf -> sfeed… | 0
A sfeed/files/style.css | 15 +++++++++++++++
A sfeed/init.sh | 13 +++++++++++++
A sfeed/sfeed.yaml | 32 +++++++++++++++++++++++++++++++
R feeds/files/fetch.sh -> ytdl-sub/f… | 0
A ytdl-sub/files/subscriptions.yaml | 57 +++++++++++++++++++++++++++++++
A ytdl-sub/init.sh | 10 ++++++++++
A ytdl-sub/ytdl-sub.yaml | 29 +++++++++++++++++++++++++++++
13 files changed, 158 insertions(+), 114 deletions(-)
---
(DIR) diff --git a/feeds/feeds.yaml b/feeds/feeds.yaml
@@ -1,32 +0,0 @@
-devices:
- feeds:
- path: /root/.sfeed
- source: /srv/services/feeds
- type: disk
- shift: true
- certs:
- path: /etc/lighttpd/certs
- source: /srv/certs
- type: disk
- shift: true
-
-config:
- cloud-init.network-config: |
- version: 2
- ethernets:
- eth0:
- addresses:
- - 192.168.2.16/24
- gateway4: 192.168.2.1
- cloud-init.user-data: |
- #cloud-config
- package_upgrade: true
- hostname: feeds.jay.scot
- timezone: Europe/London
- manage_resolv_conf: true
- resolv_conf:
- nameservers: ['192.168.2.10', '1.1.1.1']
- packages:
- - lighttpd
- - sfeed
- - curl
(DIR) diff --git a/feeds/files/style.css b/feeds/files/style.css
@@ -1,68 +0,0 @@
-body {
- background-color: #fff;
- color: #333;
- font-family: monospace;
- font-size: 11pt;
- margin: 0;
- overflow: hidden;
- padding: 0;
-}
-h2 {
- font-size: 14pt;
- margin: 0.5em 0;
-}
-#sidebar ul, #sidebar ul li {
- list-style: none;
- margin: 0;
- padding: 0;
- font-size: 9pt;
-}
-#sidebar {
- background-color: inherit;
-}
-#sidebar a {
- padding: 5px 3px 5px 10px;
- display: block;
- text-decoration: none;
-}
-a {
- text-decoration: none;
-}
-a:hover {
- background-color: grey;
- color: black
-}
-
-#sidebar a, #items h2 a {
- color: inherit;
-}
-div#items {
- padding: 0 15px;
-}
-body.noframe div#sidebar {
- height: 100%;
- left: 0;
- overflow: auto;
- position: fixed;
- top: 0;
- width: 250px;
- z-index: 999;
-}
-body.noframe div#items {
- height: 100%;
- left: 250px;
- overflow: auto;
- position: absolute;
- right: 0;
- top: 0;
-}
-body.noframe div#items.nosidebar {
- left: 0px;
-}
-body.frame {
- overflow: auto;
-}
-body.frame #sidebar br {
- display: none;
-}
-
(DIR) diff --git a/feeds/init.sh b/feeds/init.sh
@@ -1,13 +0,0 @@
-#!/bin/sh
-
-HOST=feeds
-
-incus stop $HOST
-incus delete $HOST
-incus launch images:alpine/3.20/cloud $HOST < $HOST.yaml
-
-incus file push ./files/lighttpd.conf $HOST/etc/lighttpd/ -pv --mode 644
-incus file push ./files/fetch.sh $HOST/etc/periodic/hourly/ -pv --mode 755
-incus exec $HOST -- cloud-init status --wait
-incus exec $HOST -- rc-service lighttpd start
-
(DIR) diff --git a/nas/nas.yaml b/nas/nas.yaml
@@ -1,8 +1,9 @@
devices:
- htdocs:
+ storage:
path: /share
source: /srv
type: disk
+ shift: true
config:
cloud-init.network-config: |
(DIR) diff --git a/feeds/files/fetch.sh b/sfeed/files/fetch.sh
(DIR) diff --git a/feeds/files/lighttpd.conf b/sfeed/files/lighttpd.conf
(DIR) diff --git a/sfeed/files/style.css b/sfeed/files/style.css
@@ -0,0 +1,15 @@
+body { background-color: #FFFFFF; color: #333333; font-family: monospace; font-size: 11pt; margin: 0; overflow: hidden; padding: 0; }
+h2 { font-size: 14pt; margin: 0.5em 0; }
+#sidebar ul, #sidebar ul li { list-style: none; margin: 0; padding: 0; font-size: 11pt; }
+#sidebar { background-color: inherit; }
+#sidebar a { padding: 5px 3px 5px 10px; display: block; color: #000000; }
+a { text-decoration: dashed underline; color: #000000; }
+u { text-decoration: dashed underline; }
+a:hover { background-color: #CCCCCC; color: #333333; font-weight: bold; }
+#sidebar a, #items h2 a { color: inherit; text-decoration: none; }
+div#items { padding: 0 15px; }
+body.noframe div#sidebar { height: 100%; left: 0; overflow: auto; position: fixed; top: 0; width: 250px; z-index: 999; }
+body.noframe div#items { height: 100%; left: 250px; overflow: auto; position: absolute; right: 0; top: 0; }
+body.noframe div#items.nosidebar { left: 0px; }
+body.frame { overflow: auto; }
+body.frame #sidebar br { display: none; }
(DIR) diff --git a/sfeed/init.sh b/sfeed/init.sh
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+HOST=sfeed
+
+incus stop $HOST
+incus delete $HOST
+incus launch images:alpine/3.20/cloud $HOST < $HOST.yaml
+
+incus file push ./files/lighttpd.conf $HOST/etc/lighttpd/ -pv --mode 644
+incus file push ./files/fetch.sh $HOST/etc/periodic/hourly/ -pv --mode 755
+incus exec $HOST -- cloud-init status --wait
+incus exec $HOST -- rc-service lighttpd start
+
(DIR) diff --git a/sfeed/sfeed.yaml b/sfeed/sfeed.yaml
@@ -0,0 +1,32 @@
+devices:
+ feeds:
+ path: /root/.sfeed
+ source: /srv/services/sfeed
+ type: disk
+ shift: true
+ certs:
+ path: /etc/lighttpd/certs
+ source: /srv/certs
+ type: disk
+ shift: true
+
+config:
+ cloud-init.network-config: |
+ version: 2
+ ethernets:
+ eth0:
+ addresses:
+ - 192.168.2.16/24
+ gateway4: 192.168.2.1
+ cloud-init.user-data: |
+ #cloud-config
+ package_upgrade: true
+ hostname: feeds.jay.scot
+ timezone: Europe/London
+ manage_resolv_conf: true
+ resolv_conf:
+ nameservers: ['192.168.2.10', '1.1.1.1']
+ packages:
+ - lighttpd
+ - sfeed
+ - curl
(DIR) diff --git a/feeds/files/fetch.sh b/ytdl-sub/files/fetch.sh
(DIR) diff --git a/ytdl-sub/files/subscriptions.yaml b/ytdl-sub/files/subscriptions.yaml
@@ -0,0 +1,57 @@
+# Overrides to the prebuilt presets
+__preset__:
+ overrides:
+ tv_show_directory: "/tv_shows"
+
+ only_recent_date_range: "1months"
+ only_recent_max_files: 10
+
+# Choose the player you intend to use by setting the top-level key to be either:
+# - Plex TV Show by Date:
+# - Jellyfin TV Show by Date:
+# - Kodi TV Show by Date:
+Jellyfin TV Show by Date:
+
+ # Sets genre tag to "Documentaries"
+ = Tech | Only Recent:
+ "Brodie Robertson": "https://www.youtube.com/channel/UCld68syR8Wi-GY_n4CaoJGA"
+ "DistroTube": "https://www.youtube.com/@DistroTube"
+ "Zaney": "https://www.youtube.com/@ZaneyOG"
+ "The Linux Cast": "https://www.youtube.com/@TheLinuxCast"
+ "Gotbletu": "https://www.youtube.com/@gotbletu"
+ "Ned in the Cloud": "https://www.youtube.com/@NedintheCloud"
+ "DB Tech": "https://www.youtube.com/@DBTechYT"
+
+ = Adventure | Only Recent:
+ "Planes Trains and Everything": "https://www.youtube.com/@PlanesTrainsAndEverythingNice"
+ "Steve Wallis": "https://www.youtube.com/@campingwithsteve"
+ "Alastair Humphreys": "https://www.youtube.com/@al_humphreys"
+ "Daley Outdoors": "https://www.youtube.com/@DaleyOutdoors"
+ "c90 Adventures": "https://www.youtube.com/@c90adventures"
+ "Simon Wilson": "https://www.youtube.com/@SimonWilson12"
+ "Vagrant Holiday": "https://www.youtube.com/@VagrantHoliday"
+ "PPPeter": "https://www.youtube.com/@PPPeter_Official"
+ "SteveMarsh": "https://www.youtube.com/@steve-marsh"
+ "Danni and Joe": "https://www.youtube.com/@DanniandJoe"
+ "Itchy Boots": "https://www.youtube.com/@ItchyBoots"
+
+ = Radio | Only Recent:
+ "Ringway Manchester": "https://www.youtube.com/@RingwayManchester"
+
+ = Gaming | Only Recent:
+ "Lazy Peon": "https://www.youtube.com/@TheLazyPeon"
+ "Bellular Warcraft": "https://www.youtube.com/@BellularGaming"
+ "Kelani": "https://www.youtube.com/@SignsOfKelani"
+
+ = Misc | Only Recent:
+ "Zac Alsop": "https://www.youtube.com/@ZacAlsop"
+ "Steve1989MREInfo": "https://www.youtube.com/@Steve1989MRE"
+ "Auto Alex": "https://www.youtube.com/@AutoalexCars"
+ "Peter Santenello": "https://www.youtube.com/@PeterSantenello"
+
+
+
+
+
+
+
(DIR) diff --git a/ytdl-sub/init.sh b/ytdl-sub/init.sh
@@ -0,0 +1,10 @@
+#!/bin/sh
+
+HOST=ytdl-sub
+
+incus stop $HOST
+incus delete $HOST
+incus launch images:alpine/3.20/cloud $HOST < $HOST.yaml
+
+incus file push ./files/subscriptions.yaml $HOST/root/ -pv --mode 644
+incus exec $HOST -- cloud-init status --wait
(DIR) diff --git a/ytdl-sub/ytdl-sub.yaml b/ytdl-sub/ytdl-sub.yaml
@@ -0,0 +1,29 @@
+devices:
+ feeds:
+ path: /tv_shows
+ source: /srv/media/tv_shows
+ type: disk
+ shift: true
+
+config:
+ cloud-init.network-config: |
+ version: 2
+ ethernets:
+ eth0:
+ addresses:
+ - 192.168.2.17/24
+ gateway4: 192.168.2.1
+ cloud-init.user-data: |
+ #cloud-config
+ package_upgrade: true
+ hostname: ytdl-sub.jay.scot
+ timezone: Europe/London
+ manage_resolv_conf: true
+ resolv_conf:
+ nameservers: ['192.168.2.10', '1.1.1.1']
+ packages:
+ - ytdl-sub
+ write_files:
+ - owner: root:root
+ path: /var/spool/cron/crontabs/root
+ content: 0 1 * * * ytdl-sub sub /root/subscriptions.yaml