fixup! all of my custom options are now held in an attribute set called movOpts

This commit is contained in:
pagedmov
2024-11-06 20:11:37 -05:00
parent fc327f501c
commit 1a2402dee7
39 changed files with 195 additions and 187 deletions

View File

@@ -33,7 +33,6 @@
outputs = { outputs = {
nixpkgs, nixpkgs,
nur, nur,
home-manager,
self, self,
nixvim, nixvim,
stylix, stylix,
@@ -43,6 +42,9 @@
username = "pagedmov"; username = "pagedmov";
in { in {
homeManagerModules.default = ./modules/home; homeManagerModules.default = ./modules/home;
nixosModules.default = ./modules/sys;
serverModules.default = ./modules/server;
nix.nixPath = [ "nixpkgs=${inputs.nixpkgs}" ];
nixosConfigurations = { nixosConfigurations = {
oganesson = nixpkgs.lib.nixosSystem { oganesson = nixpkgs.lib.nixosSystem {

View File

@@ -5,18 +5,20 @@
]; ];
# My module options # My module options
networkModule.enable = true; movOpts = {
nixSettings.enable = true; networkModule.enable = true;
bootLoader.enable = true; nixSettings.enable = true;
issue.enable = true; bootLoader.enable = true;
sddmConfig.enable = true; issue.enable = true;
stylixConfig.enable = true; sddmConfig.enable = true;
gamingPkgs.enable = true; stylixConfig.enable = true;
steamConfig.enable = true; gamingPkgs.enable = true;
sysPkgs.enable = true; steamConfig.enable = true;
sysProgs.enable = true; sysPkgs.enable = true;
sysServices.enable = true; sysProgs.enable = true;
virtConfig.enable = true; sysServices.enable = true;
virtConfig.enable = true;
};
nix = { nix = {
settings = { settings = {

View File

@@ -24,42 +24,43 @@ in {
]; ];
# My custom home-manager modules # My custom home-manager modules
movOpts = {
# modules/home/files
homeFiles.enable = true;
# modules/home/files # modules/home/environment
homeFiles.enable = true; hyprlandConfig.enable = true;
autojumpConfig.enable = true;
stylixHomeConfig.enable = true;
waybarConfig.enable = true;
gtkConfig.enable = true;
spicetifyConfig.enable = true;
starshipConfig.enable = true;
# modules/home/environment # modules/home/programs
hyprlandConfig.enable = true; btopConfig.enable = true;
autojumpConfig.enable = true; swayncConfig.enable = true;
stylixHomeConfig.enable = true; userPkgs.enable = true;
waybarConfig.enable = true; cavaConfig.enable = true;
gtkConfig.enable = true; ezaConfig.enable = true;
spicetifyConfig.enable = true; firefoxConfig.enable = true;
starshipConfig.enable = true; fuzzelConfig.enable = true;
fzfConfig.enable = true;
gitConfig.enable = true;
kittyConfig.enable = true;
yaziConfig.enable = true;
zshConfig.enable = true;
passConfig.enable = true;
batConfig.enable = true;
# modules/home/programs # modules/home/scripts
btopConfig.enable = true; movScripts.enable = true;
swayncConfig.enable = true; movScripts.commandScripts.enable = true;
userPkgs.enable = true; movScripts.hyprlandControls.enable = true;
cavaConfig.enable = true; movScripts.nixShortcuts.enable = true;
ezaConfig.enable = true; };
firefoxConfig.enable = true;
fuzzelConfig.enable = true;
fzfConfig.enable = true;
gitConfig.enable = true;
kittyConfig.enable = true;
yaziConfig.enable = true;
zshConfig.enable = true;
passConfig.enable = true;
batConfig.enable = true;
# modules/home/scripts dconf.settings = lib.mkIf config.movOpts.virtConfig.enable {
movScripts.enable = true;
movScripts.commandScripts.enable = true;
movScripts.hyprlandControls.enable = true;
movScripts.nixShortcuts.enable = true;
dconf.settings = lib.mkIf config.virtConfig.enable {
"org/virt-manager/virt-manager/connections" = { "org/virt-manager/virt-manager/connections" = {
autoconnect = ["qemu:///system"]; autoconnect = ["qemu:///system"];
uris = ["qemu:///system"]; uris = ["qemu:///system"];

View File

@@ -59,7 +59,7 @@ in {
movScripts.hyprlandControls.enable = true; movScripts.hyprlandControls.enable = true;
movScripts.nixShortcuts.enable = true; movScripts.nixShortcuts.enable = true;
dconf.settings = lib.mkIf config.virtConfig.enable { dconf.settings = lib.mkIf config.movOpts.virtConfig.enable {
"org/virt-manager/virt-manager/connections" = { "org/virt-manager/virt-manager/connections" = {
autoconnect = ["qemu:///system"]; autoconnect = ["qemu:///system"];
uris = ["qemu:///system"]; uris = ["qemu:///system"];

View File

@@ -15,37 +15,39 @@
./files.nix ./files.nix
]; ];
# ./files movOpts = {
homeFiles.enable = lib.mkDefault false; # ./files
homeFiles.enable = lib.mkDefault false;
# ./environment # ./environment
hyprlandConfig.enable = lib.mkDefault false; hyprlandConfig.enable = lib.mkDefault false;
autojumpConfig.enable = lib.mkDefault false; autojumpConfig.enable = lib.mkDefault false;
stylixHomeConfig.enable = lib.mkDefault false; stylixHomeConfig.enable = lib.mkDefault false;
waybarConfig.enable = lib.mkDefault false; waybarConfig.enable = lib.mkDefault false;
gtkConfig.enable = lib.mkDefault false; gtkConfig.enable = lib.mkDefault false;
spicetifyConfig.enable = lib.mkDefault false; spicetifyConfig.enable = lib.mkDefault false;
starshipConfig.enable = lib.mkDefault false; starshipConfig.enable = lib.mkDefault false;
# ./programs # ./programs
btopConfig.enable = lib.mkDefault false; btopConfig.enable = lib.mkDefault false;
swayncConfig.enable = lib.mkDefault false; swayncConfig.enable = lib.mkDefault false;
userPkgs.enable = lib.mkDefault false; userPkgs.enable = lib.mkDefault false;
cavaConfig.enable = lib.mkDefault false; cavaConfig.enable = lib.mkDefault false;
ezaConfig.enable = lib.mkDefault false; ezaConfig.enable = lib.mkDefault false;
firefoxConfig.enable = lib.mkDefault false; firefoxConfig.enable = lib.mkDefault false;
fuzzelConfig.enable = lib.mkDefault false; fuzzelConfig.enable = lib.mkDefault false;
fzfConfig.enable = lib.mkDefault false; fzfConfig.enable = lib.mkDefault false;
gitConfig.enable = lib.mkDefault false; gitConfig.enable = lib.mkDefault false;
kittyConfig.enable = lib.mkDefault false; kittyConfig.enable = lib.mkDefault false;
yaziConfig.enable = lib.mkDefault false; yaziConfig.enable = lib.mkDefault false;
zshConfig.enable = lib.mkDefault false; zshConfig.enable = lib.mkDefault false;
passConfig.enable = lib.mkDefault false; passConfig.enable = lib.mkDefault false;
batConfig.enable = lib.mkDefault false; batConfig.enable = lib.mkDefault false;
# ./scripts # ./scripts
movScripts.enable = lib.mkDefault false; movScripts.enable = lib.mkDefault false;
movScripts.commandScripts.enable = lib.mkDefault false; movScripts.commandScripts.enable = lib.mkDefault false;
movScripts.hyprlandControls.enable = lib.mkDefault false; movScripts.hyprlandControls.enable = lib.mkDefault false;
movScripts.nixShortcuts.enable = lib.mkDefault false; movScripts.nixShortcuts.enable = lib.mkDefault false;
};
} }

View File

@@ -1,8 +1,8 @@
{lib, config, pkgs, ... }: { {lib, config, pkgs, ... }: {
options = { options = {
gtkConfig.enable = lib.mkEnableOption "enable my gtk options"; movOpts.gtkConfig.enable = lib.mkEnableOption "enable my gtk options";
}; };
config = lib.mkIf config.gtkConfig.enable { config = lib.mkIf config.movOpts.gtkConfig.enable {
fonts.fontconfig.enable = true; fonts.fontconfig.enable = true;
home.packages = with pkgs; [ home.packages = with pkgs; [
(nerdfonts.override { (nerdfonts.override {

View File

@@ -12,9 +12,9 @@
scheme = config.lib.stylix.colors; scheme = config.lib.stylix.colors;
in { in {
options = { options = {
hyprlandConfig.enable = lib.mkEnableOption "enables my hyprland config"; movOpts.hyprlandConfig.enable = lib.mkEnableOption "enables my hyprland config";
}; };
config = lib.mkIf config.hyprlandConfig.enable { config = lib.mkIf config.movOpts.hyprlandConfig.enable {
home.packages = with pkgs; [ home.packages = with pkgs; [
swaybg swaybg
inputs.hypr-contrib.packages.${pkgs.system}.grimblast inputs.hypr-contrib.packages.${pkgs.system}.grimblast

View File

@@ -4,9 +4,9 @@
in { in {
imports = [inputs.spicetify-nix.homeManagerModules.default]; imports = [inputs.spicetify-nix.homeManagerModules.default];
options = { options = {
spicetifyConfig.enable = lib.mkEnableOption "enable my spicetify options"; movOpts.spicetifyConfig.enable = lib.mkEnableOption "enable my spicetify options";
}; };
config = lib.mkIf config.spicetifyConfig.enable { config = lib.mkIf config.movOpts.spicetifyConfig.enable {
nixpkgs.config.allowUnfreePredicate = pkg: nixpkgs.config.allowUnfreePredicate = pkg:
builtins.elem (lib.getName pkg) [ builtins.elem (lib.getName pkg) [
"spotify" "spotify"

View File

@@ -1,8 +1,8 @@
{config, lib, inputs, ... }: { {config, lib, inputs, ... }: {
options = { options = {
starshipConfig.enable = lib.mkEnableOption "enables my starship configuration"; movOpts.starshipConfig.enable = lib.mkEnableOption "enables my starship configuration";
}; };
config = lib.mkIf config.starshipConfig.enable { config = lib.mkIf config.movOpts.starshipConfig.enable {
programs.starship = { programs.starship = {
enable = true; enable = true;
enableZshIntegration = false; enableZshIntegration = false;

View File

@@ -1,8 +1,8 @@
{lib, config, pkgs, ... }: { {lib, config, pkgs, ... }: {
options = { options = {
stylixHomeConfig.enable = lib.mkEnableOption "enables my stylix Home-Manager options"; movOpts.stylixHomeConfig.enable = lib.mkEnableOption "enables my stylix Home-Manager options";
}; };
config = lib.mkIf config.stylixHomeConfig.enable { config = lib.mkIf config.movOpts.stylixHomeConfig.enable {
stylix = { stylix = {
enable = true; enable = true;
autoEnable = true; autoEnable = true;

View File

@@ -1,8 +1,8 @@
{lib, config, pkgs, ...}: { {lib, config, pkgs, ...}: {
options = { options = {
swayncConfig.enable = lib.mkEnableOption "enables my swaync configuration"; movOpts.swayncConfig.enable = lib.mkEnableOption "enables my swaync configuration";
}; };
config = lib.mkIf config.swayncConfig.enable { config = lib.mkIf config.movOpts.swayncConfig.enable {
home.packages = with pkgs; [swaynotificationcenter]; home.packages = with pkgs; [swaynotificationcenter];
xdg.configFile."swaync/style.css".text = '' xdg.configFile."swaync/style.css".text = ''
@define-color shadow rgba(0, 0, 0, 0.25); @define-color shadow rgba(0, 0, 0, 0.25);

View File

@@ -19,9 +19,9 @@ let
in in
{ {
options = { options = {
userPkgs.enable = lib.mkEnableOption "enables my default user packages"; movOpts.userPkgs.enable = lib.mkEnableOption "enables my default user packages";
}; };
config = lib.mkIf config.userPkgs.enable { config = lib.mkIf config.movOpts.userPkgs.enable {
home.packages = with pkgs; home.packages = with pkgs;
[ [
nemo nemo

View File

@@ -57,7 +57,7 @@ let
]; ];
in { in {
options = { options = {
waybarConfig.enable = lib.mkEnableOption "enables my waybar configuration"; movOpts.waybarConfig.enable = lib.mkEnableOption "enables my waybar configuration";
}; };
config = { config = {
programs.waybar = { programs.waybar = {

View File

@@ -1,8 +1,8 @@
{lib, config, self, ...}: { {lib, config, self, ...}: {
options = { options = {
zshConfig.enable = lib.mkEnableOption "enables my zsh configuration"; movOpts.zshConfig.enable = lib.mkEnableOption "enables my zsh configuration";
}; };
config = lib.mkIf config.zshConfig.enable { config = lib.mkIf config.movOpts.zshConfig.enable {
programs.zoxide = { programs.zoxide = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = true;

View File

@@ -28,7 +28,7 @@ let
in in
{ {
options = { options = {
homeFiles.enable = lib.mkEnableOption "enables declared custom files"; movOpts.homeFiles.enable = lib.mkEnableOption "enables declared custom files";
}; };
config = { config = {
home.file = { home.file = {

View File

@@ -1,8 +1,8 @@
{lib, config, ...}: { {lib, config, ...}: {
options = { options = {
autojumpConfig.enable = lib.mkEnableOption "enables my autojump options"; movOpts.autojumpConfig.enable = lib.mkEnableOption "enables my autojump options";
}; };
config = lib.mkIf config.autojumpConfig.enable { config = lib.mkIf config.movOpts.autojumpConfig.enable {
programs.autojump = { programs.autojump = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = true;

View File

@@ -1,8 +1,8 @@
{lib, config, inputs, ...}: { {lib, config, inputs, ...}: {
options = { options = {
batConfig.enable = lib.mkEnableOption "enables my bat options"; movOpts.batConfig.enable = lib.mkEnableOption "enables my bat options";
}; };
config = lib.mkIf config.batConfig.enable { config = lib.mkIf config.movOpts.batConfig.enable {
programs.bat = { programs.bat = {
enable = true; enable = true;
config = { config = {

View File

@@ -1,8 +1,8 @@
{lib, config, pkgs, ...}: { {lib, config, pkgs, ...}: {
options = { options = {
btopConfig.enable = lib.mkEnableOption "enables my btop config"; movOpts.btopConfig.enable = lib.mkEnableOption "enables my btop config";
}; };
config = lib.mkIf config.btopConfig.enable { config = lib.mkIf config.movOpts.btopConfig.enable {
programs.btop = { programs.btop = {
enable = true; enable = true;

View File

@@ -1,8 +1,8 @@
{lib, config, inputs, pkgs, ... }: { {lib, config, inputs, pkgs, ... }: {
options = { options = {
cavaConfig.enable = lib.mkEnableOption "enables my cava settings"; movOpts.cavaConfig.enable = lib.mkEnableOption "enables my cava settings";
}; };
config = lib.mkIf config.cavaConfig.enable { config = lib.mkIf config.movOpts.cavaConfig.enable {
programs.cava = { programs.cava = {
enable = true; enable = true;
}; };

View File

@@ -1,8 +1,8 @@
{lib, config, ...}: { {lib, config, ...}: {
options = { options = {
ezaConfig.enable = lib.mkEnableOption "enables my eza options"; movOpts.ezaConfig.enable = lib.mkEnableOption "enables my eza options";
}; };
config = lib.mkIf config.ezaConfig.enable { config = lib.mkIf config.movOpts.ezaConfig.enable {
programs.eza = { programs.eza = {
enable = true; enable = true;
enableZshIntegration = false; enableZshIntegration = false;

View File

@@ -1,8 +1,8 @@
{lib, config, nur, username, self, ... }: { {lib, config, nur, username, self, ... }: {
options = { options = {
firefoxConfig.enable = lib.mkEnableOption "enables my firefox configuration"; movOpts.firefoxConfig.enable = lib.mkEnableOption "enables my firefox configuration";
}; };
config = lib.mkIf config.firefoxConfig.enable { config = lib.mkIf config.movOpts.firefoxConfig.enable {
programs.firefox = { programs.firefox = {
enable = true; enable = true;
policies = { policies = {

View File

@@ -1,8 +1,8 @@
{config, lib, ...}: { {config, lib, ...}: {
options = { options = {
fuzzelConfig.enable = lib.mkEnableOption "enables my fuzzel configuration"; movOpts.fuzzelConfig.enable = lib.mkEnableOption "enables my fuzzel configuration";
}; };
config = lib.mkIf config.fuzzelConfig.enable { config = lib.mkIf config.movOpts.fuzzelConfig.enable {
programs.fuzzel = { programs.fuzzel = {
enable = true; enable = true;
settings = { settings = {

View File

@@ -1,8 +1,8 @@
{lib, config, ...}: { {lib, config, ...}: {
options = { options = {
fzfConfig.enable = lib.mkEnableOption "enables my fzf options"; movOpts.fzfConfig.enable = lib.mkEnableOption "enables my fzf options";
}; };
config = lib.mkIf config.fzfConfig.enable { config = lib.mkIf config.movOpts.fzfConfig.enable {
programs.fzf = { programs.fzf = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = true;

View File

@@ -1,8 +1,8 @@
{lib, config, username, ...}: { {lib, config, username, ...}: {
options = { options = {
gitConfig.enable = lib.mkEnableOption "enables my git configuration"; movOpts.gitConfig.enable = lib.mkEnableOption "enables my git configuration";
}; };
config = lib.mkIf config.gitConfig.enable { config = lib.mkIf config.movOpts.gitConfig.enable {
programs.git = { programs.git = {
enable = true; enable = true;
userEmail = "${username}@gmail.com"; userEmail = "${username}@gmail.com";

View File

@@ -1,8 +1,8 @@
{lib, config, pkgs, ... }: { {lib, config, pkgs, ... }: {
options = { options = {
kittyConfig.enable = lib.mkEnableOption "enables my kitty configuration"; movOpts.kittyConfig.enable = lib.mkEnableOption "enables my kitty configuration";
}; };
config = lib.mkIf config.kittyConfig.enable { config = lib.mkIf config.movOpts.kittyConfig.enable {
programs.kitty = { programs.kitty = {
enable = true; enable = true;

View File

@@ -2,9 +2,9 @@
home = "/home/${username}"; home = "/home/${username}";
in { in {
options = { options = {
passConfig.enable = lib.mkEnableOption "enables my pass config"; movOpts.passConfig.enable = lib.mkEnableOption "enables my pass config";
}; };
config = lib.mkIf config.passConfig.enable { config = lib.mkIf config.movOpts.passConfig.enable {
programs.password-store = { programs.password-store = {
enable = true; enable = true;
settings = { settings = {

View File

@@ -1,8 +1,8 @@
{lib, config, ...}: { {lib, config, ...}: {
options = { options = {
yaziConfig.enable = lib.mkEnableOption "enables my yazi config"; movOpts.yaziConfig.enable = lib.mkEnableOption "enables my yazi config";
}; };
config = lib.mkIf config.yaziConfig.enable { config = lib.mkIf config.movOpts.yaziConfig.enable {
programs.yazi = { programs.yazi = {
enable = true; enable = true;
enableZshIntegration = true; enableZshIntegration = true;

View File

@@ -28,76 +28,76 @@
name: name:
lib.mkEnableOption lib.mkEnableOption
"${doc}" // { "${doc}" // {
default = config.movScripts.enable && config.movScripts.${group}.enable; default = config.movOpts.movScripts.enable && config.movOpts.movScripts.${group}.enable;
}; };
in { in {
options = { options = {
movScripts.enable = lib.mkEnableOption "Enables all pagedmov's scripts"; movOpts.movScripts.enable = lib.mkEnableOption "Enables all pagedmov's scripts";
# Enable or disable by group # Enable or disable by group
movScripts.commandScripts.enable = movOpts.movScripts.commandScripts.enable =
lib.mkEnableOption "Enables all command scripts"; lib.mkEnableOption "Enables all command scripts";
movScripts.hyprlandControls.enable = movOpts.movScripts.hyprlandControls.enable =
lib.mkEnableOption "Enables all Hyprland control scripts"; lib.mkEnableOption "Enables all Hyprland control scripts";
movScripts.nixShortcuts.enable = movOpts.movScripts.nixShortcuts.enable =
lib.mkEnableOption "Enables all Nix shortcut scripts"; lib.mkEnableOption "Enables all Nix shortcut scripts";
# Individual options using scriptOverride or mkEnableOption directly # Individual options using scriptOverride or mkEnableOption directly
movScripts.commandScripts.icanhazip.enable = movOpts.movScripts.commandScripts.icanhazip.enable =
scriptOverride "Enables the icanhazip command" "commandScripts" "icanhazip"; scriptOverride "Enables the icanhazip command" "commandScripts" "icanhazip";
movScripts.commandScripts.invoke.enable = movOpts.movScripts.commandScripts.invoke.enable =
scriptOverride "Enables the invoke command" "commandScripts" "invoke"; scriptOverride "Enables the invoke command" "commandScripts" "invoke";
movScripts.commandScripts.runbg.enable = movOpts.movScripts.commandScripts.runbg.enable =
scriptOverride "Enables the runbg command - written by FrostPhoenix" "commandScripts" "runbg"; scriptOverride "Enables the runbg command - written by FrostPhoenix" "commandScripts" "runbg";
movScripts.commandScripts.splash.enable = movOpts.movScripts.commandScripts.splash.enable =
scriptOverride "Enables the splash screen when opening a terminal" "commandScripts" "splash"; scriptOverride "Enables the splash screen when opening a terminal" "commandScripts" "splash";
movScripts.commandScripts.toolbelt.enable = movOpts.movScripts.commandScripts.toolbelt.enable =
scriptOverride "Enables the toolbelt command" "commandScripts" "toolbelt"; scriptOverride "Enables the toolbelt command" "commandScripts" "toolbelt";
movScripts.commandScripts.viconf.enable = movOpts.movScripts.commandScripts.viconf.enable =
scriptOverride "Enables the viconf command" "commandScripts" "viconf"; scriptOverride "Enables the viconf command" "commandScripts" "viconf";
movScripts.hyprlandControls.chpaper.enable = movOpts.movScripts.hyprlandControls.chpaper.enable =
scriptOverride "Enables the chpaper command" "hyprlandControls" "chpaper"; scriptOverride "Enables the chpaper command" "hyprlandControls" "chpaper";
movScripts.hyprlandControls.scheck.enable = movOpts.movScripts.hyprlandControls.scheck.enable =
scriptOverride "Enables the scheck command" "hyprlandControls" "scheck"; scriptOverride "Enables the scheck command" "hyprlandControls" "scheck";
movScripts.hyprlandControls.chscheme.enable = movOpts.movScripts.hyprlandControls.chscheme.enable =
scriptOverride "Enables the chscheme command" "hyprlandControls" "chscheme"; scriptOverride "Enables the chscheme command" "hyprlandControls" "chscheme";
movScripts.hyprlandControls.keyring.enable = movOpts.movScripts.hyprlandControls.keyring.enable =
scriptOverride "Enables the keyring command" "hyprlandControls" "keyring"; scriptOverride "Enables the keyring command" "hyprlandControls" "keyring";
movScripts.hyprlandControls.moveonscreen.enable = movOpts.movScripts.hyprlandControls.moveonscreen.enable =
scriptOverride "Ensures floating windows remain on screen" "hyprlandControls" "moveonscreen"; scriptOverride "Ensures floating windows remain on screen" "hyprlandControls" "moveonscreen";
movScripts.hyprlandControls.switchmon.enable = movOpts.movScripts.hyprlandControls.switchmon.enable =
scriptOverride "Moves cursor to the center of the second monitor" "hyprlandControls" "switchmon"; scriptOverride "Moves cursor to the center of the second monitor" "hyprlandControls" "switchmon";
movScripts.hyprlandControls.mkscreenshots.enable = movOpts.movScripts.hyprlandControls.mkscreenshots.enable =
scriptOverride "Generates screenshots, and updates the README.md with the current rev hash" "hyprlandControls" "switchmon"; scriptOverride "Generates screenshots, and updates the README.md with the current rev hash" "hyprlandControls" "switchmon";
movScripts.nixShortcuts.garbage-collect.enable = movOpts.movScripts.nixShortcuts.garbage-collect.enable =
scriptOverride "Enables the garbage-collect script" "nixShortcuts" "garbage-collect"; scriptOverride "Enables the garbage-collect script" "nixShortcuts" "garbage-collect";
movScripts.nixShortcuts.nsp.enable = movOpts.movScripts.nixShortcuts.nsp.enable =
scriptOverride "Enables nsp as an alias for 'nix-shell -p'" "nixShortcuts" "nsp"; scriptOverride "Enables nsp as an alias for 'nix-shell -p'" "nixShortcuts" "nsp";
movScripts.nixShortcuts.rebuild.enable = movOpts.movScripts.nixShortcuts.rebuild.enable =
scriptOverride "Enables rebuild as an alias for 'sudo nixos-rebuild switch'" "nixShortcuts" "rebuild"; scriptOverride "Enables rebuild as an alias for 'sudo nixos-rebuild switch'" "nixShortcuts" "rebuild";
}; };
config = lib.mkIf config.movScripts.enable { config = lib.mkIf config.movOpts.movScripts.enable {
home.packages = lib.optionals config.movScripts.commandScripts.invoke.enable [ invoke ] home.packages = lib.optionals config.movOpts.movScripts.commandScripts.invoke.enable [ invoke ]
++ lib.optionals config.movScripts.commandScripts.runbg.enable [ runbg ] ++ lib.optionals config.movOpts.movScripts.commandScripts.runbg.enable [ runbg ]
++ lib.optionals config.movScripts.commandScripts.icanhazip.enable [ icanhazip ] ++ lib.optionals config.movOpts.movScripts.commandScripts.icanhazip.enable [ icanhazip ]
++ lib.optionals config.movScripts.commandScripts.splash.enable [ splash ] ++ lib.optionals config.movOpts.movScripts.commandScripts.splash.enable [ splash ]
++ lib.optionals config.movScripts.commandScripts.toolbelt.enable [ toolbelt ] ++ lib.optionals config.movOpts.movScripts.commandScripts.toolbelt.enable [ toolbelt ]
++ lib.optionals config.movScripts.commandScripts.viconf.enable [ viconf ] ++ lib.optionals config.movOpts.movScripts.commandScripts.viconf.enable [ viconf ]
++ lib.optionals config.movScripts.hyprlandControls.chpaper.enable [ chpaper ] ++ lib.optionals config.movOpts.movScripts.hyprlandControls.chpaper.enable [ chpaper ]
++ lib.optionals config.movScripts.hyprlandControls.scheck.enable [ scheck ] ++ lib.optionals config.movOpts.movScripts.hyprlandControls.scheck.enable [ scheck ]
++ lib.optionals config.movScripts.hyprlandControls.chscheme.enable [ chscheme ] ++ lib.optionals config.movOpts.movScripts.hyprlandControls.chscheme.enable [ chscheme ]
++ lib.optionals config.movScripts.hyprlandControls.keyring.enable [ keyring ] ++ lib.optionals config.movOpts.movScripts.hyprlandControls.keyring.enable [ keyring ]
++ lib.optionals config.movScripts.hyprlandControls.moveonscreen.enable [ moveonscreen ] ++ lib.optionals config.movOpts.movScripts.hyprlandControls.moveonscreen.enable [ moveonscreen ]
++ lib.optionals config.movScripts.hyprlandControls.switchmon.enable [ switchmon ] ++ lib.optionals config.movOpts.movScripts.hyprlandControls.switchmon.enable [ switchmon ]
++ lib.optionals config.movScripts.hyprlandControls.mkscreenshots.enable [ mkscreenshots ] ++ lib.optionals config.movOpts.movScripts.hyprlandControls.mkscreenshots.enable [ mkscreenshots ]
++ lib.optionals config.movScripts.nixShortcuts.garbage-collect.enable [ garbage-collect ] ++ lib.optionals config.movOpts.movScripts.nixShortcuts.garbage-collect.enable [ garbage-collect ]
++ lib.optionals config.movScripts.nixShortcuts.nsp.enable [ nsp ] ++ lib.optionals config.movOpts.movScripts.nixShortcuts.nsp.enable [ nsp ]
++ lib.optionals config.movScripts.nixShortcuts.rebuild.enable [ rebuild ]; ++ lib.optionals config.movOpts.movScripts.nixShortcuts.rebuild.enable [ rebuild ];
}; };
} }

View File

@@ -4,7 +4,7 @@
options = { options = {
jellyfinConfig.enable = lib.mkEnableOption "Enables the server's jellyfin config"; jellyfinConfig.enable = lib.mkEnableOption "Enables the server's jellyfin config";
}; };
config = lib.mkIf config.jellyfinConfig.enable { config = lib.mkIf config.movOpts.jellyfinConfig.enable {
services.jellyfin = { services.jellyfin = {
enable = true; enable = true;
openFirewall = true; openFirewall = true;

View File

@@ -4,7 +4,7 @@
options = { options = {
caddyConfig.enable = lib.mkEnableOption "Enable my caddy config for the glasshaus.info domain name"; caddyConfig.enable = lib.mkEnableOption "Enable my caddy config for the glasshaus.info domain name";
}; };
config = lib.mkIf config.caddyConfig.enable { config = lib.mkIf config.movOpts.caddyConfig.enable {
services.caddy = { services.caddy = {
enable = true; enable = true;
configFile = pkgs.writeText "Caddyfile" '' configFile = pkgs.writeText "Caddyfile" ''

View File

@@ -14,17 +14,19 @@
./environment ./environment
]; ];
networkModule.enable = lib.mkDefault false; movOpts = {
nixSettings.enable = lib.mkDefault false; networkModule.enable = lib.mkDefault false;
bootLoader.enable = lib.mkDefault false; nixSettings.enable = lib.mkDefault false;
issue.enable = lib.mkDefault false; bootLoader.enable = lib.mkDefault false;
sddmConfig.enable = lib.mkDefault false; issue.enable = lib.mkDefault false;
stylixConfig.enable = lib.mkDefault false; sddmConfig.enable = lib.mkDefault false;
gamingPkgs.enable = lib.mkDefault false; stylixConfig.enable = lib.mkDefault false;
steamConfig.enable = lib.mkDefault false; gamingPkgs.enable = lib.mkDefault false;
sysPkgs.enable = lib.mkDefault false; steamConfig.enable = lib.mkDefault false;
sysProgs.enable = lib.mkDefault false; sysPkgs.enable = lib.mkDefault false;
sysServices.enable = lib.mkDefault false; sysProgs.enable = lib.mkDefault false;
virtConfig.enable = lib.mkDefault false; sysServices.enable = lib.mkDefault false;
powerProfiles.enable = lib.mkDefault false; virtConfig.enable = lib.mkDefault false;
powerProfiles.enable = lib.mkDefault false;
};
} }

View File

@@ -1,8 +1,8 @@
{lib, config, ...}: { {lib, config, ...}: {
options = { options = {
issue.enable = lib.mkEnableOption "enables custom /etc/issue splash screen for the tty"; movOpts.issue.enable = lib.mkEnableOption "enables custom /etc/issue splash screen for the tty";
}; };
config = lib.mkIf config.issue.enable { config = lib.mkIf config.movOpts.issue.enable {
environment.etc."issue".text = '' environment.etc."issue".text = ''
\e[38;5;27m \e[38;5;81m \e[38;5;27m \e[38;5;81m

View File

@@ -1,8 +1,8 @@
{lib, config, ... }: { {lib, config, ... }: {
options = { options = {
nixSettings.enable = lib.mkEnableOption "enables my nixos settings"; movOpts.nixSettings.enable = lib.mkEnableOption "enables my nixos settings";
}; };
config = lib.mkIf config.nixSettings.enable { config = lib.mkIf config.movOpts.nixSettings.enable {
system.stateVersion = "24.05"; system.stateVersion = "24.05";
nixpkgs.config.allowUnfree = true; nixpkgs.config.allowUnfree = true;
nix = { nix = {

View File

@@ -6,9 +6,9 @@
... ...
}: { }: {
options = { options = {
sddmConfig.enable = lib.mkEnableOption "enables custom sddm configuration"; movOpts.sddmConfig.enable = lib.mkEnableOption "enables custom sddm configuration";
}; };
config = lib.mkIf config.sddmConfig.enable { config = lib.mkIf config.movOpts.sddmConfig.enable {
environment.systemPackages = [ environment.systemPackages = [
( (
pkgs.catppuccin-sddm.override { pkgs.catppuccin-sddm.override {

View File

@@ -12,9 +12,9 @@ let
in in
{ {
options = { options = {
stylixConfig.enable = lib.mkEnableOption "enables custom stylix options"; movOpts.stylixConfig.enable = lib.mkEnableOption "enables custom stylix options";
}; };
config = lib.mkIf config.stylixConfig.enable { config = lib.mkIf config.movOpts.stylixConfig.enable {
stylix = { stylix = {
enable = true; enable = true;
base16Scheme = "${pkgs.base16-schemes}/share/themes/${scheme}.yaml"; base16Scheme = "${pkgs.base16-schemes}/share/themes/${scheme}.yaml";

View File

@@ -1,9 +1,8 @@
{pkgs, lib, config, ...}: { {pkgs, lib, config, ...}: {
options = { options = {
# make this enabled by default!!! movOpts.bootLoader.enable = lib.mkEnableOption "enables bootloader config";
bootLoader.enable = lib.mkEnableOption "enables bootloader config";
}; };
config = lib.mkIf config.bootLoader.enable { config = lib.mkIf config.movOpts.bootLoader.enable {
boot = { boot = {
loader.systemd-boot.enable = true; loader.systemd-boot.enable = true;
loader.efi.canTouchEfiVariables = true; loader.efi.canTouchEfiVariables = true;

View File

@@ -1,9 +1,9 @@
{host, lib, config, ...}: {host, lib, config, ...}:
{ {
options = { options = {
networkModule.enable = lib.mkEnableOption "enables network configuration"; movOpts.networkModule.enable = lib.mkEnableOption "enables network configuration";
}; };
config = lib.mkIf config.networkModule.enable { config = lib.mkIf config.movOpts.networkModule.enable {
networking = { networking = {
networkmanager.enable = true; networkmanager.enable = true;
hostName = "${host}"; hostName = "${host}";

View File

@@ -1,8 +1,8 @@
{lib, config, ... }: { {lib, config, ... }: {
options = { options = {
powerProfiles.enable = lib.mkEnableOption "enables power profiles"; movOpts.powerProfiles.enable = lib.mkEnableOption "enables power profiles";
}; };
config = lib.mkIf config.powerProfiles.enable { config = lib.mkIf config.movOpts.powerProfiles.enable {
services = { services = {
power-profiles-daemon.enable = true; power-profiles-daemon.enable = true;

View File

@@ -22,7 +22,7 @@ in
nixpkgs.expr = "import <nixpkgs> { }"; nixpkgs.expr = "import <nixpkgs> { }";
formatting.command = "nixfmt"; formatting.command = "nixfmt";
options = { options = {
nixos.expr = "(builtins.getFlake \"${flakePath}\").nixosConfigurations.${host}.options"; nixos.expr = "(builtins.getFlake \"github:pagedMov/nixos-config\").nixosConfigurations.xenon.options";
}; };
}; };
}; };