Compare commits
No commits in common. "main" and "caddy-module" have entirely different histories.
main
...
caddy-modu
27 changed files with 155 additions and 732 deletions
|
@ -108,8 +108,3 @@ creation_rules:
|
|||
- age:
|
||||
- *chunk
|
||||
- *cy
|
||||
- path_regex: secrets/yt/(.*).yaml$
|
||||
key_groups:
|
||||
- age:
|
||||
- *yt
|
||||
- *cy
|
||||
|
|
229
flake.lock
generated
229
flake.lock
generated
|
@ -120,11 +120,11 @@
|
|||
"rocksdb": "rocksdb"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739114248,
|
||||
"narHash": "sha256-Etzh7m1aZBwKfcS6sa+2zBzdOaZSR+yFn2pwwGTilb4=",
|
||||
"lastModified": 1737945015,
|
||||
"narHash": "sha256-VCa7UAWqP14IC+fmT4P3rxGhkugDlU/4FZqqPyFUs9s=",
|
||||
"owner": "girlbossceo",
|
||||
"repo": "conduwuit",
|
||||
"rev": "b6e9dc3d98704c56027219d3775336910a0136c6",
|
||||
"rev": "71a3855af61b0071832c23085f76a8711e32b49c",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -157,11 +157,11 @@
|
|||
},
|
||||
"crane_2": {
|
||||
"locked": {
|
||||
"lastModified": 1739053031,
|
||||
"narHash": "sha256-LrMDRuwAlRFD2T4MgBSRd1s2VtOE+Vl1oMCNu3RpPE0=",
|
||||
"lastModified": 1737689766,
|
||||
"narHash": "sha256-ivVXYaYlShxYoKfSo5+y5930qMKKJ8CLcAoIBPQfJ6s=",
|
||||
"owner": "ipetkov",
|
||||
"repo": "crane",
|
||||
"rev": "112e6591b2d6313b1bd05a80a754a8ee42432a7e",
|
||||
"rev": "6fe74265bbb6d016d663b1091f015e2976c4a527",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -369,11 +369,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738453229,
|
||||
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=",
|
||||
"lastModified": 1736143030,
|
||||
"narHash": "sha256-+hu54pAoLDEZT9pjHlqL9DNzWz0NbUn8NEAHP7PQPzU=",
|
||||
"owner": "hercules-ci",
|
||||
"repo": "flake-parts",
|
||||
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd",
|
||||
"rev": "b905f6fc23a9051a6e1b741e1438dbfc0634c6de",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -562,11 +562,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739051380,
|
||||
"narHash": "sha256-p1QSLO8DJnANY+ppK7fjD8GqfCrEIDjso1CSRHsXL7Y=",
|
||||
"lastModified": 1737762889,
|
||||
"narHash": "sha256-5HGG09bh/Yx0JA8wtBMAzt0HMCL1bYZ93x4IqzVExio=",
|
||||
"owner": "nix-community",
|
||||
"repo": "home-manager",
|
||||
"rev": "5af1b9a0f193ab6138b89a8e0af8763c21bbf491",
|
||||
"rev": "daf04c5950b676f47a794300657f1d3d14c1a120",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -683,11 +683,11 @@
|
|||
"pre-commit-hooks": "pre-commit-hooks"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739035579,
|
||||
"narHash": "sha256-Zc7KAA3iC5Ak9reV/peqELKXJn6rLcSZptq1Tzcx9Nc=",
|
||||
"lastModified": 1737857294,
|
||||
"narHash": "sha256-bzC+anLF/NlgolaMoB4uTFgSejLJlTzPcNF1Kbq/BP0=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "132d11c2d85425b7d23785ec306acb9b1d1ddba6",
|
||||
"revCount": 17397,
|
||||
"rev": "4af6b5ed9f8f2412bef5331b8e3b93f3ad305ea1",
|
||||
"revCount": 16694,
|
||||
"type": "git",
|
||||
"url": "https://git.lix.systems/lix-project/lix"
|
||||
},
|
||||
|
@ -710,11 +710,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738176840,
|
||||
"narHash": "sha256-NG3IRvRs3u3btVCN861FqHvgOwqcNT/Oy6PBG86F5/E=",
|
||||
"lastModified": 1737675503,
|
||||
"narHash": "sha256-FUWpqPOsEJwK8oomffat+lgKnoxJHArRlWo2j17EhxQ=",
|
||||
"ref": "refs/heads/main",
|
||||
"rev": "621aae0f3cceaffa6d73a4fb0f89c08d338d729e",
|
||||
"revCount": 133,
|
||||
"rev": "3e18a1ceec7df4514f5a045441e5f98dd003db09",
|
||||
"revCount": 131,
|
||||
"type": "git",
|
||||
"url": "https://git.lix.systems/lix-project/nixos-module"
|
||||
},
|
||||
|
@ -723,32 +723,6 @@
|
|||
"url": "https://git.lix.systems/lix-project/nixos-module"
|
||||
}
|
||||
},
|
||||
"nil": {
|
||||
"inputs": {
|
||||
"flake-utils": [
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
],
|
||||
"rust-overlay": [
|
||||
"rust-overlay"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1732053863,
|
||||
"narHash": "sha256-DCIVdlb81Fct2uwzbtnawLBC/U03U2hqx8trqTJB7WA=",
|
||||
"owner": "oxalica",
|
||||
"repo": "nil",
|
||||
"rev": "2e24c9834e3bb5aa2a3701d3713b43a6fb106362",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "oxalica",
|
||||
"repo": "nil",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"niri": {
|
||||
"inputs": {
|
||||
"niri-stable": "niri-stable",
|
||||
|
@ -763,11 +737,11 @@
|
|||
"xwayland-satellite-unstable": "xwayland-satellite-unstable"
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739042449,
|
||||
"narHash": "sha256-9zLFUpEebwhjCgtznsI61gTzefI3+fuXATHUOFzJi5w=",
|
||||
"lastModified": 1737924584,
|
||||
"narHash": "sha256-8XAz2IFUdSN7IblSWgQQVjivlZ0uWn3Y5jN3G6+/jss=",
|
||||
"owner": "sodiboo",
|
||||
"repo": "niri-flake",
|
||||
"rev": "98e3666a9dc4143cbf93d957a15d749b5acef046",
|
||||
"rev": "d3682c753abbbc8d41578aa12e6f10508d801f4b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -796,11 +770,11 @@
|
|||
"niri-unstable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
"lastModified": 1738911818,
|
||||
"narHash": "sha256-7bhr9ldHrNP71qOmKI1Hu80uclx+Tco0RNmO+GKtC1Y=",
|
||||
"lastModified": 1737918541,
|
||||
"narHash": "sha256-NKartmApYTAjteTg78OAIAYGvtl9QCDcKp8tPk3KCuI=",
|
||||
"owner": "YaLTeR",
|
||||
"repo": "niri",
|
||||
"rev": "397e704d644d1bfe7736f2fdacbfe5742c7b2f9f",
|
||||
"rev": "baa051891237054f2d4db86d7bcfe0f17440c35f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -858,11 +832,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738743987,
|
||||
"narHash": "sha256-O3bnAfsObto6l2tQOmQlrO6Z2kD6yKwOWfs7pA0CpOc=",
|
||||
"lastModified": 1737504076,
|
||||
"narHash": "sha256-/B4XJnzYU/6K1ZZOBIgsa3K4pqDJrnC2579c44c+4rI=",
|
||||
"owner": "lnl7",
|
||||
"repo": "nix-darwin",
|
||||
"rev": "ae406c04577ff9a64087018c79b4fdc02468c87c",
|
||||
"rev": "65cc1fa8e36ceff067daf6cfb142331f02f524d3",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -909,26 +883,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix-ld": {
|
||||
"inputs": {
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738573732,
|
||||
"narHash": "sha256-cyUaLyn9oQp/ArxVnpyajKXFQhe+xxGCEvscAOt2Kco=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-ld",
|
||||
"rev": "8fed868d17954b09421d2456afccc2e7afdee96f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-ld",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nix2container": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
@ -961,6 +915,22 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-garage": {
|
||||
"locked": {
|
||||
"lastModified": 1736921030,
|
||||
"narHash": "sha256-A7knAvBOwoM5X7oNdIOKvuXYtXJpuR4O8iKHIk8EwOI=",
|
||||
"owner": "cything",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "97f27249297bf5fbc563014ae9d4884dee27f1e0",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "cything",
|
||||
"ref": "garage-module",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-regression": {
|
||||
"locked": {
|
||||
"lastModified": 1643052045,
|
||||
|
@ -1025,22 +995,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs-stable_4": {
|
||||
"locked": {
|
||||
"lastModified": 1738843498,
|
||||
"narHash": "sha256-7x+Q4xgFj9UxZZO9aUDCR8h4vyYut4zPUvfj3i+jBHE=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "f5a32fa27df91dfc4b762671a0e0a859a8a0058f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nixos",
|
||||
"ref": "nixos-24.11",
|
||||
"repo": "nixpkgs",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"nixpkgs_2": {
|
||||
"locked": {
|
||||
"lastModified": 1730531603,
|
||||
|
@ -1091,11 +1045,11 @@
|
|||
},
|
||||
"nixpkgs_5": {
|
||||
"locked": {
|
||||
"lastModified": 1739097848,
|
||||
"narHash": "sha256-bbdQB0Y4mB2msqbyQ9QC+YPDZGt1evUK53AwQSyShHM=",
|
||||
"lastModified": 1737917096,
|
||||
"narHash": "sha256-wOo5jWu88VRbm0TTNl9KxE4nIkfnXVKxLvZwpTn75wk=",
|
||||
"owner": "nixos",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "9a0b855695c31ea653181b742c65e026bada3881",
|
||||
"rev": "a47cb26bbe26d63321cbb96de6d1981d790d9748",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -1128,11 +1082,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739121491,
|
||||
"narHash": "sha256-BEmyAozR3Pc2qwPtC4rgUglzi3cw4nv4fXEY23NxOrQ=",
|
||||
"lastModified": 1737914312,
|
||||
"narHash": "sha256-PBF4R+yQt5Sls7CsA9Miwx28XtOP/yqaqejZ3RKSes0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nixvim",
|
||||
"rev": "13341a4c1238b7974e7bad9c7a6d5c51ca3cf81a",
|
||||
"rev": "8e5422bf3e76f410b97d2da640d0829e87657de9",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -1151,11 +1105,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738508923,
|
||||
"narHash": "sha256-4DaDrQDAIxlWhTjH6h/+xfG05jt3qDZrZE/7zDLQaS4=",
|
||||
"lastModified": 1737823349,
|
||||
"narHash": "sha256-LAppb+sftyvJbPdrBG1uN9GYWHz6q7bUpkpDjljcSRo=",
|
||||
"owner": "NuschtOS",
|
||||
"repo": "search",
|
||||
"rev": "86e2038290859006e05ca7201425ea5b5de4aecb",
|
||||
"rev": "f91a0ac0f4ecf0ad1d1d88140f66520dae6ce4bd",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -1180,29 +1134,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"plasma-manager": {
|
||||
"inputs": {
|
||||
"home-manager": [
|
||||
"home-manager"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1736549395,
|
||||
"narHash": "sha256-XzwkB62Tt5UYoL1jXiHzgk/qz2fUpGHExcSIbyGTtI0=",
|
||||
"owner": "nix-community",
|
||||
"repo": "plasma-manager",
|
||||
"rev": "a53af7f1514ef4cce8620a9d6a50f238cdedec8b",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "plasma-manager",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"pre-commit-hooks": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
@ -1275,18 +1206,14 @@
|
|||
"lanzaboote": "lanzaboote",
|
||||
"lix": "lix",
|
||||
"lix-module": "lix-module",
|
||||
"nil": "nil",
|
||||
"niri": "niri",
|
||||
"nix-ld": "nix-ld",
|
||||
"nixpkgs": "nixpkgs_5",
|
||||
"nixpkgs-stable": "nixpkgs-stable_4",
|
||||
"nixpkgs-garage": "nixpkgs-garage",
|
||||
"nixvim": "nixvim",
|
||||
"nvim-github-theme": "nvim-github-theme",
|
||||
"plasma-manager": "plasma-manager",
|
||||
"rust-overlay": "rust-overlay",
|
||||
"sops-nix": "sops-nix",
|
||||
"treefmt": "treefmt",
|
||||
"vscode-extensions": "vscode-extensions"
|
||||
"treefmt": "treefmt"
|
||||
}
|
||||
},
|
||||
"rust-analyzer-src": {
|
||||
|
@ -1313,11 +1240,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739068147,
|
||||
"narHash": "sha256-3DtLkjQFlIUOXw3TBH+iP0jglpqO6Lv2KaQc+ADg39I=",
|
||||
"lastModified": 1737944843,
|
||||
"narHash": "sha256-ZSXR/po/slqpsk3JLVjXbE04Vqrb4k7yCGHjyMj3tOk=",
|
||||
"owner": "oxalica",
|
||||
"repo": "rust-overlay",
|
||||
"rev": "f61820fa2c3844d6940cce269a6afdec30aa2e6c",
|
||||
"rev": "27bb917a41480b6ceee8e42d32dfcc9ecc6fa6c6",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -1333,11 +1260,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738291974,
|
||||
"narHash": "sha256-wkwYJc8cKmmQWUloyS9KwttBnja2ONRuJQDEsmef320=",
|
||||
"lastModified": 1737411508,
|
||||
"narHash": "sha256-j9IdflJwRtqo9WpM0OfAZml47eBblUHGNQTe62OUqTw=",
|
||||
"owner": "Mic92",
|
||||
"repo": "sops-nix",
|
||||
"rev": "4c1251904d8a08c86ac6bc0d72cc09975e89aef7",
|
||||
"rev": "015d461c16678fc02a2f405eb453abb509d4e1d4",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -1383,11 +1310,11 @@
|
|||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1738953846,
|
||||
"narHash": "sha256-yrK3Hjcr8F7qS/j2F+r7C7o010eVWWlm4T1PrbKBOxQ=",
|
||||
"lastModified": 1737483750,
|
||||
"narHash": "sha256-5An1wq5U8sNycOBBg3nsDDgpwBmR9liOpDGlhliA6Xo=",
|
||||
"owner": "numtide",
|
||||
"repo": "treefmt-nix",
|
||||
"rev": "4f09b473c936d41582dd744e19f34ec27592c5fd",
|
||||
"rev": "f2cc121df15418d028a59c9737d38e3a90fbaf8f",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
@ -1396,32 +1323,6 @@
|
|||
"type": "github"
|
||||
}
|
||||
},
|
||||
"vscode-extensions": {
|
||||
"inputs": {
|
||||
"flake-compat": [
|
||||
"flake-compat"
|
||||
],
|
||||
"flake-utils": [
|
||||
"flake-utils"
|
||||
],
|
||||
"nixpkgs": [
|
||||
"nixpkgs"
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1739152168,
|
||||
"narHash": "sha256-Zv6eGe+c5f9Chyw6O3ePJ4hbscetuzZxYShwjn3ACEs=",
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-vscode-extensions",
|
||||
"rev": "bd6b70f681b2561f53c9522be64330c7ff9d08d8",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
"owner": "nix-community",
|
||||
"repo": "nix-vscode-extensions",
|
||||
"type": "github"
|
||||
}
|
||||
},
|
||||
"xwayland-satellite-stable": {
|
||||
"flake": false,
|
||||
"locked": {
|
||||
|
|
40
flake.nix
40
flake.nix
|
@ -3,7 +3,6 @@
|
|||
|
||||
inputs = {
|
||||
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable-small";
|
||||
nixpkgs-stable.url = "github:nixos/nixpkgs/nixos-24.11";
|
||||
sops-nix = {
|
||||
url = "github:Mic92/sops-nix";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
|
@ -69,27 +68,8 @@
|
|||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-compat.follows = "flake-compat";
|
||||
};
|
||||
nix-ld = {
|
||||
url = "github:nix-community/nix-ld";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
};
|
||||
plasma-manager = {
|
||||
url = "github:nix-community/plasma-manager";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.home-manager.follows = "home-manager";
|
||||
};
|
||||
nil = {
|
||||
url = "github:oxalica/nil";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.rust-overlay.follows = "rust-overlay";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
};
|
||||
vscode-extensions = {
|
||||
url = "github:nix-community/nix-vscode-extensions";
|
||||
inputs.nixpkgs.follows = "nixpkgs";
|
||||
inputs.flake-utils.follows = "flake-utils";
|
||||
inputs.flake-compat.follows = "flake-compat";
|
||||
};
|
||||
|
||||
nixpkgs-garage.url = "github:cything/nixpkgs/garage-module"; # unmerged PR
|
||||
|
||||
nvim-github-theme = {
|
||||
url = "github:projekt0n/github-nvim-theme";
|
||||
|
@ -146,6 +126,9 @@
|
|||
...
|
||||
}:
|
||||
{
|
||||
# make pkgs available to `perSystem`
|
||||
_module.args.pkgs = inputs'.nixpkgs.legacyPackages;
|
||||
|
||||
treefmt = {
|
||||
projectRootFile = "flake.nix";
|
||||
programs.nixfmt.enable = true;
|
||||
|
@ -156,7 +139,7 @@
|
|||
|
||||
settings.global.excludes = [
|
||||
"secrets/*"
|
||||
"**/*.png" # tries to format a png file
|
||||
"**/*.png" # tries to format a png file??
|
||||
];
|
||||
};
|
||||
};
|
||||
|
@ -169,8 +152,7 @@
|
|||
overlays = [
|
||||
inputs.niri.overlays.niri
|
||||
inputs.rust-overlay.overlays.default
|
||||
inputs.vscode-extensions.overlays.default
|
||||
] ++ (import ./overlay { inherit inputs; });
|
||||
] ++ import ./overlay;
|
||||
};
|
||||
in
|
||||
{
|
||||
|
@ -190,8 +172,7 @@
|
|||
./modules
|
||||
inputs.lanzaboote.nixosModules.lanzaboote
|
||||
inputs.niri.nixosModules.niri
|
||||
inputs.lix-module.nixosModules.default
|
||||
inputs.nix-ld.nixosModules.nix-ld
|
||||
inputs.lix-module.nixosModules.default # broken
|
||||
];
|
||||
};
|
||||
chunk = lib.nixosSystem {
|
||||
|
@ -199,10 +180,14 @@
|
|||
modules = [
|
||||
{
|
||||
nixpkgs = { inherit pkgs; };
|
||||
disabledModules = [
|
||||
"services/web-servers/garage.nix"
|
||||
];
|
||||
}
|
||||
./hosts/chunk
|
||||
inputs.sops-nix.nixosModules.sops
|
||||
./modules
|
||||
(inputs.nixpkgs-garage + "/nixos/modules/services/web-servers/garage.nix")
|
||||
];
|
||||
};
|
||||
|
||||
|
@ -231,7 +216,6 @@
|
|||
./home/yt/ytnix.nix
|
||||
inputs.nixvim.homeManagerModules.nixvim
|
||||
inputs.niri.homeModules.config
|
||||
inputs.plasma-manager.homeManagerModules.plasma-manager
|
||||
];
|
||||
};
|
||||
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
enableUpdateCheck = false;
|
||||
enableExtensionUpdateCheck = false;
|
||||
mutableExtensionsDir = false;
|
||||
extensions = (with pkgs.open-vsx; [
|
||||
vscodevim.vim
|
||||
jnoortheen.nix-ide
|
||||
editorconfig.editorconfig
|
||||
github.github-vscode-theme
|
||||
rust-lang.rust-analyzer
|
||||
]) ++
|
||||
(with pkgs.vscode-marketplace; [
|
||||
github.codespaces
|
||||
]);
|
||||
userSettings = {
|
||||
"workbench.colorTheme" = "GitHub Dark Default";
|
||||
"files.autoSave" = "afterDelay";
|
||||
"nix.enableLanguageServer" = true;
|
||||
"nix.serverPath" = "nil";
|
||||
"editor.fontFamily" = "IBM Plex Mono";
|
||||
"editor.fontSize" = 16;
|
||||
"editor.wordWrap" = "on";
|
||||
|
||||
# vim mode settings
|
||||
"vim.handleKeys" = {
|
||||
"<C-b>" = false; # file tree toggle
|
||||
};
|
||||
"vim.normalModeKeyBindings" = [
|
||||
{
|
||||
"before" = [ ";" ];
|
||||
"after" = [ ":" ];
|
||||
"silent" = true;
|
||||
}
|
||||
];
|
||||
"workbench.startupEditor" = "none";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -58,7 +58,6 @@
|
|||
"ctrl+f2" = "detach_tab";
|
||||
|
||||
# hints
|
||||
# > basically means the preceding key is a prefix (think tmux)
|
||||
"kitty_mod+o>o" = "open_url_with_hints";
|
||||
"kitty_mod+o>p" = "kitten hints --type path --program -";
|
||||
"kitty_mod+o>n" = "kitten hints --type line --program -";
|
||||
|
@ -67,6 +66,4 @@
|
|||
"kitty_mod+o>l" = "kitten hints --type linenum";
|
||||
};
|
||||
};
|
||||
|
||||
programs.zsh.shellAliases."ssh" = "kitten ssh";
|
||||
}
|
||||
|
|
|
@ -50,7 +50,7 @@ in
|
|||
natural-scroll = true;
|
||||
click-method = "clickfinger";
|
||||
};
|
||||
warp-mouse-to-focus = false;
|
||||
warp-mouse-to-focus = true;
|
||||
focus-follows-mouse.enable = false;
|
||||
};
|
||||
|
||||
|
@ -71,25 +71,19 @@ in
|
|||
};
|
||||
|
||||
window-rules = [
|
||||
{
|
||||
matches = [
|
||||
{ app-id = "mpv"; }
|
||||
{ app-id = "Bitwarden"; }
|
||||
{
|
||||
app-id = "ghidra-Ghidra";
|
||||
# pop-up windows
|
||||
title = "^win(.*)";
|
||||
}
|
||||
];
|
||||
open-floating = true;
|
||||
}
|
||||
{
|
||||
matches = [
|
||||
{
|
||||
app-id = "anki";
|
||||
title = "Add";
|
||||
}
|
||||
{ app-id = "mpv"; }
|
||||
{ app-id = "Bitwarden"; }
|
||||
];
|
||||
open-floating = true;
|
||||
}
|
||||
{
|
||||
matches = [ { app-id = "anki"; } ];
|
||||
default-column-width.proportion = .25;
|
||||
}
|
||||
{
|
||||
|
@ -102,7 +96,6 @@ in
|
|||
{ app-id = "com.mitchellh.ghostt"; }
|
||||
{ app-id = "org.kde.okular"; }
|
||||
{ app-id = "kitty"; }
|
||||
{ app-id = "VSCodium"; }
|
||||
];
|
||||
default-column-width.proportion = .5;
|
||||
}
|
||||
|
|
|
@ -24,7 +24,7 @@
|
|||
|
||||
extraPlugins = [
|
||||
(pkgs.vimUtils.buildVimPlugin {
|
||||
name = "github-theme";
|
||||
name = "gitub-theme";
|
||||
src = inputs.nvim-github-theme;
|
||||
})
|
||||
];
|
||||
|
@ -71,41 +71,6 @@
|
|||
key = "<C-e>";
|
||||
mode = "i";
|
||||
}
|
||||
# quick chat with copilot
|
||||
{
|
||||
key = "<leader>ccq";
|
||||
action.__raw = ''
|
||||
function()
|
||||
local input = vim.fn.input("Quick chat: ")
|
||||
if input ~= "" then
|
||||
require("CopilotChat").ask(input, { selection = require("CopilotChat.select").buffer })
|
||||
end
|
||||
end
|
||||
'';
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
];
|
||||
}
|
||||
# ask perplexity a quick question
|
||||
{
|
||||
key = "<leader>ccs";
|
||||
action.__raw = ''
|
||||
function()
|
||||
local input = vim.fn.input("Perplexity: ")
|
||||
if input ~= "" then
|
||||
require("CopilotChat").ask(input, {
|
||||
agent = "perplexityai",
|
||||
selection = false,
|
||||
})
|
||||
end
|
||||
end
|
||||
'';
|
||||
mode = [
|
||||
"n"
|
||||
"v"
|
||||
];
|
||||
}
|
||||
];
|
||||
|
||||
plugins.cmp = {
|
||||
|
@ -206,11 +171,7 @@
|
|||
plugins.treesitter = {
|
||||
enable = true;
|
||||
nixGrammars = true;
|
||||
settings = {
|
||||
indent.enable = true;
|
||||
auto_install = true;
|
||||
highlight.enable = true;
|
||||
};
|
||||
settings.indent.enable = true;
|
||||
};
|
||||
plugins.fzf-lua = {
|
||||
enable = true;
|
||||
|
@ -232,13 +193,6 @@
|
|||
settings.current_line_blame = true;
|
||||
};
|
||||
|
||||
plugins.copilot-chat = {
|
||||
enable = true;
|
||||
settings = {
|
||||
model = "claude-3.5-sonnet";
|
||||
};
|
||||
};
|
||||
|
||||
plugins.cmp-buffer.enable = true;
|
||||
plugins.cmp-emoji.enable = true;
|
||||
plugins.cmp-nvim-lsp.enable = true;
|
||||
|
|
|
@ -1,85 +0,0 @@
|
|||
{ ... }:
|
||||
{
|
||||
programs.plasma = {
|
||||
enable = true;
|
||||
overrideConfig = true;
|
||||
immutableByDefault = true;
|
||||
workspace = {
|
||||
lookAndFeel = "org.ide.breezedark.desktop";
|
||||
cursor = {
|
||||
theme = "Bibata-Modern-Classic";
|
||||
size = 23;
|
||||
};
|
||||
};
|
||||
|
||||
fonts = {
|
||||
general = {
|
||||
family = "IBM Plex Mono";
|
||||
pointSize = 12;
|
||||
};
|
||||
};
|
||||
|
||||
input.keyboard = {
|
||||
numlockOnStartup = "on";
|
||||
options = [ "ctrl:nocaps" ];
|
||||
};
|
||||
|
||||
# Meta key is actually the Super key in KDE
|
||||
|
||||
hotkeys.commands = {
|
||||
"launch-terminal" = {
|
||||
name = "launch terminal";
|
||||
key = "Meta+Return";
|
||||
command = "kitty";
|
||||
};
|
||||
"launch-browser" = {
|
||||
name = "launch browser";
|
||||
key = "Meta+B";
|
||||
command = "chromium";
|
||||
};
|
||||
"launch-fuzzel" = {
|
||||
name = "launch-fuzzel";
|
||||
key = "Meta+d";
|
||||
command = "fuzzel";
|
||||
};
|
||||
};
|
||||
|
||||
shortcuts = {
|
||||
kwin = {
|
||||
"Switch Window Down" = "Meta+J";
|
||||
"Switch Window Left" = "Meta+H";
|
||||
"Switch Window Right" = "Meta+L";
|
||||
"Switch Window Up" = "Meta+K";
|
||||
"Window Quick Tile Down" = "Meta+Shift+J";
|
||||
"Window Quick Tile Left" = "Meta+Shift+H";
|
||||
"Window Quick Tile Right" = "Meta+Shift+L";
|
||||
"Window Quick Tile Up" = "Meta+Shift+K";
|
||||
"Window Close" = "Meta+Ctrl+Q";
|
||||
"Window Maximize" = "Meta+W";
|
||||
"Window Minimize" = "Meta+Shift+-";
|
||||
"Window Fullscreen" = "Meta+F";
|
||||
"Window Shrink Horizontal" = "Meta+-";
|
||||
};
|
||||
|
||||
ksmserver = {
|
||||
"Lock Session" = [
|
||||
"Screensaver"
|
||||
"Meta+Ctrl+L"
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
configFile = {
|
||||
# save RAM
|
||||
baloofilerc."Basic Settings"."Indexing-Enabled" = false;
|
||||
};
|
||||
|
||||
# looks like KDE overrides services.logind settings
|
||||
powerdevil.AC = {
|
||||
whenLaptopLidClosed = "hibernate";
|
||||
};
|
||||
powerdevil.battery = {
|
||||
whenLaptopLidClosed = "hibernate";
|
||||
};
|
||||
};
|
||||
}
|
18
home/vscode.nix
Normal file
18
home/vscode.nix
Normal file
|
@ -0,0 +1,18 @@
|
|||
{ pkgs, ... }:
|
||||
{
|
||||
programs.vscode = {
|
||||
enable = true;
|
||||
package = pkgs.vscodium;
|
||||
enableUpdateCheck = false;
|
||||
enableExtensionUpdateCheck = false;
|
||||
mutableExtensionsDir = false;
|
||||
extensions = with pkgs.vscode-extensions; [
|
||||
vscodevim.vim
|
||||
jnoortheen.nix-ide # nix language support
|
||||
editorconfig.editorconfig # editorconfig
|
||||
dracula-theme.theme-dracula # color scheme
|
||||
tomoki1207.pdf # pdf viewer
|
||||
yzhang.markdown-all-in-one # markdown tools
|
||||
];
|
||||
};
|
||||
}
|
|
@ -61,5 +61,4 @@
|
|||
};
|
||||
programs.ripgrep.enable = true;
|
||||
programs.man.generateCaches = true;
|
||||
programs.fd.enable = true;
|
||||
}
|
||||
|
|
|
@ -1,6 +1,5 @@
|
|||
{
|
||||
pkgs,
|
||||
lib,
|
||||
...
|
||||
}:
|
||||
{
|
||||
|
@ -10,8 +9,6 @@
|
|||
../niri
|
||||
../irssi.nix
|
||||
../kitty.nix
|
||||
../codium.nix
|
||||
../plasma.nix
|
||||
];
|
||||
home = {
|
||||
username = "yt";
|
||||
|
@ -22,27 +19,24 @@
|
|||
|
||||
systemd.user.startServices = "sd-switch";
|
||||
|
||||
# keep this commented when using plasma
|
||||
# otherwise "system settings" in KDE will not function
|
||||
# qt = {
|
||||
# enable = true;
|
||||
# platformTheme.name = "kde";
|
||||
# style.name = "breeze-dark";
|
||||
# style.package = pkgs.kdePackages.breeze;
|
||||
# };
|
||||
qt = {
|
||||
enable = true;
|
||||
platformTheme.name = "kde";
|
||||
style.name = "breeze-dark";
|
||||
style.package = pkgs.kdePackages.breeze;
|
||||
};
|
||||
|
||||
# this one too
|
||||
# gtk = {
|
||||
# enable = true;
|
||||
# theme = {
|
||||
# package = pkgs.adw-gtk3;
|
||||
# name = "adw-gtk3-dark";
|
||||
# };
|
||||
# iconTheme = {
|
||||
# package = pkgs.adwaita-icon-theme;
|
||||
# name = "Adwaita";
|
||||
# };
|
||||
# };
|
||||
gtk = {
|
||||
enable = true;
|
||||
theme = {
|
||||
package = pkgs.adw-gtk3;
|
||||
name = "adw-gtk3-dark";
|
||||
};
|
||||
iconTheme = {
|
||||
package = pkgs.adwaita-icon-theme;
|
||||
name = "Adwaita";
|
||||
};
|
||||
};
|
||||
|
||||
home.pointerCursor = {
|
||||
package = pkgs.bibata-cursors;
|
||||
|
@ -66,6 +60,7 @@
|
|||
mpv
|
||||
yt-dlp
|
||||
signal-desktop
|
||||
azure-cli
|
||||
pavucontrol
|
||||
btop
|
||||
grim
|
||||
|
@ -108,27 +103,6 @@
|
|||
github-cli
|
||||
fuzzel
|
||||
nixpkgs-review
|
||||
just
|
||||
hugo
|
||||
ghidra
|
||||
sequoia
|
||||
sccache
|
||||
awscli2
|
||||
lldb
|
||||
(cutter.withPlugins (
|
||||
p: with p; [
|
||||
rz-ghidra
|
||||
jsdec
|
||||
sigdb
|
||||
]
|
||||
))
|
||||
ida-free
|
||||
patchelf
|
||||
radare2
|
||||
p7zip
|
||||
qbittorrent
|
||||
# vscodium
|
||||
nil
|
||||
];
|
||||
|
||||
programs.waybar.enable = true;
|
||||
|
@ -166,6 +140,8 @@
|
|||
'';
|
||||
};
|
||||
|
||||
services.gnome-keyring.enable = true;
|
||||
|
||||
programs.direnv = {
|
||||
enable = true;
|
||||
nix-direnv.enable = true;
|
||||
|
@ -179,23 +155,4 @@
|
|||
commit.gpgsign = true;
|
||||
core.sshCommand = "ssh -i ~/.ssh/id.key";
|
||||
};
|
||||
|
||||
home.sessionVariables = {
|
||||
# to make ghidra work on xwayland
|
||||
_JAVA_AWT_WM_NONREPARENTING = 1;
|
||||
|
||||
# sccache stuff
|
||||
RUSTC_WRAPPER = "${lib.getExe pkgs.sccache}";
|
||||
SCCACHE_BUCKET = "sccache";
|
||||
SCCACHE_REGION = "earth";
|
||||
SCCACHE_ENDPOINT = "https://sccache.s3.cy7.sh";
|
||||
SCCACHE_ALLOW_CORE_DUMPS = "true";
|
||||
SCCACHE_S3_USE_SSL = "true";
|
||||
SCCACHE_CACHE_MULTIARCH = "true";
|
||||
SCCACHE_LOG_LEVEL = "warn";
|
||||
AWS_DEFAULT_REGION = "earth";
|
||||
AWS_ENDPOINT_URL = "https://s3.cy7.sh";
|
||||
AWS_ACCESS_KEY_ID = "$(cat /run/secrets/aws/key_id)";
|
||||
AWS_SECRET_ACCESS_KEY = "$(cat /run/secrets/aws/key_secret)";
|
||||
};
|
||||
}
|
||||
|
|
|
@ -39,6 +39,11 @@
|
|||
initExtra = ''
|
||||
# disable control+s to pause terminal
|
||||
unsetopt FLOW_CONTROL
|
||||
# manually integrate fzf cause we need to make sure zsh-vi-mode
|
||||
# won't override C-r
|
||||
function zvm_after_init() {
|
||||
eval "$(${pkgs.fzf}/bin/fzf --zsh)"
|
||||
}
|
||||
|
||||
# useful emacs mode bindings
|
||||
bindkey -M viins "^E" end-of-line
|
||||
|
@ -89,8 +94,8 @@
|
|||
"ga" = "git add";
|
||||
"gaa" = "git add --all";
|
||||
"gb" = "git branch";
|
||||
"gc" = "git commit --verbose";
|
||||
"gcmsg" = "git commit --message";
|
||||
"gc" = "git commit --verbose -s";
|
||||
"gcmsg" = "git commit -s --message";
|
||||
"gd" = "git diff";
|
||||
"gdca" = "git diff --cached";
|
||||
"gds" = "git diff --staged";
|
||||
|
|
|
@ -15,21 +15,4 @@
|
|||
import common
|
||||
reverse_proxy localhost:8448
|
||||
'';
|
||||
|
||||
services.caddy.virtualHosts."cything.io" = {
|
||||
serverAliases = [ "www.cything.io" ];
|
||||
extraConfig = ''
|
||||
import common
|
||||
|
||||
header /.well-known/matrix/* Content-Type application/json
|
||||
header /.well-known/matrix/* Access-Control-Allow-Origin *
|
||||
header /.well-known/matrix/* Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS,PATCH,HEAD
|
||||
header /.well-known/matrix/* Access-Control-Allow-Headers X-Requested-With,Content-Type,Authorization,Origin,Accept
|
||||
route {
|
||||
respond /.well-known/matrix/server {"m.server":"chat.cything.io:443"}
|
||||
respond /.well-known/matrix/client {"m.server":{"base_url":"https://chat.cything.io"},"m.homeserver":{"base_url":"https://chat.cything.io"},"org.matrix.msc3575.proxy":{"url":"https://chat.cything.io"}}
|
||||
redir https://cy7.sh/posts{uri} permanent
|
||||
}
|
||||
'';
|
||||
};
|
||||
}
|
||||
|
|
|
@ -1,4 +1,6 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
|
@ -25,7 +27,6 @@
|
|||
./forgejo.nix
|
||||
./garage.nix
|
||||
./tailscale.nix
|
||||
./tor.nix
|
||||
];
|
||||
|
||||
sops.age.keyFile = "/root/.config/sops/age/keys.txt";
|
||||
|
@ -205,6 +206,4 @@
|
|||
};
|
||||
virtualisation.oci-containers.backend = "podman";
|
||||
environment.enableAllTerminfo = true;
|
||||
|
||||
my.roundcube.enable = true;
|
||||
}
|
||||
|
|
|
@ -33,10 +33,6 @@
|
|||
|
||||
services.caddy.virtualHosts."git.cy7.sh".extraConfig = ''
|
||||
import common
|
||||
|
||||
# renamed repo
|
||||
uri replace /cy/infra /cy/nixos-config
|
||||
|
||||
reverse_proxy localhost:3000
|
||||
'';
|
||||
services.caddy.virtualHosts."git.cything.io".extraConfig = ''
|
||||
|
|
|
@ -8,12 +8,6 @@
|
|||
s3_api = {
|
||||
s3_region = "earth";
|
||||
api_bind_addr = "[::]:3900";
|
||||
root_domain = ".s3.cy7.sh";
|
||||
};
|
||||
s3_web = {
|
||||
bind_addr = "[::]:3902";
|
||||
root_domain = ".web.s3.cy7.sh";
|
||||
index = "index.html";
|
||||
};
|
||||
admin.api_bind_addr = "[::]:3903";
|
||||
rpc_bind_addr = "[::]:3901";
|
||||
|
@ -23,21 +17,8 @@
|
|||
environmentFile = config.sops.secrets."garage/env".path;
|
||||
};
|
||||
|
||||
services.caddy.virtualHosts = {
|
||||
"s3.cy7.sh" = {
|
||||
serverAliases = [ "*.s3.cy7.sh" ];
|
||||
extraConfig = ''
|
||||
import common
|
||||
reverse_proxy localhost:3900
|
||||
'';
|
||||
};
|
||||
"*.web.s3.cy7.sh".extraConfig = ''
|
||||
import common
|
||||
reverse_proxy localhost:3902
|
||||
'';
|
||||
"admin.s3.cy7.sh".extraConfig = ''
|
||||
import common
|
||||
reverse_proxy localhost:3903
|
||||
'';
|
||||
};
|
||||
services.caddy.virtualHosts."s3.cy7.sh".extraConfig = ''
|
||||
import common
|
||||
reverse_proxy localhost:3900
|
||||
'';
|
||||
}
|
||||
|
|
|
@ -7,7 +7,7 @@
|
|||
http_port = 8088;
|
||||
enforce_domain = true;
|
||||
enable_gzip = true;
|
||||
domain = "grafana.cy7.sh";
|
||||
domain = "grafana.cything.io";
|
||||
};
|
||||
settings.analytics.reporting_enabled = false;
|
||||
};
|
||||
|
|
|
@ -13,16 +13,14 @@
|
|||
|
||||
cything.io {
|
||||
import common
|
||||
reverse_proxy localhost:8084
|
||||
|
||||
header /.well-known/matrix/* Content-Type application/json
|
||||
header /.well-known/matrix/* Access-Control-Allow-Origin *
|
||||
header /.well-known/matrix/* Access-Control-Allow-Methods GET,POST,PUT,DELETE,OPTIONS,PATCH,HEAD
|
||||
header /.well-known/matrix/* Access-Control-Allow-Headers X-Requested-With,Content-Type,Authorization,Origin,Accept
|
||||
route {
|
||||
respond /.well-known/matrix/server {"m.server":"chat.cything.io:443"}
|
||||
respond /.well-known/matrix/client {"m.server":{"base_url":"https://chat.cything.io"},"m.homeserver":{"base_url":"https://chat.cything.io"},"org.matrix.msc3575.proxy":{"url":"https://chat.cything.io"}}
|
||||
redir https://cy7.sh/posts{uri} permanent
|
||||
}
|
||||
respond /.well-known/matrix/server {"m.server":"chat.cything.io:443"}
|
||||
respond /.well-known/matrix/client {"m.server":{"base_url":"https://chat.cything.io"},"m.homeserver":{"base_url":"https://chat.cything.io"},"org.matrix.msc3575.proxy":{"url":"https://chat.cything.io"}}
|
||||
}
|
||||
|
||||
www.cything.io {
|
||||
|
|
|
@ -36,14 +36,6 @@
|
|||
"tailscale/auth" = {
|
||||
sopsFile = ../../secrets/services/tailscale.yaml;
|
||||
};
|
||||
"aws/key_id" = {
|
||||
sopsFile = ../../secrets/yt/aws.yaml;
|
||||
owner = "yt";
|
||||
};
|
||||
"aws/key_secret" = {
|
||||
sopsFile = ../../secrets/yt/aws.yaml;
|
||||
owner = "yt";
|
||||
};
|
||||
};
|
||||
|
||||
boot = {
|
||||
|
@ -53,8 +45,7 @@
|
|||
efi.canTouchEfiVariables = false; # toggle when installing
|
||||
};
|
||||
tmp.cleanOnBoot = true;
|
||||
# upgrade after https://github.com/tomaspinho/rtl8821ce/issues/356 is fixed
|
||||
kernelPackages = pkgs.linuxKernel.packages.linux_6_12;
|
||||
kernelPackages = pkgs.linuxKernel.packages.linux_zen;
|
||||
extraModulePackages = with config.boot.kernelPackages; [
|
||||
rtl8821ce
|
||||
];
|
||||
|
@ -175,9 +166,6 @@
|
|||
haskell-language-server
|
||||
ghc
|
||||
sbctl # secure boot
|
||||
wine-wayland
|
||||
wine64
|
||||
solaar
|
||||
];
|
||||
|
||||
environment.sessionVariables = {
|
||||
|
@ -191,12 +179,6 @@
|
|||
services.displayManager = {
|
||||
enable = true;
|
||||
autoLogin.user = "yt";
|
||||
defaultSession = "plasma";
|
||||
sddm = {
|
||||
enable = true;
|
||||
wayland.enable = true;
|
||||
autoNumlock = true;
|
||||
};
|
||||
};
|
||||
|
||||
fonts.packages = with pkgs; [
|
||||
|
@ -280,67 +262,18 @@
|
|||
services.tumbler.enable = true;
|
||||
|
||||
virtualisation = {
|
||||
libvirtd.enable = false;
|
||||
docker.enable = false;
|
||||
libvirtd.enable = true;
|
||||
docker.enable = true;
|
||||
};
|
||||
programs.virt-manager.enable = false;
|
||||
programs.virt-manager.enable = true;
|
||||
|
||||
services.usbmuxd.enable = true;
|
||||
programs.nix-ld.dev = {
|
||||
enable = true;
|
||||
# nix run github:thiagokokada/nix-alien#nix-alien-find-libs ./<binary>
|
||||
libraries = with pkgs; [
|
||||
mesa
|
||||
extest
|
||||
stdenv.cc.cc
|
||||
libGL
|
||||
fontconfig
|
||||
libxkbcommon
|
||||
zlib
|
||||
libxml2
|
||||
dbus
|
||||
freetype
|
||||
egl-wayland
|
||||
waylandpp
|
||||
cairo
|
||||
xcb-util-cursor
|
||||
libplist
|
||||
p11-kit
|
||||
kdePackages.qtwayland
|
||||
qt6.full
|
||||
qt6.qtwayland
|
||||
qt5.full
|
||||
qt5.qtwayland
|
||||
xorg.libX11
|
||||
xorg.libxcb
|
||||
xorg.xcbutilwm
|
||||
xorg.xcbutilimage
|
||||
xorg.xcbutilkeysyms
|
||||
xorg.xcbutilrenderutil
|
||||
xorg.libXScrnSaver
|
||||
xorg.libXcomposite
|
||||
xorg.libXcursor
|
||||
xorg.libXdamage
|
||||
xorg.libXext
|
||||
xorg.libXfixes
|
||||
xorg.libXi
|
||||
xorg.libXrandr
|
||||
xorg.libXrender
|
||||
xorg.libXtst
|
||||
xorg.libxkbfile
|
||||
xorg.libxshmfence
|
||||
];
|
||||
};
|
||||
programs.nix-ld.enable = true;
|
||||
programs.evolution.enable = true;
|
||||
|
||||
xdg.portal = {
|
||||
enable = true;
|
||||
wlr.enable = true;
|
||||
xdgOpenUsePortal = true;
|
||||
extraPortals = with pkgs; [
|
||||
xdg-desktop-portal-gtk
|
||||
xdg-desktop-portal-gnome
|
||||
];
|
||||
};
|
||||
|
||||
programs.obs-studio = {
|
||||
|
@ -358,7 +291,7 @@
|
|||
];
|
||||
};
|
||||
|
||||
services.ollama.enable = false;
|
||||
services.ollama.enable = true;
|
||||
|
||||
# wireguard setup
|
||||
networking.wg-quick.interfaces.wg0 = {
|
||||
|
@ -382,9 +315,9 @@
|
|||
];
|
||||
};
|
||||
|
||||
services.trezord.enable = false;
|
||||
services.trezord.enable = true;
|
||||
|
||||
programs.niri.enable = false;
|
||||
programs.niri.enable = true;
|
||||
programs.niri.package = pkgs.niri-unstable;
|
||||
programs.xwayland.enable = true;
|
||||
|
||||
|
@ -397,9 +330,4 @@
|
|||
startAgent = true;
|
||||
enableAskPassword = true;
|
||||
};
|
||||
|
||||
services.desktopManager.plasma6 = {
|
||||
enable = true;
|
||||
enableQt5Integration = true;
|
||||
};
|
||||
}
|
||||
|
|
9
justfile
9
justfile
|
@ -1,22 +1,17 @@
|
|||
update:
|
||||
git branch -D update || true
|
||||
git switch -c update
|
||||
nix flake update
|
||||
git add flake.lock
|
||||
git commit -s -m "flake update"
|
||||
git push -f
|
||||
git push
|
||||
git switch main
|
||||
|
||||
upgrade:
|
||||
git switch update
|
||||
sudo nixos-rebuild switch -L --flake . --use-substitutes
|
||||
nixos-rebuild switch -L --flake .#chunk --target-host root@2a0f:85c1:840:2bfb::1 --use-substitutes
|
||||
nixos-rebuild switch -L --flake .#titan --target-host root@www.cything.io --use-substitutes
|
||||
home-manager -L switch --flake .
|
||||
git switch main
|
||||
git merge update
|
||||
git branch -d update
|
||||
|
||||
switch:
|
||||
sudo nixos-rebuild switch -L --flake . --use-substitutes
|
||||
nixos-rebuild switch -L --flake .#chunk --target-host root@2a0f:85c1:840:2bfb::1 --use-substitutes
|
||||
home-manager -L switch --flake .
|
||||
|
|
|
@ -1,7 +1,6 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
|
@ -15,14 +14,6 @@ in
|
|||
config = lib.mkIf cfg.enable {
|
||||
services.caddy = {
|
||||
enable = true;
|
||||
package = pkgs.caddy.withPlugins {
|
||||
plugins = [
|
||||
# error message will tell you the correct version tag to use
|
||||
# (still need the @ to pass nix config check)
|
||||
"github.com/caddy-dns/cloudflare@v0.0.0-20240703190432-89f16b99c18e"
|
||||
];
|
||||
hash = "sha256-jCcSzenewQiW897GFHF9WAcVkGaS/oUu63crJu7AyyQ=";
|
||||
};
|
||||
logFormat = lib.mkForce "level INFO";
|
||||
acmeCA = "https://acme-v02.api.letsencrypt.org/directory";
|
||||
extraConfig = ''
|
||||
|
@ -31,10 +22,6 @@ in
|
|||
header Strict-Transport-Security "max-age=63072000; includeSubDomains; preload"
|
||||
}
|
||||
'';
|
||||
globalConfig = ''
|
||||
acme_dns cloudflare {$CLOUDFLARE_KEY}
|
||||
'';
|
||||
environmentFile = config.sops.secrets."caddy/env".path;
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
|
@ -3,6 +3,5 @@
|
|||
imports = [
|
||||
./backup.nix
|
||||
./caddy.nix
|
||||
./roundcube.nix
|
||||
];
|
||||
}
|
||||
|
|
|
@ -1,56 +0,0 @@
|
|||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
cfg = config.my.roundcube;
|
||||
fpm = config.services.phpfpm.pools.roundcube;
|
||||
roundcube = config.services.roundcube;
|
||||
in
|
||||
{
|
||||
options.my.roundcube = {
|
||||
enable = lib.mkEnableOption "roundcube webmail";
|
||||
};
|
||||
|
||||
config = lib.mkIf cfg.enable {
|
||||
services.roundcube = {
|
||||
enable = true;
|
||||
configureNginx = false;
|
||||
package = pkgs.roundcube.withPlugins (
|
||||
p: with p; [
|
||||
persistent_login
|
||||
contextmenu
|
||||
custom_from
|
||||
thunderbird_labels
|
||||
]
|
||||
);
|
||||
plugins = [
|
||||
"persistent_login"
|
||||
"contextmenu"
|
||||
"custom_from"
|
||||
"thunderbird_labels"
|
||||
];
|
||||
dicts = with pkgs.aspellDicts; [ en ];
|
||||
extraConfig = ''
|
||||
$config['imap_host'] = "ssl://imap.migadu.com:993";
|
||||
$config['smtp_host'] = "ssl://smtp.migadu.com:465";
|
||||
$config['smtp_user'] = "%u";
|
||||
$config['smtp_pass'] = "%p";
|
||||
'';
|
||||
};
|
||||
|
||||
services.phpfpm.pools.roundcube.settings = lib.mapAttrs (name: lib.mkForce) {
|
||||
"listen.owner" = "caddy";
|
||||
"listen.group" = "caddy";
|
||||
};
|
||||
|
||||
services.caddy.virtualHosts."mail.cy7.sh".extraConfig = ''
|
||||
import common
|
||||
root ${roundcube.package}
|
||||
php_fastcgi unix/${fpm.socket}
|
||||
file_server
|
||||
'';
|
||||
};
|
||||
}
|
|
@ -1,4 +1,3 @@
|
|||
{ inputs }:
|
||||
let
|
||||
overlays = [
|
||||
./conduwuit
|
||||
|
@ -7,19 +6,3 @@ let
|
|||
importedOverlays = map (m: import m) overlays;
|
||||
in
|
||||
importedOverlays
|
||||
++ [
|
||||
(
|
||||
final: prev:
|
||||
let
|
||||
pkgFrom = flake: pkg: flake.legacyPackages.${prev.system}.${pkg};
|
||||
stable = inputs.nixpkgs-stable;
|
||||
in
|
||||
{
|
||||
bitwarden-cli = pkgFrom stable "bitwarden-cli";
|
||||
roundcube = pkgFrom stable "roundcube";
|
||||
lldb = pkgFrom stable "lldb";
|
||||
calibre = pkgFrom stable "calibre";
|
||||
nil = inputs.nil.packages.${prev.system}.nil;
|
||||
}
|
||||
)
|
||||
]
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
final: prev: {
|
||||
vscode-extensions = prev.vscode-extensions // {
|
||||
github = prev.vscode-extensions.github // {
|
||||
codespaces = prev.vscode-utils.buildVscodeMarketplaceExtension {
|
||||
mktplcRef = {
|
||||
publisher = "github";
|
||||
name = "codespaces";
|
||||
version = "1.17.3";
|
||||
hash = "sha256-idJFYHJ4yeqpFZBX55Y0v1yfzgqyhS0MrC4yIto7i7w=";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,5 +1,5 @@
|
|||
caddy:
|
||||
env: ENC[AES256_GCM,data:XyxcCVT+rwlS7A3xzUgGqpMoLwhfUJo2++zPTgoPt3q6Edt14bYQJsoSJXnKx/lGg/0ilNfEEg8AEnru/Mzx0bWedSdWuZ380l8wlLiucqQThhEBhEJlyd94BMNzhxFdj82w0ejp4oWb5By/WjkFNesvAyxPIo/Ir4S+fTgGpA1iO2Ms8Pdjp00qeXYsK1CfjaXOYlEP+8BxntN2JKLYb8Cgs7dLmHfUwP6gTFKlTukUTtQZYUw336q3TtGy,iv:Ab/E0ljUBxzWlXfAC2BXCYxlgo0ErvKFaubgVjFR3OU=,tag:Yr24/DofYS2lM6f2/1LQ3Q==,type:str]
|
||||
env: ENC[AES256_GCM,data:uVCkVky5MRRhN+g4f634nBjvpcI5Ldy+eOKXg7eGu9foswTHA1SXDs67+Wuvo/jaPw7Zg67xKZRHnoTon1udQzyfu0T6pmVKfsUPewITYCd+qLTanFz6uVRUHzpUVwjCZNqB8gxNr/BiZ70NG4vQXRjgd3zKFrQYQBr4zSaP2vK1pRdbuQ==,iv:dQBfX4X8huUp2dqY3tEGW+BPZ/XADT10ptt85R7X+AY=,tag:cvMbFjkRHoxxnNfz8dGv5g==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
|
@ -33,8 +33,8 @@ sops:
|
|||
Q2hBZE1FOHJ3aW5rVmoyK045eG11cmsKFOmP5iWONREZvxu0rM+fKMPQKgnYq5LH
|
||||
AKMZFsP7nnUxjdCXEA18sDg4Rf0qp8i3uQK3D6P7417j9ye/YZA4BQ==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-01-30T17:26:39Z"
|
||||
mac: ENC[AES256_GCM,data:saoalvnwHsv0CTw/cRZqibnH9oGoZTNwGUT7RePKRa8OwNzbUEzQt+Z1WrmmWoqR+omQXLE+lpOPv6uNYxvAWnIelzCGeBBCMSBxtjlTUsjts7oFo7d9C5SdTIOkzotDxryvjRupb0P7hAmEqcSUKRZipJy5MVR7VXR1XZ4fIPM=,iv:VaP05zj8L2pygi1/M4BnOV3Inf0ssaWMu+aTBkdDMys=,tag:nuZT8GMB4F0T5dHnTvHOhA==,type:str]
|
||||
lastmodified: "2024-12-17T03:25:37Z"
|
||||
mac: ENC[AES256_GCM,data:bhFBLkT2q6HGtTPtHLVZkKZn00Lbm11/u3qSR19lU2E1SsQ7mpukvCqcTxNWtJ+HHth6yJJfgM6XABKq/9/598L2MgGuF3C/GGS3xpjwHh5RyV8t1lV8cqDaZGjGOMGx35lFQ6DoXOreQrtP/f7MKzf+nVNFr1NbTR8YhqR1xDU=,iv:+fjYlbyIyM9nLagrvE+PUhC2pT7QTsTSQX7ELZ7Wuhs=,tag:GWQv6VmIsWwFzb4bUr5CLg==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.4
|
||||
version: 3.9.2
|
||||
|
|
|
@ -1,32 +0,0 @@
|
|||
aws:
|
||||
key_id: ENC[AES256_GCM,data:vxa8IS5zVOStsQaQNoPy36MeCw2KD2Th5tg=,iv:TrPukr/bpkGysf1YigBlXwaCu0H1FM6ivCVQEgnst6A=,tag:yrlcsDkLkH7U2i3JgjDaBA==,type:str]
|
||||
key_secret: ENC[AES256_GCM,data:R9hFgtylEW1RphrP7/9Hi7HIb7gcQX1WDEVfnUTTzh+/0LM2Rb9CdkaleO8wNlcyYVE/jUKtqdqqrospAJ7+Zw==,iv:3+yCVqH441+oXFLI5usaQdhnE3GFhbJjMsYeRvk8xEw=,tag:STxA32cSdwPBikXyVEP5+Q==,type:str]
|
||||
sops:
|
||||
kms: []
|
||||
gcp_kms: []
|
||||
azure_kv: []
|
||||
hc_vault: []
|
||||
age:
|
||||
- recipient: age1sy0at69err83qyml2vqu8xvwjccfws447aaadfvacj2qluw3p45s2mtrw8
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBKaUZKbTVjZ1NEWlE5RzZT
|
||||
T1dKdkRQajEva0tpRXhxYUlYWmw1b3MwSFZvCmhteVJ2VGhVNnZTZkJlem1OT3dL
|
||||
dGlQTWdOUlo3TXNOS0wvNlpqVWpZSFEKLS0tIC9DNjY3OW1zWUlRQ1ZEOGlBRk9R
|
||||
azQxMGhQejQ5M0N1YjFtSW5uVnRCQ3MKtt26G2PxIry/lppOT/NUX8jebEb5NgqO
|
||||
HuHj7WT51Gtotfgb22VfGeOCaw9+pPYSjdk9WV4z57r7Z/lylALKRw==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
- recipient: age10h6pg5qdpc4t0rpmksfv788a57f04n83zgqaezkjjn65nkhv547s0vxfdn
|
||||
enc: |
|
||||
-----BEGIN AGE ENCRYPTED FILE-----
|
||||
YWdlLWVuY3J5cHRpb24ub3JnL3YxCi0+IFgyNTUxOSBPaVIwbExDUjJiVFpHOFJu
|
||||
dk1SUHc5UDRFUENsbkg2RmQvazdEZ1NKeEhvCjVCNzdwRFN0aUZJL0pVSTI1RUxv
|
||||
Ymhhc0tsSENVa1VUKzRBZk5IcjEvNFUKLS0tIFpPNlRXOVYyVnpyUmtLMTFqNlZ0
|
||||
UlYrTExEUVc0dURLR1czN3BnYzZ2VGMKCbAgM50jvs9VciA1Pb/VY+2I4x62LBGe
|
||||
j7eHkfTFc8Gnk/rZA9/ZJDLFr/FUPMQWK/NVoz6oLjO6oVFXqN6OqA==
|
||||
-----END AGE ENCRYPTED FILE-----
|
||||
lastmodified: "2025-01-30T17:45:09Z"
|
||||
mac: ENC[AES256_GCM,data:uXnJ8DCs1ZZ72PFAmSQpqvVH2UYvRX8AeUC00A6WsgNL9sz6H0b7PwXBn4SucHACwLwilMVKYpFGE1pPMsIgpHxU5coNhvTfth/ChY1KS73LAwrJUAyUoFI3mumPkklj7b/u1CbBfhuhA2QoZVl+d9BGQn5CQu3+BySUmcT+P9k=,iv:H/hUTBDNcsGBP5TA/7U1QMZogZvuoPuEAg/tBCpbf9w=,tag:W7rH84Na/tHPuJlA9tRXEQ==,type:str]
|
||||
pgp: []
|
||||
unencrypted_suffix: _unencrypted
|
||||
version: 3.9.4
|
Loading…
Add table
Reference in a new issue