Compare commits
18 Commits
a1118ba84f
...
89b6380859
| Author | SHA1 | Date | |
|---|---|---|---|
| 89b6380859 | |||
| 26401360d8 | |||
| f72a26d827 | |||
| 9fabb9143e | |||
| cc23884880 | |||
| 989ae8a432 | |||
| 9d38741068 | |||
| aebc51cc2e | |||
| b868f691d8 | |||
| 40077f3c6c | |||
| dd5c53a979 | |||
| dbf4ce2834 | |||
| c55e813b52 | |||
| 9934e12985 | |||
| d2cbb8dc81 | |||
| da7c4fe652 | |||
| ce3b8bf27a | |||
| cee4da2a1d |
328
flake.lock
generated
328
flake.lock
generated
@@ -1,5 +1,93 @@
|
|||||||
{
|
{
|
||||||
"nodes": {
|
"nodes": {
|
||||||
|
"autoaspm": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1759050207,
|
||||||
|
"narHash": "sha256-WnEKYqj0xs92DZscGVMmLytHOQlUWg3ZtZRdgCoTgQw=",
|
||||||
|
"owner": "notthebee",
|
||||||
|
"repo": "AutoASPM",
|
||||||
|
"rev": "0c73e0ed98e7bb3f6854bab9505e79a7f61654bd",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "notthebee",
|
||||||
|
"repo": "AutoASPM",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16": {
|
||||||
|
"inputs": {
|
||||||
|
"fromYaml": "fromYaml"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1755819240,
|
||||||
|
"narHash": "sha256-qcMhnL7aGAuFuutH4rq9fvAhCpJWVHLcHVZLtPctPlo=",
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "base16.nix",
|
||||||
|
"rev": "75ed5e5e3fce37df22e49125181fa37899c3ccd6",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "base16.nix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-fish": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1754405784,
|
||||||
|
"narHash": "sha256-l9xHIy+85FN+bEo6yquq2IjD1rSg9fjfjpyGP1W8YXo=",
|
||||||
|
"owner": "tomyun",
|
||||||
|
"repo": "base16-fish",
|
||||||
|
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tomyun",
|
||||||
|
"repo": "base16-fish",
|
||||||
|
"rev": "23ae20a0093dca0d7b39d76ba2401af0ccf9c561",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-helix": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1752979451,
|
||||||
|
"narHash": "sha256-0CQM+FkYy0fOO/sMGhOoNL80ftsAzYCg9VhIrodqusM=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-helix",
|
||||||
|
"rev": "27cf1e66e50abc622fb76a3019012dc07c678fac",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-helix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"base16-vim": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1732806396,
|
||||||
|
"narHash": "sha256-e0bpPySdJf0F68Ndanwm+KWHgQiZ0s7liLhvJSWDNsA=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-vim",
|
||||||
|
"rev": "577fe8125d74ff456cf942c733a85d769afe58b7",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"copyparty": {
|
"copyparty": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-utils": "flake-utils",
|
"flake-utils": "flake-utils",
|
||||||
@@ -19,6 +107,22 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"firefox-gnome-theme": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1758112371,
|
||||||
|
"narHash": "sha256-lizRM2pj6PHrR25yimjyFn04OS4wcdbc38DCdBVa2rk=",
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"rev": "0909cfe4a2af8d358ad13b20246a350e14c2473d",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "rafaelmardojai",
|
||||||
|
"repo": "firefox-gnome-theme",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-compat": {
|
"flake-compat": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
@@ -56,6 +160,27 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"flake-parts_2": {
|
||||||
|
"inputs": {
|
||||||
|
"nixpkgs-lib": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1756770412,
|
||||||
|
"narHash": "sha256-+uWLQZccFHwqpGqr2Yt5VsW/PbeJVTn9Dk6SHWhNRPw=",
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"rev": "4524271976b625a4a605beefd893f270620fd751",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "hercules-ci",
|
||||||
|
"repo": "flake-parts",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"flake-utils": {
|
"flake-utils": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1678901627,
|
"lastModified": 1678901627,
|
||||||
@@ -71,6 +196,39 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"fromYaml": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1731966426,
|
||||||
|
"narHash": "sha256-lq95WydhbUTWig/JpqiB7oViTcHFP8Lv41IGtayokA8=",
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "fromYaml",
|
||||||
|
"rev": "106af9e2f715e2d828df706c386a685698f3223b",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "SenchoPens",
|
||||||
|
"repo": "fromYaml",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gnome-shell": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1748186689,
|
||||||
|
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
|
||||||
|
"owner": "GNOME",
|
||||||
|
"repo": "gnome-shell",
|
||||||
|
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "GNOME",
|
||||||
|
"ref": "48.2",
|
||||||
|
"repo": "gnome-shell",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"home-manager": {
|
"home-manager": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
@@ -152,38 +310,66 @@
|
|||||||
"type": "indirect"
|
"type": "indirect"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"nur": {
|
||||||
|
"inputs": {
|
||||||
|
"flake-parts": [
|
||||||
|
"stylix",
|
||||||
|
"flake-parts"
|
||||||
|
],
|
||||||
|
"nixpkgs": [
|
||||||
|
"stylix",
|
||||||
|
"nixpkgs"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1758998580,
|
||||||
|
"narHash": "sha256-VLx0z396gDCGSiowLMFz5XRO/XuNV+4EnDYjdJhHvUk=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"rev": "ba8d9c98f5f4630bcb0e815ab456afd90c930728",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "NUR",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"nvf": {
|
"nvf": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
"flake-compat": "flake-compat",
|
"flake-compat": "flake-compat",
|
||||||
"flake-parts": "flake-parts",
|
"flake-parts": "flake-parts",
|
||||||
"mnw": "mnw",
|
"mnw": "mnw",
|
||||||
"nixpkgs": [
|
"nixpkgs": [
|
||||||
"nixpkgs-unstable"
|
"nixpkgs"
|
||||||
],
|
],
|
||||||
"systems": "systems"
|
"systems": "systems"
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1760153667,
|
"lastModified": 1760374571,
|
||||||
"narHash": "sha256-F7KmXT/Izse6Q6CkD5GCImoGPaDJxl03Kd7eD+eY/bU=",
|
"narHash": "sha256-M2lAawtTe+ASWhcHTiTxtI3ROic8bsNLNN3RvJ2ghew=",
|
||||||
"owner": "NotAShelf",
|
"owner": "notashelf",
|
||||||
"repo": "nvf",
|
"repo": "nvf",
|
||||||
"rev": "9df9d51fd9fc8f9a8fc377f984ea3b7ae796172d",
|
"rev": "3e48f13c3ce8372d00be2e27f313f2ed8da5bc82",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
"owner": "NotAShelf",
|
"owner": "notashelf",
|
||||||
|
"ref": "v0.8",
|
||||||
"repo": "nvf",
|
"repo": "nvf",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"root": {
|
"root": {
|
||||||
"inputs": {
|
"inputs": {
|
||||||
|
"autoaspm": "autoaspm",
|
||||||
"copyparty": "copyparty",
|
"copyparty": "copyparty",
|
||||||
"home-manager": "home-manager",
|
"home-manager": "home-manager",
|
||||||
"nixpkgs": "nixpkgs_2",
|
"nixpkgs": "nixpkgs_2",
|
||||||
"nixpkgs-unstable": "nixpkgs-unstable",
|
"nixpkgs-unstable": "nixpkgs-unstable",
|
||||||
"nvf": "nvf",
|
"nvf": "nvf",
|
||||||
"sops-nix": "sops-nix",
|
"sops-nix": "sops-nix",
|
||||||
|
"stylix": "stylix",
|
||||||
"vpn-confinement": "vpn-confinement"
|
"vpn-confinement": "vpn-confinement"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -207,6 +393,40 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"stylix": {
|
||||||
|
"inputs": {
|
||||||
|
"base16": "base16",
|
||||||
|
"base16-fish": "base16-fish",
|
||||||
|
"base16-helix": "base16-helix",
|
||||||
|
"base16-vim": "base16-vim",
|
||||||
|
"firefox-gnome-theme": "firefox-gnome-theme",
|
||||||
|
"flake-parts": "flake-parts_2",
|
||||||
|
"gnome-shell": "gnome-shell",
|
||||||
|
"nixpkgs": [
|
||||||
|
"nixpkgs"
|
||||||
|
],
|
||||||
|
"nur": "nur",
|
||||||
|
"systems": "systems_2",
|
||||||
|
"tinted-foot": "tinted-foot",
|
||||||
|
"tinted-kitty": "tinted-kitty",
|
||||||
|
"tinted-schemes": "tinted-schemes",
|
||||||
|
"tinted-tmux": "tinted-tmux",
|
||||||
|
"tinted-zed": "tinted-zed"
|
||||||
|
},
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1760472212,
|
||||||
|
"narHash": "sha256-4C3I/ssFsq8EgaUmZP0xv5V7RV0oCHgL/Rx+MUkuE+E=",
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "stylix",
|
||||||
|
"rev": "8d008296a1b3be9b57ad570f7acea00dd2fc92db",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-community",
|
||||||
|
"repo": "stylix",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"systems": {
|
"systems": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1681028828,
|
"lastModified": 1681028828,
|
||||||
@@ -222,6 +442,102 @@
|
|||||||
"type": "github"
|
"type": "github"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"systems_2": {
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1681028828,
|
||||||
|
"narHash": "sha256-Vy1rq5AaRuLzOxct8nz4T6wlgyUR7zLU309k9mBC768=",
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"rev": "da67096a3b9bf56a91d16901293e51ba5b49a27e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "nix-systems",
|
||||||
|
"repo": "default",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-foot": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1726913040,
|
||||||
|
"narHash": "sha256-+eDZPkw7efMNUf3/Pv0EmsidqdwNJ1TaOum6k7lngDQ=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-foot",
|
||||||
|
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-foot",
|
||||||
|
"rev": "fd1b924b6c45c3e4465e8a849e67ea82933fcbe4",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-kitty": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1735730497,
|
||||||
|
"narHash": "sha256-4KtB+FiUzIeK/4aHCKce3V9HwRvYaxX+F1edUrfgzb8=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-kitty",
|
||||||
|
"rev": "de6f888497f2c6b2279361bfc790f164bfd0f3fa",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-kitty",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-schemes": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1757716333,
|
||||||
|
"narHash": "sha256-d4km8W7w2zCUEmPAPUoLk1NlYrGODuVa3P7St+UrqkM=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"rev": "317a5e10c35825a6c905d912e480dfe8e71c7559",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "schemes",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-tmux": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1757811970,
|
||||||
|
"narHash": "sha256-n5ZJgmzGZXOD9pZdAl1OnBu3PIqD+X3vEBUGbTi4JiI=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-tmux",
|
||||||
|
"rev": "d217ba31c846006e9e0ae70775b0ee0f00aa6b1e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "tinted-tmux",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"tinted-zed": {
|
||||||
|
"flake": false,
|
||||||
|
"locked": {
|
||||||
|
"lastModified": 1757811247,
|
||||||
|
"narHash": "sha256-4EFOUyLj85NRL3OacHoLGEo0wjiRJzfsXtR4CZWAn6w=",
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"rev": "824fe0aacf82b3c26690d14e8d2cedd56e18404e",
|
||||||
|
"type": "github"
|
||||||
|
},
|
||||||
|
"original": {
|
||||||
|
"owner": "tinted-theming",
|
||||||
|
"repo": "base16-zed",
|
||||||
|
"type": "github"
|
||||||
|
}
|
||||||
|
},
|
||||||
"vpn-confinement": {
|
"vpn-confinement": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1759956062,
|
"lastModified": 1759956062,
|
||||||
|
|||||||
15
flake.nix
15
flake.nix
@@ -18,8 +18,16 @@
|
|||||||
url = "github:Maroka-chan/VPN-Confinement";
|
url = "github:Maroka-chan/VPN-Confinement";
|
||||||
};
|
};
|
||||||
nvf = {
|
nvf = {
|
||||||
url = "github:NotAShelf/nvf";
|
url = "github:notashelf/nvf/v0.8";
|
||||||
inputs.nixpkgs.follows = "nixpkgs-unstable";
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
autoaspm = {
|
||||||
|
url = "github:notthebee/AutoASPM";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
|
};
|
||||||
|
stylix = {
|
||||||
|
url = "github:nix-community/stylix";
|
||||||
|
inputs.nixpkgs.follows = "nixpkgs";
|
||||||
};
|
};
|
||||||
copyparty.url = "github:9001/copyparty";
|
copyparty.url = "github:9001/copyparty";
|
||||||
};
|
};
|
||||||
@@ -40,8 +48,7 @@
|
|||||||
specialArgs = { inherit inputs stable_pkgs unstable_pkgs; };
|
specialArgs = { inherit inputs stable_pkgs unstable_pkgs; };
|
||||||
modules = [
|
modules = [
|
||||||
./hosts/snowbelle/configuration.nix
|
./hosts/snowbelle/configuration.nix
|
||||||
inputs.home-manager.nixosModules.default
|
inputs.home-manager.nixosModules.default
|
||||||
inputs.vpn-confinement.nixosModules.default
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
vaniville = nixpkgs.lib.nixosSystem {
|
vaniville = nixpkgs.lib.nixosSystem {
|
||||||
|
|||||||
@@ -5,19 +5,27 @@
|
|||||||
inputs,
|
inputs,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
|
|
||||||
|
imports = [
|
||||||
|
inputs.autoaspm.nixosModules.default
|
||||||
|
];
|
||||||
|
|
||||||
# base system package install list
|
# base system package install list
|
||||||
environment.systemPackages = with pkgs; [
|
environment.systemPackages = with pkgs; [
|
||||||
wget
|
wget
|
||||||
curl
|
curl
|
||||||
rsync
|
rsync
|
||||||
git
|
git
|
||||||
vim
|
|
||||||
lf
|
|
||||||
age
|
age
|
||||||
fzf
|
fzf
|
||||||
btop
|
|
||||||
neofetch
|
neofetch
|
||||||
usbutils
|
usbutils
|
||||||
|
pciutils
|
||||||
|
python3
|
||||||
|
vim
|
||||||
|
lf
|
||||||
|
btop
|
||||||
|
powertop
|
||||||
];
|
];
|
||||||
|
|
||||||
# set timezone
|
# set timezone
|
||||||
@@ -26,8 +34,13 @@
|
|||||||
# allow proprietary packages
|
# allow proprietary packages
|
||||||
nixpkgs.config.allowUnfree = true;
|
nixpkgs.config.allowUnfree = true;
|
||||||
|
|
||||||
|
# power management
|
||||||
|
services.autoaspm.enable = true;
|
||||||
|
powerManagement.powertop.enable = true;
|
||||||
|
|
||||||
# enable flakes
|
# enable flakes
|
||||||
nix.settings.experimental-features = ["nix-command" "flakes"];
|
nix.settings.experimental-features = ["nix-command" "flakes"];
|
||||||
|
users.defaultUserShell = pkgs.zsh;
|
||||||
|
|
||||||
# passwordless rebuild
|
# passwordless rebuild
|
||||||
security.sudo.extraRules = [
|
security.sudo.extraRules = [
|
||||||
|
|||||||
@@ -19,7 +19,7 @@ in
|
|||||||
system = {
|
system = {
|
||||||
ssh.enable = true;
|
ssh.enable = true;
|
||||||
backups.enable = true;
|
backups.enable = true;
|
||||||
backups.repo = "/holocron/archive/devices/snowbelle";
|
backups.repo = "/holocron/archives/servers/snowbelle";
|
||||||
sops.enable = true;
|
sops.enable = true;
|
||||||
podman.enable = true;
|
podman.enable = true;
|
||||||
syncthing.enable = true;
|
syncthing.enable = true;
|
||||||
|
|||||||
@@ -13,18 +13,24 @@ let
|
|||||||
browseable = true;
|
browseable = true;
|
||||||
writable = true;
|
writable = true;
|
||||||
guestOk = false;
|
guestOk = false;
|
||||||
|
"create mask" = "0775";
|
||||||
|
"directory mask" = "0775";
|
||||||
};
|
};
|
||||||
users = {
|
users = {
|
||||||
path = "/holocron/users";
|
path = "/holocron/users";
|
||||||
browseable = true;
|
browseable = true;
|
||||||
writable = true;
|
writable = true;
|
||||||
guestOk = false;
|
guestOk = false;
|
||||||
|
"create mask" = "0660";
|
||||||
|
"directory mask" = "0770";
|
||||||
};
|
};
|
||||||
media = {
|
media = {
|
||||||
path = "/holocron/media";
|
path = "/holocron/media";
|
||||||
browseable = true;
|
browseable = true;
|
||||||
writable = true;
|
writable = true;
|
||||||
guestOk = false;
|
guestOk = false;
|
||||||
|
"create mask" = "0775";
|
||||||
|
"directory mask" = "0775";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
|
|||||||
@@ -27,6 +27,9 @@ in {
|
|||||||
autoScrub.interval = "weekly";
|
autoScrub.interval = "weekly";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
# install userspace tools for acl's
|
||||||
|
environment.systemPackages = with pkgs; [ nfs-utils ];
|
||||||
|
|
||||||
fileSystems."/holocron" = {
|
fileSystems."/holocron" = {
|
||||||
device = "holocron";
|
device = "holocron";
|
||||||
fsType = "zfs";
|
fsType = "zfs";
|
||||||
|
|||||||
@@ -186,20 +186,35 @@ in
|
|||||||
new-tab = true;
|
new-tab = true;
|
||||||
bangs = [
|
bangs = [
|
||||||
{
|
{
|
||||||
title = "YouTube";
|
title = "youtube";
|
||||||
shortcut = "!y";
|
shortcut = "!y";
|
||||||
url = "https://www.youtube.com/results?search_query={QUERY}";
|
url = "https://www.youtube.com/results?search_query={QUERY}";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
title = "Google";
|
title = "google";
|
||||||
shortcut = "!g";
|
shortcut = "!g";
|
||||||
url = "https://www.google.com/search?q={QUERY}";
|
url = "https://www.google.com/search?q={QUERY}";
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
title = "Github";
|
title = "github";
|
||||||
shortcut = "!gh";
|
shortcut = "!gh";
|
||||||
url = "https://github.com/search?q={QUERY}&type=repositories";
|
url = "https://github.com/search?q={QUERY}&type=repositories";
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
title = "nixos options";
|
||||||
|
shortcut = "!no";
|
||||||
|
url = "https://search.nixos.org/options?channel=25.05&query={QUERY}";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
title = "nixos packages";
|
||||||
|
shortcut = "!np";
|
||||||
|
url = "https://search.nixos.org/packages?channel=25.05&query={QUERY}";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
title = "home-manager options";
|
||||||
|
shortcut = "!hm";
|
||||||
|
url = "https://home-manager-options.extranix.com/?query={QUERY}&release=release-25.05";
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -38,6 +38,7 @@ in {
|
|||||||
up_hours=$((uptime/60/60%24))
|
up_hours=$((uptime/60/60%24))
|
||||||
up_mins=$((uptime/60%60))
|
up_mins=$((uptime/60%60))
|
||||||
up_secs=$((uptime%60))
|
up_secs=$((uptime%60))
|
||||||
|
nixos_version=$(nixos-version | sed -E 's/^([0-9]{2}\.[0-9]{2}).*\(([^)]+)\)$/\1 (\2)/')
|
||||||
cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print 100 - $8 "%"}')
|
cpu_usage=$(top -bn1 | grep "Cpu(s)" | awk '{print 100 - $8 "%"}')
|
||||||
mem_total=$(grep MemTotal /proc/meminfo | awk '{print $2}')
|
mem_total=$(grep MemTotal /proc/meminfo | awk '{print $2}')
|
||||||
mem_avail=$(grep MemAvailable /proc/meminfo | awk '{print $2}')
|
mem_avail=$(grep MemAvailable /proc/meminfo | awk '{print $2}')
|
||||||
@@ -63,12 +64,12 @@ in {
|
|||||||
if systemctl list-units --type=service --all | grep -q "${service}"; then
|
if systemctl list-units --type=service --all | grep -q "${service}"; then
|
||||||
status=$(systemctl is-active ${service} 2>/dev/null)
|
status=$(systemctl is-active ${service} 2>/dev/null)
|
||||||
if [ "$status" = "active" ]; then
|
if [ "$status" = "active" ]; then
|
||||||
printf "%-26s%s\n" "''${active}${service}''${reset}" "running"
|
printf "%-32s%s\n" " ''${active}[${service}]''${reset}" "running"
|
||||||
else
|
else
|
||||||
printf "%-26s%s\n" "''${active}${service}''${reset}" "not running"
|
printf "%-32s%s\n" " ''${active}[${service}]''${reset}" "not running"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
printf "%-26s%s\n" "''${active}${service}''${reset}" "not found"
|
printf "%-32s%s\n" " ''${active}[${service}]''${reset}" "not found"
|
||||||
fi
|
fi
|
||||||
'')
|
'')
|
||||||
motd_list)}
|
motd_list)}
|
||||||
@@ -80,9 +81,9 @@ in {
|
|||||||
for service in velocity smp superflat bento; do
|
for service in velocity smp superflat bento; do
|
||||||
status=$(systemctl is-active $service 2>/dev/null)
|
status=$(systemctl is-active $service 2>/dev/null)
|
||||||
if [ "$status" = "active" ]; then
|
if [ "$status" = "active" ]; then
|
||||||
printf "%-26s%s\n" "''${active}$service''${reset}" "running"
|
printf "%-32s%s\n" " ''${active}[$service]''${reset}" "running"
|
||||||
else
|
else
|
||||||
printf "%-26s%s\n" "''${active}$service''${reset}" "not running"
|
printf "%-32s%s\n" " ''${active}[$service]''${reset}" "not running"
|
||||||
fi
|
fi
|
||||||
done
|
done
|
||||||
echo
|
echo
|
||||||
@@ -90,8 +91,16 @@ in {
|
|||||||
|
|
||||||
environment.etc."motd".mode = "0755";
|
environment.etc."motd".mode = "0755";
|
||||||
|
|
||||||
programs.bash.interactiveShellInit = ''
|
programs.zsh.interactiveShellInit = ''
|
||||||
/etc/motd
|
/etc/motd
|
||||||
'';
|
'';
|
||||||
|
|
||||||
|
#environment.loginShellInit = ''
|
||||||
|
# if [ -x /etc/motd ]; then
|
||||||
|
# /etc/motd
|
||||||
|
# else
|
||||||
|
# cat /etc/motd
|
||||||
|
# fi
|
||||||
|
#'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,9 +1,14 @@
|
|||||||
{ pkgs, config, lib, ... }:
|
|
||||||
|
|
||||||
let
|
|
||||||
cfg = config.system.vpn-confinement;
|
|
||||||
in
|
|
||||||
{
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}: let
|
||||||
|
cfg = config.system.vpn-confinement;
|
||||||
|
in {
|
||||||
|
imports = [inputs.vpn-confinement.nixosModules.default];
|
||||||
|
|
||||||
options.system.vpn-confinement = {
|
options.system.vpn-confinement = {
|
||||||
enable = lib.mkEnableOption "enables vpn-confinement";
|
enable = lib.mkEnableOption "enables vpn-confinement";
|
||||||
|
|
||||||
@@ -16,7 +21,6 @@ in
|
|||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
|
|
||||||
# Define VPN network namespace
|
# Define VPN network namespace
|
||||||
vpnNamespaces.wgmex = {
|
vpnNamespaces.wgmex = {
|
||||||
enable = true;
|
enable = true;
|
||||||
@@ -25,17 +29,25 @@ in
|
|||||||
"10.0.0.0/8"
|
"10.0.0.0/8"
|
||||||
];
|
];
|
||||||
portMappings = [
|
portMappings = [
|
||||||
{ from = 7103; to = 7103; }
|
{
|
||||||
|
from = 7103;
|
||||||
|
to = 7103;
|
||||||
|
}
|
||||||
|
];
|
||||||
|
openVPNPorts = [
|
||||||
|
{
|
||||||
|
port = 51820;
|
||||||
|
protocol = "both";
|
||||||
|
}
|
||||||
];
|
];
|
||||||
openVPNPorts = [{
|
|
||||||
port = 51820;
|
|
||||||
protocol = "both";
|
|
||||||
}];
|
|
||||||
};
|
};
|
||||||
|
|
||||||
# secrets only if VPN is enabled
|
# secrets only if VPN is enabled
|
||||||
sops.secrets = {
|
sops.secrets = {
|
||||||
"vpncon_mex_config" = { owner = "root"; group = "root"; };
|
"vpncon_mex_config" = {
|
||||||
|
owner = "root";
|
||||||
|
group = "root";
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -21,7 +21,7 @@
|
|||||||
];
|
];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
groups.blake = { gid = 1000; };
|
groups.blake = {gid = 1000;};
|
||||||
};
|
};
|
||||||
|
|
||||||
# define home-manager user
|
# define home-manager user
|
||||||
@@ -37,5 +37,4 @@
|
|||||||
|
|
||||||
nix.settings.trusted-users = ["blake"];
|
nix.settings.trusted-users = ["blake"];
|
||||||
programs.zsh.enable = true;
|
programs.zsh.enable = true;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
8
users/blake/dots/.default.nix
Normal file
8
users/blake/dots/.default.nix
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
28
users/blake/dots/ssh/default.nix
Normal file
28
users/blake/dots/ssh/default.nix
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
programs.ssh = {
|
||||||
|
enable = true;
|
||||||
|
matchBlocks = {
|
||||||
|
"git.blakedheld.xyz" = {
|
||||||
|
user = "gitea";
|
||||||
|
identityFile = "~/.ssh/id_snowbelle";
|
||||||
|
};
|
||||||
|
"git.snowbelle.lan" = {
|
||||||
|
user = "gitea";
|
||||||
|
identityFile = "~/.ssh/id_snowbelle";
|
||||||
|
};
|
||||||
|
"bebe" = {
|
||||||
|
hostname = "10.10.0.1";
|
||||||
|
user = "root";
|
||||||
|
identityFile = "~/.ssh/id_snowbelle";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# import sshkeys from keyring
|
||||||
|
home.file.".ssh/id_snowbelle".source = config.lib.file.mkOutOfStoreSymlink /home/blake/.nix/.keyring/ssh/id_snowbelle;
|
||||||
|
home.file.".ssh/id_snowbelle.pub".source = config.lib.file.mkOutOfStoreSymlink /home/blake/.nix/.keyring/ssh/id_snowbelle.pub;
|
||||||
|
}
|
||||||
11
users/blake/dots/stylix/default.nix
Normal file
11
users/blake/dots/stylix/default.nix
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
lib,
|
||||||
|
inputs,
|
||||||
|
...
|
||||||
|
}:
|
||||||
|
{
|
||||||
|
imports = [inputs.stylix.homeManagerModules.default];
|
||||||
|
|
||||||
|
}
|
||||||
35
users/blake/dots/xdg/default.nix
Normal file
35
users/blake/dots/xdg/default.nix
Normal file
@@ -0,0 +1,35 @@
|
|||||||
|
{
|
||||||
|
pkgs,
|
||||||
|
config,
|
||||||
|
...
|
||||||
|
}: {
|
||||||
|
home.packages = with pkgs; [xdg-ninja];
|
||||||
|
|
||||||
|
xdg = {
|
||||||
|
enable = true;
|
||||||
|
configHome = "${config.home.homeDirectory}/.config";
|
||||||
|
cacheHome = "${config.home.homeDirectory}/.cache";
|
||||||
|
dataHome = "${config.home.homeDirectory}/.local/share";
|
||||||
|
stateHome = "${config.home.homeDirectory}/.local/state";
|
||||||
|
|
||||||
|
userDirs = {
|
||||||
|
enable = true;
|
||||||
|
# writes ~/.config/user-dirs.dirs
|
||||||
|
desktop = "${config.home.homeDirectory}/desktop";
|
||||||
|
download = "${config.home.homeDirectory}/downloads";
|
||||||
|
documents = "${config.home.homeDirectory}/documents";
|
||||||
|
pictures = "${config.home.homeDirectory}/pictures";
|
||||||
|
videos = "${config.home.homeDirectory}/videos";
|
||||||
|
music = "${config.home.homeDirectory}/music";
|
||||||
|
publicShare = "${config.home.homeDirectory}/public";
|
||||||
|
templates = "${config.home.homeDirectory}/templates";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
# misc env variables to get things out of ~ (<3 xdg-ninja)
|
||||||
|
home.sessionVariables = {
|
||||||
|
GOPATH="$XDG_DATA_HOME/go";
|
||||||
|
_JAVA_OPTIONS="-Djava.util.prefs.userRoot=""$XDG_CONFIG_HOME""/java";
|
||||||
|
};
|
||||||
|
|
||||||
|
}
|
||||||
@@ -3,19 +3,140 @@
|
|||||||
config,
|
config,
|
||||||
...
|
...
|
||||||
}: {
|
}: {
|
||||||
# just using the normal lfrc
|
# export some defaults
|
||||||
programs.lf = {
|
home.sessionVariables = {
|
||||||
enable = false;
|
EDITOR = "nvim";
|
||||||
|
PAGER = "less";
|
||||||
};
|
};
|
||||||
|
|
||||||
# install it to userspace
|
programs.zsh = {
|
||||||
home.packages = with pkgs; [lf ctpv trashy];
|
enable = true;
|
||||||
|
dotDir = ".config/zsh";
|
||||||
|
autocd = true;
|
||||||
|
|
||||||
# link configs
|
enableCompletion = true;
|
||||||
xdg.configFile."lf/lfrc" = {
|
autosuggestion = {
|
||||||
source = config.lib.file.mkOutOfStoreSymlink "/home/blake/.nix/users/blake/dots/lf/lfrc";
|
enable = true;
|
||||||
};
|
highlight = "fg=#ff00ff,bg=cyan,bold,underline";
|
||||||
xdg.configFile."ctpv/config" = {
|
};
|
||||||
source = config.lib.file.mkOutOfStoreSymlink "/home/blake/.nix/users/blake/dots/lf/ctpv_config";
|
|
||||||
|
syntaxHighlighting = {
|
||||||
|
enable = true;
|
||||||
|
highlighters = ["main" "brackets" "pattern" "regexp" "cursor" "root"];
|
||||||
|
styles = {
|
||||||
|
"default" = "none";
|
||||||
|
"unknown-token" = "fg=yellow,bold";
|
||||||
|
"reserved-word" = "fg=blue,bold";
|
||||||
|
"alias" = "fg=magenta";
|
||||||
|
"suffix-alias" = "fg=magenta";
|
||||||
|
"builtin" = "fg=cyan";
|
||||||
|
"function" = "fg=cyan";
|
||||||
|
"command" = "fg=white,bold";
|
||||||
|
"precommand" = "fg=cyan,underline";
|
||||||
|
"commandseparator" = "fg=white";
|
||||||
|
"hashed-command" = "fg=blue";
|
||||||
|
"path" = "fg=white,underline";
|
||||||
|
"globbing" = "fg=magenta";
|
||||||
|
"history-expansion" = "fg=yellow";
|
||||||
|
"single-hyphen-option" = "fg=blue";
|
||||||
|
"double-hyphen-option" = "fg=blue";
|
||||||
|
"back-quoted-argument" = "fg=yellow";
|
||||||
|
"single-quoted-argument" = "fg=white";
|
||||||
|
"double-quoted-argument" = "fg=white";
|
||||||
|
"dollar-double-quoted-argument" = "fg=cyan";
|
||||||
|
"back-double-quoted-argument" = "fg=cyan";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
history = {
|
||||||
|
size = 10000;
|
||||||
|
save = 10000;
|
||||||
|
share = true;
|
||||||
|
append = true;
|
||||||
|
extended = true;
|
||||||
|
path = "$XDG_STATE_HOME/zsh/history";
|
||||||
|
};
|
||||||
|
|
||||||
|
shellAilses = {
|
||||||
|
# --- zsh ---
|
||||||
|
cfz = "nvim $HOME/.config/zsh/.zshrc";
|
||||||
|
src = "source $HOME/.config/zsh/.zshrc";
|
||||||
|
|
||||||
|
# --- config editing ---
|
||||||
|
cfh = "nvim $HOME/.config/hypr/hyprland.conf";
|
||||||
|
cfl = "nvim $HOME/.config/lf/lfrc";
|
||||||
|
|
||||||
|
# --- navigation ---
|
||||||
|
ls = "ls --color=auto --group-directories-first";
|
||||||
|
ll = "ls -lh --color=auto --group-directories-first";
|
||||||
|
la = "ls -Alh --color=auto --group-directories-first";
|
||||||
|
".." = "cd ..";
|
||||||
|
"..." = "cd ../..";
|
||||||
|
fs = "du -h | sort -h";
|
||||||
|
ds = "du -hs";
|
||||||
|
|
||||||
|
# --- shortcuts ---
|
||||||
|
vswap = "cd ~/.local/state/nvim/swap";
|
||||||
|
rswap = "rm ~/.local/state/nvim/swap/*";
|
||||||
|
v = "nvim";
|
||||||
|
sv = "sudo nvim";
|
||||||
|
vim = "nvim";
|
||||||
|
|
||||||
|
# --- safety ---
|
||||||
|
cp = "cp -iv";
|
||||||
|
mv = "mv -iv";
|
||||||
|
rm = "rm -Iv";
|
||||||
|
|
||||||
|
# --- colors ---
|
||||||
|
grep = "grep --color=auto";
|
||||||
|
fgrep = "fgrep --color=auto";
|
||||||
|
egrep = "egrep --color=auto";
|
||||||
|
|
||||||
|
# --- scripts ---
|
||||||
|
rebuild = "sh ~/.nix/bin/rebuild.sh";
|
||||||
|
perms = "sudo sh ~/.nix/bin/perms.sh";
|
||||||
|
bb = "sudo sh ~/.nix/bin/backup_browse.sh";
|
||||||
|
|
||||||
|
# --- git ---
|
||||||
|
status = "git status";
|
||||||
|
add = "git add";
|
||||||
|
commit = "git commit -am";
|
||||||
|
push = "git push";
|
||||||
|
pull = "git pull";
|
||||||
|
dotfiles = "/usr/bin/git --git-dir=$HOME/.dotfiles --work-tree=$HOME";
|
||||||
|
dtf = "/usr/bin/git --git-dir=$HOME/.dotfiles --work-tree=$HOME";
|
||||||
|
|
||||||
|
# --- systemd ---
|
||||||
|
stat = "sudo systemctl status";
|
||||||
|
restart = "sudo systemctl restart";
|
||||||
|
start = "sudo systemctl start";
|
||||||
|
stop = "sudo systemctl stop";
|
||||||
|
jou = "sudo journalctl -xeu";
|
||||||
|
live = "sudo journalctl -o short-iso -n 50 -fu";
|
||||||
|
|
||||||
|
# --- system ---
|
||||||
|
peace = "systemctl poweroff";
|
||||||
|
love = "systemctl reboot";
|
||||||
|
lock = "loginctl lock-session";
|
||||||
|
};
|
||||||
|
|
||||||
|
initContent = ''
|
||||||
|
|
||||||
|
# the prompt
|
||||||
|
PS1='%F{0}%K{126}%B[%n@%m]%b%k%f:%F{015}%B[%~]%b%f%F{015}%S$%s%f '
|
||||||
|
|
||||||
|
# lf changes working dir on exit
|
||||||
|
alias lf='lfcd'
|
||||||
|
lfcd () {cd "$(command lf -print-last-dir "$@")"}
|
||||||
|
|
||||||
|
'';
|
||||||
|
|
||||||
|
# zplug = {
|
||||||
|
# enable = true;
|
||||||
|
# zplugHome = "$XDG_STATE_HOME/zsh/zplug";
|
||||||
|
# plugins = [
|
||||||
|
# {name = "zsh-users/zsh-syntax-highlighting";}
|
||||||
|
# ];
|
||||||
|
# };
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,7 +8,10 @@
|
|||||||
imports = [
|
imports = [
|
||||||
./dots/neovim
|
./dots/neovim
|
||||||
./dots/lf
|
./dots/lf
|
||||||
|
./dots/zsh
|
||||||
|
./dots/ssh
|
||||||
./dots/git
|
./dots/git
|
||||||
|
./dots/xdg
|
||||||
];
|
];
|
||||||
|
|
||||||
# general config
|
# general config
|
||||||
@@ -27,59 +30,41 @@
|
|||||||
];
|
];
|
||||||
|
|
||||||
# setup zsh
|
# setup zsh
|
||||||
home.sessionVariables.ZDOTDIR = "$HOME/.config/zsh";
|
#home.sessionVariables.ZDOTDIR = "$HOME/.config/zsh";
|
||||||
programs.zsh = {
|
#programs.zsh = {
|
||||||
enable = true;
|
# enable = true;
|
||||||
# dotDir = ".config/zsh";
|
# # dotDir = ".config/zsh";
|
||||||
};
|
#};
|
||||||
# link dotfiles
|
## link dotfiles
|
||||||
xdg.configFile."zsh" = {
|
#xdg.configFile."zsh" = {
|
||||||
source = config.lib.file.mkOutOfStoreSymlink "/home/blake/.nix/users/blake/dotfiles/zsh";
|
# source = config.lib.file.mkOutOfStoreSymlink "/home/blake/.nix/users/blake/dotfiles/zsh";
|
||||||
recursive = true;
|
# recursive = true;
|
||||||
};
|
#};
|
||||||
|
|
||||||
programs.gpg = {
|
programs.gpg = {
|
||||||
enable = true;
|
enable = true;
|
||||||
};
|
};
|
||||||
services.gpg-agent = {
|
services.gpg-agent = {
|
||||||
enable = true;
|
enable = true;
|
||||||
|
enableSshSupport = true;
|
||||||
|
#pinentry.package = pkgs.pinentry-qt;
|
||||||
|
#pinentry.program = "pinentry-qt";
|
||||||
};
|
};
|
||||||
|
#home.packages with pkgs; = [pinentry-qt pinentry_mac];
|
||||||
|
|
||||||
programs.ssh = {
|
# # manage secrets with sops
|
||||||
enable = true;
|
# sops.secrets = {
|
||||||
matchBlocks = {
|
# "id_snowbelle" = {
|
||||||
"git.blakedheld.xyz" = {
|
# owner = "blake";
|
||||||
user = "gitea";
|
# group = "blake";
|
||||||
identityFile = "~/.ssh/id_snowbelle";
|
# mode = "0600";
|
||||||
};
|
# path = "/home/blake/.ssh/id_snowbelle";
|
||||||
"git.snowbelle.lan" = {
|
|
||||||
user = "gitea";
|
|
||||||
identityFile = "~/.ssh/id_snowbelle";
|
|
||||||
};
|
|
||||||
"dockers" = {
|
|
||||||
hostname = "10.10.0.30";
|
|
||||||
user = "blake";
|
|
||||||
identityFile = "~/.ssh/id_snowbelle";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
};
|
|
||||||
# import sshkeys from keyring
|
|
||||||
home.file.".ssh/id_snowbelle".source = config.lib.file.mkOutOfStoreSymlink /home/blake/.nix/.keyring/ssh/id_snowbelle;
|
|
||||||
home.file.".ssh/id_snowbelle.pub".source = config.lib.file.mkOutOfStoreSymlink /home/blake/.nix/.keyring/ssh/id_snowbelle.pub;
|
|
||||||
|
|
||||||
# # manage secrets with sops
|
|
||||||
# sops.secrets = {
|
|
||||||
# "id_snowbelle" = {
|
|
||||||
# owner = "blake";
|
|
||||||
# group = "blake";
|
|
||||||
# mode = "0600";
|
|
||||||
# path = "/home/blake/.ssh/id_snowbelle";
|
|
||||||
# };
|
|
||||||
# "id_snowbelle.pub" = {
|
|
||||||
# owner = "blake";
|
|
||||||
# group = "blake";
|
|
||||||
# mode = "644";
|
|
||||||
# path = "/home/blake/.ssh/id_snowbelle.pub";
|
|
||||||
# };
|
|
||||||
# };
|
# };
|
||||||
|
# "id_snowbelle.pub" = {
|
||||||
|
# owner = "blake";
|
||||||
|
# group = "blake";
|
||||||
|
# mode = "644";
|
||||||
|
# path = "/home/blake/.ssh/id_snowbelle.pub";
|
||||||
|
# };
|
||||||
|
# };
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user