big refactor
This commit is contained in:
commit
76d68230f6
81 changed files with 3065 additions and 0 deletions
10
options/common/default.nix
Normal file
10
options/common/default.nix
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{ lib, ... }: {
|
||||
options.device = {
|
||||
flatpak.enable = lib.mkEnableOption "flatpak";
|
||||
flake-name = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "desktop";
|
||||
description = "Flake name for quick rebuild";
|
||||
};
|
||||
};
|
||||
}
|
||||
17
options/desktop/default.nix
Normal file
17
options/desktop/default.nix
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
{ lib, ... }: {
|
||||
imports = [
|
||||
../common/default.nix
|
||||
|
||||
./environment.nix
|
||||
./programs.nix
|
||||
./hardware.nix
|
||||
];
|
||||
|
||||
options.device = {
|
||||
cursors = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "aemeath";
|
||||
description = "Cursor theme to use for the desktop";
|
||||
};
|
||||
};
|
||||
}
|
||||
33
options/desktop/environment.nix
Normal file
33
options/desktop/environment.nix
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
{ lib, ... }: {
|
||||
options.device = {
|
||||
dm = {
|
||||
sddm = {
|
||||
enable = lib.mkEnableOption "sddm";
|
||||
theme = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "hyprland_kath";
|
||||
description = "astronaut theme name";
|
||||
};
|
||||
};
|
||||
|
||||
gdm.enable = lib.mkEnableOption "gdm";
|
||||
};
|
||||
|
||||
de = {
|
||||
kdePlasma.enable = lib.mkEnableOption "kde plasma";
|
||||
gnome.enable = lib.mkEnableOption "gnome";
|
||||
};
|
||||
|
||||
wm = {
|
||||
niri.enable = lib.mkEnableOption "niri";
|
||||
hyprland = {
|
||||
enable = lib.mkEnableOption "hyprland";
|
||||
monitors = lib.mkOption {
|
||||
type = lib.types.listOf lib.types.str;
|
||||
default = [ "eDP-1, 1920x1200@60, 0x0, 1" ];
|
||||
description = "Monitors settings";
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
}
|
||||
5
options/desktop/hardware.nix
Normal file
5
options/desktop/hardware.nix
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
{ lib, ... }: {
|
||||
options.device = {
|
||||
bluetooth.enable = lib.mkEnableOption "bluetooth";
|
||||
};
|
||||
}
|
||||
18
options/desktop/programs.nix
Normal file
18
options/desktop/programs.nix
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
{ lib, ... }: {
|
||||
options.device.programs = {
|
||||
terminal = lib.mkOption {
|
||||
type = lib.types.str;
|
||||
default = "ghostty";
|
||||
description = "Terminal";
|
||||
};
|
||||
|
||||
nixcord.enable = lib.mkEnableOption "nixcord";
|
||||
tmux.enable = lib.mkEnableOption "tmux";
|
||||
starship.enable = lib.mkEnableOption "starship";
|
||||
fastfetch.enable = lib.mkEnableOption "fastfetch";
|
||||
steam.enable = lib.mkEnableOption "steam";
|
||||
|
||||
obs-studio.enable = lib.mkEnableOption "Obs Studio";
|
||||
cider-2.enable = lib.mkEnableOption "Cider 2";
|
||||
};
|
||||
}
|
||||
Reference in a new issue