Nix Flakes configuration for MacOS, NixOS and WSL
1{ inputs, lib, ... }:
2let
3 configuration = {
4 hjem.extraModules = [ inputs.self.hjemModules ];
5 hjem.clobberByDefault = true;
6 };
7in
8{
9 options.flake.hjemModules = lib.mkOption {
10 type = lib.types.lazyAttrsOf lib.types.deferredModule;
11 default = { };
12 description = ''
13 Collection of modules defined in classic nix to extend hjem in the end.
14 '';
15 };
16
17 config.flake.nixosModules.hjem = {
18 imports = [ inputs.hjem.nixosModules.default configuration ];
19 };
20
21 config.flake.darwinModules.hjem = {
22 imports = [ inputs.hjem.darwinModules.default configuration ];
23 };
24}