summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormakefu <github@syntax-fehler.de>2020-08-12 12:23:01 +0200
committermakefu <github@syntax-fehler.de>2020-08-12 12:23:01 +0200
commit5ccb8e08e82a171749e9f93fea38b2c4d55cd868 (patch)
tree0319f0ccbed78624d65dfa6bd9304c7228aa228e
parent4cb0ff12ba563693b6be7aac3c7cc8c6ce7a003c (diff)
ma bureautomation: fetch latest xkcd comic
-rw-r--r--makefu/2configs/bureautomation/camera/comic.nix4
-rw-r--r--makefu/2configs/bureautomation/comic-updater.nix12
-rw-r--r--makefu/2configs/bureautomation/default.nix7
3 files changed, 18 insertions, 5 deletions
diff --git a/makefu/2configs/bureautomation/camera/comic.nix b/makefu/2configs/bureautomation/camera/comic.nix
index a847b0add..a523d032e 100644
--- a/makefu/2configs/bureautomation/camera/comic.nix
+++ b/makefu/2configs/bureautomation/camera/comic.nix
@@ -3,4 +3,8 @@
platform = "generic";
still_image_url = http://127.0.0.1:8123/local/lines.png ;
}
+ { name = "XKCD";
+ platform = "generic";
+ still_image_url = http://127.0.0.1:8123/local/xkcd.png ;
+ }
]
diff --git a/makefu/2configs/bureautomation/comic-updater.nix b/makefu/2configs/bureautomation/comic-updater.nix
index 5f26bc2c7..1e2440939 100644
--- a/makefu/2configs/bureautomation/comic-updater.nix
+++ b/makefu/2configs/bureautomation/comic-updater.nix
@@ -6,21 +6,29 @@ let
in {
systemd.services.comic-updater = {
startAt = "daily";
- description = "Send led change to message queue";
+ description = "update our comics";
after = [ "network-online.target" ] ++ (lib.optional config.services.mosquitto.enable "mosquitto.service");
path = with pkgs; [ wget xmlstarlet ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
User = "hass";
WorkingDirectory = config.services.home-assistant.configDir;
- ExecStart = pkgs.writeDash "update-poorly-drawn-lines" ''
+ ExecStart = pkgs.writeDash "update-comics" ''
set -euf
mkdir -p www/
cd www/
+ # poorly drawn lines
pic=$(wget -O- http://www.poorlydrawnlines.com/feed/ \
| xml sel -t -v '/rss/channel/item/content:encoded' \
| head -n 2 | sed -n 's/.*src="\([^"]\+\)".*/\1/p' )
wget "$pic" -nc && cp -v "$(basename "$pic")" lines.png
+
+ #pic=$(curl -L xkcd.com 2>/dev/null | grep imgs.xkcd.com | grep title | sed -n 's/.*src="\([^"]\+\)" .*/https:\1/p')
+ # xkcd
+ pic=$(wget -O- https://xkcd.com/rss.xml \
+ | xml sel -t -v '/rss/channel/item/description' \
+ | head -n 1 | sed -n 's/.*src="\([^"]\+\)".*/\1/p' )
+ wget "$pic" -nc && cp -v "$(basename "$pic")" xkcd.png
'';
PrivateTmp = true;
};
diff --git a/makefu/2configs/bureautomation/default.nix b/makefu/2configs/bureautomation/default.nix
index c115bcb6c..9b33595f4 100644
--- a/makefu/2configs/bureautomation/default.nix
+++ b/makefu/2configs/bureautomation/default.nix
@@ -137,9 +137,9 @@ in {
++ frosch.binary_sensor
++ aramark.binary_sensor;
- sensor =
- # [{ platform = "version"; }] ++ # pyhaversion
- (import ./sensor/pollen.nix)
+ sensor = []
+ ++ [{ platform = "version"; }] # pyhaversion
+ ++ (import ./sensor/pollen.nix)
++ (import ./sensor/espeasy.nix)
++ (import ./sensor/airquality.nix)
++ ((import ./sensor/outside.nix) {inherit lib;})
@@ -238,6 +238,7 @@ in {
"camera.Autobahn_Singen"
"camera.puppies"
"camera.poorly_drawn_lines"
+ "camera.xkcd"
];
nachtlicht = [
"switch.nachtlicht_a"