Introduction
Introduction Statistics Contact Development Disclaimer Help
Adding sfeed container. - selfhost - Incus configurations for my self-hosted se…
Log
Files
Refs
README
---
commit 62b0fa7fad89fc5b453edcfb915fd8222b74bc86
parent 7f29fb96e0c3f9a9195a0475c71c7a5476c09cbd
Author: Jay Scott <[email protected]>
Date: Thu, 20 Jun 2024 16:59:09 +0100
Adding sfeed container.
Diffstat:
A feeds/feeds.yaml | 32 +++++++++++++++++++++++++++++…
A feeds/files/fetch.sh | 5 +++++
A feeds/files/lighttpd.conf | 29 +++++++++++++++++++++++++++++
A feeds/files/style.css | 68 +++++++++++++++++++++++++++++…
A feeds/init.sh | 13 +++++++++++++
5 files changed, 147 insertions(+), 0 deletions(-)
---
diff --git a/feeds/feeds.yaml b/feeds/feeds.yaml
@@ -0,0 +1,32 @@
+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
diff --git a/feeds/files/fetch.sh b/feeds/files/fetch.sh
@@ -0,0 +1,5 @@
+#!/bin/sh
+
+sfeed_update
+sfeed_html /root/.sfeed/feeds/* > /srv/index.html
+cp /root/.sfeed/style.css /srv/
diff --git a/feeds/files/lighttpd.conf b/feeds/files/lighttpd.conf
@@ -0,0 +1,29 @@
+var.basedir = "/var/www/localhost"
+var.logdir = "/var/log/lighttpd"
+var.statedir = "/var/lib/lighttpd"
+
+include "mime-types.conf"
+server.username = "lighttpd"
+server.groupname = "lighttpd"
+server.document-root = var.basedir + "/htdocs"
+server.pid-file = "/run/lighttpd.pid"
+server.errorlog = var.logdir + "/error.log"
+index-file.names = ("index.html")
+
+server.modules += ( "mod_redirect", "mod_openssl")
+
+$SERVER["socket"] == ":443" {
+ ssl.engine = "enable"
+ ssl.pemfile = "/etc/lighttpd/certs/jay.scot.cer"
+ ssl.privkey = "/etc/lighttpd/certs/jay.scot.key"
+ ssl.openssl.ssl-conf-cmd = ("MinProtocol" => "TLSv1.3", "Options" => "-Ser…
+
+ server.name = "feeds.jay.scot"
+ server.document-root = "/srv/"
+}
+
+$HTTP["scheme"] == "http" {
+ $HTTP["host"] =~ ".*" {
+ url.redirect = (".*" => "https://%0$0")
+ }
+}
diff --git a/feeds/files/style.css b/feeds/files/style.css
@@ -0,0 +1,68 @@
+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;
+}
+
diff --git a/feeds/init.sh b/feeds/init.sh
@@ -0,0 +1,13 @@
+#!/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
+
You are viewing proxied material from jay.scot. The copyright of proxied material belongs to its original authors. Any comments or complaints in relation to proxied material should be directed to the original authors of the content concerned. Please see the disclaimer for more details.