diff options
Diffstat (limited to 'krebs')
-rw-r--r-- | krebs/2configs/reaktor2.nix | 59 | ||||
-rw-r--r-- | krebs/3modules/default.nix | 3 | ||||
-rw-r--r-- | krebs/3modules/github-known-hosts.nix | 78 | ||||
-rw-r--r-- | krebs/3modules/github/default.nix | 6 | ||||
-rw-r--r-- | krebs/3modules/github/hosts-sync.nix (renamed from krebs/3modules/github-hosts-sync.nix) | 0 | ||||
-rw-r--r-- | krebs/3modules/github/known-hosts.json | 58 | ||||
-rw-r--r-- | krebs/3modules/github/known-hosts.nix | 12 |
7 files changed, 121 insertions, 95 deletions
diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index 2ca84f568..afaac9dae 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -9,6 +9,48 @@ let hooks = pkgs.reaktor2-plugins.hooks; commands = pkgs.reaktor2-plugins.commands; + # bedger - the bier ledger + # + # logo: http://c.r/bedger2 + # + bedger-add = { + pattern = ''^([\H-]*?):?\s+([+-][1-9][0-9]*)\s+(\S+)$''; + activate = "match"; + arguments = [1 2 3]; + command = { + env = { + # TODO; get state as argument + state_file = "${stateDir}/ledger"; + }; + filename = pkgs.writeDash "bedger-add" '' + set -x + tonick=$1 + amt=$2 + unit=$3 + printf '%s\n %s %d %s\n %s %d %s\n' "$(date -Id)" "$tonick" "$amt" "$unit" "$_from" "$(expr 0 - "''${amt#+}")" "$unit" >> $state_file + ${pkgs.hledger}/bin/hledger -f $state_file bal -N -O csv \ + | ${pkgs.coreutils}/bin/tail +2 \ + | ${pkgs.miller}/bin/mlr --icsv --opprint cat \ + | ${pkgs.gnugrep}/bin/grep "$_from" + ''; + }; + }; + bedger-balance = { + pattern = "^bier (ballern|bal(an(ce)?)?)$"; + activate = "match"; + command = { + env = { + state_file = "${stateDir}/ledger"; + }; + filename = pkgs.writeDash "bedger-balance" '' + ${pkgs.hledger}/bin/hledger -f $state_file bal -N -O csv \ + | ${pkgs.coreutils}/bin/tail +2 \ + | ${pkgs.miller}/bin/mlr --icsv --opprint cat \ + | ${pkgs.gnused}/bin/sed 's/^\(.\)/\1/' + ''; + }; + }; + taskRcFile = builtins.toFile "taskrc" '' confirmation=no ''; @@ -93,21 +135,6 @@ let ]; hooks.PRIVMSG = [ { - pattern = "^bier (ballern|bal(an(ce)?)?)$"; - activate = "match"; - command = { - env = { - state_file = "${stateDir}/ledger"; - }; - filename = pkgs.writeDash "bier-balance" '' - ${pkgs.hledger}/bin/hledger -f $state_file bal -N -O csv \ - | ${pkgs.coreutils}/bin/tail +2 \ - | ${pkgs.miller}/bin/mlr --icsv --opprint cat \ - | ${pkgs.gnused}/bin/sed 's/^\(.\)/\1/' - ''; - }; - } - { pattern = "^list-locations"; activate = "match"; command = { @@ -205,6 +232,8 @@ let ''; }; } + bedger-add + bedger-balance hooks.sed (generators.command_hook { inherit (commands) dance random-emoji nixos-version; diff --git a/krebs/3modules/default.nix b/krebs/3modules/default.nix index 7f0070483..5ba436580 100644 --- a/krebs/3modules/default.nix +++ b/krebs/3modules/default.nix @@ -25,8 +25,7 @@ let ./exim.nix ./fetchWallpaper.nix ./git.nix - ./github-hosts-sync.nix - ./github-known-hosts.nix + ./github ./go.nix ./hidden-ssh.nix ./hosts.nix diff --git a/krebs/3modules/github-known-hosts.nix b/krebs/3modules/github-known-hosts.nix deleted file mode 100644 index eec719f27..000000000 --- a/krebs/3modules/github-known-hosts.nix +++ /dev/null @@ -1,78 +0,0 @@ -{ - services.openssh.knownHosts.github = { - hostNames = [ - "github.com" - # List generated with (IPv6 addresses are currently ignored): - # curl -sS https://api.github.com/meta | jq -r .git[] | grep -v : | nix-shell -p cidr2glob --run cidr2glob | jq -R . - "192.30.252.*" - "192.30.253.*" - "192.30.254.*" - "192.30.255.*" - "185.199.108.*" - "185.199.109.*" - "185.199.110.*" - "185.199.111.*" - "140.82.112.*" - "140.82.113.*" - "140.82.114.*" - "140.82.115.*" - "140.82.116.*" - "140.82.117.*" - "140.82.118.*" - "140.82.119.*" - "140.82.120.*" - "140.82.121.*" - "140.82.122.*" - "140.82.123.*" - "140.82.124.*" - "140.82.125.*" - "140.82.126.*" - "140.82.127.*" - "143.55.64.*" - "143.55.65.*" - "143.55.66.*" - "143.55.67.*" - "143.55.68.*" - "143.55.69.*" - "143.55.70.*" - "143.55.71.*" - "143.55.72.*" - "143.55.73.*" - "143.55.74.*" - "143.55.75.*" - "143.55.76.*" - "143.55.77.*" - "143.55.78.*" - "143.55.79.*" - "13.114.40.48" - "52.192.72.89" - "52.69.186.44" - "15.164.81.167" - "52.78.231.108" - "13.234.176.102" - "13.234.210.38" - "13.236.229.21" - "13.237.44.5" - "52.64.108.95" - "20.201.28.151" - "20.205.243.166" - "102.133.202.242" - "20.248.137.48" - "18.181.13.223" - "54.238.117.237" - "54.168.17.15" - "3.34.26.58" - "13.125.114.27" - "3.7.2.84" - "3.6.106.81" - "52.63.152.235" - "3.105.147.174" - "3.106.158.203" - "20.201.28.152" - "20.205.243.160" - "102.133.202.246" - "20.248.137.50" - ]; - publicKey = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ=="; - }; -} diff --git a/krebs/3modules/github/default.nix b/krebs/3modules/github/default.nix new file mode 100644 index 000000000..2df4ba717 --- /dev/null +++ b/krebs/3modules/github/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./hosts-sync.nix + ./known-hosts.nix + ]; +} diff --git a/krebs/3modules/github-hosts-sync.nix b/krebs/3modules/github/hosts-sync.nix index 71eed6c69..71eed6c69 100644 --- a/krebs/3modules/github-hosts-sync.nix +++ b/krebs/3modules/github/hosts-sync.nix diff --git a/krebs/3modules/github/known-hosts.json b/krebs/3modules/github/known-hosts.json new file mode 100644 index 000000000..694f9adba --- /dev/null +++ b/krebs/3modules/github/known-hosts.json @@ -0,0 +1,58 @@ +[ + "192.30.252.*", + "192.30.253.*", + "192.30.254.*", + "192.30.255.*", + "185.199.108.*", + "185.199.109.*", + "185.199.110.*", + "185.199.111.*", + "140.82.112.*", + "140.82.113.*", + "140.82.114.*", + "140.82.115.*", + "140.82.116.*", + "140.82.117.*", + "140.82.118.*", + "140.82.119.*", + "140.82.120.*", + "140.82.121.*", + "140.82.122.*", + "140.82.123.*", + "140.82.124.*", + "140.82.125.*", + "140.82.126.*", + "140.82.127.*", + "143.55.64.*", + "143.55.65.*", + "143.55.66.*", + "143.55.67.*", + "143.55.68.*", + "143.55.69.*", + "143.55.70.*", + "143.55.71.*", + "143.55.72.*", + "143.55.73.*", + "143.55.74.*", + "143.55.75.*", + "143.55.76.*", + "143.55.77.*", + "143.55.78.*", + "143.55.79.*", + "20.201.28.151", + "20.205.243.166", + "102.133.202.242", + "20.248.137.48", + "20.207.73.82", + "20.27.177.113", + "20.200.245.247", + "20.233.54.53", + "20.201.28.152", + "20.205.243.160", + "102.133.202.246", + "20.248.137.50", + "20.207.73.83", + "20.27.177.118", + "20.200.245.248", + "20.233.54.52" +] diff --git a/krebs/3modules/github/known-hosts.nix b/krebs/3modules/github/known-hosts.nix new file mode 100644 index 000000000..f2705caa4 --- /dev/null +++ b/krebs/3modules/github/known-hosts.nix @@ -0,0 +1,12 @@ +{ lib, ... }: { + services.openssh.knownHosts.github = { + hostNames = + ["github.com"] + ++ + # List generated with (IPv6 addresses are currently ignored): + # curl -sS https://api.github.com/meta | jq -r .git[] | grep -v : | nix-shell -p cidr2glob --run cidr2glob | jq -Rs 'split("\n")|map(select(.!=""))' > known-hosts.json + lib.importJSON ./known-hosts.json + ; + publicKey = "ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAq2A7hRGmdnm9tUDbO9IDSwBK6TbQa+PXYPCPy6rbTrTtw7PHkccKrpp0yVhp5HdEIcKr6pLlVDBfOLX9QUsyCOV0wzfjIJNlGEYsdlLJizHhbn2mUjvSAHQqZETYP81eFzLQNnPHt4EVVUh7VfDESU84KezmD5QlWpXLmvU31/yMf+Se8xhHTvKSCZIFImWwoG6mbUoWf9nzpIoaSjB+weqqUUmpaaasXVal72J+UX2B+2RPW3RcT0eOzQgqlJL3RKrTJvdsjE3JEAvGq3lGHSZXy28G3skua2SmVi/w4yCE6gbODqnTWlg7+wC604ydGXA8VJiS5ap43JXiUFFAaQ=="; + }; +} |