l prism.r: add mumble-reminder
This commit is contained in:
parent
7da630e2d5
commit
2dc1b2931f
@ -111,6 +111,7 @@ with import <stockholm/lib>;
|
||||
<stockholm/lass/2configs/jitsi.nix>
|
||||
<stockholm/lass/2configs/fysiirc.nix>
|
||||
<stockholm/lass/2configs/bgt-bot>
|
||||
<stockholm/lass/2configs/mumble-reminder.nix>
|
||||
<stockholm/krebs/2configs/mastodon-proxy.nix>
|
||||
{
|
||||
services.tor = {
|
||||
|
107
lass/2configs/mumble-reminder.nix
Normal file
107
lass/2configs/mumble-reminder.nix
Normal file
@ -0,0 +1,107 @@
|
||||
{ config, lib, pkgs, ... }: let
|
||||
write_to_irc = chan: pkgs.writeDash "write_to_irc" ''
|
||||
${pkgs.curl}/bin/curl -fsSv --unix-socket '${lib.removePrefix "unix:" config.krebs.reaktor2.mumble-reminder.API.listen}' http://z/ \
|
||||
-H content-type:application/json \
|
||||
-d "$(${pkgs.jq}/bin/jq -n \
|
||||
--arg text "$1" '{
|
||||
command:"PRIVMSG",
|
||||
params:["${chan}",$text]
|
||||
}'
|
||||
)"
|
||||
'';
|
||||
animals = ''
|
||||
Erdferkel
|
||||
Paviane
|
||||
Raupen
|
||||
Australischen Wildhunde
|
||||
Emus
|
||||
Flundern
|
||||
Gorillas
|
||||
Kolibris
|
||||
Schwarzfersenantilopen
|
||||
Quallen
|
||||
Kois
|
||||
Faulaffen
|
||||
Schraubenziegen
|
||||
Nachtigalle
|
||||
Okapis
|
||||
Stachelschweine
|
||||
Kurzschwanzkängurus
|
||||
Waschbären
|
||||
'';
|
||||
systemPlugin = {
|
||||
plugin = "system";
|
||||
config = {
|
||||
hooks.PRIVMSG = [
|
||||
{
|
||||
pattern = "^erriner mich$";
|
||||
activate = "match";
|
||||
command = {
|
||||
filename = pkgs.writeDash "add_remind" ''
|
||||
echo "$_from" >> /var/lib/reaktor2-mumble-reminder/users
|
||||
sort /var/lib/reaktor2-mumble-reminder/users | uniq > /var/lib/reaktor2-mumble-reminder/users.tmp
|
||||
mv /var/lib/reaktor2-mumble-reminder/users.tmp /var/lib/reaktor2-mumble-reminder/users
|
||||
echo "Ich werde $_from in zukunft an das meetup errinern"
|
||||
'';
|
||||
};
|
||||
}
|
||||
{
|
||||
pattern = "^nerv nicht$";
|
||||
activate = "match";
|
||||
command = {
|
||||
filename = pkgs.writeDash "add_remind" ''
|
||||
${pkgs.gnused}/bin/sed -i "/$_from/d" /var/lib/reaktor2-mumble-reminder/users
|
||||
echo "okok, Ich werde $_from nich mehr errinern"
|
||||
'';
|
||||
};
|
||||
}
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
in {
|
||||
krebs.reaktor2.mumble-reminder = {
|
||||
hostname = "irc.hackint.org";
|
||||
nick = "lassulus__";
|
||||
API.listen = "unix:/var/lib/reaktor2-mumble-reminder/reaktor_hackint.sock";
|
||||
plugins = [
|
||||
{
|
||||
plugin = "register";
|
||||
config = {
|
||||
channels = [
|
||||
"#krebs"
|
||||
"#nixos"
|
||||
];
|
||||
};
|
||||
}
|
||||
systemPlugin
|
||||
];
|
||||
port = "6697";
|
||||
};
|
||||
systemd.services.mumble-reminder-nixos = {
|
||||
description = "weekly reminder for nixos mumble";
|
||||
startAt = "Thu *-*-* 19:00:00 Europe/Berlin";
|
||||
serviceConfig = {
|
||||
ExecStart = pkgs.writers.writeDash "mumble_reminder" ''
|
||||
animals='
|
||||
${animals}
|
||||
'
|
||||
${write_to_irc "#nixos"} "Es ist Donnerstag meine $(echo "$animals" | grep -v '^$' | shuf -n1 )!"
|
||||
${write_to_irc "#nixos"} "kommt auf mumble://lassul.us"
|
||||
'';
|
||||
};
|
||||
};
|
||||
systemd.services.mumble-reminder-krebs = {
|
||||
description = "weekly reminder for nixos mumble";
|
||||
startAt = "Thu *-*-* 19:00:00 Europe/Berlin";
|
||||
serviceConfig = {
|
||||
ExecStart = pkgs.writers.writeDash "mumble_reminder" ''
|
||||
animals='
|
||||
${animals}
|
||||
'
|
||||
${write_to_irc "#krebs"} "Es ist Donnerstag meine $(echo "$animals" | grep -v '^$' | shuf -n1 )!"
|
||||
${write_to_irc "#krebs"} "$(cat /var/lib/reaktor2-mumble-reminder/users | ${pkgs.findutils}/bin/xargs echo) : mumble?"
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
Loading…
Reference in New Issue
Block a user