fix keybinds in hyprland

This commit is contained in:
2026-08-09 17:05:09 +02:00
parent e406f987d1
commit 335b96a73a
4 changed files with 202 additions and 158 deletions
+1
View File
@@ -3,5 +3,6 @@
./general.nix ./general.nix
./rules.nix ./rules.nix
./keybinds.nix ./keybinds.nix
./execs.nix
]; ];
} }
+62
View File
@@ -0,0 +1,62 @@
{
wayland.windowManager.hyprland = {
extraConfig = ''
hl.env("HYPRCURSOR_THEME", "Adwaita")
hl.env("HYPRCURSOR_SIZE", "22")
hl.env("XCURSOR_SIZE", "22")
hl.env("GDK_SCALE", "1")
hl.env("GDK_BACKEND", "wayland,x11,*")
hl.env("XDG_CURRENT_DESKTOP", "Hyprland")
hl.env("XDG_SESSION_TYPE", "wayland")
hl.env("XDG_SESSION_DESKTOP", "Hyprland")
hl.env("QT_QPA_PLATFORM", "wayland")
-- hl.env("QT_QPA_PLATFORMTHEME", "kvantum")
-- hl.env("QT_QPA_PLATFORMTHEME", "hyprqt6engine")
hl.env("QT_QPA_PLATFORMTHEME", "qt6ct")
hl.env("ELECTRON_OZONE_PLATFORM_HINT", "wayland")
hl.env("DOTNET_CLI_TELEMETRY_OPTOUT", "1")
-- hl.env("QT_SCALE_FACTOR", "0.9")
hl.env("LIBVA_DRIVER_NAME", "radeonsi")
-- hl.env("__GLX_VENDOR_LIBRARY_NAME", "nvidia")
-- hl.env("NVD_BACKEND", "direct")
local TERM = "kitty"
-- local BAR = "~/.config/waybar/waybar.sh"
local BAR = "noctalia-shell"
local DMENU = "rofi -show drun"
local CLIPBOARD =
"cliphist list | rofi -dmenu -display-columns 2 -config ~/.config/rofi/clipboard.rasi | cliphist decode | wl-copy"
-- local POWER_MENU = "rofi -show powermenu -modi powermenu:~/.scripts/rofi-powermenu -config ~/.config/rofi/powermenu.rasi"
local WMENU = "rofi -show window"
local CALC = "rofi -show calc -modi calc -no-show-match -no-sort"
local FILE_MAN = "xdg-open ~" -- GUI File Manager
local RANDOM_WALL = "~/.scripts/random-wall" -- set a random wall
local AUTH_AGENT = "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1"
hl.on("hyprland.start", function()
hl.exec_cmd("kdeconnectd")
hl.exec_cmd("equibop")
-- hl.exec_cmd("sleep 5; discord")
hl.exec_cmd("~/.scripts/walld") -- start wallpaper daemon
hl.exec_cmd(BAR) -- status bar
hl.exec_cmd("udiskie --appindicator &") -- udiskie for automount
hl.exec_cmd("hypridle &") -- start hypridle service
hl.exec_cmd(AUTH_AGENT) -- start authentication agent
hl.exec_cmd("jamesdsp --tray &")
-- hl.exec_cmd("dunst")
-- hl.exec_cmd("opendeck --hide")
hl.exec_cmd("goxlr-daemon")
hl.exec_cmd("qpwgraph -m")
-- hl.exec_cmd("mullvad-vpn --disable-gpu")
hl.exec_cmd("sleep 20; QT_STYLE_OVERRIDE=Fusion musicpresence")
hl.exec_cmd("gsr-ui")
-- Clipboard: history
hl.exec_cmd("wl-paste --type text --watch cliphist store")
hl.exec_cmd("wl-paste --type image --watch cliphist store")
hl.exec_cmd("dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP")
end)
'';
};
}
+138 -157
View File
@@ -1,196 +1,177 @@
let
TERM = "kitty";
BAR = "noctalia-shell";
DMENU = "rofi -show drun";
CLIPBOARD = "cliphist list | rofi -dmenu -display-columns 2 -config ~/.config/rofi/clipboard.rasi | cliphist decode | wl-copy";
WMENU = "rofi -show window";
CALC = "rofi -show calc -modi calc -no-show-match -no-sort";
FILE_MAN = "xdg-open ~";
RANDOM_WALL = "~/.scripts/random-wall";
in
{ {
wayland.windowManager.hyprland = { wayland.windowManager.hyprland = {
settings = { extraConfig = ''
# #################### -- ####################
# ### KEYBINDINGS ### -- ### KEYBINDINGS ###
# #################### -- ####################
"$mod" = "SUPER"; local mod = "SUPER"
bind = [ hl.bind(mod .. " + L", function() hl.dispatch(hl.dsp.exec_cmd(TERM)) end)
"$mod, L, exec, ${TERM}" hl.bind(mod .. " + SPACE", function() hl.dispatch(hl.dsp.exec_cmd(DMENU)) end)
"$mod, SPACE, exec, ${DMENU}" hl.bind(mod .. " + CTRL + B", function() hl.dispatch(hl.dsp.exec_cmd(RANDOM_WALL)) end)
"$mod CTRL, B, exec, ${RANDOM_WALL}" hl.bind("CTRL + SHIFT + B", hl.dsp.exec_cmd("~/.config/rofi/wallpaper-picker.sh"))
"CTRL SHIFT, B, exec, ~/.config/rofi/wallpaper-picker.sh" -- hl.bind("CTRL + SHIFT + B", hl.dsp.exec_cmd("dms ipc dankdash wallpaper"))
# "CTRL SHIFT, B, exec, dms ipc dankdash wallpaper" hl.bind(mod .. " + V", function() hl.dispatch(hl.dsp.exec_cmd(CLIPBOARD)) end)
"$mod, V, exec, ${CLIPBOARD}" hl.bind(mod .. " + E", function() hl.dispatch(hl.dsp.exec_cmd(FILE_MAN)) end)
"$mod, E, exec, ${FILE_MAN}" hl.bind(mod .. " + N", hl.dsp.exec_cmd("dunstctl history-pop"))
"$mod, N, exec, dunstctl history-pop" hl.bind(mod .. " + SHIFT + N", hl.dsp.exec_cmd("dunstctl close-all"))
"$mod SHIFT, N, exec, dunstctl close-all" hl.bind(mod .. " + Q", hl.dsp.window.close())
"$mod, Q, killactive" hl.bind(mod .. " + SHIFT + Q", hl.dsp.window.kill())
"$mod SHIFT, Q, exec, hyprctl kill" hl.bind(mod .. " + C", function() hl.dispatch(hl.dsp.exec_cmd(CALC)) end)
"$mod, C, exec, ${CALC}" hl.bind(mod .. " + SHIFT + B", function() hl.dispatch(hl.dsp.exec_cmd(BAR)) end)
"$mod SHIFT, B, exec, ${BAR}" hl.bind(mod .. " + SHIFT + F", hl.dsp.window.float())
"$mod SHIFT, F, togglefloating" hl.bind(mod .. " + SHIFT + P", hl.dsp.exec_cmd("hyprpicker -a"))
"$mod SHIFT, P, exec, hyprpicker -a" hl.bind(mod .. " + SHIFT + W", function() hl.dispatch(hl.dsp.exec_cmd(WMENU)) end)
"$mod SHIFT, W, exec, ${WMENU}" hl.bind(mod .. " + B", hl.dsp.exec_cmd("zen-beta"))
"$mod, B, exec, zen-beta" -- hl.bind(
-- mod .. " + SHIFT + E",
-- hl.dsp.exec_cmd(
-- "pkill -9 linux-wallpaper; awww img --transition-step 100 /home/user/Pictures/Wallpapers/syntaxerror_wallpaper.png"
-- )
-- )
hl.bind(
mod .. " + SHIFT + E",
hl.dsp.exec_cmd("noctalia-shell ipc call wallpaper set /home/user/Pictures/Wallpapers/syntaxerror_wallpaper.png")
)
hl.bind("ALT + Q", hl.dsp.exec_cmd("pkill -9 python; pkill -9 aria2c"))
hl.bind(mod .. " + P", hl.dsp.exec_cmd("prismlauncher"))
-- hl.bind(mod .. " + W", hl.dsp.exec_cmd("waypaper"))
# hl.bind(
# mod .. " + SHIFT + E",
# hl.dsp.exec_cmd(
# "pkill -9 linux-wallpaper; awww img --transition-step 100 /home/user/Pictures/Wallpapers/syntaxerror_wallpaper.png"
# )
# )
"$mod SHIFT, E, exec, noctalia-shell ipc call wallpaper set /home/user/Pictures/Wallpapers/syntaxerror_wallpaper.png"
"ALT, Q, exec, pkill -9 python; pkill -9 aria2c" -- ################
"$mod, P, exec, prismlauncher" -- ## MEDIA KEYS ##
# "$mod, W, exec, waypaper" -- ################
# ################ hl.bind("XF86AudioMute", hl.dsp.exec_cmd("wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle"))
# ## MEDIA KEYS ## hl.bind("XF86AudioPlay", hl.dsp.exec_cmd("playerctl -p mpd play-pause"))
# ################ hl.bind("XF86AudioNext", hl.dsp.exec_cmd("playerctl -p mpd next"))
hl.bind("XF86AudioPrev", hl.dsp.exec_cmd("playerctl -p mpd previous"))
hl.bind("XF86AudioRaiseVolume", hl.dsp.exec_cmd("pactl set-sink-volume @DEFAULT_SINK@ +5%"))
hl.bind("XF86AudioLowerVolume", hl.dsp.exec_cmd("pactl set-sink-volume @DEFAULT_SINK@ -5%"))
", XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle" hl.bind(mod .. " + A", hl.dsp.exec_cmd("~/.scripts/play-previous"))
", XF86AudioPlay, exec, playerctl -p mpd play-pause" hl.bind(mod .. " + S", hl.dsp.exec_cmd("~/.scripts/play-next"))
", XF86AudioNext, exec, playerctl -p mpd next" hl.bind(mod .. " + D", hl.dsp.exec_cmd("~/.scripts/play-pause"))
", XF86AudioPrev, exec, playerctl -p mpd previous" hl.bind(mod .. " + SHIFT + D", hl.dsp.exec_cmd("playerctl play-pause"))
", XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5%" hl.bind(mod .. " + PLUS", hl.dsp.exec_cmd("~/.scripts/mpd-volume up"))
", XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5%" hl.bind(mod .. " + MINUS", hl.dsp.exec_cmd("~/.scripts/mpd-volume down"))
-- hl.bind(mod .. " + SHIFT + R", hl.dsp.exec_cmd("~/.scripts/skip30s"))
"$mod, A, exec, ~/.scripts/play-previous" -- ################
"$mod, S, exec, ~/.scripts/play-next" -- ## FULLSCREEN ##
"$mod, D, exec, ~/.scripts/play-pause" -- ################
"$mod SHIFT, D, exec, playerctl play-pause"
"$mod, PLUS, exec, ~/.scripts/mpd-volume up"
"$mod, MINUS, exec, ~/.scripts/mpd-volume down"
# "$mod SHIFT, R, exec, ~/.scripts/skip30s"
# ################ hl.bind(mod .. " + F", hl.dsp.window.fullscreen())
# ## FULLSCREEN ##
# ################
"$mod, F, fullscreen" -- ################
-- ## SCREENSHOT ##
-- ################
# ################ hl.bind(mod .. " + CTRL + S", hl.dsp.exec_cmd("grimblast --freeze --notify copysave active"))
# ## SCREENSHOT ## hl.bind(mod .. " + SHIFT + S", hl.dsp.exec_cmd("grimblast --freeze --notify copysave area"))
# ################ hl.bind(mod .. " + ALT + S", hl.dsp.exec_cmd("wl-paste | satty -f -"))
"$mod CTRL, S, exec, grimblast --freeze --notify copysave active" -- ##########################
"$mod SHIFT, S, exec, grimblast --freeze --notify copysave area" -- ## CENTER FLOAT WINDOW ##
"$mod ALT, S, exec, wl-paste | satty -f -" -- ##########################
# ########################## hl.bind(mod .. " + SHIFT + C", hl.dsp.window.center())
# ## CENTER FLOAT WINDOW ##
# ##########################
"$mod SHIFT, C, centerwindow" -- ##################
-- ## MOVE FOCUS ##
-- ##################
# ################## hl.bind(mod .. " + LEFT", hl.dsp.focus({ direction = "left" }))
# ## MOVE FOCUS ## hl.bind(mod .. " + RIGHT", hl.dsp.focus({ direction = "right" }))
# ################## hl.bind(mod .. " + UP", hl.dsp.focus({ direction = "up" }))
hl.bind(mod .. " + DOWN", hl.dsp.focus({ direction = "down" }))
"$mod, LEFT, movefocus, l" -- #################
"$mod, RIGHT, movefocus, r" -- ## MOVE WINDOW ##
"$mod, UP, movefocus, u" -- #################
"$mod, DOWN, movefocus, d"
# ################# hl.bind(mod .. " + SHIFT + LEFT", hl.dsp.window.move({ direction = "left" }))
# ## MOVE WINDOW ## hl.bind(mod .. " + SHIFT + RIGHT", hl.dsp.window.move({ direction = "right" }))
# ################# hl.bind(mod .. " + SHIFT + UP", hl.dsp.window.move({ direction = "up" }))
hl.bind(mod .. " + SHIFT + DOWN", hl.dsp.window.move({ direction = "down" }))
"$mod SHIFT, LEFT, movewindow, l" -- ###################
"$mod SHIFT, RIGHT, movewindow, r" -- ## RESIZE WINDOW ##
"$mod SHIFT, UP, movewindow, u" -- ###################
"$mod SHIFT, DOWN, movewindow, d"
# ################### -- hl.bind(mod .. " + CTRL + L", hl.dsp.window.resize(20, 0))
# ## RESIZE WINDOW ## -- hl.bind(mod .. " + CTRL + H", hl.dsp.window.resize(-20, 0))
# ################### -- hl.bind(mod .. " + CTRL + K", hl.dsp.window.resize(0, -20))
-- hl.bind(mod .. " + CTRL + J", hl.dsp.window.resize(0, 20))
# "$mod CTRL, L, resizeactive, 20 0" -- ################
# "$mod CTRL, H, resizeactive, -20 0" -- ## WORKSPACES ##
# "$mod CTRL, K, resizeactive, 0 -20" -- ################
# "$mod CTRL, J, resizeactive, 0 20"
# ################ -- hl.bind(mod .. " + 1", hl.dsp.focus({ workspace = 1}))
# ## WORKSPACES ## -- hl.bind(mod .. " + 2", hl.dsp.focus({ workspace = 2}))
# ################ -- hl.bind(mod .. " + 3", hl.dsp.focus({ workspace = 3}))
-- hl.bind(mod .. " + 4", hl.dsp.focus({ workspace = 4}))
-- hl.bind(mod .. " + 5", hl.dsp.focus({ workspace = 5}))
-- hl.bind(mod .. " + 6", hl.dsp.focus({ workspace = 6}))
-- hl.bind(mod .. " + 7", hl.dsp.focus({ workspace = 7}))
-- hl.bind(mod .. " + 8", hl.dsp.focus({ workspace = 8}))
-- hl.bind(mod .. " + 9", hl.dsp.focus({ workspace = 9}))
-- hl.bind(mod .. " + 0", hl.dsp.focus({ workspace = 10}))
# "$mod, 1, workspace, 1" -- #################################
# "$mod, 2, workspace, 2" -- ## MOVE WINDOW TO WORKSPACES ##
# "$mod, 3, workspace, 3" -- #################################
# "$mod, 4, workspace, 4"
# "$mod, 5, workspace, 5"
# "$mod, 6, workspace, 6"
# "$mod, 7, workspace, 7"
# "$mod, 8, workspace, 8"
# "$mod, 9, workspace, 9"
# "$mod, 0, workspace, 10"
# ################################# -- hl.bind(mod .. " + SHIFT + 1", hl.dsp.window.move({ workspace = 1 }))
# ## MOVE WINDOW TO WORKSPACES ## -- hl.bind(mod .. " + SHIFT + 2", hl.dsp.window.move({ workspace = 2 }))
# ################################# -- hl.bind(mod .. " + SHIFT + 3", hl.dsp.window.move({ workspace = 3 }))
-- hl.bind(mod .. " + SHIFT + 4", hl.dsp.window.move({ workspace = 4 }))
-- hl.bind(mod .. " + SHIFT + 5", hl.dsp.window.move({ workspace = 5 }))
-- hl.bind(mod .. " + SHIFT + 6", hl.dsp.window.move({ workspace = 6 }))
-- hl.bind(mod .. " + SHIFT + 7", hl.dsp.window.move({ workspace = 7 }))
-- hl.bind(mod .. " + SHIFT + 8", hl.dsp.window.move({ workspace = 8 }))
-- hl.bind(mod .. " + SHIFT + 9", hl.dsp.window.move({ workspace = 9 }))
-- hl.bind(mod .. " + SHIFT + 0", hl.dsp.window.move({ workspace = 10 }))
# "$mod SHIFT, 1, movetoworkspace, 1" -- ##################
# "$mod SHIFT, 2, movetoworkspace, 2" -- ## SCRATCHPADS ##
# "$mod SHIFT, 3, movetoworkspace, 3" -- ##################
# "$mod SHIFT, 4, movetoworkspace, 4"
# "$mod SHIFT, 5, movetoworkspace, 5"
# "$mod SHIFT, 6, movetoworkspace, 6"
# "$mod SHIFT, 7, movetoworkspace, 7"
# "$mod SHIFT, 8, movetoworkspace, 8"
# "$mod SHIFT, 9, movetoworkspace, 9"
# "$mod SHIFT, 0, movetoworkspace, 10"
# ################## hl.bind(mod .. " + SHIFT + G", hl.dsp.window.move({ workspace = "special:magic" }))
# ## SCRATCHPADS ## hl.bind(mod .. " + G", hl.dsp.workspace.toggle_special("magic"))
# ##################
"$mod SHIFT, G, movetoworkspace, special:magic" -- ##########################################
"$mod, G, togglespecialworkspace, magic" -- ## SCROLL THROUGH EXISTING WORKSPACES ##
-- ##########################################
# ########################################## -- hl.bind(mod .. " + MOUSEDOWN", hl.wm.workspace_relative(1))
# ## SCROLL THROUGH EXISTING WORKSPACES ## -- hl.bind(mod .. " + MOUSEUP", hl.wm.workspace_relative(-1))
# ##########################################
# "$mod, mouse_down, workspace, e+1" -- ###################
# "$mod, mouse_up, workspace, e-1" -- ## MOUSE ACTIONS ##
-- ###################
# ################### hl.bind(mod .. " + mouse:272", hl.dsp.window.drag(), { mouse = true })
# ## MOUSE ACTIONS ## hl.bind(mod .. " + mouse:273", hl.dsp.window.resize(), { mouse = true })
# ###################
"$mod, mouse:272, movewindow" -- ###########
"$mod, mouse:273, resizewindow" -- ## MISC ##
-- ###########
# ########### -- hl.bind(mod .. " + MOUSEDOWN", hl.wm.layout_msg("move +col"))
# ## MISC ## -- hl.bind(mod .. " + MOUSEUP", hl.wm.layout_msg("move -col"))
# ###########
# "$mod, MOUSEDOWN, layoutmsg, move +col" -- hl.bind(mod .. " + T", hl.wm.toggle_group())
# "$mod, MOUSEUP, layoutmsg, move -col"
# "$mod, T, togglegroup" -- hl.bind(mod .. " + SHIFT + X", hl.dsp.exec_cmd("$POWER_MENU"))
# "$mod SHIFT, X, exec, $POWER_MENU" hl.bind("CTRL + ALT + F", hl.dsp.exec_cmd("kando -m kandomain"))
"CTRL ALT, F, exec, kando -m kandomain" -- hl.bind(mod .. " + W", hl.dsp.exec_cmd("$WIFI_MENU"))
# "$mod, W, exec, $WIFI_MENU" -- hl.bind(mod .. " + X", hl.dsp.exec_cmd("hyprlock"))
'';
# "$mod, X, exec, hyprlock"
];
# ###################
# ## MOUSE ACTIONS ##
# ###################
bindm = [
"$mod, mouse:272, movewindow"
"$mod, mouse:273, resizewindow"
];
};
}; };
} }
+1 -1
View File
@@ -103,7 +103,7 @@
"pin,class:^(kando)$" "pin,class:^(kando)$"
]; ];
layerrule = [ layer_rule = [
"blur,rofi" "blur,rofi"
"noanim,hyprpicker" "noanim,hyprpicker"
"noanim,selection" "noanim,selection"