flake.nix

b46d42c560eb97f214d0b767c0ffee44711ecfba · 1.6 KB · 55 lines raw

1 {
2 description = "Example nix-darwin system flake";
3
4 inputs = {
5 nixpkgs.url = "github:nixos/nixpkgs/nixpkgs-unstable";
6 darwin = {
7 url = "github:nix-darwin/nix-darwin/master";
8 inputs.nixpkgs.follows = "nixpkgs";
9 };
10 home-manager = {
11 url = "github:nix-community/home-manager";
12 inputs.nixpkgs.follows = "nixpkgs";
13 };
14 determinate.url = "https://flakehub.com/f/DeterminateSystems/determinate/3";
15 zen-browser = { # Used exclusively for HM module, Zen is installed via cask
16 url = "github:0xc000022070/zen-browser-flake";
17 inputs = {
18 nixpkgs.follows = "nixpkgs";
19 home-manager.follows = "home-manager";
20 };
21 };
22 nix-homebrew.url = "github:zhaofengli/nix-homebrew";
23 homebrew-core = {
24 url = "github:homebrew/homebrew-core";
25 flake = false;
26 };
27 homebrew-cask = {
28 url = "github:homebrew/homebrew-cask";
29 flake = false;
30 };
31 };
32
33 outputs = { nixpkgs, home-manager, ... }@inputs: {
34 darwinConfigurations."RyanMac" = inputs.darwin.lib.darwinSystem {
35 system = "aarch64-darwin";
36 specialArgs = { inherit inputs; };
37 modules = [
38 { nixpkgs.config.allowUnfree = true; }
39 inputs.determinate.darwinModules.default
40 ./hosts/RyanMac/configuration.nix
41 home-manager.darwinModules.home-manager
42 {
43 home-manager.useGlobalPkgs = true;
44 home-manager.useUserPackages = true;
45 home-manager.users.ryan = {
46 imports = [
47 inputs.zen-browser.homeModules.beta
48 ./users/ryan/home.nix
49 ];
50 };
51 }
52 ];
53 };
54 };
55 }