mirror of
https://github.com/foo-dogsquared/nixos-config.git
synced 2025-01-31 16:57:55 +00:00
44 lines
1.3 KiB
Nix
44 lines
1.3 KiB
Nix
# The declarative environment management modules. Basically the backbone of my
|
|
# flake. Most of the modules here should have some things integrated within
|
|
# each other such as the ability to easily declare home-manager users (or a
|
|
# NixVim instance) into a NixOS system from already existing declared
|
|
# home-manager users (or NixVim instances) in the flake config.
|
|
{ lib, ... }:
|
|
|
|
{
|
|
imports = [
|
|
./disko.nix
|
|
./nixos.nix
|
|
./nixvim.nix
|
|
./home-manager.nix
|
|
./wrapper-manager.nix
|
|
];
|
|
|
|
options.setups = {
|
|
configDir = lib.mkOption {
|
|
type = lib.types.path;
|
|
default = ../../../configs;
|
|
description = ''
|
|
The directory containing configurations of various environments. The
|
|
top-level directories are expected to be the name of the environment
|
|
with their configurations inside.
|
|
'';
|
|
example = lib.literalExpression ''
|
|
''${inputs.my-flake}/configs
|
|
'';
|
|
};
|
|
|
|
sharedNixpkgsConfig = lib.mkOption {
|
|
type = with lib.types; attrsOf anything;
|
|
description = ''
|
|
Shared configuration of the nixpkgs instance to be passed to all of the
|
|
module environments based from the nixpkgs module system.
|
|
'';
|
|
default = { };
|
|
example = {
|
|
allowUnfree = true;
|
|
};
|
|
};
|
|
};
|
|
}
|