Wenn man einige Dienste auf seinem Uberspace am Laufen hat, dann wird es irgendwann mühselig bei allen immer stets die aktuelle Version im Auge zu behalten. Das wissen viele Entwickler auch und stellen daher RSS-Feeds zur Verfügung, die nur bei Updates ihrer Software aktualisiert werden. Allerdings wäre es praktisch, wenn man darüber per E-Mail benachrichtigt würde. Dafür gibt es tatsächlich auch einen Dienst, den man auf dem Uberspace laufen lassen kann und zwar rss2email. Die folgende Installationsanleitung hält sich an die Anleitung des Entwicklers, ergänzt um die Konfiguration, damit der Dienst regelmäßig ausgeführt wird.
Installation
Zunächst muss rss2email
heruntergeladen werden. Überprüft bitte auf der
Downloadseite, ob die Version noch die aktuellste ist. Danach muss das Paket
entpackt werden und die Dateiberechtigungen gefixt werden - bei mir fehlten alle
Berechtigungen. Dann muss schließlich noch das Wrapper-Skript angelegt werden,
damit r2e
im Pfad landet. Da das Skript an und für sich in Python geschrieben
ist, denkt daran im mitgelieferten r2e
-Skript den Python-Aufruf auf
python2
oder python2.7
umzubiegen, sofern ihr python
auf python3
umgebogen habt. Außerdem muss die Beispielkonfiguration kopiert werden.
$ wget http://www.allthingsrss.com/rss2email/rss2email-2.71.tar.gz $ tar -xzf rss2email-2.71.tar.gz $ chmod 700 rss2email-2.71 $ mv rss2email-2.71 ~/bin/rss2email $ chmod 600 ~/bin/rss2email/* $ chmod +x ~/bin/rss2email/r2e $ cat <<'__EOF__' >> ~/bin/r2e #!/bin/sh cd ~/bin/rss2email ./r2e $* __EOF__ $ chmod +x ~/bin/r2e $ cp ~/bin/rss2email/config.py.example ~/bin/rss2email/config.py
Als nächstes muss man die Konfiguration anpassen, die meisten Einstellungen
müssen jedoch nicht verändert werden. Die DEFAULT_FROM
E-Mail-Adresse muss
angepasst werden, sie ist die Standardadresse, von der diese Mails versendet
werden. Damit man auch über Änderungen an einem Post informiert wird, sollte
noch TRUST_GUID = 0
gesetzt werden. Das Versenden der E-Mails ist am
einfachsten über sendmail
möglich, dazu muss SMTP_SEND = 0
gesetzt werden.
Ich hab außerdem noch UTF-8 an den Anfang der CHARSET_LIST
gesetzt.
$ nano ~/bin/rss2email/config.py
Als letztes muss der Cronjob eingerichtet werden, wobei das genau genommen nicht
als Cronjob gelöst wird, sondern, wie von den Ubernauten vorgeschlagen,
mit runwhen
. Dazu muss man zunächst sicherstellen, dass die daemontools für
diesen Nutzer bereits eingerichtet wurden, dann muss der runwhen-Job
eingerichtet werden und eingestellt werden, wann und wie oft der Job ausgeführt
werden soll. Der Job soll dabei täglich nachts um drei ausgeführt werden:
$ test -d ~/service || uberspace-setup-svscan $ runwhen-conf ~/etc/run-r2e "$HOME/bin/r2e" $ sed -i 's/RUNWHEN=\"\"/RUNWHEN=\",H=3\"/' ~/etc/r2e/run $ ln -s /home/zwiebel/etc/run-r2e ~/service
Hinweis: Die $HOME
-Variable in dem runwhen-conf
-Aufruf ist Absicht, in den
Anführungszeichen wird ~
warum auch immer nicht korrekt expandiert.
Datenbank anlegen
Zunächst muss die Datenbank, in der die Feeds gespeichert werden, angelegt
werden. Diese wird mit der <ZIELADRESSE>
, an die die Feeds gesendet werden,
initialisiert.
$ r2e new <ZIELADRESSE>
Feeds abonnieren
Jetzt müssen nur noch die Feeds abonniert werden. Dies erfolgt mit dem
add
-Befehl, als erstes Beispiel dient der Update-Feed von rss2email, weitere
Feeds werden genauso hinzugefügt:
$ r2e add http://feeds.feedburner.com/allthingsrss/hJBr
Was man noch besser machen kann
Wie immer ziemlich vieles ;-) Was ich hier konkret noch verbessern möchte:
- Da es hier einen runwhen-Job und damit also eine Abhängigkeit von den daemontools gibt, mein obligatorischer Wunsch endlich eine Möglichkeit zu finden, dass ich diese Services überwachen kann um bei Problemen benachrichtigt zu werden. Das bleibt wohl nochn Weilchen ne Baustelle...
Für weitere Vorschläge und Ideen bin ich immer zu haben, bis die Kommentarfunktion tut leider nur per Mail oder Twitter.