From 8601560f7d87ea8e639a652f139df66da84256c1 Mon Sep 17 00:00:00 2001 From: arcnmx Date: Tue, 21 May 2024 14:28:34 -0700 Subject: [PATCH] refactor: stop using `inputs.self` --- modules/nixos/github-runner.nix | 4 +- modules/nixos/kanidm.nix | 10 +-- modules/nixos/ldap/hosts.nix | 4 +- modules/nixos/ldap/management.nix | 4 +- modules/nixos/ldap/object.nix | 4 +- modules/nixos/ldap/permissions.nix | 4 +- modules/nixos/ldap/users.nix | 4 +- modules/nixos/network/namespace.nix | 4 +- modules/nixos/nginx/listen.nix | 90 ++++++++++++++------------ modules/nixos/samba.nix | 6 +- modules/nixos/steam/account-switch.nix | 4 +- modules/nixos/steam/beatsaber.nix | 4 +- modules/nixos/tmpfiles.nix | 4 +- modules/system/access.nix | 10 +-- modules/system/ci.nix | 26 -------- modules/system/deploy.nix | 8 +-- modules/system/network/networks.nix | 4 +- nixos/access/gensokyo.nix | 10 ++- nixos/base/network.nix | 4 +- nixos/base/nix.nix | 1 - nixos/base/nixpkgs.nix | 6 +- nixos/github-runner/zone.nix | 4 +- nixos/keycloak.nix | 4 +- nixos/krb5.nix | 4 +- nixos/ldap/users.nix | 4 +- nixos/samba.nix | 6 +- nixos/users/groups.nix | 4 +- 27 files changed, 111 insertions(+), 130 deletions(-) diff --git a/modules/nixos/github-runner.nix b/modules/nixos/github-runner.nix index 6b17ce17..ba431611 100644 --- a/modules/nixos/github-runner.nix +++ b/modules/nixos/github-runner.nix @@ -1,13 +1,13 @@ { - inputs, config, + gensokyo-zone, lib, ... }: let inherit (lib.options) mkOption; inherit (lib.modules) mkIf mkDefault mkForce; inherit (lib.attrsets) attrNames attrValues filterAttrs mapAttrs' nameValuePair; - inherit (inputs.self.lib.lib) unmerged; + inherit (gensokyo-zone.lib) unmerged; cfg = config.services.github-runners; nixosConfig = config; enabledRunners = filterAttrs (_: runner: runner.enable) cfg; diff --git a/modules/nixos/kanidm.nix b/modules/nixos/kanidm.nix index 77b48c6c..01f05f77 100644 --- a/modules/nixos/kanidm.nix +++ b/modules/nixos/kanidm.nix @@ -1,12 +1,12 @@ { - inputs, - lib, config, + gensokyo-zone, + lib, ... }: let - inherit (inputs.self.lib.lib) mkBaseDn; - inherit (lib) mkIf mkMerge mkBefore mkDefault mkOptionDefault mkEnableOption mkOption; - inherit (lib.strings) splitString concatMapStringsSep; + inherit (gensokyo-zone.lib) mkBaseDn; + inherit (lib.options) mkOption mkEnableOption; + inherit (lib.modules) mkIf mkMerge mkBefore mkDefault mkOptionDefault; inherit (config.lib.access) mkSnakeOil; cfg = config.services.kanidm; in { diff --git a/modules/nixos/ldap/hosts.nix b/modules/nixos/ldap/hosts.nix index cc25b159..679cef20 100644 --- a/modules/nixos/ldap/hosts.nix +++ b/modules/nixos/ldap/hosts.nix @@ -1,10 +1,10 @@ { config, + gensokyo-zone, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) mkAlmostOptionDefault mapListToAttrs; + inherit (gensokyo-zone.lib) mkAlmostOptionDefault mapListToAttrs; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkOptionDefault; inherit (lib.attrsets) mapAttrsToList; diff --git a/modules/nixos/ldap/management.nix b/modules/nixos/ldap/management.nix index d502a844..985697c0 100644 --- a/modules/nixos/ldap/management.nix +++ b/modules/nixos/ldap/management.nix @@ -1,11 +1,11 @@ { config, + gensokyo-zone, lib, - inputs, pkgs, ... }: let - inherit (inputs.self.lib.lib) mapOptionDefaults; + inherit (gensokyo-zone.lib) mapOptionDefaults; inherit (lib.options) mkEnableOption; inherit (lib.modules) mkIf mkMerge mkOptionDefault; inherit (lib.attrsets) attrValues; diff --git a/modules/nixos/ldap/object.nix b/modules/nixos/ldap/object.nix index 83b9952c..242e0cd4 100644 --- a/modules/nixos/ldap/object.nix +++ b/modules/nixos/ldap/object.nix @@ -1,10 +1,10 @@ { config, + gensokyo-zone, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) unmerged mkAlmostOptionDefault; + inherit (gensokyo-zone.lib) unmerged mkAlmostOptionDefault; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkOptionDefault; inherit (lib.attrsets) filterAttrs mapAttrsToList nameValuePair; diff --git a/modules/nixos/ldap/permissions.nix b/modules/nixos/ldap/permissions.nix index 3f31ea48..29053049 100644 --- a/modules/nixos/ldap/permissions.nix +++ b/modules/nixos/ldap/permissions.nix @@ -1,10 +1,10 @@ { config, + gensokyo-zone, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) mkAlmostOptionDefault mapOptionDefaults mapListToAttrs; + inherit (gensokyo-zone.lib) mkAlmostOptionDefault mapOptionDefaults mapListToAttrs; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkMerge mkOptionDefault; inherit (lib.attrsets) attrNames mapAttrs mapAttrsToList; diff --git a/modules/nixos/ldap/users.nix b/modules/nixos/ldap/users.nix index db14b6ed..1ac1299b 100644 --- a/modules/nixos/ldap/users.nix +++ b/modules/nixos/ldap/users.nix @@ -1,10 +1,10 @@ { config, + gensokyo-zone, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) mkAlmostOptionDefault mapListToAttrs; + inherit (gensokyo-zone.lib) mkAlmostOptionDefault mapListToAttrs; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkOptionDefault; inherit (lib.attrsets) mapAttrs mapAttrsToList; diff --git a/modules/nixos/network/namespace.nix b/modules/nixos/network/namespace.nix index a37adc73..4452344a 100644 --- a/modules/nixos/network/namespace.nix +++ b/modules/nixos/network/namespace.nix @@ -1,7 +1,7 @@ { - inputs, config, pkgs, + gensokyo-zone, lib, utils, ... @@ -12,7 +12,7 @@ inherit (lib.lists) singleton optional filter concatMap; inherit (lib.strings) concatStringsSep escapeShellArg; inherit (utils) escapeSystemdExecArg; - inherit (inputs.self.lib.lib) unmerged; + inherit (gensokyo-zone.lib) unmerged; inherit (config) networking; inherit (networking) access; enabledNamespaces = filter (ns: ns.enable) (attrValues networking.namespaces); diff --git a/modules/nixos/nginx/listen.nix b/modules/nixos/nginx/listen.nix index d583e098..5df2ff87 100644 --- a/modules/nixos/nginx/listen.nix +++ b/modules/nixos/nginx/listen.nix @@ -1,21 +1,19 @@ -{ - config, - lib, - inputs, - ... -}: let - inherit (inputs.self.lib.lib) mkAlmostOptionDefault mkAddress6; - inherit (lib.options) mkOption mkEnableOption; - inherit (lib.modules) mkIf mkMerge mkBefore mkOptionDefault mkForce; - inherit (lib.attrsets) attrValues mapAttrs; - inherit (lib.lists) optional filter concatMap; - inherit (config.services) nginx; +let listenModule = { + nixosConfig, config, virtualHost, listenKind, + gensokyo-zone, + lib, ... - }: { + }: let + inherit (gensokyo-zone.lib) mkAlmostOptionDefault mkAddress6; + inherit (lib.options) mkOption mkEnableOption; + inherit (lib.modules) mkIf mkMerge mkBefore mkOptionDefault mkForce; + inherit (lib.lists) optional; + inherit (nixosConfig.services) nginx; + in { options = with lib.types; { enable = mkEnableOption "this port" @@ -108,19 +106,19 @@ listenDirectives = mkMerge (map (conf: mkOptionDefault "listen ${conf};") config.listenConfigs); }; }; - listenType = { - specialArgs, - modules ? [], - }: - lib.types.submoduleWith { - inherit specialArgs; - modules = [listenModule] ++ modules; - }; hostModule = { nixosConfig, config, + gensokyo-zone, + lib, ... }: let + inherit (gensokyo-zone.lib) mkAlmostOptionDefault; + inherit (lib.options) mkOption; + inherit (lib.modules) mkIf mkOptionDefault mkForce; + inherit (lib.attrsets) attrValues mapAttrs; + inherit (lib.lists) filter concatMap; + inherit (nixosConfig.services) nginx; cfg = attrValues config.listen'; enabledCfg = filter (port: port.enable) cfg; mkListen = listen: addr: let @@ -134,9 +132,10 @@ in { options = with lib.types; { listen' = mkOption { - type = attrsOf (listenType { + type = attrsOf (submoduleWith { + modules = [listenModule]; specialArgs = { - inherit nixosConfig; + inherit nixosConfig gensokyo-zone; virtualHost = config; listenKind = "virtualHost"; }; @@ -164,15 +163,23 @@ streamServerModule = { nixosConfig, config, + gensokyo-zone, + lib, ... }: let + inherit (lib.options) mkOption; + inherit (lib.modules) mkIf mkMerge mkBefore mkOptionDefault mkForce; + inherit (lib.attrsets) attrValues; + inherit (lib.lists) filter; + inherit (nixosConfig.services) nginx; enabledListen = filter (port: port.enable) (attrValues config.listen); in { options = with lib.types; { listen = mkOption { - type = attrsOf (listenType { + type = attrsOf (submoduleWith { + modules = [listenModule]; specialArgs = { - inherit nixosConfig; + inherit nixosConfig gensokyo-zone; virtualHost = config; streamServer = config; listenKind = "streamServer"; @@ -208,19 +215,22 @@ )); }; }; -in { - options.services.nginx = with lib.types; { - virtualHosts = mkOption { - type = attrsOf (submoduleWith { - modules = [hostModule]; - shorthandOnlyDefinesConfig = true; - }); +in + {lib, ...}: let + inherit (lib.options) mkOption; + in { + options.services.nginx = with lib.types; { + virtualHosts = mkOption { + type = attrsOf (submoduleWith { + modules = [hostModule]; + shorthandOnlyDefinesConfig = true; + }); + }; + stream.servers = mkOption { + type = attrsOf (submoduleWith { + modules = [streamServerModule]; + shorthandOnlyDefinesConfig = false; + }); + }; }; - stream.servers = mkOption { - type = attrsOf (submoduleWith { - modules = [streamServerModule]; - shorthandOnlyDefinesConfig = false; - }); - }; - }; -} + } diff --git a/modules/nixos/samba.nix b/modules/nixos/samba.nix index 3929574b..8bae5d22 100644 --- a/modules/nixos/samba.nix +++ b/modules/nixos/samba.nix @@ -1,16 +1,16 @@ { config, + gensokyo-zone, lib, - inputs, pkgs, ... }: let - inherit (inputs.self.lib.lib) mkAlmostOptionDefault; + inherit (gensokyo-zone.lib) mkAlmostOptionDefault; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkMerge mkBefore mkAfter mkOptionDefault; inherit (lib.attrsets) mapAttrs' mapAttrsToList listToAttrs nameValuePair; inherit (lib.lists) concatLists; - inherit (lib.strings) toUpper hasPrefix concatMapStringsSep concatStringsSep; + inherit (lib.strings) toUpper hasPrefix concatMapStringsSep; inherit (lib.trivial) flip; inherit (config.services) samba-wsdd; cfg = config.services.samba; diff --git a/modules/nixos/steam/account-switch.nix b/modules/nixos/steam/account-switch.nix index 6485d89c..ab91cbbf 100644 --- a/modules/nixos/steam/account-switch.nix +++ b/modules/nixos/steam/account-switch.nix @@ -1,11 +1,11 @@ { config, + gensokyo-zone, lib, - inputs, pkgs, ... }: let - inherit (inputs.self.lib.lib) mkWinPath userIs; + inherit (gensokyo-zone.lib) mkWinPath userIs; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkMerge mkDefault mkOptionDefault; inherit (lib.attrsets) filterAttrs mapAttrsToList listToAttrs nameValuePair; diff --git a/modules/nixos/steam/beatsaber.nix b/modules/nixos/steam/beatsaber.nix index 633b5509..ccd24f63 100644 --- a/modules/nixos/steam/beatsaber.nix +++ b/modules/nixos/steam/beatsaber.nix @@ -1,11 +1,11 @@ { config, pkgs, + gensokyo-zone, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) userIs; + inherit (gensokyo-zone.lib) userIs; inherit (config.lib.steam) mkSharePath; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkMerge mkDefault mkOptionDefault; diff --git a/modules/nixos/tmpfiles.nix b/modules/nixos/tmpfiles.nix index 89fbec1e..29b5c0bf 100644 --- a/modules/nixos/tmpfiles.nix +++ b/modules/nixos/tmpfiles.nix @@ -1,11 +1,11 @@ { config, + gensokyo-zone, lib, - inputs, pkgs, ... }: let - inherit (inputs.self.lib.lib) unmerged; + inherit (gensokyo-zone.lib) unmerged; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkMerge mkDefault mkOptionDefault; inherit (lib.strings) match concatStringsSep escapeShellArg optionalString; diff --git a/modules/system/access.nix b/modules/system/access.nix index a0a97359..073d91b0 100644 --- a/modules/system/access.nix +++ b/modules/system/access.nix @@ -1,14 +1,14 @@ { name, config, - lib, access, - inputs, + gensokyo-zone, + lib, ... }: let - inherit (inputs.self) nixosConfigurations; - inherit (inputs.self.lib) systems; - inherit (inputs.self.lib.lib) domain mkAddress6; + inherit (gensokyo-zone) systems; + inherit (gensokyo-zone.self) nixosConfigurations; + inherit (gensokyo-zone.lib) domain mkAddress6; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkMerge mkDefault mkOptionDefault; inherit (lib.attrsets) mapAttrs attrValues; diff --git a/modules/system/ci.nix b/modules/system/ci.nix index 4ac2b458..04b66261 100644 --- a/modules/system/ci.nix +++ b/modules/system/ci.nix @@ -1,13 +1,9 @@ { - name, config, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) domain; inherit (lib.options) mkOption mkEnableOption; - inherit (lib.modules) mkIf mkOptionDefault; in { options.ci = with lib.types; { enable = @@ -20,26 +16,4 @@ in { default = false; }; }; - config = { - deploy = let - nixos = config.built; - in { - sshUser = mkOptionDefault "root"; - user = mkOptionDefault "root"; - sshOpts = mkIf (config.type == "NixOS") ( - mkOptionDefault ["-p" "${builtins.toString (builtins.head nixos.config.services.openssh.ports)}"] - ); - autoRollback = mkOptionDefault true; - magicRollback = mkOptionDefault true; - fastConnection = mkOptionDefault false; - hostname = mkOptionDefault "${name}.local.${domain}"; - profiles.system = { - user = "root"; - path = let - inherit (inputs.self.legacyPackages.${config.system}.deploy-rs) activate; - in - activate.nixos nixos; - }; - }; - }; } diff --git a/modules/system/deploy.nix b/modules/system/deploy.nix index 9237d907..4696d959 100644 --- a/modules/system/deploy.nix +++ b/modules/system/deploy.nix @@ -1,15 +1,15 @@ { name, config, + gensokyo-zone, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) domain; + inherit (gensokyo-zone.lib) domain; inherit (lib.modules) mkIf mkOptionDefault; in { options = let - inherit (inputs.self.lib.lib) json; + inherit (gensokyo-zone.lib) json; inherit (lib.types) nullOr; inherit (lib.options) mkOption; in { @@ -33,7 +33,7 @@ in { profiles.system = { user = "root"; path = let - inherit (inputs.self.legacyPackages.${config.system}.deploy-rs) activate; + inherit (gensokyo-zone.self.legacyPackages.${config.system}.deploy-rs) activate; in activate.nixos nixos; }; diff --git a/modules/system/network/networks.nix b/modules/system/network/networks.nix index 374d624c..1d72a3e6 100644 --- a/modules/system/network/networks.nix +++ b/modules/system/network/networks.nix @@ -1,10 +1,10 @@ { config, + gensokyo-zone, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) eui64; + inherit (gensokyo-zone.lib) eui64; inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkOptionDefault; inherit (lib.trivial) mapNullable; diff --git a/nixos/access/gensokyo.nix b/nixos/access/gensokyo.nix index 5f87503c..48dc6bc5 100644 --- a/nixos/access/gensokyo.nix +++ b/nixos/access/gensokyo.nix @@ -1,23 +1,21 @@ { config, + gensokyo-zone, lib, - inputs, pkgs, ... -}: let - inherit (lib.modules) mkDefault; -in { +}: { services.nginx.virtualHosts.gensokyoZone = { serverName = config.networking.domain; locations = { "/" = { - root = inputs.website.packages.${pkgs.system}.gensokyoZone; + root = gensokyo-zone.inputs.website.packages.${pkgs.system}.gensokyoZone; }; "/docs" = { root = pkgs.linkFarm "genso-docs-wwwroot" [ { name = "docs"; - path = inputs.self.packages.${pkgs.system}.docs; + path = gensokyo-zone.self.packages.${pkgs.system}.docs; } ]; }; diff --git a/nixos/base/network.nix b/nixos/base/network.nix index 8cdc693f..ed63ef14 100644 --- a/nixos/base/network.nix +++ b/nixos/base/network.nix @@ -1,12 +1,12 @@ { - inputs, name, config, + gensokyo-zone, lib, ... }: let inherit (lib.modules) mkIf mkOrder mkDefault mkOverride; - inherit (inputs.self.lib.lib) domain; + inherit (gensokyo-zone.lib) domain; in { networking = { nftables.enable = true; diff --git a/nixos/base/nix.nix b/nixos/base/nix.nix index a41b8451..6d9d34ef 100644 --- a/nixos/base/nix.nix +++ b/nixos/base/nix.nix @@ -2,7 +2,6 @@ config, options, lib, - inputs, gensokyo-zone, ... }: let diff --git a/nixos/base/nixpkgs.nix b/nixos/base/nixpkgs.nix index 6404e809..4db103a0 100644 --- a/nixos/base/nixpkgs.nix +++ b/nixos/base/nixpkgs.nix @@ -1,9 +1,9 @@ -{inputs, ...}: let - inherit (inputs.self) overlays; +{gensokyo-zone, ...}: let + inherit (gensokyo-zone.self) overlays; in { nixpkgs = { overlays = [ - inputs.arcexprs.overlays.default + gensokyo-zone.inputs.arcexprs.overlays.default overlays.default ]; config = { diff --git a/nixos/github-runner/zone.nix b/nixos/github-runner/zone.nix index 70cbaa68..0f15a49c 100644 --- a/nixos/github-runner/zone.nix +++ b/nixos/github-runner/zone.nix @@ -1,14 +1,14 @@ { config, + gensokyo-zone, lib, - inputs, ... }: let inherit (lib.options) mkOption mkEnableOption; inherit (lib.modules) mkIf mkMerge mkDefault; inherit (lib.attrsets) listToAttrs nameValuePair; inherit (lib.lists) genList; - inherit (inputs.self.lib.lib) unmerged; + inherit (gensokyo-zone.lib) unmerged; cfg = config.services.github-runner-zone; genZone = f: genList f cfg.count; genZoneAttrs = prefix: f: listToAttrs (genZone (i: nameValuePair "${prefix}${toString i}" (f i))); diff --git a/nixos/keycloak.nix b/nixos/keycloak.nix index 2d92685f..361c5b7e 100644 --- a/nixos/keycloak.nix +++ b/nixos/keycloak.nix @@ -1,8 +1,8 @@ { - inputs, system, access, config, + gensokyo-zone, lib, ... }: let @@ -15,7 +15,7 @@ }; hostname = "sso.${config.networking.domain}"; hostname-strict = false; - inherit (inputs.self.legacyPackages.${system.system}) patchedNixpkgs; + inherit (gensokyo-zone.self.legacyPackages.${system.system}) patchedNixpkgs; keycloakModulePath = "services/web-apps/keycloak.nix"; in { # upstream keycloak makes an incorrect assumption in its assertions, so we patch it diff --git a/nixos/krb5.nix b/nixos/krb5.nix index 9dc9222a..1a81a849 100644 --- a/nixos/krb5.nix +++ b/nixos/krb5.nix @@ -1,12 +1,12 @@ { - inputs, pkgs, config, access, + gensokyo-zone, lib, ... }: let - inherit (inputs.self.lib.lib) mkAlmostOptionDefault mapAlmostOptionDefaults; + inherit (gensokyo-zone.lib) mkAlmostOptionDefault mapAlmostOptionDefaults; inherit (lib.modules) mkIf mkMerge mkBefore mkDefault mkOptionDefault; inherit (lib.strings) replaceStrings; inherit (config.security) ipa; diff --git a/nixos/ldap/users.nix b/nixos/ldap/users.nix index e4aff6d3..dd29e8d6 100644 --- a/nixos/ldap/users.nix +++ b/nixos/ldap/users.nix @@ -1,10 +1,10 @@ { config, + gensokyo-zone, lib, - inputs, ... }: let - inherit (inputs.self.lib.lib) userIs mkAlmostOptionDefault; + inherit (gensokyo-zone.lib) userIs mkAlmostOptionDefault; inherit (lib.modules) mkMerge mkDefault; inherit (lib.attrsets) mapAttrs filterAttrs; ldapUsers = filterAttrs (_: userIs "peeps") config.users.users; diff --git a/nixos/samba.nix b/nixos/samba.nix index 2842a515..1fdb6ea9 100644 --- a/nixos/samba.nix +++ b/nixos/samba.nix @@ -1,12 +1,12 @@ { - inputs, config, - access, system, + access, + gensokyo-zone, lib, ... }: let - inherit (inputs.self.lib.lib) mkBaseDn; + inherit (gensokyo-zone.lib) mkBaseDn; inherit (lib.modules) mkIf mkMerge mkDefault; inherit (lib.strings) toUpper removeSuffix; cfg = config.services.samba; diff --git a/nixos/users/groups.nix b/nixos/users/groups.nix index 036eb78e..ee514716 100644 --- a/nixos/users/groups.nix +++ b/nixos/users/groups.nix @@ -1,11 +1,11 @@ { config, + gensokyo-zone, lib, - inputs, ... }: let inherit (lib.attrsets) filterAttrs mapAttrsToList; - inherit (inputs.self.lib.lib) userIs; + inherit (gensokyo-zone.lib) userIs; in { users.groups = { peeps = {