build please?
This commit is contained in:
@@ -1,36 +1,77 @@
|
||||
{
|
||||
description = "Unified System Configuration";
|
||||
description = "Unified System Configuration";
|
||||
|
||||
inputs = {
|
||||
inputs = {
|
||||
|
||||
sddm.url = "./sddm";
|
||||
srvcs.url = "./services";
|
||||
|
||||
srvcs.url = "./services";
|
||||
pckgs.url = "./packages";
|
||||
|
||||
pckgs.url = "./packages";
|
||||
prgms.url = "./programs";
|
||||
|
||||
prgms.url = "./programs";
|
||||
diskoConfig.url = "./disko";
|
||||
|
||||
diskoConfig.url = "./disko";
|
||||
impermanenceConfig.url = "./impermanence";
|
||||
|
||||
impermanenceConfig.url = "./impermanence";
|
||||
|
||||
};
|
||||
|
||||
outputs = { self, ... }@inputs: {
|
||||
|
||||
nixosModule = { config, lib, pkgs, core_inputs, ... }: {
|
||||
imports = [
|
||||
./configuration/configuration.nix
|
||||
# inputs.diskoConfig.module
|
||||
# inputs.impermanenceConfig.module
|
||||
inputs.sddm.module
|
||||
inputs.srvcs.module
|
||||
inputs.pckgs.module
|
||||
inputs.prgms.module
|
||||
];
|
||||
};
|
||||
|
||||
};
|
||||
outputs = { self, ... }@inputs: {
|
||||
|
||||
nixosModule = { config, lib, pkgs, core_inputs, ... }: {
|
||||
imports = [
|
||||
./configuration/configuration.nix
|
||||
# inputs.diskoConfig.module
|
||||
# inputs.impermanenceConfig.module
|
||||
inputs.srvcs.module
|
||||
inputs.pckgs.module
|
||||
inputs.prgms.module
|
||||
];
|
||||
|
||||
options = {
|
||||
sysconfig.opts = {
|
||||
host = lib.options.mkOption {
|
||||
type = lib.types.str;
|
||||
default = null;
|
||||
};
|
||||
username = lib.options.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "nathan";
|
||||
};
|
||||
devices = {
|
||||
main = lib.options.mkOption {
|
||||
type = lib.types.str;
|
||||
default = null;
|
||||
};
|
||||
bonus = lib.options.mkOption {
|
||||
type = lib.types.attrsOf lib.types.str;
|
||||
default = null;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
config = {
|
||||
|
||||
assertions = [
|
||||
{
|
||||
assertion = (config.sysconfig.opts.host != null);
|
||||
message = "host cannot be null";
|
||||
}
|
||||
|
||||
{
|
||||
assertion = (config.sysconfig.opts.devices.main != null);
|
||||
message = "devices.main cannot be null";
|
||||
}
|
||||
];
|
||||
|
||||
networking.hostname = config.sysconfig.opts.host;
|
||||
|
||||
users.users.${config.sysconfig.opts.username} = {
|
||||
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user