diff options
Diffstat (limited to 'lass')
-rw-r--r-- | lass/1systems/icarus/config.nix | 2 | ||||
-rw-r--r-- | lass/1systems/shodan/config.nix | 2 | ||||
-rw-r--r-- | lass/1systems/styx/config.nix | 3 | ||||
-rw-r--r-- | lass/2configs/binary-cache/server.nix | 6 | ||||
-rw-r--r-- | lass/2configs/games.nix | 6 | ||||
-rw-r--r-- | lass/2configs/home-media.nix | 11 | ||||
-rw-r--r-- | lass/2configs/paste.nix | 42 | ||||
-rw-r--r-- | lass/2configs/snapclient.nix | 12 | ||||
-rw-r--r-- | lass/2configs/snapserver.nix | 13 |
9 files changed, 92 insertions, 5 deletions
diff --git a/lass/1systems/icarus/config.nix b/lass/1systems/icarus/config.nix index 609da6011..2d2f23f95 100644 --- a/lass/1systems/icarus/config.nix +++ b/lass/1systems/icarus/config.nix @@ -10,6 +10,7 @@ with import <stockholm/lib>; <stockholm/lass/2configs/git.nix> <stockholm/lass/2configs/exim-retiolum.nix> <stockholm/lass/2configs/baseX.nix> + <stockholm/lass/2configs/pipewire.nix> <stockholm/lass/2configs/browsers.nix> <stockholm/lass/2configs/programs.nix> <stockholm/lass/2configs/fetchWallpaper.nix> @@ -21,6 +22,7 @@ with import <stockholm/lib>; #<stockholm/lass/2configs/prism-share.nix> <stockholm/lass/2configs/network-manager.nix> <stockholm/lass/2configs/home-media.nix> + <stockholm/lass/2configs/snapclient.nix> ]; krebs.build.host = config.krebs.hosts.icarus; diff --git a/lass/1systems/shodan/config.nix b/lass/1systems/shodan/config.nix index 7695e637b..5d6a440e0 100644 --- a/lass/1systems/shodan/config.nix +++ b/lass/1systems/shodan/config.nix @@ -8,6 +8,7 @@ with import <stockholm/lib>; <stockholm/lass/2configs/mouse.nix> <stockholm/lass/2configs/retiolum.nix> <stockholm/lass/2configs/baseX.nix> + <stockholm/lass/2configs/pipewire.nix> <stockholm/lass/2configs/exim-retiolum.nix> <stockholm/lass/2configs/browsers.nix> <stockholm/lass/2configs/programs.nix> @@ -21,6 +22,7 @@ with import <stockholm/lib>; <stockholm/lass/2configs/home-media.nix> <stockholm/lass/2configs/syncthing.nix> <stockholm/lass/2configs/sync/sync.nix> + <stockholm/lass/2configs/snapclient.nix> ]; krebs.build.host = config.krebs.hosts.shodan; diff --git a/lass/1systems/styx/config.nix b/lass/1systems/styx/config.nix index 016d1480f..e49d24f9a 100644 --- a/lass/1systems/styx/config.nix +++ b/lass/1systems/styx/config.nix @@ -8,6 +8,7 @@ with import <stockholm/lib>; <stockholm/lass/2configs/mouse.nix> <stockholm/lass/2configs/retiolum.nix> <stockholm/lass/2configs/baseX.nix> + <stockholm/lass/2configs/pipewire.nix> <stockholm/lass/2configs/exim-retiolum.nix> <stockholm/lass/2configs/browsers.nix> <stockholm/lass/2configs/programs.nix> @@ -23,6 +24,8 @@ with import <stockholm/lib>; <stockholm/lass/2configs/sync/sync.nix> # <stockholm/lass/2configs/idc.nix> <stockholm/lass/2configs/ppp/umts-stick.nix> + <stockholm/lass/2configs/snapserver.nix> + <stockholm/lass/2configs/snapclient.nix> ]; krebs.build.host = config.krebs.hosts.styx; diff --git a/lass/2configs/binary-cache/server.nix b/lass/2configs/binary-cache/server.nix index 1abf51ae6..30bef5137 100644 --- a/lass/2configs/binary-cache/server.nix +++ b/lass/2configs/binary-cache/server.nix @@ -1,6 +1,8 @@ -{ config, lib, pkgs, stockholm, ...}: - +{ config, lib, pkgs, ...}: { + nixpkgs.config.packageOverrides = p: { + nix-serve = p.haskellPackages.nix-serve-ng; + }; # generate private key with: # nix-store --generate-binary-cache-key my-secret-key my-public-key services.nix-serve = { diff --git a/lass/2configs/games.nix b/lass/2configs/games.nix index 26707f1f0..01941bde8 100644 --- a/lass/2configs/games.nix +++ b/lass/2configs/games.nix @@ -70,10 +70,10 @@ in { # steam-run # scummvm # dolphinEmu - # doom1 - # doom2 + doom1 + doom2 # protontricks - # vdoom1 + vdoom1 # vdoom2 # vdoomserver retroarchBare diff --git a/lass/2configs/home-media.nix b/lass/2configs/home-media.nix index f250ca8d8..f3908e6be 100644 --- a/lass/2configs/home-media.nix +++ b/lass/2configs/home-media.nix @@ -20,4 +20,15 @@ with import <stockholm/lib>; krebs.iptables.tables.filter.INPUT.rules = [ { predicate = "-p tcp --dport 4713"; target = "ACCEPT"; } # pulseaudio ]; + + environment.systemPackages = [ + (pkgs.writers.writeDashBin "snapmpv" '' + /run/current-system/sw/bin/mpv \ + --audio-display=no --audio-channels=stereo \ + --audio-samplerate=48000 --audio-format=s16 \ + --ao-pcm-file=/run/snapserver/snapfifo --ao=pcm \ + --audio-delay=-1 \ + "$@" + '') + ]; } diff --git a/lass/2configs/paste.nix b/lass/2configs/paste.nix index affc35307..cfd7f5576 100644 --- a/lass/2configs/paste.nix +++ b/lass/2configs/paste.nix @@ -61,6 +61,11 @@ with import <stockholm/lib>; proxy_set_header X-Forwarded-Proto $scheme; proxy_pass http://127.0.0.1:${toString config.krebs.htgen.paste.port}; ''; + locations."/form".extraConfig = '' + client_max_body_size 4G; + proxy_set_header Host $host; + proxy_pass http://127.0.0.1:${toString config.krebs.htgen.paste-form.port}; + ''; locations."/image".extraConfig = '' proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; @@ -86,6 +91,43 @@ with import <stockholm/lib>; ". ${pkgs.htgen}/examples/paste" ]; }; + + systemd.services.paste-gc = { + startAt = "daily"; + serviceConfig = { + ExecStart = '' + ${pkgs.findutils}/bin/find /var/lib/htgen-paste/items -type f -mtime '+30' -exec rm {} \; + ''; + User = "htgen-paste"; + }; + }; + + krebs.htgen.paste-form = { + port = 7770; + script = /* sh */ '' + export PATH=${makeBinPath [ + pkgs.curl + pkgs.gnused + ]}:$PATH + (. ${pkgs.writeScript "paste-form" '' + case "$Method" in + 'POST') + ref=$(head -c $req_content_length | sed '0,/^\r$/d;$d' | curl -fSs --data-binary @- https://p.krebsco.de | sed '1d;s/^http:/https:/') + + printf 'HTTP/1.1 200 OK\r\n' + printf 'Content-Type: text/plain; charset=UTF-8\r\n' + printf 'Server: %s\r\n' "$Server" + printf 'Connection: close\r\n' + printf 'Content-Length: %d\r\n' $(expr ''${#ref} + 1) + printf '\r\n' + printf '%s\n' "$ref" + + exit + ;; + esac + ''}) + ''; + }; krebs.htgen.imgur = { port = 7771; script = /* sh */ '' diff --git a/lass/2configs/snapclient.nix b/lass/2configs/snapclient.nix new file mode 100644 index 000000000..8015680e9 --- /dev/null +++ b/lass/2configs/snapclient.nix @@ -0,0 +1,12 @@ +{ config, lib, pkgs, ... }: +{ + systemd.services.snapclient = { + wantedBy = [ "multi-user.target" ]; + path = [ pkgs.snapcast ]; + script = "snapclient -h 10.42.0.1"; + serviceConfig = { + DynamicUser = true; + Group = "pipewire"; + }; + }; +} diff --git a/lass/2configs/snapserver.nix b/lass/2configs/snapserver.nix new file mode 100644 index 000000000..3c6dbf750 --- /dev/null +++ b/lass/2configs/snapserver.nix @@ -0,0 +1,13 @@ +{ config, lib, pkgs, ... }: +{ + services.snapserver = { + enable = true; + openFirewall = true; + streams = { + pipewire = { + type = "pipe"; + location = "/run/snapserver/snapfifo"; + }; + }; + }; +} |