From 6435c2452b286131130f044e8d829b51f98d529c Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 1 Nov 2022 14:20:37 +0100 Subject: security-workarounds exim: make nixos-unstable compatible --- krebs/2configs/security-workarounds.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/security-workarounds.nix b/krebs/2configs/security-workarounds.nix index 74a77a0ed..cb5d236ac 100644 --- a/krebs/2configs/security-workarounds.nix +++ b/krebs/2configs/security-workarounds.nix @@ -4,10 +4,15 @@ nixpkgs.overlays = [ (self: super: { exim = - super.exim.overrideAttrs (old: { + super.exim.overrideAttrs (old: let + key = if builtins.hasAttr "preBuild" old then + "preBuild" + else + "configurePhase"; + in { buildInputs = old.buildInputs ++ [ self.gnutls ]; - preBuild = /* sh */ '' - ${old.preBuild} + ${key} = /* sh */ '' + ${old.${key}} sed -Ei ' s:^USE_OPENSSL=.*:# &: s:^# (USE_GNUTLS)=.*:\1=yes: -- cgit v1.3.1 From 015138925daaaccc57deec816ffe4534c0cdbe7e Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 1 Nov 2022 19:23:59 +0100 Subject: reaktor2: remove duplicate ledger-add fixes wrong merge c68da76ea1ffab8e012527383047bb3dc718b20f --- krebs/2configs/reaktor2.nix | 22 ---------------------- 1 file changed, 22 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index afaac9dae..41cfd7735 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -210,28 +210,6 @@ let ''; }; } - { - 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 "ledger-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-add bedger-balance hooks.sed -- cgit v1.3.1 From 18adbab5ed2ba7f0bd0bc75e1e82d16ed33e7ab1 Mon Sep 17 00:00:00 2001 From: KierĂ¡n Meinhardt Date: Wed, 19 Oct 2022 09:16:30 +0200 Subject: reaktor2 krebsfood: support poi and radius --- krebs/2configs/reaktor2.nix | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index 41cfd7735..3dc3ce0a9 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -185,8 +185,9 @@ let }; } { - pattern = "18@p"; + pattern = ''^18@p\s+(\S+)\s+(\d+)m$''; activate = "match"; + arguments = [1 2]; command = { env = { CACHE_DIR = "${stateDir}/krebsfood"; @@ -202,9 +203,16 @@ let osm-restaurants = pkgs.callPackage "${osm-restaurants-src}/osm-restaurants" {}; in pkgs.writeDash "krebsfood" '' set -efu - ecke_lat=52.51252 - ecke_lon=13.41740 - ${osm-restaurants}/bin/osm-restaurants --radius 500 --latitude "$ecke_lat" --longitude "$ecke_lon" \ + poi=$(curl -fsS http://c.r/poi.json | jq --arg name "$1" '.[$name]') + if [ "$poi" = null ]; then + latitude=52.51252 + longitude=13.41740 + else + latitude=$(echo "$poi" | jq -r .latitude) + longitude=$(echo "$poi" | jq -r .longitude) + fi + + ${osm-restaurants}/bin/osm-restaurants --radius "$2" --latitude "$latitude" --longitude "$longitude" \ | ${pkgs.jq}/bin/jq -r '"How about \(.tags.name) (https://www.openstreetmap.org/\(.type)/\(.id)), open \(.tags.opening_hours)?"' ' ''; -- cgit v1.3.1 From be3762d35106bff34c24987fdc2c3fc3d44a54c5 Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 21 Nov 2022 15:29:07 +0100 Subject: reaktor2: add !confuse --- krebs/2configs/reaktor2.nix | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index 3dc3ce0a9..6768a2004 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -51,6 +51,29 @@ let }; }; + confuse = { + pattern = "^!confuse (.*)$"; + activate = "match"; + arguments = [1]; + command = { + filename = pkgs.writeDash "confuse" '' + set -efu + export PATH=${makeBinPath [ + pkgs.coreutils + pkgs.curl + pkgs.gnused + pkgs.stable-generate + ]} + stable_url=$(stable-generate "$@") + paste_url=$(curl -Ss "$stable_url" | + curl -Ss https://p.krebsco.de --data-binary @- | + tail -1 + ) + echo "$_from: $paste_url" + ''; + }; + }; + taskRcFile = builtins.toFile "taskrc" '' confirmation=no ''; @@ -218,6 +241,7 @@ let ''; }; } + confuse bedger-add bedger-balance hooks.sed -- cgit v1.3.1 From b7ea134764d642a1f9f97454caccf01ffa61c653 Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 21 Nov 2022 16:02:33 +0100 Subject: reaktor2 18@p: fix PATH --- krebs/2configs/reaktor2.nix | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index 6768a2004..3e88c0899 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -226,6 +226,12 @@ let osm-restaurants = pkgs.callPackage "${osm-restaurants-src}/osm-restaurants" {}; in pkgs.writeDash "krebsfood" '' set -efu + export PATH=${makeBinPath [ + osm-restaurants + pkgs.coreutils + pkgs.curl + pkgs.jq + ]} poi=$(curl -fsS http://c.r/poi.json | jq --arg name "$1" '.[$name]') if [ "$poi" = null ]; then latitude=52.51252 @@ -235,9 +241,8 @@ let longitude=$(echo "$poi" | jq -r .longitude) fi - ${osm-restaurants}/bin/osm-restaurants --radius "$2" --latitude "$latitude" --longitude "$longitude" \ - | ${pkgs.jq}/bin/jq -r '"How about \(.tags.name) (https://www.openstreetmap.org/\(.type)/\(.id)), open \(.tags.opening_hours)?"' - ' + osm-restaurants --radius "$2" --latitude "$latitude" --longitude "$longitude" \ + | jq -r '"How about \(.tags.name) (https://www.openstreetmap.org/\(.type)/\(.id)), open \(.tags.opening_hours)?"' ''; }; } -- cgit v1.3.1 From da52ed6d8233839a4f5b5527b773a43e84015e53 Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 21 Nov 2022 23:31:46 +0100 Subject: matterbridge: simplify --- krebs/2configs/matterbridge.nix | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/matterbridge.nix b/krebs/2configs/matterbridge.nix index a68aa292c..b96dea300 100644 --- a/krebs/2configs/matterbridge.nix +++ b/krebs/2configs/matterbridge.nix @@ -10,14 +10,10 @@ Charset = "utf-8"; }; telegram.krebs.Token = bridgeBotToken; - irc = let + irc.hackint = { + Server = "irc.hackint.org:6697"; + UseTLS = true; Nick = "ponte"; - in { - hackint = { - Server = "irc.hackint.org:6697"; - UseTLS = true; - inherit Nick; - }; }; gateway = [ { -- cgit v1.3.1 From a8e04485cd0d3bc1c7ff7386a02eeb4c2b2bfe44 Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 21 Nov 2022 23:55:29 +0100 Subject: shack doorstatus: get doorstatus on extra line --- krebs/2configs/shack/doorstatus.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/shack/doorstatus.sh b/krebs/2configs/shack/doorstatus.sh index 46314cb9c..aa6c1c3d1 100755 --- a/krebs/2configs/shack/doorstatus.sh +++ b/krebs/2configs/shack/doorstatus.sh @@ -54,7 +54,8 @@ Herr makefu an Kasse 3 bitte, Kasse 3 bitte Herr makefu. Der API Computer ist ma EOF ) -state=$(curl -fSsk https://api.shackspace.de/v1/space | jq .doorState.open) +payload=$(curl -fSsk https://api.shackspace.de/v1/space) +state=$(printf '%s' "$payload" | jq .doorState.open) prevstate=$(cat state ||:) if test "$state" == "$(cat state)";then -- cgit v1.3.1 From c6722a692ee47e1316a05f5cb6839c4a11ebbd3f Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 21 Nov 2022 23:57:14 +0100 Subject: news-host: use DHCP, remove puyak --- krebs/2configs/news-host.nix | 3 --- 1 file changed, 3 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/news-host.nix b/krebs/2configs/news-host.nix index b7728986f..07674c86e 100644 --- a/krebs/2configs/news-host.nix +++ b/krebs/2configs/news-host.nix @@ -4,10 +4,7 @@ "shodan" "mors" "styx" - "puyak" ]; - hostIp = "10.233.2.101"; - localIp = "10.233.2.102"; format = "plain"; }; } -- cgit v1.3.1 From aa32544dd3b998b9a5a1b73c51c28086b90770bc Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 22 Nov 2022 15:52:47 +0100 Subject: reaktor2 krebsfood: get last line which is usually the json --- krebs/2configs/reaktor2.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index 3e88c0899..c79976bd2 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -241,8 +241,8 @@ let longitude=$(echo "$poi" | jq -r .longitude) fi - osm-restaurants --radius "$2" --latitude "$latitude" --longitude "$longitude" \ - | jq -r '"How about \(.tags.name) (https://www.openstreetmap.org/\(.type)/\(.id)), open \(.tags.opening_hours)?"' + restaurant=$(osm-restaurants --radius "$2" --latitude "$latitude" --longitude "$longitude") + printf '%s' "$restaurant" | tail -1 | jq -r '"How about \(.tags.name) (https://www.openstreetmap.org/\(.type)/\(.id)), open \(.tags.opening_hours)?"' ''; }; } -- cgit v1.3.1 From f419f70467804f7da20c81d2c8bf189855591f3e Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 22 Nov 2022 16:13:39 +0100 Subject: reaktor2 krebsfood: update kmein scripts --- krebs/2configs/reaktor2.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index c79976bd2..70f5c424f 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -220,8 +220,8 @@ let osm-restaurants-src = pkgs.fetchFromGitHub { owner = "kmein"; repo = "scripts"; - rev = "66b2068d548d3418c81dd093bba3f80248c68196"; - sha256 = "059sp2lz54iwklswaxv9w703sbm2vv7p0ccig10gsqshriq6v58z"; + rev = "dda381be26abff73a0cf364c6dfff6e1701f41ee"; + sha256 = "sha256-J7jGWZeAULDA1EkO50qx+hjl+5IsUj389pUUMreKeNE="; }; osm-restaurants = pkgs.callPackage "${osm-restaurants-src}/osm-restaurants" {}; in pkgs.writeDash "krebsfood" '' -- cgit v1.3.1 From bd6b355a89e5fb65ef25766a49931812726e7c7f Mon Sep 17 00:00:00 2001 From: lassulus Date: Tue, 22 Nov 2022 20:36:23 +0100 Subject: reaktor2 confuse: allow usage only in public channel --- krebs/2configs/reaktor2.nix | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index 70f5c424f..4e1a5d41d 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -64,12 +64,16 @@ let pkgs.gnused pkgs.stable-generate ]} - stable_url=$(stable-generate "$@") - paste_url=$(curl -Ss "$stable_url" | - curl -Ss https://p.krebsco.de --data-binary @- | - tail -1 - ) - echo "$_from: $paste_url" + if [ $_msgtarget = '#krebs' ] || [ $_msgtarget = '#xxx' ]; then + stable_url=$(stable-generate "$@") + paste_url=$(curl -Ss "$stable_url" | + curl -Ss https://p.krebsco.de --data-binary @- | + tail -1 + ) + echo "$_from: $paste_url" + else + echo "please use me in a public channel" + fi ''; }; }; -- cgit v1.3.1 From a781a0976f59700261eecf2cf24da53b7cd8e709 Mon Sep 17 00:00:00 2001 From: tv Date: Tue, 22 Nov 2022 15:02:14 +0100 Subject: exim-smarthost: add krebstel-ml --- krebs/2configs/exim-smarthost.nix | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'krebs/2configs') diff --git a/krebs/2configs/exim-smarthost.nix b/krebs/2configs/exim-smarthost.nix index 82f8ec942..01597f49f 100644 --- a/krebs/2configs/exim-smarthost.nix +++ b/krebs/2configs/exim-smarthost.nix @@ -16,6 +16,14 @@ in { tv ]; eloop-ml = spam-ml; + krebstel-ml = [ + config.krebs.users."0x4A6F" + { mail = "krebstel-1rxz0mqa95nkmk298s1731ly0ii7vc36kkm36pnjj89hrq52pgn1@ni.r"; } + { mail = "krebstel-1difh7483axpiaq92ghi14r5cql822wbhixqb0nn3y3jkcj0b785@ni.r"; } + { mail = "lass@green.r"; } + tv + xkey + ]; spam-ml = [ lass makefu @@ -28,6 +36,7 @@ in { "spam@eloop.org" = eloop-ml; "youtube@eloop.org" = eloop-ml; # obsolete, use spam@eloop.org instead "postmaster@krebsco.de" = spam-ml; # RFC 822 + "krebstel@krebsco.de" = krebstel-ml; "lass@krebsco.de" = lass; "makefu@krebsco.de" = makefu; "spam@krebsco.de" = spam-ml; -- cgit v1.3.1 From 82f774d59d054af79926660ec631529aa26b9bcd Mon Sep 17 00:00:00 2001 From: lassulus Date: Wed, 23 Nov 2022 16:38:18 +0100 Subject: reaktor2 confuse: use different scripts for different servers --- krebs/2configs/reaktor2.nix | 47 ++++++++++++++++++++++++++++++++++++--------- 1 file changed, 38 insertions(+), 9 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index 4e1a5d41d..c1af2d8b4 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -52,6 +52,30 @@ let }; confuse = { + pattern = "^!confuse (.*)$"; + activate = "match"; + arguments = [1]; + command = { + filename = pkgs.writeDash "confuse" '' + set -efux + + export PATH=${makeBinPath [ + pkgs.coreutils + pkgs.curl + pkgs.gnused + pkgs.stable-generate + ]} + stable_url=$(stable-generate "$@") + paste_url=$(curl -Ss "$stable_url" | + curl -Ss http://p.r --data-binary @- | + tail -1 + ) + echo "$_from: $paste_url" + ''; + }; + }; + + confuse_hackint = { pattern = "^!confuse (.*)$"; activate = "match"; arguments = [1]; @@ -64,16 +88,14 @@ let pkgs.gnused pkgs.stable-generate ]} - if [ $_msgtarget = '#krebs' ] || [ $_msgtarget = '#xxx' ]; then + case $_msgtarget in \#*) stable_url=$(stable-generate "$@") paste_url=$(curl -Ss "$stable_url" | curl -Ss https://p.krebsco.de --data-binary @- | tail -1 ) echo "$_from: $paste_url" - else - echo "please use me in a public channel" - fi + esac ''; }; }; @@ -139,7 +161,7 @@ let } ''; - systemPlugin = { + systemPlugin = { extra_privmsg_hooks ? [] }: { plugin = "system"; config = { workdir = stateDir; @@ -250,7 +272,6 @@ let ''; }; } - confuse bedger-add bedger-balance hooks.sed @@ -270,7 +291,7 @@ let }; }) (task "agenda") - ]; + ] ++ extra_privmsg_hooks; }; }; @@ -430,7 +451,11 @@ in { ]; }; } - systemPlugin + (systemPlugin { + extra_privmsg_hooks = [ + confuse_hackint + ]; + }) ]; username = "reaktor2"; port = "6697"; @@ -448,7 +473,11 @@ in { ]; }; } - systemPlugin + (systemPlugin { + extra_privmsg_hooks = [ + confuse + ]; + }) ]; username = "reaktor2"; }; -- cgit v1.3.1 From bc658b3eb553927cda9f4c8c99e4cdc716322f7a Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 28 Nov 2022 00:20:18 +0100 Subject: reaktor2 confuse: remove unneeded sed --- krebs/2configs/reaktor2.nix | 2 -- 1 file changed, 2 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index c1af2d8b4..c452949b8 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -62,7 +62,6 @@ let export PATH=${makeBinPath [ pkgs.coreutils pkgs.curl - pkgs.gnused pkgs.stable-generate ]} stable_url=$(stable-generate "$@") @@ -85,7 +84,6 @@ let export PATH=${makeBinPath [ pkgs.coreutils pkgs.curl - pkgs.gnused pkgs.stable-generate ]} case $_msgtarget in \#*) -- cgit v1.3.1 From 85dd8bb9a558845d6e94d509b9aa164bb53c64c4 Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 28 Nov 2022 00:20:34 +0100 Subject: reaktor2: init say --- krebs/2configs/reaktor2.nix | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'krebs/2configs') diff --git a/krebs/2configs/reaktor2.nix b/krebs/2configs/reaktor2.nix index c452949b8..13b59fa82 100644 --- a/krebs/2configs/reaktor2.nix +++ b/krebs/2configs/reaktor2.nix @@ -98,6 +98,30 @@ let }; }; + say = { + pattern = "^!say (.*)$"; + activate = "match"; + arguments = [1]; + command = { + filename = pkgs.writeDash "say" '' + set -efu + + export PATH=${makeBinPath [ + pkgs.coreutils + pkgs.curl + pkgs.opusTools + ]} + paste_url=$(printf '%s' "$1" | + curl -fSsG http://tts.r/api/tts --data-urlencode 'text@-' | + opusenc - - | + curl -Ss https://p.krebsco.de --data-binary @- | + tail -1 + ) + echo "$_from: $paste_url" + ''; + }; + }; + taskRcFile = builtins.toFile "taskrc" '' confirmation=no ''; @@ -273,6 +297,7 @@ let bedger-add bedger-balance hooks.sed + say (generators.command_hook { inherit (commands) dance random-emoji nixos-version; tell = { -- cgit v1.3.1 From b726b7588d2dcf83507ed138723efed73efebe9f Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 28 Nov 2022 17:40:13 +0100 Subject: init xandikos as calendar.r --- kartei/krebs/default.nix | 1 + krebs/1systems/hotdog/config.nix | 2 ++ krebs/2configs/cal.nix | 33 +++++++++++++++++++++++++++++++++ 3 files changed, 36 insertions(+) create mode 100644 krebs/2configs/cal.nix (limited to 'krebs/2configs') diff --git a/kartei/krebs/default.nix b/kartei/krebs/default.nix index b33a54f9a..6da73ff83 100644 --- a/kartei/krebs/default.nix +++ b/kartei/krebs/default.nix @@ -78,6 +78,7 @@ in { "build.r" "build.hotdog.r" "ca.r" + "calendar.r" "cgit.hotdog.r" "irc.r" "wiki.r" diff --git a/krebs/1systems/hotdog/config.nix b/krebs/1systems/hotdog/config.nix index cf07d3b4d..02749dafe 100644 --- a/krebs/1systems/hotdog/config.nix +++ b/krebs/1systems/hotdog/config.nix @@ -13,6 +13,8 @@ + + ## shackie irc bot ]; diff --git a/krebs/2configs/cal.nix b/krebs/2configs/cal.nix new file mode 100644 index 000000000..90093e8eb --- /dev/null +++ b/krebs/2configs/cal.nix @@ -0,0 +1,33 @@ +{ config, lib, pkgs, ... }: +{ + users.users.testing = { + uid = pkgs.stockholm.lib.genid_uint31 "testing"; + isNormalUser = true; + openssh.authorizedKeys.keys = [ + config.krebs.users.xkey.pubkey + config.krebs.users.lass.pubkey + ]; + packages = [ + pkgs.calendar-cli + pkgs.tmux + ]; + }; + + services.xandikos = { + enable = true; + extraOptions = [ + "--autocreate" + "--defaults" + "--current-user-principal /krebs" + "--dump-dav-xml" + ]; + }; + + services.nginx = { + enable = true; + + virtualHosts = { + "calendar.r".locations."/".proxyPass = "http://localhost:${toString config.services.xandikos.port}/"; + }; + }; +} -- cgit v1.3.1 From 645c3564f75589531abcf17fd3c3f920d93a394a Mon Sep 17 00:00:00 2001 From: lassulus Date: Fri, 2 Dec 2022 09:05:42 +0100 Subject: init social.krebsco.de --- kartei/lass/default.nix | 11 ++++++----- krebs/1systems/hotdog/config.nix | 1 + krebs/2configs/mastodon-proxy.nix | 24 +++++++++++++++++++++++ krebs/2configs/mastodon.nix | 40 +++++++++++++++++++++++++++++++++++++++ lass/1systems/prism/config.nix | 1 + 5 files changed, 72 insertions(+), 5 deletions(-) create mode 100644 krebs/2configs/mastodon-proxy.nix create mode 100644 krebs/2configs/mastodon.nix (limited to 'krebs/2configs') diff --git a/kartei/lass/default.nix b/kartei/lass/default.nix index 0c314e9ec..1452d4943 100644 --- a/kartei/lass/default.nix +++ b/kartei/lass/default.nix @@ -59,11 +59,12 @@ in { cores = 4; extraZones = { "krebsco.de" = '' - cache IN A ${nets.internet.ip4.addr} - p IN A ${nets.internet.ip4.addr} - c IN A ${nets.internet.ip4.addr} - paste IN A ${nets.internet.ip4.addr} - prism IN A ${nets.internet.ip4.addr} + cache 60 IN A ${nets.internet.ip4.addr} + p 60 IN A ${nets.internet.ip4.addr} + c 60 IN A ${nets.internet.ip4.addr} + paste 60 IN A ${nets.internet.ip4.addr} + prism 60 IN A ${nets.internet.ip4.addr} + social 60 IN A ${nets.internet.ip4.addr} ''; "lassul.us" = '' $TTL 3600 diff --git a/krebs/1systems/hotdog/config.nix b/krebs/1systems/hotdog/config.nix index 02749dafe..a34df4bdc 100644 --- a/krebs/1systems/hotdog/config.nix +++ b/krebs/1systems/hotdog/config.nix @@ -14,6 +14,7 @@ + ## shackie irc bot diff --git a/krebs/2configs/mastodon-proxy.nix b/krebs/2configs/mastodon-proxy.nix new file mode 100644 index 000000000..4d359c3fe --- /dev/null +++ b/krebs/2configs/mastodon-proxy.nix @@ -0,0 +1,24 @@ +{ config, lib, pkgs, ... }: +{ + services.nginx = { + enable = true; + virtualHosts."social.krebsco.de" = { + forceSSL = true; + enableACME = true; + locations."/" = { + # TODO use this in 22.11 + # recommendedProxySettings = true; + proxyPass = "http://hotdog.r"; + proxyWebsockets = true; + extraConfig = '' + proxy_set_header Host $host; + proxy_set_header X-Real-IP $remote_addr; + proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; + proxy_set_header X-Forwarded-Proto $scheme; + proxy_set_header X-Forwarded-Host $host; + proxy_set_header X-Forwarded-Server $host; + ''; + }; + }; + }; +} diff --git a/krebs/2configs/mastodon.nix b/krebs/2configs/mastodon.nix new file mode 100644 index 000000000..d0c1943cc --- /dev/null +++ b/krebs/2configs/mastodon.nix @@ -0,0 +1,40 @@ +{ config, lib, pkgs, ... }: +{ + services.postgresql = { + enable = true; + dataDir = "/var/state/postgresql/${config.services.postgresql.package.psqlSchema}"; + package = pkgs.postgresql_11; + }; + systemd.tmpfiles.rules = [ + "d /var/state/postgresql 0700 postgres postgres -" + ]; + + services.mastodon = { + enable = true; + localDomain = "social.krebsco.de"; + configureNginx = true; + trustedProxy = config.krebs.hosts.prism.nets.retiolum.ip6.addr; + smtp.createLocally = false; + smtp.fromAddress = "mastodon@social.krebsco.de"; + }; + + services.nginx.virtualHosts.${config.services.mastodon.localDomain} = { + forceSSL = lib.mkForce false; + enableACME = lib.mkForce false; + locations."@proxy".extraConfig = '' + proxy_redirect off; + proxy_pass_header Server; + proxy_set_header X-Forwarded-Proto $http_x_forwarded_proto; + ''; + }; + + networking.firewall.allowedTCPPorts = [ + 80 + ]; + + environment.systemPackages = [ + (pkgs.writers.writeDashBin "tootctl" '' + sudo -u mastodon /etc/profiles/per-user/mastodon/bin/mastodon-env /etc/profiles/per-user/mastodon/bin/tootctl "$@" + '') + ]; +} diff --git a/lass/1systems/prism/config.nix b/lass/1systems/prism/config.nix index 7bffc39aa..75f84bca9 100644 --- a/lass/1systems/prism/config.nix +++ b/lass/1systems/prism/config.nix @@ -111,6 +111,7 @@ with import ; + { services.tor = { enable = true; -- cgit v1.3.1 From b7a24272db3d2ed342af7d9b979b8585408a640a Mon Sep 17 00:00:00 2001 From: lassulus Date: Fri, 2 Dec 2022 14:24:46 +0100 Subject: krebs: set defaultLocale --- krebs/2configs/default.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/default.nix b/krebs/2configs/default.nix index 38d770316..fffe128e6 100644 --- a/krebs/2configs/default.nix +++ b/krebs/2configs/default.nix @@ -27,9 +27,6 @@ with import ; ]; console.keyMap = "us"; - i18n = { - defaultLocale = lib.mkForce "C"; - }; programs.ssh.startAgent = false; @@ -60,4 +57,7 @@ with import ; # The NixOS release to be compatible with for stateful data such as databases. system.stateVersion = "17.03"; + + # maybe fix Error: unsupported locales detected: + i18n.defaultLocale = mkDefault "C.UTF-8"; } -- cgit v1.3.1 From 2d5f0db519c70c5f6340d546612d5d3daec3d2be Mon Sep 17 00:00:00 2001 From: lassulus Date: Fri, 2 Dec 2022 16:30:47 +0100 Subject: mastodon: use nonsense mail --- krebs/2configs/mastodon.nix | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/mastodon.nix b/krebs/2configs/mastodon.nix index d0c1943cc..86e2ec437 100644 --- a/krebs/2configs/mastodon.nix +++ b/krebs/2configs/mastodon.nix @@ -15,7 +15,7 @@ configureNginx = true; trustedProxy = config.krebs.hosts.prism.nets.retiolum.ip6.addr; smtp.createLocally = false; - smtp.fromAddress = "mastodon@social.krebsco.de"; + smtp.fromAddress = "derp"; }; services.nginx.virtualHosts.${config.services.mastodon.localDomain} = { -- cgit v1.3.1 From 8a6f835acb621cacabb0a3d158c26a0fcacf9e7d Mon Sep 17 00:00:00 2001 From: lassulus Date: Fri, 2 Dec 2022 16:31:01 +0100 Subject: mastodon: add create-mastodon-user helper --- krebs/2configs/mastodon.nix | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'krebs/2configs') diff --git a/krebs/2configs/mastodon.nix b/krebs/2configs/mastodon.nix index 86e2ec437..145b383ed 100644 --- a/krebs/2configs/mastodon.nix +++ b/krebs/2configs/mastodon.nix @@ -36,5 +36,11 @@ (pkgs.writers.writeDashBin "tootctl" '' sudo -u mastodon /etc/profiles/per-user/mastodon/bin/mastodon-env /etc/profiles/per-user/mastodon/bin/tootctl "$@" '') + (pkgs.writers.writeDashBin "create-mastodon-user" '' + set -efu + nick=$1 + /run/current-system/sw/bin/tootctl accounts create "$nick" --email "$nick"@krebsco.de --confirmed + /run/current-system/sw/bin/tootctl accounts approve "$nick" + '') ]; } -- cgit v1.3.1 From 70e129be659b1f45cf7cdd472f7aa7b3e4a7b8eb Mon Sep 17 00:00:00 2001 From: lassulus Date: Fri, 9 Dec 2022 11:46:40 +0100 Subject: ircd: use upstream ergochat service --- krebs/2configs/ircd.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/ircd.nix b/krebs/2configs/ircd.nix index c6c91e074..a802b8a25 100644 --- a/krebs/2configs/ircd.nix +++ b/krebs/2configs/ircd.nix @@ -5,9 +5,9 @@ 6667 ]; - krebs.ergo = { + services.ergochat = { enable = true; - config = { + settings = { server.secure-nets = [ "42::0/16" "10.240.0.0/12" -- cgit v1.3.1 From 4c057b992979ba2c53b7286cfbe7e78ba94a76ed Mon Sep 17 00:00:00 2001 From: lassulus Date: Mon, 12 Dec 2022 00:02:14 +0100 Subject: news: ergo -> ergochat --- krebs/2configs/news.nix | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'krebs/2configs') diff --git a/krebs/2configs/news.nix b/krebs/2configs/news.nix index 3649aeeea..d6c6371da 100644 --- a/krebs/2configs/news.nix +++ b/krebs/2configs/news.nix @@ -68,8 +68,8 @@ wantedBy = [ "multi-user.target" ]; }; - krebs.ergo.openFilesLimit = 16384; - krebs.ergo.config = { + services.ergochat.openFilesLimit = 16384; + services.ergochat.settings = { limits.nicklen = 100; limits.identlen = 100; history.enabled = false; -- cgit v1.3.1