my over complex system configurations
dotfiles.isabelroses.com/
nixos
nix
flake
dotfiles
linux
1{
2 perSystem = {
3 lib,
4 pkgs,
5 self',
6 config,
7 inputs',
8 ...
9 }: {
10 devShells.default = pkgs.mkShell {
11 name = "dotfiles";
12 meta.description = "Devlopment shell for this configuration";
13
14 shellHook = config.pre-commit.installationScript;
15
16 # tell direnv to shut up
17 DIRENV_LOG_FORMAT = "";
18
19 packages = with pkgs;
20 [
21 git # flakes require git
22 nil # nix language server
23 nodejs # needed ags
24 statix # lints and suggestions
25 deadnix # clean up unused nix code
26 self'.formatter # nix formatter
27 config.treefmt.build.wrapper # treewide formatter
28 inputs'.agenix.packages.agenix # secrets
29 inputs'.deploy-rs.packages.deploy-rs # remote deployment
30 ]
31 ++ lib.optionals stdenv.isDarwin [inputs'.darwin.packages.darwin-rebuild];
32
33 inputsFrom = [config.treefmt.build.devShell];
34 };
35 };
36}