/ flake.nix
flake.nix
 1  {
 2    description = "My NixOS/nix-darwin configuration";
 3  
 4    inputs = {
 5      # Basic
 6      nixpkgs.url = "github:nixos/nixpkgs/master";
 7      flake-parts = {
 8        url = "github:hercules-ci/flake-parts";
 9        inputs.nixpkgs-lib.follows = "nixpkgs";
10      };
11      import-tree = {
12        url = "github:vic/import-tree";
13      };
14  
15      # Home manager
16      home-manager = {
17        url = "github:nix-community/home-manager/master";
18        inputs.nixpkgs.follows = "nixpkgs";
19      };
20      nixvim = {
21        url = "github:nix-community/nixvim";
22        inputs.nixpkgs.follows = "nixpkgs";
23      };
24  
25      # Darwin
26      nix-darwin = {
27        url = "github:LnL7/nix-darwin/master";
28        inputs.nixpkgs.follows = "nixpkgs";
29      };
30      microvm = {
31        url = "github:microvm-nix/microvm.nix";
32        inputs.nixpkgs.follows = "nixpkgs";
33      };
34      mac-app-util.url = "github:hraban/mac-app-util";
35  
36      # NixOS
37      disko = {
38        url = "github:nix-community/disko/master";
39        inputs.nixpkgs.follows = "nixpkgs";
40      };
41  
42      # sops
43      sops-nix = {
44        url = "github:Mic92/sops-nix/master";
45        inputs.nixpkgs.follows = "nixpkgs";
46      };
47      secrets = {
48        url = "git+ssh://git@github.com/r4v3n6101/secrets.git";
49        flake = false;
50      };
51    };
52  
53    outputs =
54      inputs:
55      inputs.flake-parts.lib.mkFlake { inherit inputs; } {
56        systems = [
57          "x86_64-linux"
58          "aarch64-darwin"
59        ];
60        imports = [
61          (inputs.import-tree [
62            ./packages
63            ./overlays
64            ./modules
65            ./hosts
66          ])
67        ];
68      };
69  }