summaryrefslogtreecommitdiff
path: root/common/modules
diff options
context:
space:
mode:
authorbrustybee <beebeeb5k@gmail.com>2026-04-03 18:17:46 +0530
committerbrustybee <beebeeb5k@gmail.com>2026-04-03 18:17:46 +0530
commitf8223622fed02aef1075d41e4dba090df81bf6c1 (patch)
treedcff61f6f82dd6be4a8f31ab284e0fd41b53d9ad /common/modules
parenta4a87bd11e228a2a57bfedd48d3594371cf40329 (diff)
YEP.
Diffstat (limited to 'common/modules')
-rw-r--r--common/modules/default.nix3
-rw-r--r--common/modules/dwm/picom.nix60
-rw-r--r--common/modules/mango/default.nix4
-rw-r--r--common/modules/matugen/default.nix7
-rw-r--r--common/modules/x11/bspwm/default.nix (renamed from common/modules/bspwm/default.nix)6
-rw-r--r--common/modules/x11/default.nix (renamed from common/modules/dwm/default.nix)52
-rw-r--r--common/modules/x11/dwm/default.nix65
-rw-r--r--common/modules/x11/picom.nix63
8 files changed, 148 insertions, 112 deletions
diff --git a/common/modules/default.nix b/common/modules/default.nix
index bd9b4d6..d093757 100644
--- a/common/modules/default.nix
+++ b/common/modules/default.nix
@@ -10,8 +10,7 @@ let
};
modules = {
mango = import ./mango args;
- dwm = import ./dwm args;
- bspwm = import ./bspwm args;
+ x11 = import ./x11 args;
terminal = import ./terminal args;
beevim = import ./beevim args;
matugen = import ./matugen args;
diff --git a/common/modules/dwm/picom.nix b/common/modules/dwm/picom.nix
deleted file mode 100644
index b338df8..0000000
--- a/common/modules/dwm/picom.nix
+++ /dev/null
@@ -1,60 +0,0 @@
-{ config, lib, ... }:
-let
- cfg = config.beeMods.dwm.picom;
-in
-{
- config = lib.mkIf cfg.enable {
- services.picom = {
- enable = true;
- backend = "glx";
- vSync = true;
-
- activeOpacity = if cfg.window.blur.enable then 0.82 else cfg.window.opacity.active;
- inactiveOpacity = if cfg.window.blur.enable then 0.82 else cfg.window.opacity.inactive;
-
- opacityRules = [
- "100:fullscreen"
- "100:_NET_WM_STATE@:32a *= '_NET_WM_STATE_FULLSCREEN'"
- ];
- settings = {
- blur = {
- method = "dual_kawase";
- strength = cfg.window.blur.strength;
- size = cfg.window.blur.size;
- };
- blur-background = cfg.window.blur.enable;
- blur-background-exclude = [
- "window_type = 'dock'"
- "window_type = 'desktop'"
- "class_g = 'slop'"
- "class_g = 'dwm'"
- "_GTK_FRAME_EXTENTS@"
- "fullscreen"
- "_NET_WM_STATE@:32a *= '_NET_WM_STATE_FULLSCREEN'"
- ];
-
- # xrender-sync-fence = true;
- use-damage = true;
-
- unredir-if-possible = true;
-
- detect-transient = true;
- detect-client-opacity = true;
- mark-wmwin-focused = true;
- mark-ovredir-focused = true;
- detect-rounded-corners = true;
-
- shadow = cfg.shadow;
- fading = false;
- animations = cfg.animations;
- };
- };
-
- # systemd.user.services.picom.Install.wantedBy = lib.mkForce [ ];
- systemd.user.services.picom = {
- Unit = {
- ConditionEnvironment = "XDG_SESSION_TYPE=x11";
- };
- };
- };
-}
diff --git a/common/modules/mango/default.nix b/common/modules/mango/default.nix
index ec675aa..9ab5fc4 100644
--- a/common/modules/mango/default.nix
+++ b/common/modules/mango/default.nix
@@ -412,14 +412,14 @@ in
awww-daemon -q &
${settings-persist}
- ${lib.optionalString (config.beeMods.dwm.enable) ''
+ ${lib.optionalString (config.beeMods.x11.dwm.enable || config.beeMods.x11.bspwm.enable) ''
systemctl --user stop xidlehook.service
systemctl --user stop xautolock-session.service
systemctl --user stop xss-lock.service
systemctl --user stop clipcat.service
''}
- ${lib.optionalString (config.beeMods.dwm.picom.enable) ''
+ ${lib.optionalString (config.beeMods.x11.picom.enable) ''
systemctl --user stop picom.service
''}
'';
diff --git a/common/modules/matugen/default.nix b/common/modules/matugen/default.nix
index de39a06..a9aaaae 100644
--- a/common/modules/matugen/default.nix
+++ b/common/modules/matugen/default.nix
@@ -59,7 +59,7 @@ in
template = "userChrome.css";
target = "~/.cache/wallust/userChrome.css";
};
- xresources = lib.mkIf config.beeMods.dwm.enable {
+ xresources = lib.mkIf (config.beeMods.x11.dwm.enable || config.beeMods.x11.bspwm.enable) {
template = "colors-xresources";
target = "~/.config/x11/matugen.Xresources";
};
@@ -132,13 +132,12 @@ in
output_path = '~/.config/yazi/theme.toml'
''}
- ${lib.optionalString config.beeMods.dwm.enable ''
+ ${lib.optionalString (config.beeMods.x11.dwm.enable || config.beeMods.x11.bspwm.enable) ''
[templates.Xresources]
input_path = "~/.config/matugen/templates/colors-xresources"
output_path = "~/.config/wallust/templates/colors-xresources"
''}
-
${lib.optionalString config.programs.vesktop.enable ''
[templates.vesktop]
input_path = "~/.config/matugen/templates/vesktop.css"
@@ -191,7 +190,7 @@ in
''
}
- ${lib.optionalString config.beeMods.bspwm.enable ''
+ ${lib.optionalString config.beeMods.x11.bspwm.enable ''
[templates.bspwm]
input_path = "~/.config/matugen/templates/bspwm-colors"
output_path = "~/.config/bspwm/colors"
diff --git a/common/modules/bspwm/default.nix b/common/modules/x11/bspwm/default.nix
index e001c5d..8072fe2 100644
--- a/common/modules/bspwm/default.nix
+++ b/common/modules/x11/bspwm/default.nix
@@ -11,7 +11,7 @@
...
}:
let
- cfg = config.${moduleNameSpace}.bspwm;
+ cfg = config.${moduleNameSpace}.x11.bspwm;
snip = pkgs.writeShellScript "snip" ''
case $1 in
full)
@@ -40,7 +40,7 @@ let
"st";
in
{
- options.${moduleNameSpace}.bspwm = {
+ options.${moduleNameSpace}.x11.bspwm = {
enable = lib.mkEnableOption "bspwm setup";
};
@@ -106,7 +106,7 @@ in
focus_follows_pointer = true;
};
- extraConfig = ''
+ extraConfig = lib.optionalString config.beeMods.matugen.enable ''
[ -f ~/.config/bspwm/colors ] && . ~/.config/bspwm/colors
'';
diff --git a/common/modules/dwm/default.nix b/common/modules/x11/default.nix
index 8141dbf..b619c9a 100644
--- a/common/modules/dwm/default.nix
+++ b/common/modules/x11/default.nix
@@ -11,13 +11,19 @@
...
}:
let
- cfg = config.${moduleNameSpace}.dwm;
+ cfg = config.${moduleNameSpace}.x11;
+ args = {
+ inherit inputs homeManager moduleNameSpace;
+ };
in
{
- imports = lib.optionals homeManager [ ./picom.nix ];
+ imports = [
+ (import ./bspwm args)
+ (import ./dwm args)
+ (import ./picom.nix homeManager)
+ ];
- options.${moduleNameSpace}.dwm = {
- enable = lib.mkEnableOption "dwm setup";
+ options.${moduleNameSpace}.x11 = {
picom = {
enable = lib.mkEnableOption "enable picom compositor";
animations = lib.mkEnableOption "enable animations";
@@ -48,7 +54,7 @@ in
};
};
- config = lib.mkIf cfg.enable (
+ config = lib.mkIf (cfg.dwm.enable || cfg.bspwm.enable) (
if !homeManager then
{
services.xserver = {
@@ -60,14 +66,9 @@ in
${pkgs.systemd}/bin/systemctl --user import-environment DISPLAY XAUTHORITY XDG_SESSION_TYPE
${pkgs.dbus}/bin/dbus-update-activation-environment --systemd DISPLAY XAUTHORITY XDG_SESSION_TYPE
'';
- windowManager.dwm = {
- enable = true;
- package = inputs.mydwm.packages.${pkgs.stdenv.hostPlatform.system}.default;
- };
};
programs.ssh.askPassword = "";
-
security.pam.services.betterlockscreen = { };
security.pam.services.i3lock = { };
@@ -78,37 +79,6 @@ in
}
else
{
- xdg.dataFile."dwm/autostart.sh" = {
- executable = true;
- text = ''
- #!${pkgs.bash}/bin/bash
-
- gnome-keyring-daemon --start --components=secrets,ssh,pkcs11 &
- ${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1 &
-
- feh --no-fehbg --bg-fill "$(rg wallpaper ~/.config/beeSettings | cut -d"=" -f2)"
- [ -f ~/.Xresources ] && xrdb -merge ~/.Xresources
-
- dunst &
- clipcatd &
- slstatus &
- ${lib.optionalString (!cfg.picom.enable) ''
- xrandr --output eDP --set TearFree on
- ''}
- ${lib.optionalString (cfg.picom.enable) ''
- systemctl --user restart picom.service
- ''}
-
- systemctl --user restart xidlehook.service xautolock-session.service xss-lock.service clipcat.service
- ${lib.optionalString (config.beeMods.mango.waybar) ''
- systemctl --user stop waybar.service
- ''}
- ${lib.optionalString (config.beeMods.mango.enable) ''
- systemctl --user stop swayidle.service
- ''}
- '';
- };
-
services.clipcat = {
enable = true;
daemonSettings = {
diff --git a/common/modules/x11/dwm/default.nix b/common/modules/x11/dwm/default.nix
new file mode 100644
index 0000000..8444c7f
--- /dev/null
+++ b/common/modules/x11/dwm/default.nix
@@ -0,0 +1,65 @@
+{
+ homeManager,
+ inputs,
+ moduleNameSpace,
+ ...
+}:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
+let
+ cfg = config.${moduleNameSpace}.x11.dwm;
+in
+{
+ options.${moduleNameSpace}.x11.dwm = {
+ enable = lib.mkEnableOption "dwm setup";
+ };
+
+ config = lib.mkIf cfg.enable (
+ if !homeManager then
+ {
+ services.xserver = {
+ windowManager.dwm = {
+ enable = true;
+ package = inputs.mydwm.packages.${pkgs.stdenv.hostPlatform.system}.default;
+ };
+ };
+ }
+ else
+ {
+ xdg.dataFile."dwm/autostart.sh" = {
+ executable = true;
+ text = ''
+ #!${pkgs.bash}/bin/bash
+
+ gnome-keyring-daemon --start --components=secrets,ssh,pkcs11 &
+ ${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1 &
+
+ feh --no-fehbg --bg-fill "$(rg wallpaper ~/.config/beeSettings | cut -d"=" -f2)"
+ [ -f ~/.Xresources ] && xrdb -merge ~/.Xresources
+
+ dunst &
+ clipcatd &
+ slstatus &
+ ${lib.optionalString (!config.beeMods.x11.picom.enable) ''
+ xrandr --output eDP --set TearFree on
+ ''}
+ ${lib.optionalString (config.beeMods.x11.picom.enable) ''
+ systemctl --user restart picom.service
+ ''}
+
+ systemctl --user restart xidlehook.service xautolock-session.service xss-lock.service clipcat.service
+ ${lib.optionalString (config.beeMods.mango.waybar) ''
+ systemctl --user stop waybar.service
+ ''}
+ ${lib.optionalString (config.beeMods.mango.enable) ''
+ systemctl --user stop swayidle.service
+ ''}
+ '';
+ };
+ }
+ );
+}
diff --git a/common/modules/x11/picom.nix b/common/modules/x11/picom.nix
new file mode 100644
index 0000000..c1683eb
--- /dev/null
+++ b/common/modules/x11/picom.nix
@@ -0,0 +1,63 @@
+homeManager:
+{ config, lib, ... }:
+let
+ cfg = config.beeMods.x11.picom;
+in
+{
+ config = lib.mkIf cfg.enable (
+ lib.optionalAttrs homeManager {
+ services.picom = {
+ enable = true;
+ backend = "glx";
+ vSync = true;
+
+ activeOpacity = if cfg.window.blur.enable then 0.82 else cfg.window.opacity.active;
+ inactiveOpacity = if cfg.window.blur.enable then 0.82 else cfg.window.opacity.inactive;
+
+ opacityRules = [
+ "100:fullscreen"
+ "100:_NET_WM_STATE@:32a *= '_NET_WM_STATE_FULLSCREEN'"
+ ];
+ settings = {
+ blur = {
+ method = "dual_kawase";
+ strength = cfg.window.blur.strength;
+ size = cfg.window.blur.size;
+ };
+ blur-background = cfg.window.blur.enable;
+ blur-background-exclude = [
+ "window_type = 'dock'"
+ "window_type = 'desktop'"
+ "class_g = 'slop'"
+ "class_g = 'dwm'"
+ "_GTK_FRAME_EXTENTS@"
+ "fullscreen"
+ "_NET_WM_STATE@:32a *= '_NET_WM_STATE_FULLSCREEN'"
+ ];
+
+ # xrender-sync-fence = true;
+ use-damage = true;
+
+ unredir-if-possible = true;
+
+ detect-transient = true;
+ detect-client-opacity = true;
+ mark-wmwin-focused = true;
+ mark-ovredir-focused = true;
+ detect-rounded-corners = true;
+
+ shadow = cfg.shadow;
+ fading = false;
+ animations = cfg.animations;
+ };
+ };
+
+ # systemd.user.services.picom.Install.wantedBy = lib.mkForce [ ];
+ systemd.user.services.picom = {
+ Unit = {
+ ConditionEnvironment = "XDG_SESSION_TYPE=x11";
+ };
+ };
+ }
+ );
+}