From 5f848623dff7cbcd21911032e5fd4c77bcf7d413 Mon Sep 17 00:00:00 2001 From: seth Date: Sun, 4 Feb 2024 16:40:38 -0500 Subject: tree-wide: better separate/name some things --- ext/default.nix | 6 + ext/openwrt/default.nix | 13 ++ ext/openwrt/turret/default.nix | 32 +++++ ext/openwrt/turret/files/etc/config/dhcp | 50 ++++++++ ext/openwrt/turret/files/etc/config/dropbear | 7 ++ ext/openwrt/turret/files/etc/config/firewall | 131 +++++++++++++++++++++ .../turret/files/etc/config/https-dns-proxy | 16 +++ ext/openwrt/turret/files/etc/config/luci | 41 +++++++ ext/openwrt/turret/files/etc/config/network | 30 +++++ ext/openwrt/turret/files/etc/config/rpcd | 10 ++ ext/openwrt/turret/files/etc/config/system | 16 +++ ext/openwrt/turret/files/etc/config/ucitrack | 56 +++++++++ ext/openwrt/turret/files/etc/config/uhttpd | 31 +++++ ext/openwrt/turret/files/etc/config/wireless | 34 ++++++ .../turret/files/etc/dropbear/authorized_keys | 1 + ext/terranix/cloud.nix | 7 ++ ext/terranix/cloudflare/default.nix | 21 ++++ ext/terranix/cloudflare/dns.nix | 64 ++++++++++ ext/terranix/cloudflare/ruleset.nix | 64 ++++++++++ ext/terranix/cloudflare/tunnels.nix | 11 ++ ext/terranix/default.nix | 20 ++++ ext/terranix/tailscale/acl.nix | 25 ++++ ext/terranix/tailscale/default.nix | 12 ++ ext/terranix/tailscale/devices.nix | 17 +++ ext/terranix/tailscale/dns.nix | 5 + ext/terranix/tailscale/tags.nix | 16 +++ ext/terranix/vars.nix | 11 ++ ext/terranix/versions.nix | 15 +++ 28 files changed, 762 insertions(+) create mode 100644 ext/default.nix create mode 100644 ext/openwrt/default.nix create mode 100644 ext/openwrt/turret/default.nix create mode 100644 ext/openwrt/turret/files/etc/config/dhcp create mode 100644 ext/openwrt/turret/files/etc/config/dropbear create mode 100644 ext/openwrt/turret/files/etc/config/firewall create mode 100644 ext/openwrt/turret/files/etc/config/https-dns-proxy create mode 100644 ext/openwrt/turret/files/etc/config/luci create mode 100644 ext/openwrt/turret/files/etc/config/network create mode 100644 ext/openwrt/turret/files/etc/config/rpcd create mode 100644 ext/openwrt/turret/files/etc/config/system create mode 100644 ext/openwrt/turret/files/etc/config/ucitrack create mode 100644 ext/openwrt/turret/files/etc/config/uhttpd create mode 100644 ext/openwrt/turret/files/etc/config/wireless create mode 100644 ext/openwrt/turret/files/etc/dropbear/authorized_keys create mode 100644 ext/terranix/cloud.nix create mode 100644 ext/terranix/cloudflare/default.nix create mode 100644 ext/terranix/cloudflare/dns.nix create mode 100644 ext/terranix/cloudflare/ruleset.nix create mode 100644 ext/terranix/cloudflare/tunnels.nix create mode 100644 ext/terranix/default.nix create mode 100644 ext/terranix/tailscale/acl.nix create mode 100644 ext/terranix/tailscale/default.nix create mode 100644 ext/terranix/tailscale/devices.nix create mode 100644 ext/terranix/tailscale/dns.nix create mode 100644 ext/terranix/tailscale/tags.nix create mode 100644 ext/terranix/vars.nix create mode 100644 ext/terranix/versions.nix (limited to 'ext') diff --git a/ext/default.nix b/ext/default.nix new file mode 100644 index 0000000..1001f94 --- /dev/null +++ b/ext/default.nix @@ -0,0 +1,6 @@ +{ + imports = [ + ./openwrt + ./terranix + ]; +} diff --git a/ext/openwrt/default.nix b/ext/openwrt/default.nix new file mode 100644 index 0000000..16f0fb9 --- /dev/null +++ b/ext/openwrt/default.nix @@ -0,0 +1,13 @@ +{ + withSystem, + inputs, + ... +}: { + flake.legacyPackages.x86_64-linux = withSystem "x86_64-linux" ({pkgs, ...}: { + openWrtImages = { + turret = pkgs.callPackage ./systems/turret { + inherit (inputs) openwrt-imagebuilder; + }; + }; + }); +} diff --git a/ext/openwrt/turret/default.nix b/ext/openwrt/turret/default.nix new file mode 100644 index 0000000..90ec750 --- /dev/null +++ b/ext/openwrt/turret/default.nix @@ -0,0 +1,32 @@ +{ + pkgs, + openwrt-imagebuilder, + ... +}: let + wrtProfiles = openwrt-imagebuilder.lib.profiles { + inherit pkgs; + release = "22.03.3"; + }; + + image = + wrtProfiles.identifyProfile "netgear_wac104" + // { + packages = ["https-dns-proxy"]; + + files = pkgs.runCommand "image-files" {} '' + mkdir -p $out/etc/uci-defaults + + cat > $out/etc/uci-defaults/99-custom <