summaryrefslogtreecommitdiff
path: root/default.nix
blob: a620ec9fcf4801b6e72fd09b94e90a4d3bd1ccad (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
{ nixpkgs ? <nixpkgs>, configuration ? <darwin-config>, system ? builtins.currentSystem
, pkgs ? import nixpkgs { inherit system; }
}:

let

  packages = { config, lib, pkgs, ... }: {
    config = {
      _module.args.pkgs = import nixpkgs {
        inherit system;
        inherit (config.nixpkgs) config;
      };
    };
  };

  eval = pkgs.lib.evalModules {
    check = true;
    modules =
      [ configuration
        packages
        ./modules/alias.nix
        ./modules/system
        ./modules/system/activation-scripts.nix
        ./modules/system/defaults-write.nix
        ./modules/system/defaults/NSGlobalDomain.nix
        ./modules/system/defaults/LaunchServices.nix
        ./modules/system/defaults/dock.nix
        ./modules/system/defaults/finder.nix
        ./modules/system/defaults/trackpad.nix
        ./modules/system/etc.nix
        ./modules/system/launchd.nix
        ./modules/time
        ./modules/nix
        ./modules/nix/nix-darwin.nix
        ./modules/nix/nixpkgs.nix
        ./modules/environment
        ./modules/launchd
        ./modules/services/activate-system.nix
        ./modules/services/nix-daemon.nix
        ./modules/programs/bash.nix
        ./modules/programs/nix-script.nix
        ./modules/programs/tmux.nix
        ./modules/programs/vim.nix
        ./modules/programs/zsh.nix
      ];
  };

in

{
  inherit (eval.config._module.args) pkgs;
  inherit (eval) options config;

  system = eval.config.system.build.toplevel;
}