remove default for clan.core.settings.machine.name and make readOnly

There is not reason that there needs to be a default. Machines are usually defined as an attrset, so there is no reason to have a default.
Also make this readOnly as we never want to override it.
This commit is contained in:
DavHau
2025-04-02 18:21:05 +07:00
parent db2bd58d8f
commit e540b82dc6
4 changed files with 40 additions and 27 deletions

View File

@@ -9,10 +9,17 @@ in
{
hostPkgs = pkgs;
# speed-up evaluation
defaults = {
defaults =
{ config, options, ... }:
{
imports = [
./minify.nix
];
config = lib.mkMerge [
(lib.optionalAttrs (options ? clan) {
clan.core.settings.machine.name = config.networking.hostName;
})
{
documentation.enable = lib.mkDefault false;
boot.isContainer = true;
@@ -31,6 +38,8 @@ in
# we don't have permission to set cpu scheduler in our container
systemd.services.nix-daemon.serviceConfig.CPUSchedulingPolicy = lib.mkForce "";
}
];
};
# to accept external dependencies such as disko
node.specialArgs.self = self;

View File

@@ -8,15 +8,22 @@ in
hostPkgs = pkgs;
# speed-up evaluation
defaults = (
{ config, ... }:
{ config, options, ... }:
{
imports = [
./minify.nix
];
config = lib.mkMerge [
(lib.optionalAttrs (options ? clan) {
clan.core.settings.machine.name = config.networking.hostName;
})
{
documentation.enable = lib.mkDefault false;
nix.settings.min-free = 0;
system.stateVersion = config.system.nixos.release;
}
];
}
);
_module.args = { inherit self; };

View File

@@ -94,9 +94,6 @@ let
# Inherited from clan wide settings
# TODO: remove these
# Machine specific settings
# clan.core.settings.machine.name = name;
networking.hostName = lib.mkDefault name;
# For vars we need to override the system so we run vars

View File

@@ -117,7 +117,7 @@ in
options = {
name = mkOption {
type = types.str;
default = "nixos";
readOnly = true;
description = ''
the name of the machine
'';