diff options
author | makefu <github@syntax-fehler.de> | 2020-08-12 12:23:01 +0200 |
---|---|---|
committer | makefu <github@syntax-fehler.de> | 2020-08-12 12:23:01 +0200 |
commit | 5ccb8e08e82a171749e9f93fea38b2c4d55cd868 (patch) | |
tree | 0319f0ccbed78624d65dfa6bd9304c7228aa228e /makefu/2configs/bureautomation/comic-updater.nix | |
parent | 4cb0ff12ba563693b6be7aac3c7cc8c6ce7a003c (diff) |
ma bureautomation: fetch latest xkcd comic
Diffstat (limited to 'makefu/2configs/bureautomation/comic-updater.nix')
-rw-r--r-- | makefu/2configs/bureautomation/comic-updater.nix | 12 |
1 files changed, 10 insertions, 2 deletions
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; }; |