2021-02-14 02:38:20 +00:00
|
|
|
# Suites
|
2023-01-28 20:49:10 +00:00
|
|
|
|
2021-10-11 22:32:01 +00:00
|
|
|
Suites provide a mechanism for users to easily combine and name collections of
|
2021-07-16 17:45:48 +00:00
|
|
|
profiles.
|
2021-02-14 02:38:20 +00:00
|
|
|
|
2021-06-09 01:27:54 +00:00
|
|
|
`suites` are defined in the `importables` argument in either the `home` or `nixos`
|
2021-10-11 22:32:01 +00:00
|
|
|
namespace. They are a special case of an `importable` which is passed as a special
|
2021-06-09 01:27:54 +00:00
|
|
|
argument (one that can be use in an `imports` line) to your hosts. All lists defined
|
|
|
|
in `suites` are flattened and type-checked as paths.
|
2021-04-27 01:29:05 +00:00
|
|
|
|
2021-02-14 02:38:20 +00:00
|
|
|
## Definition
|
2023-01-28 20:49:10 +00:00
|
|
|
|
2021-02-14 02:38:20 +00:00
|
|
|
```nix
|
|
|
|
rec {
|
|
|
|
workstation = [ profiles.develop profiles.graphical users.nixos ];
|
|
|
|
mobileWS = workstation ++ [ profiles.laptop ];
|
|
|
|
}
|
|
|
|
```
|
|
|
|
|
|
|
|
## Usage
|
2023-01-28 20:49:10 +00:00
|
|
|
|
2021-02-14 02:38:20 +00:00
|
|
|
`hosts/my-laptop.nix`:
|
2023-01-28 20:49:10 +00:00
|
|
|
|
2021-02-14 02:38:20 +00:00
|
|
|
```nix
|
|
|
|
{ suites, ... }:
|
|
|
|
{
|
|
|
|
imports = suites.mobileWS;
|
|
|
|
}
|
|
|
|
```
|