move options to separate modules, set up mkDocs generation
Build docs with nix and Material for mkDocs / build-docs (push) Successful in 1m33s

This commit is contained in:
greyweather committed 2026-09-01 03:08:10 +01:00
1 parent 9f2487e3e1
commit 81e85743de
33 files changed
+385 -276

No files matched your search

+5
View File
@@ -0,0 +1,5 @@
{ inputs, self, ... }: {
flake.homeModules.audio = { ... }: {
imports = [ self.homeModules.audioOptions ];
};
}
+7 -1
View File
@@ -1,5 +1,11 @@
{ inputs, self, ... }: {
flake.nixosModules.gaming = { pkgs, config, lib, ... }: {
flake.nixosModules.gaming = { ... }: {
imports = [ self.nixosModules.gamingOptions ];
hardware.steam-hardware.enable = true;
};
flake.homeModules.gaming = { ... }: {
imports = [ self.homeModules.gamingOptions ];
};
}
+39 -72
View File
@@ -1,85 +1,52 @@
{ inputs, self, ... }: let
wm-option-type = inputs.helpers.mkOptionalListOfType (inputs.helpers.mkEnumFromDirContents "${self}/modules/components/window-managers");
shell-option-type = inputs.helpers.mkOptionalListOfType (inputs.helpers.mkEnumFromDirContents "${self}/modules/components/shells");
in {
flake.nixosModules.graphics = { config, pkgs, lib, ... }: {
options.components = {
displayManager = lib.mkOption {
# enum that dynamically populates itself with the contents of the display-managers directory
type = inputs.helpers.mkEnumFromDirContents "${self}/modules/components/display-managers";
default = "lightdm";
};
{ inputs, self, ... }: {
flake.nixosModules.graphics = { pkgs, ... }: {
imports = [ self.nixosModules.graphicsOptions ];
windowManagers = lib.mkOption {
type = wm-option-type;
default = [];
};
environment.systemPackages = with pkgs; [
wayland-utils
mesa-demos
vulkan-tools
];
shells = lib.mkOption {
type = shell-option-type;
default = [];
};
};
config = {
environment.systemPackages = with pkgs; [
wayland-utils
mesa-demos
vulkan-tools
];
fonts.packages = with pkgs; [
iosevka-comfy.comfy
nerd-fonts.jetbrains-mono
];
};
fonts.packages = with pkgs; [
iosevka-comfy.comfy
nerd-fonts.jetbrains-mono
];
};
flake.homeModules.graphics = { config, pkgs, lib, ... }: {
options.components = {
windowManagers = lib.mkOption {
type = wm-option-type;
default = [];
};
flake.homeModules.graphics = { config, pkgs, ... }: {
imports = [ self.homeModules.graphicsOptions ];
shells = lib.mkOption {
type = shell-option-type;
default = [];
home.packages = with pkgs; [
bibata-cursors
x264
gparted
vlc
iosevka-comfy.comfy
nerd-fonts.jetbrains-mono
];
dconf.settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
};
};
config = {
home.packages = with pkgs; [
bibata-cursors
x264
gparted
vlc
iosevka-comfy.comfy
nerd-fonts.jetbrains-mono
];
home.pointerCursor = {
enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Ice";
size = 22;
gtk.enable = true;
x11.enable = true;
};
dconf.settings = {
"org/gnome/desktop/interface" = {
color-scheme = "prefer-dark";
};
};
gtk = {
enable = true;
colorScheme = "dark";
home.pointerCursor = {
enable = true;
package = pkgs.bibata-cursors;
name = "Bibata-Modern-Ice";
size = 22;
gtk.enable = true;
x11.enable = true;
};
gtk = {
enable = true;
colorScheme = "dark";
gtk2.configLocation = "${config.xdg.configHome}/.gtkrc-2.0"; # prevents file conflicts between this and other parts of the nix config
gtk2.force = true;
};
gtk2.configLocation = "${config.xdg.configHome}/.gtkrc-2.0"; # prevents file conflicts between this and other parts of the nix config
gtk2.force = true;
};
};
}