summaryrefslogtreecommitdiff
path: root/common/modules
diff options
context:
space:
mode:
authorbrustybee <beebeeb5k@gmail.com>2026-04-05 23:32:45 +0530
committerbrustybee <beebeeb5k@gmail.com>2026-04-05 23:32:45 +0530
commitf5b78ff561eff75c803ed1ef6e736a6c991cd135 (patch)
tree96faf0aa617cd1736e9e5f79a870513045c00b7c /common/modules
parentee5246d97d338b2b9b3562f7d483d498b78e19c8 (diff)
idk
- add miku cursor - nightlight support on xorg - bring back st and xorg tools back in this repo - add themed_cursor patch st ( kinda manully )
Diffstat (limited to 'common/modules')
-rw-r--r--common/modules/mango/scripts.nix16
-rw-r--r--common/modules/x11/bspwm/default.nix2
-rw-r--r--common/modules/x11/default.nix98
-rw-r--r--common/modules/x11/dwm/default.nix3
4 files changed, 116 insertions, 3 deletions
diff --git a/common/modules/mango/scripts.nix b/common/modules/mango/scripts.nix
index 4379313..d330211 100644
--- a/common/modules/mango/scripts.nix
+++ b/common/modules/mango/scripts.nix
@@ -216,9 +216,21 @@ let
;;
"Night Light: "*)
if [[ "$nl" == "on" ]]; then
- set_val "nightlight" "off"; pkill wlsunset
+ set_val "nightlight" "off"
+
+ if [[ "$XDG_SESSION_TYPE" == "wayland" ]]; then
+ pkill wlsunset
+ else
+ redshift -x
+ fi
else
- set_val "nightlight" "on"; wlsunset -T 4500 &
+ set_val "nightlight" "on"
+
+ if [[ "$XDG_SESSION_TYPE" == "wayland" ]]; then
+ wlsunset -T 4500 &
+ else
+ redshift -O 4500
+ fi
fi
;;
"Wallpaper") cmd_wall ;;
diff --git a/common/modules/x11/bspwm/default.nix b/common/modules/x11/bspwm/default.nix
index 711959a..62e7e63 100644
--- a/common/modules/x11/bspwm/default.nix
+++ b/common/modules/x11/bspwm/default.nix
@@ -2,6 +2,7 @@
homeManager,
inputs,
moduleNameSpace,
+ settings-persist,
...
}:
{
@@ -119,6 +120,7 @@ in
"${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"
"gnome-keyring-daemon --start --components=secrets,ssh,pkcs11"
"xrandr --output eDP --set TearFree on"
+ "${settings-persist}"
];
};
diff --git a/common/modules/x11/default.nix b/common/modules/x11/default.nix
index b619c9a..547d648 100644
--- a/common/modules/x11/default.nix
+++ b/common/modules/x11/default.nix
@@ -13,8 +13,94 @@
let
cfg = config.${moduleNameSpace}.x11;
args = {
- inherit inputs homeManager moduleNameSpace;
+ inherit
+ inputs
+ homeManager
+ moduleNameSpace
+ settings-persist
+ ;
};
+ settings-persist = pkgs.writeShellScript "settings-persist" ''
+ SETTINGS_FILE="$HOME/.config/beeSettings"
+
+ if [[ -f "$SETTINGS_FILE" ]]; then
+ IS_NIGHTMODE=$(${pkgs.ripgrep}/bin/rg "nightlight" "$SETTINGS_FILE" | cut -d"=" -f2)
+
+ if [[ "$IS_NIGHTMODE" == "on" ]]; then
+ redshift -O 4500
+ fi
+ fi
+ '';
+ st-patched =
+ (pkgs.st.override {
+ extraLibs = [ pkgs.libXcursor ];
+ }).overrideAttrs
+ (oldAttrs: rec {
+ patches = map pkgs.fetchpatch [
+ {
+ url = "https://st.suckless.org/patches/scrollback/st-scrollback-0.9.2.diff";
+ sha256 = "sha256-ZypvRONAHS//wnZjivmqpWIqZlKTqAQ0Q8DhQpZVaqU=";
+ }
+ {
+ url = "https://st.suckless.org/patches/scrollback/st-scrollback-mouse-0.9.2.diff";
+ sha256 = "sha256-CuNJ5FdKmAtEjwbgKeBKPJTdEfJvIdmeSAphbz0u3Uk=";
+ }
+ {
+ url = "https://st.suckless.org/patches/scrollback/st-scrollback-mouse-altscreen-20220127-2c5edf2.diff";
+ sha256 = "sha256-8oVLgbsYCfMhNEOGadb5DFajdDKPxwgf3P/4vOXfUFo=";
+ }
+ {
+ url = "https://st.suckless.org/patches/xresources/st-xresources-20230320-45a15676.diff";
+ sha256 = "sha256-WcL9IeyanXFiOFDGGRU0QNT8DU7wSo2o+3n+TaqASUY=";
+ }
+ {
+ url = "https://st.suckless.org/patches/vertcenter/st-vertcenter-20231003-eb3b894.diff";
+ sha256 = "sha256-RbFNdGNi5HLAp1s8QOX3qsfxpkLcp1p/vksyZORN/uc=";
+ }
+ {
+ url = "https://st.suckless.org/patches/anysize/st-anysize-20220718-baa9357.diff";
+ hash = "sha256-yx9VSwmPACx3EN3CAdQkxeoJKJxQ6ziC9tpBcoWuWHc=";
+ }
+ {
+ url = "https://st.suckless.org/patches/csi_22_23/st-csi_22_23-0.8.5.diff";
+ hash = "sha256-+izEkGVkLCbhZNBD2WN4uX5j+YMmou7JaMVmPG0mrYk=";
+ }
+ {
+ url = "https://st.suckless.org/patches/sync/st-appsync-20200618-b27a383.diff";
+ sha256 = "sha256-lys7/nup7a+GcmW+CutX0kjmbbOis2stkuhw02beuPs=";
+ }
+ {
+ url = "https://st.suckless.org/patches/fix_keyboard_input/st-fix-keyboard-input-20180605-dc3b5ba.diff";
+ sha256 = "sha256-h5ZrCj4IrkMQanLSMmgXaRd7qZYqvbzqUnuFt/axsMI=";
+ }
+ {
+ url = "https://st.suckless.org/patches/boxdraw/st-boxdraw_v2-0.8.5.diff";
+ sha256 = "sha256-WN/R6dPuw1eviHOvVVBw2VBSMDtfi1LCkXyX36EJKi4=";
+ }
+ # {
+ # url = "https://st.suckless.org/patches/themed_cursor/st-themed_cursor-0.8.1.diff";
+ # sha256 = "sha256-Q/6VN9oCrdJiZPPjKMpw3UB09tIs4eJ1Hi5c8k7O7uo=";
+ # }
+ ];
+
+ postPatch = oldAttrs.postPatch or "" + ''
+ sed -i 's/Button4, *kscrollup, *{.i = 1}/Button4, kscrollup, {.i = 10}/g' config.def.h
+ sed -i 's/Button5, *kscrolldown, *{.i = 1}/Button5, kscrolldown, {.i = 10}/g' config.def.h
+
+ sed -i 's/const int boxdraw = 0;/const int boxdraw = 1;/g' config.def.h
+ sed -i 's/const int boxdraw_bold = 0;/const int boxdraw_bold = 1;/g' config.def.h
+
+ grep -q Xcursor x.c || sed -i '/#include <X11\/XKBlib.h>/a #include <X11/Xcursor/Xcursor.h>' x.c
+
+ sed -i 's/XCreateFontCursor/XcursorLibraryLoadCursor/g' x.c
+
+ sed -i 's/static unsigned int mouseshape/static char *mouseshape/' config.def.h
+ sed -i 's/XC_xterm/"ibeam"/' config.def.h
+
+ sed -i 's/-lXft/-lXft -lXcursor/g' config.mk
+ '';
+ });
+
in
{
imports = [
@@ -79,6 +165,16 @@ in
}
else
{
+ home.packages = with pkgs; [
+ st-patched
+ feh
+ maim
+ slop
+ xdotool
+ xclip
+ redshift
+ ];
+
services.clipcat = {
enable = true;
daemonSettings = {
diff --git a/common/modules/x11/dwm/default.nix b/common/modules/x11/dwm/default.nix
index 8444c7f..fc943ef 100644
--- a/common/modules/x11/dwm/default.nix
+++ b/common/modules/x11/dwm/default.nix
@@ -2,6 +2,7 @@
homeManager,
inputs,
moduleNameSpace,
+ settings-persist,
...
}:
{
@@ -58,6 +59,8 @@ in
${lib.optionalString (config.beeMods.mango.enable) ''
systemctl --user stop swayidle.service
''}
+
+ ${settings-persist}
'';
};
}