❄️ Nix configurations
1{
2 inputs = {
3 nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable";
4 nixos-hardware.url = "github:NixOS/nixos-hardware";
5 disko = {
6 url = "github:nix-community/disko";
7 inputs.nixpkgs.follows = "nixpkgs";
8 };
9 agenix = {
10 url = "github:ryantm/agenix";
11 inputs.nixpkgs.follows = "nixpkgs";
12 };
13
14 catppuccin.url = "github:catppuccin/nix";
15
16 home-manager = {
17 url = "github:nix-community/home-manager";
18 inputs.nixpkgs.follows = "nixpkgs";
19 };
20 };
21
22 outputs = inputs @ { nixpkgs, catppuccin, agenix, home-manager, nixos-hardware, ... }:
23 {
24
25 # nixos-anywhere --flake .#polecat --generate-hardware-config nixos-generate-config ./hardware-configuration.nix root@192.168.1.50
26 nixosConfigurations.polecat = nixpkgs.lib.nixosSystem {
27 system = "x86_64-linux";
28 modules = [
29 ./hosts/polecat
30 agenix.nixosModules.default
31 ];
32 };
33
34 devShells."x86_64-linux".default = nixpkgs.legacyPackages."x86_64-linux".mkShell {
35 packages = [
36 agenix.packages."x86_64-linux".default
37 ];
38 };
39
40 nixosConfigurations.otter = nixpkgs.lib.nixosSystem {
41 system = "x86_64-linux";
42 modules = [
43 ./hosts/otter
44 catppuccin.nixosModules.catppuccin
45 agenix.nixosModules.default
46 nixos-hardware.nixosModules.framework-13-7040-amd
47 home-manager.nixosModules.home-manager
48 {
49 home-manager.useGlobalPkgs = true;
50 home-manager.useUserPackages = true;
51 # home-manager.sharedModules = [inputs.catppuccin.homeManagerModules.catppuccin];
52 home-manager.users.alex = {
53 imports = [
54 ./hosts/otter/home.nix
55 catppuccin.homeModules.catppuccin
56 ];
57 };
58 }
59 ];
60 };
61 };
62}