This repository has no description
2.6 kB
108 lines
1{ config, lib, pkgs, ... }:
2
3{
4 imports = [
5 ../../2configs/mouse.nix
6 ../../2configs/retiolum.nix
7 ../../2configs/desktops/xmonad
8 ../../2configs/pipewire.nix
9 ../../2configs/exim-retiolum.nix
10 ../../2configs/browsers.nix
11 ../../2configs/programs.nix
12 ../../2configs/nfs-dl.nix
13 ../../2configs/yellow-mounts/samba.nix
14 ../../2configs/gg23.nix
15 ../../2configs/hass
16 ../../2configs/green-host.nix
17 ../../2configs/fetchWallpaper.nix
18 ../../2configs/home-media.nix
19 ../../2configs/syncthing.nix
20 ../../2configs/ppp/umts-stick.nix
21 ../../2configs/snapserver.nix
22 ../../2configs/snapclient.nix
23 ../../2configs/consul.nix
24 ../../2configs/news-host.nix
25 ];
26
27 krebs.build.host = config.krebs.hosts.styx;
28
29 networking.firewall.interfaces.int0.allowedTCPPorts = [ config.services.smokeping.port ];
30 networking.firewall.interfaces.retiolum.allowedTCPPorts = [ config.services.smokeping.port ];
31 networking.firewall.interfaces.wiregrill.allowedTCPPorts = [ config.services.smokeping.port ];
32 krebs.power-action.enable = lib.mkForce false;
33
34 environment.systemPackages = with pkgs; [
35 wol
36 (writeDashBin "wake-alien" ''
37 ${wol}/bin/wol -h 10.42.0.255 10:65:30:68:83:a3
38 '')
39 (writers.writeDashBin "iptv" ''
40 set -efu
41 /run/current-system/sw/bin/mpv \
42 --audio-display=no --audio-channels=stereo \
43 --audio-samplerate=48000 --audio-format=s16 \
44 --ao-pcm-file=/run/snapserver/snapfifo --ao=pcm \
45 --audio-delay=-1 \
46 --playlist=https://iptv-org.github.io/iptv/index.nsfw.m3u \
47 --idle=yes \
48 --input-ipc-server=/tmp/mpv.ipc \
49 "$@"
50 '')
51 ];
52
53 # http://10.42.0.1:8081/smokeping.fcgi
54 services.smokeping = {
55 enable = true;
56 host = null;
57 targetConfig = ''
58 probe = FPing
59 menu = top
60 title = top
61
62 + Local
63 menu = Local
64 title = Local Network
65 ++ LocalMachine
66 menu = Local Machine
67 title = This host
68 host = localhost
69
70 + Internet
71 menu = internet
72 title = internet
73
74 ++ CloudflareDNS
75 menu = Cloudflare DNS
76 title = Cloudflare DNS server
77 host = 1.1.1.1
78
79 ++ GoogleDNS
80 menu = Google DNS
81 title = Google DNS server
82 host = 8.8.8.8
83
84 + retiolum
85 menu = retiolum
86 title = retiolum
87
88 ++ gum
89 menu = gum.r
90 title = gum.r
91 host = gum.r
92
93 ++ ni
94 menu = ni.r
95 title = ni.r
96 host = ni.r
97
98 ++ prism
99 menu = prism.r
100 title = prism.r
101 host = prism.r
102 '';
103 };
104
105 # for usb internet
106 hardware.usbWwan.enable = true;
107}
108