Compare commits

...

8 Commits

Author SHA1 Message Date
15ea443308 cleanup framework homemanager config 2024-12-22 21:51:42 +01:00
e458325578 allow EOL .NET6 for arr services 2024-12-22 20:32:42 +01:00
00f39fbd66 swap to hyprlock and hypridle 2024-12-22 20:03:55 +01:00
07e17650a8 fix tailscale 2024-12-09 19:06:45 +01:00
7d82ca8f5d add prune options for backups 2024-12-09 18:45:52 +01:00
482463c8d4 allow more uploads 2024-12-08 18:42:17 +01:00
a8df9404f0 add tailwind to framework 2024-11-26 00:24:10 +01:00
f9bb7a157a fix deprecations and add sdr stuff 2024-11-25 10:32:26 +01:00
10 changed files with 317 additions and 89 deletions

View File

@ -2,7 +2,7 @@ keys:
- &user_patrick 5FA64909521A5C85992F26E0F819AEFF941BB849 - &user_patrick 5FA64909521A5C85992F26E0F819AEFF941BB849
- &host_celestia age1vadwmwh8ckfal7j83gwrwn9324gqufwgkxskznhp9v867amndcwqgp2w6t - &host_celestia age1vadwmwh8ckfal7j83gwrwn9324gqufwgkxskznhp9v867amndcwqgp2w6t
- &host_primordial age12u7ayy2q5dps2pcpc6z7962pz07jxv3tt03hna6jyumlu4fdjvtqdg2n3e - &host_primordial age12u7ayy2q5dps2pcpc6z7962pz07jxv3tt03hna6jyumlu4fdjvtqdg2n3e
- &host_laptop age1fhnujflp29sekvwjgw0ue2hnmjum3fpcj80vly0rkt07u9xwlf7ql25mkk - &host_framework age18kc63lpfutqlw505fkqagumqup6dtpudajeaheueuaf0frjpdc3suz49qk
creation_rules: creation_rules:
- path_regex: nixos/celestia/secrets\.yaml$ - path_regex: nixos/celestia/secrets\.yaml$
key_groups: key_groups:
@ -16,3 +16,9 @@ creation_rules:
- *user_patrick - *user_patrick
age: age:
- *host_primordial - *host_primordial
- path_regex: nixos/framework/secrets\.yaml$
key_groups:
- pgp:
- *user_patrick
age:
- *host_framework

189
flake.lock generated
View File

@ -84,11 +84,11 @@
}, },
"crane": { "crane": {
"locked": { "locked": {
"lastModified": 1730652660, "lastModified": 1731098351,
"narHash": "sha256-+XVYfmVXAiYA0FZT7ijHf555dxCe+AoAT5A6RU+6vSo=", "narHash": "sha256-HQkYvKvaLQqNa10KEFGgWHfMAbWBfFp+4cAgkut+NNE=",
"owner": "ipetkov", "owner": "ipetkov",
"repo": "crane", "repo": "crane",
"rev": "a4ca93905455c07cb7e3aca95d4faf7601cba458", "rev": "ef80ead953c1b28316cc3f8613904edc2eb90c28",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -241,11 +241,11 @@
"nixpkgs-stable": "nixpkgs-stable_3" "nixpkgs-stable": "nixpkgs-stable_3"
}, },
"locked": { "locked": {
"lastModified": 1731811021, "lastModified": 1734833431,
"narHash": "sha256-MNBAEaFceE8IkNTn0YbxN6MmJsiBob7g/A1ATBTZ5CE=", "narHash": "sha256-X142+eukhjxdkJkeyN8IUGxUVZ2pO9lX3N9pMYNqOJQ=",
"owner": "nix-community", "owner": "nix-community",
"repo": "emacs-overlay", "repo": "emacs-overlay",
"rev": "e39c7cf39e1d2c31f8cce19ab3ecbb1e02d3bb65", "rev": "3c24690ab6fe48f82675b13cd6addb9a8dadfb92",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -454,6 +454,27 @@
"type": "github" "type": "github"
} }
}, },
"flake-parts_5": {
"inputs": {
"nixpkgs-lib": [
"nurpkgs",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733312601,
"narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci",
"repo": "flake-parts",
"rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github"
},
"original": {
"owner": "hercules-ci",
"repo": "flake-parts",
"type": "github"
}
},
"flake-utils": { "flake-utils": {
"inputs": { "inputs": {
"systems": "systems_2" "systems": "systems_2"
@ -645,11 +666,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1731832479, "lastModified": 1734893333,
"narHash": "sha256-icDDuYwJ0avTMZTxe1qyU/Baht5JOqw4pb5mWpR+hT0=", "narHash": "sha256-0Ft7iTkl3UWAix72teY5nflYQD7GE0KvIiT+ox4wkB8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "5056a1cf0ce7c2a08ab50713b6c4af77975f6111", "rev": "1f74238a4c8e534a1b6be72cb5153043071ffd17",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -720,11 +741,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1730739295, "lastModified": 1734820165,
"narHash": "sha256-aYeJ/P/9AuK6Kee63ZdsmDjEwhnksF+gIv/OyGtlBJE=", "narHash": "sha256-qkPmnVYb6w2KdipyigI9ipNR7A8dsFStBRH5sZ+rmqA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "lanzaboote", "repo": "lanzaboote",
"rev": "cef39a78679c266300874e7a7000b4da066228d4", "rev": "26a59c1b037e43f82b0fada2a218aeb128bc5d21",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -916,18 +937,18 @@
"type": "github" "type": "github"
} }
}, },
"nixpkgs-24_05": { "nixpkgs-24_11": {
"locked": { "locked": {
"lastModified": 1717144377, "lastModified": 1734083684,
"narHash": "sha256-F/TKWETwB5RaR8owkPPi+SPJh83AQsm6KrQAlJ8v/uA=", "narHash": "sha256-5fNndbndxSx5d+C/D0p/VF32xDiJCJzyOqorOYW4JEo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "805a384895c696f802a9bf5bf4720f37385df547", "rev": "314e12ba369ccdb9b352a4db26ff419f7c49fa84",
"type": "github" "type": "github"
}, },
"original": { "original": {
"id": "nixpkgs", "id": "nixpkgs",
"ref": "nixos-24.05", "ref": "nixos-24.11",
"type": "indirect" "type": "indirect"
} }
}, },
@ -941,11 +962,11 @@
"parts": "parts" "parts": "parts"
}, },
"locked": { "locked": {
"lastModified": 1731812528, "lastModified": 1734836163,
"narHash": "sha256-L+JXK8RKnfa+nXmElk6RnpEsrAzWcG2ogKc81ni5gVk=", "narHash": "sha256-+AVkoHCfTKLmRfKpZsePAiQLLfvrmDmIpC9TEDWoUmE=",
"owner": "fortuneteller2k", "owner": "fortuneteller2k",
"repo": "nixpkgs-f2k", "repo": "nixpkgs-f2k",
"rev": "8755fba5e3fb74dbba55af8ce97bd29b109d866c", "rev": "b43745d87335789b75b4b16ec7d81e63391ac663",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -979,14 +1000,14 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1730504152, "lastModified": 1733096140,
"narHash": "sha256-lXvH/vOfb4aGYyvFmZK/HlsNsr/0CVWlwYvo2rxJk3s=", "narHash": "sha256-1qRH7uAUsyQI7R1Uwl4T+XvdNv778H0Nb5njNrqvylY=",
"type": "tarball", "type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/cc2f28000298e1269cea6612cd06ec9979dd5d7f.tar.gz" "url": "https://github.com/NixOS/nixpkgs/archive/5487e69da40cbd611ab2cadee0b4637225f7cfae.tar.gz"
} }
}, },
"nixpkgs-lib_2": { "nixpkgs-lib_2": {
@ -1067,11 +1088,11 @@
}, },
"nixpkgs-stable_2": { "nixpkgs-stable_2": {
"locked": { "locked": {
"lastModified": 1720386169, "lastModified": 1730741070,
"narHash": "sha256-NGKVY4PjzwAa4upkGtAMz1npHGoRzWotlSnVlqI40mo=", "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "194846768975b7ad2c4988bdb82572c00222c0d7", "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1083,16 +1104,16 @@
}, },
"nixpkgs-stable_3": { "nixpkgs-stable_3": {
"locked": { "locked": {
"lastModified": 1731652201, "lastModified": 1734737257,
"narHash": "sha256-XUO0JKP1hlww0d7mm3kpmIr4hhtR4zicg5Wwes9cPMg=", "narHash": "sha256-GIMyMt1pkkoXdCq9un859bX6YQZ/iYtukb9R5luazLM=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c21b77913ea840f8bcf9adf4c41cecc2abffd38d", "rev": "1c6e20d41d6a9c1d737945962160e8571df55daa",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "NixOS", "owner": "NixOS",
"ref": "nixos-24.05", "ref": "nixos-24.11",
"repo": "nixpkgs", "repo": "nixpkgs",
"type": "github" "type": "github"
} }
@ -1131,11 +1152,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1730642263, "lastModified": 1731919951,
"narHash": "sha256-UXqvGZOHUDeAo8Sv5A5oObiQgBPELVgHQi130TU0jMU=", "narHash": "sha256-vOM6ETpl1yu9KLi/icTmLJIPbbdJCdAVYUXZceO/Ce4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "650fe87347086b30a6dbcc32b55987ce5a23c6ae", "rev": "04386ac325a813047fc314d4b4d838a5b1e3c7fe",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1147,11 +1168,11 @@
}, },
"nixpkgs_4": { "nixpkgs_4": {
"locked": { "locked": {
"lastModified": 1731676054, "lastModified": 1734649271,
"narHash": "sha256-OZiZ3m8SCMfh3B6bfGC/Bm4x3qc1m2SVEAlkV6iY7Yg=", "narHash": "sha256-4EVBRhOjMDuGtMaofAIqzJbg4Ql7Ai0PSeuVZTHjyKQ=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "5e4fbfb6b3de1aa2872b76d49fafc942626e2add", "rev": "d70bd19e0a38ad4790d3913bf08fcbfc9eeca507",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1163,11 +1184,11 @@
}, },
"nixpkgs_5": { "nixpkgs_5": {
"locked": { "locked": {
"lastModified": 1731676054, "lastModified": 1734424634,
"narHash": "sha256-OZiZ3m8SCMfh3B6bfGC/Bm4x3qc1m2SVEAlkV6iY7Yg=", "narHash": "sha256-cHar1vqHOOyC7f1+tVycPoWTfKIaqkoe1Q6TnKzuti4=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "5e4fbfb6b3de1aa2872b76d49fafc942626e2add", "rev": "d3c42f187194c26d9f0309a8ecc469d6c878ce33",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1194,6 +1215,22 @@
} }
}, },
"nixpkgs_7": { "nixpkgs_7": {
"locked": {
"lastModified": 1734649271,
"narHash": "sha256-4EVBRhOjMDuGtMaofAIqzJbg4Ql7Ai0PSeuVZTHjyKQ=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "d70bd19e0a38ad4790d3913bf08fcbfc9eeca507",
"type": "github"
},
"original": {
"owner": "nixos",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nixpkgs_8": {
"locked": { "locked": {
"lastModified": 1731763621, "lastModified": 1731763621,
"narHash": "sha256-ddcX4lQL0X05AYkrkV2LMFgGdRvgap7Ho8kgon3iWZk=", "narHash": "sha256-ddcX4lQL0X05AYkrkV2LMFgGdRvgap7Ho8kgon3iWZk=",
@ -1258,12 +1295,17 @@
} }
}, },
"nurpkgs": { "nurpkgs": {
"inputs": {
"flake-parts": "flake-parts_5",
"nixpkgs": "nixpkgs_7",
"treefmt-nix": "treefmt-nix_2"
},
"locked": { "locked": {
"lastModified": 1731872711, "lastModified": 1734891997,
"narHash": "sha256-2vj0E55Ckfo8eiPqImADvBEHwtIoOx8ufiRnXElQf0w=", "narHash": "sha256-MXE+6AV6HJfUTwKAaNPR5+WsejO02Q5JNNhz0yMUyVw=",
"owner": "nix-community", "owner": "nix-community",
"repo": "NUR", "repo": "NUR",
"rev": "25e6cfc7d6260864f5f5dfe2617b39a6afb6ea5e", "rev": "b8deab92e4f1bc950ef7b2273b8b5c3a764c2e77",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1301,11 +1343,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1730504689, "lastModified": 1733312601,
"narHash": "sha256-hgmguH29K2fvs9szpq2r3pz2/8cJd2LPS+b4tfNFCwE=", "narHash": "sha256-4pDvzqnegAfRkPwO3wmwBhVi/Sye1mzps0zHWYnP88c=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "506278e768c2a08bec68eb62932193e341f55c90", "rev": "205b12d8b7cd4802fbcb8e8ef6a0f1408781a4f9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1391,11 +1433,11 @@
"nixpkgs-stable": "nixpkgs-stable_2" "nixpkgs-stable": "nixpkgs-stable_2"
}, },
"locked": { "locked": {
"lastModified": 1730302582, "lastModified": 1731363552,
"narHash": "sha256-W1MIJpADXQCgosJZT8qBYLRuZls2KSiKdpnTVdKBuvU=", "narHash": "sha256-vFta1uHnD29VUY4HJOO/D6p6rxyObnf+InnSMT4jlMU=",
"owner": "cachix", "owner": "cachix",
"repo": "pre-commit-hooks.nix", "repo": "pre-commit-hooks.nix",
"rev": "af8a16fe5c264f5e9e18bcee2859b40a656876cf", "rev": "cd1af27aa85026ac759d5d3fccf650abe7e1bbf0",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1473,11 +1515,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730601085, "lastModified": 1731897198,
"narHash": "sha256-Sgax33jGuvVHTjl1P78IwzlhAGyOxtx5Q26inKja8S4=", "narHash": "sha256-Ou7vLETSKwmE/HRQz4cImXXJBr/k9gp4J4z/PF8LzTE=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "8d1b40f8dfd7539aaa3de56e207e22b3cc451825", "rev": "0be641045af6d8666c11c2c40e45ffc9667839b5",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1497,11 +1539,11 @@
}, },
"locked": { "locked": {
"dir": "pkgs/firefox-addons", "dir": "pkgs/firefox-addons",
"lastModified": 1731816193, "lastModified": 1734863027,
"narHash": "sha256-Y/u1O6GpvOYRbGOnwGo0Gofg5jjfaHNGP9G7yGFFfzg=", "narHash": "sha256-L2Yqu7PVbzlxp37kmTGTA3gOceu7VLRuebm1DHiKPg4=",
"owner": "rycee", "owner": "rycee",
"repo": "nur-expressions", "repo": "nur-expressions",
"rev": "02c98c9ba4491db49ab759161fcc0ba9830d7aa0", "rev": "5a5aea6627a4c360ba030ddadeda63d1ad294125",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {
@ -1518,14 +1560,14 @@
"nixpkgs": [ "nixpkgs": [
"nixpkgs" "nixpkgs"
], ],
"nixpkgs-24_05": "nixpkgs-24_05" "nixpkgs-24_11": "nixpkgs-24_11"
}, },
"locked": { "locked": {
"lastModified": 1722877200, "lastModified": 1734884447,
"narHash": "sha256-qgKDNJXs+od+1UbRy62uk7dYal3h98I4WojfIqMoGcg=", "narHash": "sha256-HA9fAmGNGf0cOYrhgoa+B6BxNVqGAYXfLyx8zIS0ZBY=",
"owner": "simple-nixos-mailserver", "owner": "simple-nixos-mailserver",
"repo": "nixos-mailserver", "repo": "nixos-mailserver",
"rev": "af7d3bf5daeba3fc28089b015c0dd43f06b176f2", "rev": "63209b1def2c9fc891ad271f474a3464a5833294",
"type": "gitlab" "type": "gitlab"
}, },
"original": { "original": {
@ -1537,14 +1579,14 @@
}, },
"sops-nix": { "sops-nix": {
"inputs": { "inputs": {
"nixpkgs": "nixpkgs_7" "nixpkgs": "nixpkgs_8"
}, },
"locked": { "locked": {
"lastModified": 1731862312, "lastModified": 1734546875,
"narHash": "sha256-NVUTFxKrJp/hjehlF1IvkPnlRYg/O9HFVutbxOM8zNM=", "narHash": "sha256-6OvJbqQ6qPpNw3CA+W8Myo5aaLhIJY/nNFDk3zMXLfM=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "472741cf3fee089241ac9ea705bb2b9e0bfa2978", "rev": "ed091321f4dd88afc28b5b4456e0a15bd8374b4d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -1635,6 +1677,27 @@
"type": "github" "type": "github"
} }
}, },
"treefmt-nix_2": {
"inputs": {
"nixpkgs": [
"nurpkgs",
"nixpkgs"
]
},
"locked": {
"lastModified": 1733222881,
"narHash": "sha256-JIPcz1PrpXUCbaccEnrcUS8jjEb/1vJbZz5KkobyFdM=",
"owner": "numtide",
"repo": "treefmt-nix",
"rev": "49717b5af6f80172275d47a418c9719a31a78b53",
"type": "github"
},
"original": {
"owner": "numtide",
"repo": "treefmt-nix",
"type": "github"
}
},
"utils": { "utils": {
"inputs": { "inputs": {
"systems": "systems" "systems": "systems"

View File

@ -0,0 +1,35 @@
{...}: {
programs.alacritty = {
enable = true;
settings = {
general.live_config_reload = true;
env.TERM = "xterm-256color";
bell.duration = 0;
cursor.style = "Block";
scrolling = {
history = 10000;
multiplier = 3;
};
window = {
opacity = 0.9;
};
mouse.bindings = [
{
mouse = "Middle";
action = "PasteSelection";
}
];
colors = {
primary = {
background = "0x000000";
foreground = "0xeaeaea";
};
};
};
};
}

View File

@ -1,4 +1,5 @@
[ [
./alacritty
./firefox ./firefox
./hyprland ./hyprland
{ {

View File

@ -1,19 +1,82 @@
{pkgs, ...}: { {pkgs, ...}: {
wayland.windowManager.hyprland = let services.hypridle = {
locker = "${pkgs.swaylock}/bin/swaylock"; enable = true;
set-dpms = "${pkgs.hyprland}/bin/hyprctl dispatcher dpms";
locked-dpms = pkgs.writeShellScript "locked-dpms.sh" '' settings = {
${pkgs.swayidle}/bin/swayidle -w \ general = {
timeout 10 'if pgrep -x swaylock; then ${set-dpms} off; fi' \ lock_cmd = "pidof hyprlock || hyprlock";
resume '${set-dpms} on' };
'';
idle-script = pkgs.writeShellScript "idle-lock.sh" '' listener = [
${pkgs.swayidle}/bin/swayidle -w \ {
timeout 300 '${locker} -f' \ timeout = 300;
timeout 330 '${set-dpms} off' \ on-timeout = "loginctl lock-session";
resume '${set-dpms} on' }
''; {
in { timeout = 330;
on-timeout = "hyprctl dispatch dpms off";
on-resume = "hyprctl dispatch dpms on";
}
];
};
};
programs.hyprlock = {
enable = true;
settings = {
background = {
monitor = "";
path = "screenshot";
blur_passes = 1;
blur_size = 7;
noise = 1.17e-2;
};
label = [
{
monitor = "";
text = "$TIME";
color = "rgba(242, 243, 244, 0.75)";
font_size = 95;
position = "0, 300";
halign = "center";
valign = "center";
}
{
monitor = "";
text = ''cmd[update:1000] echo $(date +"%A, %B %d")'';
color = "rgba(242, 243, 244, 0.75)";
font_size = 22;
position = "0, 200";
halign = "center";
valign = "center";
}
];
input-field = {
monitor = "";
size = "200,50";
outline_thickness = 2;
dots_size = 0.2; # Scale of input-field height, 0.2 - 0.8
dots_spacing = 0.35; # Scale of dots' absolute size, 0.0 - 1.0
dots_center = true;
outer_color = "rgba(0, 0, 0, 0)";
inner_color = "rgba(0, 0, 0, 0.2)";
font_color = "rgb(111, 45, 104)";
fade_on_empty = false;
rounding = -1;
check_color = "rgb(30, 107, 204)";
placeholder_text = ''<i><span foreground="##cdd6f4">Input Password...</span></i>'';
hide_input = false;
position = "0, -100";
halign = "center";
valign = "center";
};
};
};
wayland.windowManager.hyprland = {
enable = true; enable = true;
settings = { settings = {
"$mod" = "SUPER"; "$mod" = "SUPER";
@ -28,8 +91,6 @@
exec-once = [ exec-once = [
"${pkgs.waybar}/bin/waybar" "${pkgs.waybar}/bin/waybar"
"${pkgs.mako}/bin/mako" "${pkgs.mako}/bin/mako"
idle-script
locked-dpms
]; ];
input = { input = {
@ -83,7 +144,7 @@
"$mod, return, exec, ${pkgs.alacritty}/bin/alacritty" "$mod, return, exec, ${pkgs.alacritty}/bin/alacritty"
"$mod, D, exec, ${pkgs.rofi-wayland}/bin/rofi -show drun" "$mod, D, exec, ${pkgs.rofi-wayland}/bin/rofi -show drun"
"$mod SHIFT, Q, killactive, " "$mod SHIFT, Q, killactive, "
"$mod, L, exec, ${locker}" "$mod, L, exec, loginctl lock-session"
"$mod, V, togglefloating, " "$mod, V, togglefloating, "
"$mod, F, fullscreen, 1" "$mod, F, fullscreen, 1"
"$mod, P, pseudo, # dwindle" "$mod, P, pseudo, # dwindle"

View File

@ -52,6 +52,14 @@ in {
]; ];
boot.kernelModules = ["amd-pstate"]; boot.kernelModules = ["amd-pstate"];
# *arr services are not yet all updated to .NET 8
nixpkgs.config.permittedInsecurePackages = [
"aspnetcore-runtime-6.0.36"
"aspnetcore-runtime-wrapped-6.0.36"
"dotnet-sdk-6.0.428"
"dotnet-sdk-wrapped-6.0.428"
];
system.stateVersion = "23.11"; # Did you read the comment? system.stateVersion = "23.11"; # Did you read the comment?
networking = { networking = {
hostName = "celestia"; hostName = "celestia";
@ -84,6 +92,9 @@ in {
zfs zfs
lm_sensors lm_sensors
ffmpeg ffmpeg
rtl_433
dump1090
rtl-sdr
]; ];
users.users."root".openssh.authorizedKeys.keys = [ users.users."root".openssh.authorizedKeys.keys = [
@ -215,7 +226,7 @@ in {
}; };
restic = let restic = let
mkBackup = repo: paths: exclude: { mkBackup = repo: paths: exclude: pruneOpts: {
repository = "sftp:u169497-sub5@u169497.your-storagebox.de:${repo}"; repository = "sftp:u169497-sub5@u169497.your-storagebox.de:${repo}";
passwordFile = config.sops.secrets."restic_${repo}_repository_password".path; passwordFile = config.sops.secrets."restic_${repo}_repository_password".path;
initialize = true; initialize = true;
@ -224,6 +235,7 @@ in {
]; ];
paths = paths; paths = paths;
exclude = exclude; exclude = exclude;
pruneOpts = pruneOpts;
timerConfig = { timerConfig = {
OnCalendar = "00:05"; OnCalendar = "00:05";
RandomizedDelaySec = "1h"; RandomizedDelaySec = "1h";
@ -231,8 +243,8 @@ in {
}; };
in { in {
backups = { backups = {
documents = mkBackup "documents" ["/tank/documents"] []; documents = mkBackup "documents" ["/tank/documents"] [] ["-d 7" "-w 5" "-m 12"];
images = mkBackup "images" ["/tank/images"] ["/tank/images/import"]; images = mkBackup "images" ["/tank/images"] ["/tank/images/import"] ["-d 7" "-w 5" "-m 12"];
}; };
}; };
@ -324,6 +336,8 @@ in {
settings = { settings = {
PHOTOPRISM_ADMIN_USER = "root"; PHOTOPRISM_ADMIN_USER = "root";
PHOTOPRISM_DEFAULT_LOCALE = "de"; PHOTOPRISM_DEFAULT_LOCALE = "de";
PHOTOPRISM_DETECT_NSFW = "true";
PHOTOPRISM_UPLOAD_NSFW = "true";
}; };
}; };
@ -424,6 +438,8 @@ in {
}; };
hardware = { hardware = {
rtl-sdr.enable = true;
fancontrol = { fancontrol = {
enable = true; enable = true;
config = '' config = ''

View File

@ -21,7 +21,6 @@
forceImportRoot = false; forceImportRoot = false;
extraPools = ["tank"]; extraPools = ["tank"];
}; };
boot.kernelPackages = config.boot.zfs.package.latestCompatibleLinuxPackages;
fileSystems."/" = { fileSystems."/" = {
device = "/dev/disk/by-uuid/3652c231-d679-42dd-80f1-e9afccb4ca13"; device = "/dev/disk/by-uuid/3652c231-d679-42dd-80f1-e9afccb4ca13";
@ -34,6 +33,7 @@
allowDiscards = true; allowDiscards = true;
keyFileSize = 4096; keyFileSize = 4096;
keyFile = "/dev/disk/by-id/usb-Generic_Flash_Disk_D5A325A0-0:0"; keyFile = "/dev/disk/by-id/usb-Generic_Flash_Disk_D5A325A0-0:0";
tryEmptyPassphrase = true;
}; };
}; };

View File

@ -92,7 +92,7 @@ in {
np = nixpkgs; np = nixpkgs;
system = "x86_64-linux"; system = "x86_64-linux";
ip = "192.168.1.11"; ip = "192.168.1.11";
# remoteBuild = false; remoteBuild = false;
file = ./celestia/configuration.nix; file = ./celestia/configuration.nix;
}; };

View File

@ -6,6 +6,8 @@
... ...
}: { }: {
imports = [./hardware-configuration.nix]; imports = [./hardware-configuration.nix];
sops.defaultSopsFile = ./secrets.yaml;
sops.secrets."tailscale-auth-key" = {};
boot.bootspec.enable = true; boot.bootspec.enable = true;
boot.loader.systemd-boot.enable = lib.mkForce false; boot.loader.systemd-boot.enable = lib.mkForce false;
@ -33,13 +35,16 @@
extraPackages = [pkgs.vaapiVdpau]; extraPackages = [pkgs.vaapiVdpau];
}; };
hardware.rtl-sdr.enable = true;
hardware.bluetooth.enable = true; hardware.bluetooth.enable = true;
security.pam.services.swaylock = {}; security.pam.services.swaylock = {};
security.pam.services.hyprlock = {};
fonts.packages = with pkgs; [ fonts.packages = with pkgs; [
font-awesome font-awesome
(nerdfonts.override {fonts = ["FiraMono"];}) nerd-fonts.fira-mono
mypkgs.comic-mono mypkgs.comic-mono
]; ];
@ -97,6 +102,14 @@
lidSwitchExternalPower = "ignore"; lidSwitchExternalPower = "ignore";
extraConfig = "HoldoffTimeoutSec=300s"; extraConfig = "HoldoffTimeoutSec=300s";
}; };
tailscale = {
enable = true;
extraUpFlags = [
"--accept-routes=true"
];
authKeyFile = config.sops.secrets."tailscale-auth-key".path;
};
}; };
services.pipewire = { services.pipewire = {
@ -111,7 +124,7 @@
users.users.patrick = { users.users.patrick = {
isNormalUser = true; isNormalUser = true;
extraGroups = ["wheel"]; extraGroups = ["wheel" "plugdev"];
}; };
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [

View File

@ -0,0 +1,33 @@
tailscale-auth-key: ENC[AES256_GCM,data:jReYmVBmruNXXOlB9ep1Vx84XSKA8JAPReuxXglPMNDCUOIaX2S7zPuxAJp4KYhE91CnCNzprW/rdGejMw==,iv:251dyqcTqRh6N/lM07spgcyBnsxvwTdhKXdM45hepTc=,tag:/JqRTN80TJmA3H06Efbx8A==,type:str]
sops:
kms: []
gcp_kms: []
azure_kv: []
hc_vault: []
age:
- recipient: age18kc63lpfutqlw505fkqagumqup6dtpudajeaheueuaf0frjpdc3suz49qk
enc: |
-----BEGIN AGE ENCRYPTED FILE-----
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBGQ29IUmRFcjNXNFRVZDh5
ZGE0YUJxYmFITHJ1N1RtVkNHbnpBYS9IM0g0CmFWak94ZE9BR2x2cHhrTkxxVWVn
czlRNUJoSm5FUVVPQVdXMnp6V1dMRjAKLS0tIFNUWVNCMEhjbEpjUXhRS05QTFpL
bk1raG5pVE10ZEh1RXdYUXY0ZkVkUW8K5JWNqbd6k6slfOR9xfc6a58tdouElwlX
w4MzIE7dUlqYux4MxbTzXhnX/A3D2oXg60Ya5rKqakgnAYvWlNwwAw==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2024-11-25T15:49:24Z"
mac: ENC[AES256_GCM,data:GQcgu7CWkUPrcsYlSK8rbnZIu3Ph/q5ohEt2F46Q5afEh2j0aQQfdlO7suFUmO93qoQ4Z4qo6HmSsqajR5QTMvWMjERSdAYh8WiX64zgnxzYD32GCLjvtp3NSraIHy5RsnX/+4vNDsGVq1pJIEr6McWuvxuuZ3cT2JbHiui8cGI=,iv:GkHo9aM6JXM1+kY42au7Rm3fJrqOnncKLxLC52JrVUw=,tag:7Ua+LTsfihrr+qcVhKvJPA==,type:str]
pgp:
- created_at: "2024-11-25T15:46:53Z"
enc: |-
-----BEGIN PGP MESSAGE-----
hF4DMGJRmcuHhnsSAQdAIUNST8klTbwju58Y6yBe8tZtn0yK4hCrocSfV5qAOz8w
eDZyWmShWVeAMIksZPJthyq2GmExd6S+BPjgn6sLmeaDBHzUsLV2lexpGSTif6MW
1GgBCQIQVijI8dBnboVzsQHN1Yaj9Ntfb++u29TBmYiXLm455jsr/Aqwp8I9ZM0P
tMPkxT6kHebICXpsbZvkSxv3kaPK1+TBGZkk8VEZxZZBl7NpvCAKufOiCHU/sH8I
UOJGtqbpiWwqJQ==
=qjQD
-----END PGP MESSAGE-----
fp: 5FA64909521A5C85992F26E0F819AEFF941BB849
unencrypted_suffix: _unencrypted
version: 3.9.1