2022-11-25 11:27:16 +01:00
|
|
|
|
{
|
|
|
|
|
|
pkgs,
|
|
|
|
|
|
lib,
|
2023-02-22 10:02:55 +01:00
|
|
|
|
config,
|
2022-11-25 11:27:16 +01:00
|
|
|
|
...
|
|
|
|
|
|
}: let
|
|
|
|
|
|
celan = pkgs.fetchzip {
|
|
|
|
|
|
url = "http://c.krebsco.de/celan.tar.gz";
|
|
|
|
|
|
sha256 = "sha256-nA+EwAH2vkeolsy9AoPLEMt1uGKDZe/aPrS95CZvuus=";
|
|
|
|
|
|
};
|
|
|
|
|
|
in {
|
2024-10-05 14:42:44 +02:00
|
|
|
|
niveum.bots.celan = {
|
2022-11-25 11:27:16 +01:00
|
|
|
|
enable = true;
|
|
|
|
|
|
time = "08:00";
|
2024-10-05 14:42:44 +02:00
|
|
|
|
telegram = {
|
|
|
|
|
|
enable = true;
|
|
|
|
|
|
tokenFile = config.age.secrets.telegram-token-kmein.path;
|
|
|
|
|
|
chatIds = ["@PaulCelan"];
|
|
|
|
|
|
};
|
|
|
|
|
|
mastodon = {
|
|
|
|
|
|
enable = true;
|
|
|
|
|
|
tokenFile = config.age.secrets.mastodon-token-celan.path;
|
|
|
|
|
|
language = "de";
|
|
|
|
|
|
};
|
2022-11-25 11:27:16 +01:00
|
|
|
|
command = toString (pkgs.writers.writeDash "random-celan" ''
|
|
|
|
|
|
cd ${celan}
|
|
|
|
|
|
poem="$(${pkgs.findutils}/bin/find . -type f | ${pkgs.coreutils}/bin/shuf -n1)"
|
2024-10-05 14:42:44 +02:00
|
|
|
|
source="$(${pkgs.coreutils}/bin/dirname "$poem" \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's#^\./##;s/[-_]/ /g;s!/! › !g;s/0\([0-9]\+\)/\1/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Der Sand aus den Urnen/#Der_Sand_aus_den_Urnen (1948)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Mohn und Gedächtnis/#Mohn_und_Gedächtnis (1952)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Von Schwelle zu Schwelle/#Von_Schwelle_zu_Schwelle (1955)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Sprachgitter/#& (1959)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Niemandsrose/#& (1963)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Atemwende/#& (1967)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Fadensonnen/#& (1968)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Lichtzwang/#& (1970)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Schneepart/#& (1971)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Zeitgehöft/#& (1976)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Frühwerk/#& (1989)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Eingedunkelt/#& (1991)/g' \
|
|
|
|
|
|
| ${pkgs.gnused}/bin/sed 's/Nachlaß/#& (1997)/g'
|
|
|
|
|
|
)"
|
2022-11-25 11:27:16 +01:00
|
|
|
|
cat "$poem"
|
|
|
|
|
|
echo
|
2024-10-05 14:42:44 +02:00
|
|
|
|
printf "Aus: %s\n\n#PaulCelan #Celan #Lyrik #poetry" "$source"
|
2022-11-25 11:27:16 +01:00
|
|
|
|
'');
|
|
|
|
|
|
};
|
|
|
|
|
|
|
2024-10-05 14:42:44 +02:00
|
|
|
|
age.secrets = {
|
|
|
|
|
|
mastodon-token-celan.file = ../../secrets/mastodon-token-celan.age;
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
systemd.timers.bot-celan.timerConfig.RandomizedDelaySec = "10h";
|
2022-11-25 11:27:16 +01:00
|
|
|
|
|
|
|
|
|
|
niveum.passport.services = [
|
|
|
|
|
|
{
|
|
|
|
|
|
title = "Paul Celan Bot";
|
|
|
|
|
|
description = "sends a random poem by Paul Celan to Telegram.";
|
|
|
|
|
|
link = "https://t.me/PaulCelan";
|
|
|
|
|
|
}
|
|
|
|
|
|
];
|
|
|
|
|
|
}
|