refactor: moved nixos modules to dendrite pattern
This commit is contained in:
parent
df8dd110ad
commit
0ea11e0236
219 changed files with 4802 additions and 4820 deletions
13
modules/nixos/home-manager-adaptors/default.nix
Normal file
13
modules/nixos/home-manager-adaptors/default.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
# modules in this folder are to adapt home-manager modules configs to nixos-module configs
|
||||
{config, ...}: let
|
||||
mod = config.flake.nixosModules;
|
||||
in {
|
||||
flake.nixosModules.home-manager-adaptors = {
|
||||
imports = [
|
||||
mod.home-manager-flipperzero
|
||||
mod.home-manager-i18n
|
||||
mod.home-manager-openssh
|
||||
mod.home-manager-steam
|
||||
];
|
||||
};
|
||||
}
|
||||
11
modules/nixos/home-manager-adaptors/flipperzero.nix
Normal file
11
modules/nixos/home-manager-adaptors/flipperzero.nix
Normal file
|
|
@ -0,0 +1,11 @@
|
|||
{...}: {
|
||||
flake.nixosModules.home-manager-flipperzero = {
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
home-users = lib.attrsets.mapAttrsToList (_: user: user) config.home-manager.users;
|
||||
in {
|
||||
hardware.flipperzero.enable = lib.lists.any (home-user: home-user.hardware.flipperzero.enable) home-users;
|
||||
};
|
||||
}
|
||||
28
modules/nixos/home-manager-adaptors/i18n.nix
Normal file
28
modules/nixos/home-manager-adaptors/i18n.nix
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
{...}: {
|
||||
flake.nixosModules.home-manager-i18n = {
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
home-users = lib.attrsets.mapAttrsToList (_: user: user) config.home-manager.users;
|
||||
in {
|
||||
config = {
|
||||
i18n.supportedLocales =
|
||||
lib.unique
|
||||
(builtins.map (l: (lib.replaceStrings ["utf8" "utf-8" "UTF8"] ["UTF-8" "UTF-8" "UTF-8"] l) + "/UTF-8") (
|
||||
[
|
||||
"C.UTF-8"
|
||||
"en_US.UTF-8"
|
||||
config.i18n.defaultLocale
|
||||
]
|
||||
++ (lib.attrValues (lib.filterAttrs (n: v: n != "LANGUAGE") config.i18n.extraLocaleSettings))
|
||||
++ (
|
||||
map (user-config: user-config.i18n.defaultLocale) home-users
|
||||
)
|
||||
++ (lib.lists.flatten (
|
||||
map (user-config: lib.attrValues (lib.filterAttrs (n: v: n != "LANGUAGE") user-config.i18n.extraLocaleSettings)) home-users
|
||||
))
|
||||
));
|
||||
};
|
||||
};
|
||||
}
|
||||
13
modules/nixos/home-manager-adaptors/openssh.nix
Normal file
13
modules/nixos/home-manager-adaptors/openssh.nix
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
{...}: {
|
||||
flake.nixosModules.home-manager-openssh = {
|
||||
config,
|
||||
lib,
|
||||
...
|
||||
}: {
|
||||
users.users =
|
||||
lib.attrsets.mapAttrs (name: value: {
|
||||
openssh.authorizedKeys.keys = value.programs.openssh.authorizedKeys;
|
||||
})
|
||||
config.home-manager.users;
|
||||
};
|
||||
}
|
||||
20
modules/nixos/home-manager-adaptors/steam.nix
Normal file
20
modules/nixos/home-manager-adaptors/steam.nix
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
{...}: {
|
||||
flake.nixosModules.home-manager-steam = {
|
||||
lib,
|
||||
config,
|
||||
...
|
||||
}: let
|
||||
setupSteam =
|
||||
lib.lists.any
|
||||
(value: value)
|
||||
(lib.attrsets.mapAttrsToList (name: value: value.programs.steam.enable) config.home-manager.users);
|
||||
in {
|
||||
config = lib.mkIf setupSteam {
|
||||
programs.steam = {
|
||||
enable = true;
|
||||
# TODO: figure out how to not install steam here
|
||||
# package = lib.mkDefault pkgs.emptyFile;
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue