diff options
| author | spl3g <spleefer6@yandex.ru> | 2023-12-31 15:08:06 +0300 |
|---|---|---|
| committer | spl3g <spleefer6@yandex.ru> | 2025-05-01 14:56:39 +0300 |
| commit | b8a5c62b112859f463a53ac97b43f7f8cdc544a9 (patch) | |
| tree | 8b320bc9631fbd60ffe4b701e6afee148bb2313a /home-manager/pc/services | |
| parent | 7db487dba2262af7b7822d110122ff496070ca92 (diff) | |
uhm
Diffstat (limited to 'home-manager/pc/services')
| -rw-r--r-- | home-manager/pc/services/default.nix | 18 | ||||
| -rw-r--r-- | home-manager/pc/services/dunst/default.nix | 23 | ||||
| -rw-r--r-- | home-manager/pc/services/dunst/default.nix~ | 14 | ||||
| -rw-r--r-- | home-manager/pc/services/picom/default.nix | 48 | ||||
| -rwxr-xr-x | home-manager/pc/services/polybar/hide.fish | 10 | ||||
| -rw-r--r-- | home-manager/pc/services/polybar/hide.fish~ | 1 | ||||
| -rw-r--r-- | home-manager/pc/services/polybar/hide~ | 1 | ||||
| -rw-r--r-- | home-manager/pc/services/sxhkd/default.nix | 38 |
8 files changed, 153 insertions, 0 deletions
diff --git a/home-manager/pc/services/default.nix b/home-manager/pc/services/default.nix new file mode 100644 index 0000000..69b0cc3 --- /dev/null +++ b/home-manager/pc/services/default.nix @@ -0,0 +1,18 @@ +let + more = { pkgs, ... }: { + services = { + clipmenu.enable = true; + # polybar = { + # enable = true; + # package = pkgs.polybar.override { + # pulseSupport = true; + # }; + # script = "polybar example &"; + # }; + }; + }; +in +[ + ./picom + more +] diff --git a/home-manager/pc/services/dunst/default.nix b/home-manager/pc/services/dunst/default.nix new file mode 100644 index 0000000..d192d0f --- /dev/null +++ b/home-manager/pc/services/dunst/default.nix @@ -0,0 +1,23 @@ +{ pkgs, ... }: +let + settings = { + global = { + origin = "bottom-right"; + frame_color = "#c4a7e7"; + notification_limit = 5; + progress_bar = true; + background = "#232136"; + foreground = "#e0def4"; + separator_color = "foreground"; + }; + }; + iconTheme = { + }; +in +{ + home.packages = [ pkgs.libnotify ]; + services.dunst = { + enable = false; + inherit settings; + }; +} diff --git a/home-manager/pc/services/dunst/default.nix~ b/home-manager/pc/services/dunst/default.nix~ new file mode 100644 index 0000000..e02ab35 --- /dev/null +++ b/home-manager/pc/services/dunst/default.nix~ @@ -0,0 +1,14 @@ +let + settings = { + + }; + iconTheme = { + + }; +in +{ + services.dunst = { + enable = true; + inherit configFile iconTheme; + }; +} diff --git a/home-manager/pc/services/picom/default.nix b/home-manager/pc/services/picom/default.nix new file mode 100644 index 0000000..1b02f49 --- /dev/null +++ b/home-manager/pc/services/picom/default.nix @@ -0,0 +1,48 @@ +let + settings = { + fading = true; + fade-in-step = 0.05; + fade-out-step = 0.05; + blur-background = false; + corner-radius = 8; + # blur = { + # method = "dual_kawase"; + # size = 12; + # deviation = false; + # strength = 2; + # kern = "3x3box"; + # }; + backend = "glx"; + vsync = true; + mark = { + wmwin-focused = true; + overdir-focused = true; + }; + detect = { + rounded-corners = true; + client-opacity = true; + transient = true; + }; + use-ewmh-active-win = true; + glx-no-stencil = true; + use-damage = true; + }; + wintypes = { + tooltip = { + fade = true; + shadow = true; + full-shadow = false; + blur = false; + focus = true; + }; + dock = { + shadow = false; + }; + }; +in +{ + services.picom = { + enable = true; + inherit settings wintypes; + }; +} diff --git a/home-manager/pc/services/polybar/hide.fish b/home-manager/pc/services/polybar/hide.fish new file mode 100755 index 0000000..f0a1a1b --- /dev/null +++ b/home-manager/pc/services/polybar/hide.fish @@ -0,0 +1,10 @@ +if ls /tmp/polhide + polybar-msg cmd hide + sleep 0.1 + bspc config -m focused top_padding 3 + rm /tmp/polhide +else + polybar-msg cmd show + touch /tmp/polhide +end + diff --git a/home-manager/pc/services/polybar/hide.fish~ b/home-manager/pc/services/polybar/hide.fish~ new file mode 100644 index 0000000..31984e1 --- /dev/null +++ b/home-manager/pc/services/polybar/hide.fish~ @@ -0,0 +1 @@ +#!/bin/env fish diff --git a/home-manager/pc/services/polybar/hide~ b/home-manager/pc/services/polybar/hide~ new file mode 100644 index 0000000..31984e1 --- /dev/null +++ b/home-manager/pc/services/polybar/hide~ @@ -0,0 +1 @@ +#!/bin/env fish diff --git a/home-manager/pc/services/sxhkd/default.nix b/home-manager/pc/services/sxhkd/default.nix new file mode 100644 index 0000000..6b7878e --- /dev/null +++ b/home-manager/pc/services/sxhkd/default.nix @@ -0,0 +1,38 @@ +let + apps = { + "{_,shift} + {_,control} + Print" = "xfce4-screenshooter -{r,f} {_,-c}"; # Screenshooter + "super + apostrophe" = "betterlockscreen -l"; # Lockscreen + "super + grave" = "polybar -r"; # Restart polybar + "super + q" = "kitty"; # Open terminal + "super + d" = "rofi -show-icons -show drun"; # Open app chooser + "super + shift + d" = "CM_LAUNCHER=rofi clipmenu"; + "super + b" = "firefox"; # Open browser + "super + e" = "emacsclient -c -a 'emacs'"; # Open emacs + "super + shift + o" = "obsidian"; # Open obsidian + }; + bspwm = { + "super + Escape" = "pkill -USR1 -x sxhkd"; # Restart sxhkd + "super + shift + {e,r}" = "bspc {quit,wm -r}"; # Quit/restart bspwm + "super + {control,shift} + q" = "bspc node -{k,c}"; # Close/kill window + "super + m" = "bspc desktop -l next"; # Maximise window + "super + {t,shift + t,v,f}" = "bspc node -t {tiled,pseudo_tiled,floating,fullscreen}"; # Set window state + "super + {_,shift + }{h,j,k,l}" = "bspc node -{f,s} {west,south,north,east}"; # Focus window in the given direction + "super + {Left,Down,Up,Right}" = "bspc node -v {-20 0,0 20,0 -20,20 0}"; # Move a floating window + "super + s : {h,j,k,l}" = ''STEP=20; SELECTION={1,2,3,4};\ + bspc node -z $(echo "left -$STEP 0,bottom 0 $STEP,top 0 -$STEP,right $STEP 0" | cut -d',' -f$SELECTION) ||\ + bspc node -z $(echo "right -$STEP 0,top 0 $STEP,bottom 0 -$STEP,left $STEP 0" | cut -d',' -f$SELECTION)''; # Better window resize + "super + bracket{left,right}" = "bspc desktop -f {prev,next}.local"; # Focus next/previos desktop + "super + {_,shift + }{1-9,0}" = "bspc {desktop -f,node -d} $(bspc query -D -m focused | awk 'NR=={1-9,0}')"; # Focus/send window to the given desktop on the focused monitor + "super + o" = "bspc node -m last -f"; # Send window to the last used monitor + "super + ctrl + {1-9}" = "bspc node -o 0.{1-9}"; # Preselect the window ratio + "super + ctrl + space" = "bspc node -p cancel"; # Cansel the preselected ratio + "super + n" = "fish ~/.nixfiles/home-manager/home/services/polybar/hide.fish"; + }; + keybindings = apps // bspwm; +in +{ + services.sxhkd = { + enable = true; + inherit keybindings; + }; +} |
