forked from pub-solar/os
c012f2f4ed
- [x] refactor lib into separate files, similar to NixOS/nixpkgs/lib. - [x] refactor ci to automatically generate derivations from flake outputs - [x] remove cluttered indirection statements throughout the codebase - [x] refactor hosts to allow for upcoming integration tests - [x] improve ambiguity in the existing docs - [x] add [BORS](https://bors.tech) support - [x] add initial integration test - [x] write tests documentation - [x] test lib - [x] improve version string generation, and do so automatically for pkgs/flake.nix sources Clean up the codebase as best we can in preparation for #152 and add tests. From now on, all PRs will be merged with BORS.
24 lines
531 B
Nix
24 lines
531 B
Nix
{ lib }:
|
|
let
|
|
inherit (lib) dev;
|
|
|
|
profiles = dev.os.mkProfileAttrs (toString ../profiles);
|
|
users = dev.os.mkProfileAttrs (toString ../users);
|
|
|
|
allProfiles =
|
|
let defaults = lib.collect (x: x ? default) profiles;
|
|
in map (x: x.default) defaults;
|
|
|
|
allUsers =
|
|
let defaults = lib.collect (x: x ? default) users;
|
|
in map (x: x.default) defaults;
|
|
|
|
|
|
suites = with profiles; rec {
|
|
base = [ users.nixos users.root ];
|
|
};
|
|
in
|
|
lib.mapAttrs (_: v: dev.os.profileMap v) suites // {
|
|
inherit allProfiles allUsers;
|
|
}
|