pub-solar-os/doc/mkFlakeOptions.md
2021-06-05 10:10:05 -07:00

6.6 KiB

channels

nixpkgs channels to create

Type: attribute set of submodules

Default

{}

channels.<name>.config

nixpkgs config for this channel

Type: attribute set or path convertible to it

Default

{}

channels.<name>.input

nixpkgs flake input to use for this channel

Type: nix flake

Default

"self.inputs.<name>"

channels.<name>.overlays

overlays to apply to this channel these will get exported under the 'overlays' flake output as <channel>/<name> and any overlay pulled from ${inputs} will be filtered out

Type: list of valid Nixpkgs overlay or path convertible to its or anything convertible to it

Default

[]

channelsConfig

nixpkgs config for all channels

Type: attribute set or path convertible to it

Default

{}

devshell

Modules to include in your devos shell. the modules argument will be exported under the devshellModules output

Type: submodule

Default

{}

devshell.externalModules

modules to include that won't be exported meant importing modules from external flakes

Type: list of valid module or path convertible to its or anything convertible to it

Default

[]

devshell.modules

modules to include in all hosts and export to devshellModules output

Type: list of path to a modules or anything convertible to it or path convertible to it

Default

[]

home

hosts, modules, suites, and profiles for home-manager

Type: submodule

Default

{}

home.externalModules

modules to include that won't be exported meant importing modules from external flakes

Type: list of valid module or path convertible to its or anything convertible to it

Default

[]

home.importables

Packages of paths to be passed to modules as specialArgs.

Type: attribute set

Default

{}

home.importables.suites

collections of profiles

Type: attribute set of list of paths or anything convertible to its

home.modules

modules to include in all hosts and export to homeModules output

Type: list of path to a modules or anything convertible to it or path convertible to it

Default

[]

home.profiles

WARNING: The 'suites' and profiles options have been deprecated, you can now create both with the importables option. rakeLeaves can be used to create profiles and by passing a module or rec set to importables, suites can access profiles. Example:

importables = rec {
  profiles = digga.lib.importers.rakeLeaves ./profiles;
  suites = with profiles; { };
}

See https://github.com/divnix/digga/pull/30 for more details

Type: list of paths

Default

[]

home.suites

WARNING: The 'suites' and profiles options have been deprecated, you can now create both with the importables option. rakeLeaves can be used to create profiles and by passing a module or rec set to importables, suites can access profiles. Example:

importables = rec {
  profiles = digga.lib.importers.rakeLeaves ./profiles;
  suites = with profiles; { };
}

See https://github.com/divnix/digga/pull/30 for more details

Type: function that evaluates to a(n) attrs or path convertible to it

nixos

hosts, modules, suites, and profiles for nixos

Type: submodule

Default

{}

nixos.hostDefaults

Defaults for all hosts. the modules passed under hostDefaults will be exported to the 'nixosModules' flake output. They will also be added to all hosts.

Type: submodule

Default

{}

nixos.hostDefaults.channelName

Channel this host should follow

Type: a channel defined in channels

Default

null

nixos.hostDefaults.externalModules

modules to include that won't be exported meant importing modules from external flakes

Type: list of valid module or path convertible to its or anything convertible to it

Default

[]

nixos.hostDefaults.modules

modules to include in all hosts and export to nixosModules output

Type: list of path to a modules or anything convertible to it or path convertible to it

Default

[]

nixos.hostDefaults.system

system for this host

Type: system defined in supportedSystems

Default

null

nixos.hosts

configurations to include in the nixosConfigurations output

Type: attribute set of submodules

Default

{}

nixos.hosts.<name>.channelName

Channel this host should follow

Type: a channel defined in channels

Default

null

nixos.hosts.<name>.modules

modules to include

Type: list of valid module or path convertible to its or anything convertible to it

Default

[]

nixos.hosts.<name>.system

system for this host

Type: system defined in supportedSystems

Default

null

nixos.importables

Packages of paths to be passed to modules as specialArgs.

Type: attribute set

Default

{}

nixos.importables.suites

collections of profiles

Type: attribute set of list of paths or anything convertible to its

nixos.profiles

WARNING: The 'suites' and profiles options have been deprecated, you can now create both with the importables option. rakeLeaves can be used to create profiles and by passing a module or rec set to importables, suites can access profiles. Example:

importables = rec {
  profiles = digga.lib.importers.rakeLeaves ./profiles;
  suites = with profiles; { };
}

See https://github.com/divnix/digga/pull/30 for more details

Type: list of paths

Default

[]

nixos.suites

WARNING: The 'suites' and profiles options have been deprecated, you can now create both with the importables option. rakeLeaves can be used to create profiles and by passing a module or rec set to importables, suites can access profiles. Example:

importables = rec {
  profiles = digga.lib.importers.rakeLeaves ./profiles;
  suites = with profiles; { };
}

See https://github.com/divnix/digga/pull/30 for more details

Type: function that evaluates to a(n) attrs or path convertible to it

outputsBuilder

builder for flake system-spaced outputs The builder gets passed an attrset of all channels

Type: function that evaluates to a(n) attrs

Default

"channels: { }"

self

The flake to create the devos outputs for

Type: nix flake

supportedSystems

The systems supported by this flake

Type: list of strings

Default

["aarch64-linux","i686-linux","x86_64-darwin","x86_64-linux"]