yep, more dotfiles

Compare changes

Choose any two refs to compare.

+1
.ignore
···
+
*.age
+89 -58
flake.lock
···
]
},
"locked": {
-
"lastModified": 1736864502,
-
"narHash": "sha256-ItkIZyebGvNH2dK9jVGzJHGPtb6BSWLN8Gmef16NeY0=",
+
"lastModified": 1764627417,
+
"narHash": "sha256-D6xc3Rl8Ab6wucJWdvjNsGYGSxNjQHzRc2EZ6eeQ6l4=",
"owner": "nix-community",
"repo": "disko",
-
"rev": "0141aabed359f063de7413f80d906e1d98c0c123",
+
"rev": "5a88a6eceb8fd732b983e72b732f6f4b8269bef3",
"type": "github"
},
"original": {
"owner": "nix-community",
-
"ref": "v1.11.0",
"repo": "disko",
"type": "github"
}
···
"flake-compat": {
"flake": false,
"locked": {
-
"lastModified": 1747046372,
-
"narHash": "sha256-CIVLLkVgvHYbgI2UpXvIIBJ12HWgX+fjA8Xf8PUmqCY=",
+
"lastModified": 1761588595,
+
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
"owner": "edolstra",
"repo": "flake-compat",
-
"rev": "9100a0f413b0c601e0533d1d94ffd501ce2e7885",
+
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
"type": "github"
},
"original": {
···
}
},
"flake-compat_2": {
+
"locked": {
+
"lastModified": 1761588595,
+
"narHash": "sha256-XKUZz9zewJNUj46b4AJdiRZJAvSZ0Dqj2BNfXvFlJC4=",
+
"owner": "edolstra",
+
"repo": "flake-compat",
+
"rev": "f387cd2afec9419c8ee37694406ca490c3f34ee5",
+
"type": "github"
+
},
+
"original": {
+
"owner": "edolstra",
+
"repo": "flake-compat",
+
"type": "github"
+
}
+
},
+
"flake-compat_3": {
"flake": false,
"locked": {
"lastModified": 1751685974,
···
"flake-parts": {
"inputs": {
"nixpkgs-lib": [
-
"lanzaboote",
-
"nixpkgs"
-
]
-
},
-
"locked": {
-
"lastModified": 1754091436,
-
"narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=",
-
"owner": "hercules-ci",
-
"repo": "flake-parts",
-
"rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd",
-
"type": "github"
-
},
-
"original": {
-
"owner": "hercules-ci",
-
"repo": "flake-parts",
-
"type": "github"
-
}
-
},
-
"flake-parts_2": {
-
"inputs": {
-
"nixpkgs-lib": [
"stylix",
"nixpkgs"
]
···
"rust-overlay": "rust-overlay"
},
"locked": {
-
"lastModified": 1747139554,
-
"narHash": "sha256-CpjdfdzyN0tAcBvtg9AQk+mDlNSb+NAZPUBpx/4VzvA=",
+
"lastModified": 1764804992,
+
"narHash": "sha256-6XIwDQwquGUfiwoTsukMyE6DcXW4Cx0fjE4cLTgQ7RM=",
"owner": "mrnossiom",
"repo": "git-leave",
-
"rev": "bf125663fa992097620ca034ec57ebd20ed50532",
+
"rev": "3c09ab6afafae76be08956cc7bf563f80e0f8394",
"type": "github"
},
"original": {
···
]
},
"locked": {
-
"lastModified": 1709087332,
-
"narHash": "sha256-HG2cCnktfHsKV0s4XW83gU3F57gaTljL9KNSuG6bnQs=",
+
"lastModified": 1762808025,
+
"narHash": "sha256-XmjITeZNMTQXGhhww6ed/Wacy2KzD6svioyCX7pkUu4=",
"owner": "hercules-ci",
"repo": "gitignore.nix",
-
"rev": "637db329424fd7e46cf4185293b9cc8c88c95394",
+
"rev": "cb5e3fdca1de58ccbc3ef53de65bd372b48f567c",
"type": "github"
},
"original": {
···
"inputs": {
"nixpkgs": [
"lanzaboote",
-
"pre-commit-hooks-nix",
+
"pre-commit",
"nixpkgs"
]
},
···
"lanzaboote": {
"inputs": {
"crane": "crane",
-
"flake-compat": "flake-compat",
-
"flake-parts": "flake-parts",
"nixpkgs": [
"unixpkgs"
],
-
"pre-commit-hooks-nix": "pre-commit-hooks-nix",
+
"pre-commit": "pre-commit",
"rust-overlay": "rust-overlay_3"
},
"locked": {
-
"lastModified": 1762205063,
-
"narHash": "sha256-If6vQ+KvtKs3ARBO9G3l+4wFSCYtRBrwX1z+I+B61wQ=",
+
"lastModified": 1764622702,
+
"narHash": "sha256-HggOVvg2U3EwT44wPHEwFKromf9qR9rTqfV1i3q7rYs=",
"owner": "nix-community",
"repo": "lanzaboote",
-
"rev": "88b8a563ff5704f4e8d8e5118fb911fa2110ca05",
+
"rev": "6242b3b2b5e5afcf329027ed4eb5fa6e2eab10f1",
"type": "github"
},
"original": {
"owner": "nix-community",
-
"ref": "v0.4.3",
"repo": "lanzaboote",
"type": "github"
}
···
"url": "https://github.com/lucide-icons/lucide/releases/download/0.536.0/lucide-icons-0.536.0.zip"
}
},
+
"nix-alien": {
+
"inputs": {
+
"flake-compat": "flake-compat_2",
+
"nix-index-database": "nix-index-database",
+
"nixpkgs": [
+
"nixpkgs"
+
]
+
},
+
"locked": {
+
"lastModified": 1764061716,
+
"narHash": "sha256-xKnIoMPv2kIsWhjRhJayqMWU2xkjeq2pyPmR1dLFPHs=",
+
"owner": "thiagokokada",
+
"repo": "nix-alien",
+
"rev": "9bc9c1ab671eb1b610f549e15bc0b750ab987409",
+
"type": "github"
+
},
+
"original": {
+
"owner": "thiagokokada",
+
"repo": "nix-alien",
+
"type": "github"
+
}
+
},
"nix-darwin": {
"inputs": {
"nixpkgs": [
···
"type": "github"
}
},
+
"nix-index-database": {
+
"inputs": {
+
"nixpkgs": [
+
"nix-alien",
+
"nixpkgs"
+
]
+
},
+
"locked": {
+
"lastModified": 1762660502,
+
"narHash": "sha256-C9F1C31ys0V7mnp4EcDy7L1cLZw/sCTEXqqTtGnvu08=",
+
"owner": "nix-community",
+
"repo": "nix-index-database",
+
"rev": "15c5451c63f4c612874a43846bfe3fa828b03eee",
+
"type": "github"
+
},
+
"original": {
+
"owner": "nix-community",
+
"repo": "nix-index-database",
+
"type": "github"
+
}
+
},
"nixos-hardware": {
"locked": {
"lastModified": 1764440730,
···
"type": "github"
}
},
-
"pre-commit-hooks-nix": {
+
"pre-commit": {
"inputs": {
-
"flake-compat": [
-
"lanzaboote",
-
"flake-compat"
-
],
+
"flake-compat": "flake-compat",
"gitignore": "gitignore_3",
"nixpkgs": [
"lanzaboote",
···
]
},
"locked": {
-
"lastModified": 1750779888,
-
"narHash": "sha256-wibppH3g/E2lxU43ZQHC5yA/7kIKLGxVEnsnVK1BtRg=",
+
"lastModified": 1763988335,
+
"narHash": "sha256-QlcnByMc8KBjpU37rbq5iP7Cp97HvjRP0ucfdh+M4Qc=",
"owner": "cachix",
"repo": "pre-commit-hooks.nix",
-
"rev": "16ec914f6fb6f599ce988427d9d94efddf25fe6d",
+
"rev": "50b9238891e388c9fdc6a5c49e49c42533a1b5ce",
"type": "github"
},
"original": {
···
"home-manager": "home-manager",
"hypixel-bank-tracker": "hypixel-bank-tracker",
"lanzaboote": "lanzaboote",
+
"nix-alien": "nix-alien",
"nix-darwin": "nix-darwin",
"nixos-hardware": "nixos-hardware",
"nixpkgs": "nixpkgs",
···
]
},
"locked": {
-
"lastModified": 1744599145,
-
"narHash": "sha256-yzaDPkJwZdUtRj/dzdOeB74yryWzpngYaD7BedqFKk8=",
+
"lastModified": 1764557621,
+
"narHash": "sha256-kX5PoY8hQZ80+amMQgOO9t8Tc1JZ70gYRnzaVD4AA+o=",
"owner": "oxalica",
"repo": "rust-overlay",
-
"rev": "fd6795d3d28f956de01a0458b6fa7baae5c793b4",
+
"rev": "93316876c2229460a5d6f5f052766cc4cef538ce",
"type": "github"
},
"original": {
···
"base16-helix": "base16-helix",
"base16-vim": "base16-vim",
"firefox-gnome-theme": "firefox-gnome-theme",
-
"flake-parts": "flake-parts_2",
+
"flake-parts": "flake-parts",
"gnome-shell": "gnome-shell",
"nixpkgs": [
"nixpkgs"
···
"tangled": {
"inputs": {
"actor-typeahead-src": "actor-typeahead-src",
-
"flake-compat": "flake-compat_2",
+
"flake-compat": "flake-compat_3",
"gomod2nix": "gomod2nix",
"htmx-src": "htmx-src",
"htmx-ws-src": "htmx-ws-src",
···
},
"unixpkgs": {
"locked": {
-
"lastModified": 1764242076,
-
"narHash": "sha256-sKoIWfnijJ0+9e4wRvIgm/HgE27bzwQxcEmo2J/gNpI=",
+
"lastModified": 1764950072,
+
"narHash": "sha256-BmPWzogsG2GsXZtlT+MTcAWeDK5hkbGRZTeZNW42fwA=",
"owner": "nixos",
"repo": "nixpkgs",
-
"rev": "2fad6eac6077f03fe109c4d4eb171cf96791faa4",
+
"rev": "f61125a668a320878494449750330ca58b78c557",
"type": "github"
},
"original": {
+5 -3
flake.nix
···
## Miscellaneous
-
# agenix.url = "github:ryantm/agenix/0.15.0";
agenix.url = "github:ryantm/agenix";
agenix.inputs.nixpkgs.follows = "nixpkgs";
agenix.inputs.home-manager.follows = "home-manager";
-
disko.url = "github:nix-community/disko/v1.11.0";
+
disko.url = "github:nix-community/disko";
disko.inputs.nixpkgs.follows = "nixpkgs";
nixos-hardware.url = "github:nixos/nixos-hardware";
-
lanzaboote.url = "github:nix-community/lanzaboote/v0.4.3";
+
lanzaboote.url = "github:nix-community/lanzaboote";
lanzaboote.inputs.nixpkgs.follows = "unixpkgs";
srvos.url = "github:nix-community/srvos";
···
hypixel-bank-tracker.url = "github:pixilie/hypixel-bank-tracker";
hypixel-bank-tracker.inputs.nixpkgs.follows = "nixpkgs";
+
+
nix-alien.url = "github:thiagokokada/nix-alien";
+
nix-alien.inputs.nixpkgs.follows = "nixpkgs";
tangled.url = "git+https://tangled.org/tangled.org/core";
tangled.inputs.nixpkgs.follows = "unixpkgs";
+4 -5
home-manager/fragments/git.nix
···
'';
config = lib.mkIf cfg.enable {
-
assertions = [
-
{ assertion = config.local.fragment.agenix.enable; message = "`git` fragment depends on `agenix` fragment"; }
-
];
-
home.sessionVariables = {
# Disable annoying warning message
GIT_DISCOVERY_ACROSS_FILESYSTEM = 0;
···
"credentials \"https://github.com\"".helper = "!${lib.getExe pkgs.gh} auth git-credential";
# TODO: change to $PROJECTS env var?
-
leaveTool.defaultFolder = "~/Development";
+
leaveTool = {
+
defaultFolder = "${config.home.homeDirectory}/Development";
+
checks = [ "dirty" "ahead-branches" ];
+
};
};
};
+1
home-manager/fragments/jujutsu.nix
···
templates = {
log = "custom_log_compact";
+
git_push_bookmark = ''"push-" ++ change_id.short()'';
};
ui = {
+6
home-manager/fragments/sway.nix
···
repeat_rate = toString 30;
};
+
"type:touchpad" = {
+
dwt = "enabled";
+
tap = "enabled";
+
tap_button_map = "lrm";
+
};
+
# Split keyboard also acts as a mouse
# "type:touchpad" = { events = "disabled_on_external_mouse"; };
+1 -1
hosts/weird-row-server/authelia.nix
···
authelia-metrics-port = 9004;
headscale-hostname = "headscale.wiro.world";
-
grafana-hostname = "console.wiro.world";
+
grafana-hostname = "console.net.wiro.world";
miniflux-hostname = "news.wiro.world";
in
{
+8 -2
hosts/weird-row-server/default.nix
···
jails = { };
};
+
age.secrets.caddy-env.file = secrets/caddy-env.age;
services.caddy = {
enable = true;
package = pkgs.caddy.withPlugins {
-
doInstallCheck = false;
plugins = [
+
"github.com/caddy-dns/hetzner/v2@v2.0.0-preview-1"
"github.com/tailscale/caddy-tailscale@v0.0.0-20251016213337-01d084e119cb"
-
"github.com/caddy-dns/hetzner@v2.0.0-preview-1"
];
hash = "sha256-muKwDYs5Jp4ib/psZxpp1Kyfsqz6wPz/lpHFGtx67uY=";
};
+
environmentFile = config.age.secrets.caddy-env.path;
+
globalConfig = ''
tailscale {
+
# this caddy instance already proxies headscale but needs to access headscale to start
+
# control_url https://headscale.wiro.world
+
control_url http://localhost:3006
+
ephemeral
}
'';
+1 -1
hosts/weird-row-server/goatcounter.nix
···
services.caddy = {
virtualHosts.${goatcounter-hostname}.extraConfig = ''
-
reverse_proxy http://localhost:${toString goatcounter-port}
+
reverse_proxy http://localhost:${toString config.services.goatcounter.port}
'';
};
};
+3 -2
hosts/weird-row-server/grafana.nix
···
let
grafana-port = 3002;
-
grafana-hostname = "console.wiro.world";
+
grafana-hostname = "console.net.wiro.world";
prometheus-port = 9001;
prometheus-node-exporter-port = 9002;
···
globalConfig = ''
metrics { per_host }
'';
-
virtualHosts.${grafana-hostname}.extraConfig = ''
+
virtualHosts."http://${grafana-hostname}".extraConfig = ''
+
bind tailscale/console
reverse_proxy http://localhost:${toString grafana-port}
'';
};
+4 -3
hosts/weird-row-server/lldap.nix
···
let
lldap-port = 3007;
-
lldap-hostname = "ldap.wiro.world";
+
lldap-hostname = "ldap.net.wiro.world";
in
{
config = {
···
};
services.caddy = {
-
virtualHosts.${lldap-hostname}.extraConfig = ''
-
reverse_proxy http://localhost:${toString lldap-port}
+
virtualHosts."http://${lldap-hostname}".extraConfig = ''
+
bind tailscale/ldap
+
reverse_proxy http://localhost:${toString config.services.lldap.settings.http_port}
'';
};
};
+2 -2
hosts/weird-row-server/pds.nix
···
virtualHosts.${pds-hostname} = {
serverAliases = [ "*.${pds-hostname}" ];
extraConfig = ''
-
tls { on_demand }
-
reverse_proxy http://localhost:${toString pds-port}
+
tls { on_demand }
+
reverse_proxy http://localhost:${toString config.services.bluesky-pds.settings.PDS_HOSTNAME}
'';
};
};
hosts/weird-row-server/secrets/caddy-env.age

This is a binary file and will not be displayed.

+1
hosts/weird-row-server/secrets/default.nix
···
# Defines `HYPIXEL_API_KEY`, `PROFILE_UUID`
"hypixel-bank-tracker-main.age".publicKeys = deploy;
"hypixel-bank-tracker-banana.age".publicKeys = deploy;
+
"caddy-env.age".publicKeys = deploy;
}
+4 -3
hosts/weird-row-server/thelounge.nix
···
let
thelounge-port = 3005;
-
thelounge-hostname = "lounge.wiro.world";
+
thelounge-hostname = "irc-lounge.net.wiro.world";
in
{
config = {
···
};
services.caddy = {
-
virtualHosts.${thelounge-hostname}.extraConfig = ''
-
reverse_proxy http://localhost:${toString thelounge-port}
+
virtualHosts."http://${thelounge-hostname}".extraConfig = ''
+
bind tailscale/irc-lounge
+
reverse_proxy http://localhost:${toString config.services.thelounge.port}
'';
};
};
+1 -1
hosts/weird-row-server/vaultwarden.nix
···
services.caddy = {
virtualHosts.${vaultwarden-hostname}.extraConfig = ''
-
reverse_proxy http://localhost:${toString vaultwarden-port}
+
reverse_proxy http://localhost:${toString config.services.vaultwarden.config.ROCKET_PORT}
'';
};
};
+3 -7
hosts/weird-row-server/warrior.nix
···
let
warrior-port = 3015;
-
warrior-hostname = "warrior.wiro.world";
-
-
authelia-port = 3008;
+
warrior-hostname = "warrior.net.wiro.world";
in
{
config = {
···
};
services.caddy = {
-
virtualHosts.${warrior-hostname}.extraConfig = ''
-
forward_auth localhost:${toString authelia-port} {
-
uri /api/authz/forward-auth
-
}
+
virtualHosts."http://${warrior-hostname}".extraConfig = ''
+
bind tailscale/warrior
reverse_proxy http://localhost:${toString warrior-port}
'';
};
+2
pkgs/default.nix
···
inherit (self.inputs)
agenix
git-leave
+
nix-alien
wakatime-ls
;
in
···
# Import packages defined in foreign repositories
inherit (agenix.packages.${system}) agenix;
inherit (git-leave.packages.${system}) git-leave;
+
inherit (nix-alien.packages.${system}) nix-alien;
inherit (wakatime-ls.packages.${system}) wakatime-ls;
}