aboutsummaryrefslogtreecommitdiffstats
path: root/modules/desktop
diff options
context:
space:
mode:
authorArpit Chakladar <arpitchakladar@gmail.com>2026-09-24 04:02:19 +0530
committerArpit Chakladar <arpitchakladar@gmail.com>2026-09-24 04:02:19 +0530
commit5ea8c30b7b82d4c1e7164541892066b1f24f7d22 (patch)
treead9b994cc5415f63bae1f2342f520756d43c67ce /modules/desktop
parentad96214c9ab94bce925000a6059e3c68e2ff6a22 (diff)
parent748669e19daa3afc8f0cfe10eedc19ae9766ed2c (diff)
downloadhome-manager-config-5ea8c30b7b82d4c1e7164541892066b1f24f7d22.tar.gz
home-manager-config-5ea8c30b7b82d4c1e7164541892066b1f24f7d22.zip
Merge branch 'massive-refactoring'
Diffstat (limited to 'modules/desktop')
-rw-r--r--modules/desktop/eww/default.nix15
-rw-r--r--modules/desktop/mako/default.nix5
-rw-r--r--modules/desktop/niri/default.nix45
-rw-r--r--modules/desktop/rofi/default.nix3
-rw-r--r--modules/desktop/swayidle/default.nix7
-rw-r--r--modules/desktop/wl-clipboard/default.nix5
-rw-r--r--modules/desktop/xdg/default.nix5
7 files changed, 61 insertions, 24 deletions
diff --git a/modules/desktop/eww/default.nix b/modules/desktop/eww/default.nix
index be6236f..a0727cd 100644
--- a/modules/desktop/eww/default.nix
+++ b/modules/desktop/eww/default.nix
@@ -6,6 +6,7 @@
...
}:
let
+ cfg = config.desktop.eww;
base16Colors = import ../../colors/base16 { inherit config lib pkgs; };
in
{
@@ -46,10 +47,10 @@ in
[
config.fonts.normal
(toString config.fonts.size)
- (toString config.fonts.iconSize)
- (toString config.fonts.labelSize)
- (toString config.fonts.smallSize)
- (toString config.fonts.idxSize)
+ (toString config.fonts.icon-size)
+ (toString config.fonts.label-size)
+ (toString config.fonts.small-size)
+ (toString config.fonts.idx-size)
]
(builtins.readFile ./eww.scss);
in
@@ -67,9 +68,9 @@ in
Service = {
Type = "oneshot";
RemainAfterExit = true;
- ExecStart = "${lib.getExe config.desktop.eww.package} open bar";
- ExecReload = "${lib.getExe config.desktop.eww.package} reload && ${lib.getExe config.desktop.eww.package} open bar";
- ExecStop = "${lib.getExe config.desktop.eww.package} kill";
+ ExecStart = "${lib.getExe cfg.package} open bar";
+ ExecReload = "${lib.getExe cfg.package} reload && ${lib.getExe cfg.package} open bar";
+ ExecStop = "${lib.getExe cfg.package} kill";
Restart = "on-failure";
};
Install.WantedBy = [ "graphical-session.target" ];
diff --git a/modules/desktop/mako/default.nix b/modules/desktop/mako/default.nix
index 2123b57..a918d02 100644
--- a/modules/desktop/mako/default.nix
+++ b/modules/desktop/mako/default.nix
@@ -5,6 +5,9 @@
pkgs,
...
}:
+let
+ cfg = config.desktop.mako;
+in
{
imports = [ ./colors.nix ];
@@ -18,7 +21,7 @@
};
};
- config = lib.mkIf config.desktop.mako.enable {
+ config = lib.mkIf cfg.enable {
services.mako = {
enable = true;
settings = {
diff --git a/modules/desktop/niri/default.nix b/modules/desktop/niri/default.nix
index a5de8d8..b17ea12 100644
--- a/modules/desktop/niri/default.nix
+++ b/modules/desktop/niri/default.nix
@@ -6,6 +6,7 @@
...
}:
let
+ cfg = config.desktop;
base16Colors = import ../../colors/base16 { inherit config lib pkgs; };
in
{
@@ -15,19 +16,43 @@ in
];
options.desktop = {
- niri.package = lib.mkOption {
- type = lib.types.package;
- readOnly = true;
- default = config.wayland.windowManager.niri.package;
- description = "The niri package to use.";
+ niri = lib.mkOption {
+ type = lib.types.submodule {
+ options = {
+ package = lib.mkOption {
+ type = lib.types.package;
+ readOnly = true;
+ default = config.wayland.windowManager.niri.package;
+ description = "The niri package to use.";
+ };
+ };
+ };
+ default = { };
+ description = "Niri window manager configuration.";
};
hardware.gpu = {
- nvidia.enable = lib.mkEnableOption "Nvidia GPU Wayland optimizations";
- amd.enable = lib.mkEnableOption "AMD GPU Wayland optimizations";
+ nvidia = lib.mkOption {
+ type = lib.types.submodule {
+ options = {
+ enable = lib.mkEnableOption "Nvidia GPU Wayland optimizations";
+ };
+ };
+ default = { };
+ description = "NVIDIA GPU configuration.";
+ };
+ amd = lib.mkOption {
+ type = lib.types.submodule {
+ options = {
+ enable = lib.mkEnableOption "AMD GPU Wayland optimizations";
+ };
+ };
+ default = { };
+ description = "AMD GPU configuration.";
+ };
};
};
- config = lib.mkIf config.desktop.enable {
+ config = lib.mkIf cfg.enable {
home.sessionVariables = lib.mkMerge [
{
NIXOS_OZONE_WL = "1";
@@ -38,7 +63,7 @@ in
QT_SCALE_FACTOR = "1";
}
- (lib.mkIf config.desktop.hardware.gpu.nvidia.enable {
+ (lib.mkIf cfg.hardware.gpu.nvidia.enable {
LIBVA_DRIVER_NAME = "nvidia";
__GLX_VENDOR_LIBRARY_NAME = "nvidia";
GBM_BACKEND = "nvidia-drm";
@@ -46,7 +71,7 @@ in
__GL_VRR_ALLOWED = "0";
})
- (lib.mkIf config.desktop.hardware.gpu.amd.enable {
+ (lib.mkIf cfg.hardware.gpu.amd.enable {
AMD_VULKAN_ICD = "RADV";
MESA_VK_DEVICE_SELECT = "1002:";
})
diff --git a/modules/desktop/rofi/default.nix b/modules/desktop/rofi/default.nix
index a15ce0a..ed1cf05 100644
--- a/modules/desktop/rofi/default.nix
+++ b/modules/desktop/rofi/default.nix
@@ -6,6 +6,7 @@
...
}:
let
+ cfg = config.desktop.rofi;
base16Colors = import ../../colors/base16 { inherit config lib pkgs; };
in
{
@@ -31,7 +32,7 @@ in
]
[
''"${config.fonts.normal} Bold ${toString config.fonts.size}"''
- ''"${config.fonts.normal} Bold ${toString config.fonts.idxSize}"''
+ ''"${config.fonts.normal} Bold ${toString config.fonts.idx-size}"''
]
(builtins.readFile ./theme.rasi);
in
diff --git a/modules/desktop/swayidle/default.nix b/modules/desktop/swayidle/default.nix
index e1acaa0..e2877b6 100644
--- a/modules/desktop/swayidle/default.nix
+++ b/modules/desktop/swayidle/default.nix
@@ -5,6 +5,9 @@
pkgs,
...
}:
+let
+ cfg = config.desktop.swayidle;
+in
{
options.desktop.swayidle = {
enable = lib.mkEnableOption "Enables swayidle.";
@@ -16,10 +19,10 @@
};
};
- config = lib.mkIf config.desktop.swayidle.enable {
+ config = lib.mkIf cfg.enable {
services.swayidle = {
enable = true;
- package = config.desktop.swayidle.package;
+ package = cfg.package;
systemdTargets = [ "graphical-session.target" ];
timeouts = [
{
diff --git a/modules/desktop/wl-clipboard/default.nix b/modules/desktop/wl-clipboard/default.nix
index 956a792..678e241 100644
--- a/modules/desktop/wl-clipboard/default.nix
+++ b/modules/desktop/wl-clipboard/default.nix
@@ -5,6 +5,9 @@
pkgs,
...
}:
+let
+ cfg = config.desktop.wl-clipboard;
+in
{
options.desktop.wl-clipboard = {
package = lib.mkOption {
@@ -16,6 +19,6 @@
};
config = lib.mkIf config.desktop.enable {
- home.packages = [ config.desktop.wl-clipboard.package ];
+ home.packages = [ cfg.package ];
};
}
diff --git a/modules/desktop/xdg/default.nix b/modules/desktop/xdg/default.nix
index 7f46d37..72b0290 100644
--- a/modules/desktop/xdg/default.nix
+++ b/modules/desktop/xdg/default.nix
@@ -6,10 +6,11 @@
...
}:
let
+ cfg = config.desktop;
base16Colors = import ../../colors/base16 { inherit config lib pkgs; };
in
{
- config = lib.mkIf config.desktop.enable {
+ config = lib.mkIf cfg.enable {
dconf.enable = true;
xdg.portal = {
@@ -37,7 +38,7 @@ in
enable = true;
font = {
name = config.fonts.normal;
- size = config.fonts.uiSize;
+ size = config.fonts.ui-size;
};
theme = {
name = "Adwaita-dark";