commit - 8b67385501cc720d0a0b99f9ba857205e748d043
commit + 67135636c2172c70d6ef32e6703e961552dfae34
blob - aa36675e477fc08c61deff55fdf3213935c246b3
blob + db8975a2ff27c2691d0df19542103a5109cdc5fb
--- flake.lock
+++ flake.lock
]
},
"locked": {
- "lastModified": 1784489491,
- "narHash": "sha256-j9maqjx1T8+ljAVntAdSI5hSGCm77QNZz64JF1rJNu0=",
+ "lastModified": 1784546264,
+ "narHash": "sha256-jxVr5EHMYAOkFvS2k0abIvt6NqyshyWmiHHzV17sT2g=",
"owner": "nix-community",
"repo": "home-manager",
- "rev": "3139deb8cafbe73b39b24451255b2fdd3426077e",
+ "rev": "e3dea8e4792b09a6c0eb5836b0284ad05b1acba0",
"type": "github"
},
"original": {
},
"nixpkgs_2": {
"locked": {
- "lastModified": 1784494590,
- "narHash": "sha256-Gn7vGw9aIyoJy7GkNbsHXvSkvXeNLoP9ZiK1RtS/0M8=",
+ "lastModified": 1784525419,
+ "narHash": "sha256-yocJ4I4Kd4as0UPMFs9P7laPvvA2x/Bj8EW46iW3VVM=",
"owner": "NixOS",
"repo": "nixpkgs",
- "rev": "472e4428b5aee60be7ac35c03662ebb36c901edd",
+ "rev": "a16c3fde2ffeab7f6326f50f460aaffde7ae066d",
"type": "github"
},
"original": {
blob - 65721dc8713796a0ec95c46e555f19f57b846bfe
blob + 90e1e523ff9499702fd77d3fed84785dd024183c
Binary files hosts/nixaran/configuration.nix and hosts/nixaran/configuration.nix differ
blob - 9d87cfe56c8801ccb03c1af903a94d0681f539fd
blob + b5be95f8eebb125e411775b7938b1c86db773b3a
--- hosts/void/overlays/home/nbrc
+++ hosts/void/overlays/home/nbrc
#!/usr/bin/env bash
-export EDITOR="emacsclient --tty"
+export EDITOR="emacsclient"
export NB_DEFAULT_EXTENSION="${NB_DEFAULT_EXTENSION:-org}"
export NB_SYNTAX_THEME="${NB_SYNTAX_THEME:-base16}"
export NB_COLOR_THEME="${NB_COLOR_THEME:-smoke}"
blob - 64e1d60e37554f2d0bf9fe329313c0611ede7beb
blob + fe99bbb6c7e59568aba78283d1ba7e37223e6829
--- modules/mixins/dotfiles/config/shell/rc/functions
+++ modules/mixins/dotfiles/config/shell/rc/functions
}
em() {
- emacsclient --tty "${1:-.}"
+ emacsclient -n "${1:-.}"
}
cd() {
blob - a8082b247839a8f15e66f39fc45f0bd75f6a1b0c
blob + c8387f9becffb9227b6246a4e44402bde8861e7b
--- modules/services/headscale.nix
+++ modules/services/headscale.nix
default = [];
description = "Extra DNS records to push to all tailnet clients";
};
+ aclPolicy = lib.mkOption {
+ type = lib.types.nullOr (lib.types.attrsOf lib.types.anything);
+ default = null;
+ example = lib.literalExpression ''
+ {
+ acls = [
+ { action = "accept"; src = ["miro@"]; dst = ["*:*"]; }
+ ];
+ }
+ '';
+ description = ''
+ When set, headscale switches to a file-based policy mode and the
+ default becomes deny - users are referenced as "<name>@".
+ '';
+ };
derp = {
enable = lib.mkEnableOption "embedded DERP relay server";
stunPort = lib.mkOption {
private_key_path = "/var/lib/headscale/derp_server_private.key";
automatically_add_embedded_derp_region = true;
};
+ policy = lib.mkIf (cfg.aclPolicy != null) {
+ mode = "file";
+ path = "/etc/headscale/policy.hujson";
+ };
};
};
+ environment.etc."headscale/policy.hujson" = lib.mkIf (cfg.aclPolicy != null) {
+ text = builtins.toJSON cfg.aclPolicy;
+ };
+
networking.firewall.allowedUDPPorts = lib.mkIf cfg.derp.enable [cfg.derp.stunPort];
services.caddy.virtualHosts."${cfg.domain}" = {