add!: switch desktop UI to quickshell

This commit is contained in:
Kiana Sheibani 2025-10-07 23:17:55 -04:00
parent ce6ac2cb63
commit e92eaddef3
Signed by: toki
GPG key ID: 6CB106C25E86A9F7
23 changed files with 119 additions and 1401 deletions

View file

@ -1,6 +1,7 @@
{ config, pkgs, lib, ... }:
let
scripts = ./scripts;
shell = "quickshell";
in {
wayland.windowManager.hyprland = {
enable = true;
@ -9,17 +10,9 @@ in {
plugins = [ pkgs.hyprlandPlugins.hy3 ];
settings = let
# Volume using pamixer
audio-disp = "${scripts}/multimedia Volume $(pamixer --get-mute) pamixer $(pamixer --get-volume)";
audio = cmd: "pamixer ${cmd} && ${audio-disp}";
# Brightness using brightnessctl
brightness-disp = ''${scripts}/multimedia Brightness "" brightnessctl $(brightnessctl -e -m | cut -d, -f4 | tr -d "%")'';
brightness = x: "brightnessctl -e set ${x} && ${brightness-disp}";
in {
settings = {
"$mod" = "SUPER";
"$terminal" = "alacritty";
"$menu" = "rofi -show drun";
env = [
"HYPRCURSOR_THEME,macos"
@ -40,7 +33,8 @@ in {
};
windowrulev2 = [
"bordercolor rgb(f7768e),fullscreen:1"
"bordercolor rgb(f7768e), fullscreen:1"
"noanim, initialClass:ueberzug(.*)"
];
cursor = {
@ -98,9 +92,13 @@ in {
bind = [
"$mod, Return, exec, $terminal"
"$mod, D, exec, $menu"
"$mod, D, global, ${shell}:launcher"
"$mod Shift, D, global, ${shell}:dashboard"
"$mod, M, exec, hyprlock --immediate"
# Exit
"$mod Shift, E, global, ${shell}:session"
# Emacs Everywhere
# "$mod, Q, exec, $HOME/.config/emacs/bin/doom +everywhere"
@ -136,28 +134,33 @@ in {
# Screenshot
"$mod, P, exec, ${scripts}/screenshot-save"
# Workspace manipulation
"$mod, N, global, ${shell}:newworkspace"
"$mod Shift, N, global, ${shell}:movetonewworkspace"
] ++
# Workspace manipulation
builtins.concatMap (n:
let
wsp = builtins.toString n;
key = if n == 10 then "0" else wsp;
in [
"$mod, ${key}, workspace, ${wsp}"
"$mod Shift, ${key}, hy3:movetoworkspace, ${wsp}"
"$mod, ${key}, global, ${shell}:workspace${wsp}"
"$mod Shift, ${key}, global, ${shell}:movetoworkspace${wsp}"
]) (lib.range 1 10);
bindn = [
", mouse:272, hy3:focustab, mouse"
", escape, global, ${shell}:escape"
];
bindl = [
# XF86 key bindings
", XF86AudioMute, exec, ${audio "--toggle-mute"}"
", XF86AudioMicMute, exec, pactl set-source-mute @DEFAULT_SOURCE@ toggle"
", XF86AudioPlay, exec, playerctl play-pause"
", XF86AudioNext, exec, playerctl next"
", XF86AudioPrev, exec, playerctl previous"
", XF86AudioMute, global, ${shell}:mute"
", XF86AudioMicMute, global, ${shell}:muteMic"
", XF86AudioPlay, global, ${shell}:mediaToggle"
", XF86AudioNext, global, ${shell}:mediaNext"
", XF86AudioPrev, global, ${shell}:mediaPrev"
", XF86AudioStop, global, ${shell}:mediaStop"
# Screenshot
", Print, exec, ${scripts}/screenshot"
@ -166,12 +169,10 @@ in {
bindle = [
# XF86 key bindings
", XF86AudioRaiseVolume, exec, ${audio "-i 2"}"
", XF86AudioLowerVolume, exec, ${audio "-d 2"}"
"Shift, XF86AudioRaiseVolume, exec, ${audio "-i 2 --allow-boost"}"
"Shift, XF86AudioLowerVolume, exec, ${audio "-d 2 --allow-boost"}"
", XF86MonBrightnessDown, exec, ${brightness "4%-"}"
", XF86MonBrightnessUp, exec, ${brightness "4%+"}"
", XF86AudioRaiseVolume, global, ${shell}:volumeUp"
", XF86AudioLowerVolume, global, ${shell}:volumeDown"
", XF86MonBrightnessUp, global, ${shell}:brightnessUp"
", XF86MonBrightnessDown, global, ${shell}:brightnessDown"
];
};
};