nixconf/home-manager/hyprland.nix
Gabriella Bere 772518df4f attempted to add a keybind to toggle touchpad
somehow i cant get the script to run when i use the touchpad, but hey,
its in the repo now and the licence has been updated so i can get around
to it later

also i removed the default fish greeting it was annoying me
2025-06-08 05:17:39 +01:00

101 lines
3.4 KiB
Nix

{ ... }:
{
# Enable Hyprland compositor
wayland.windowManager.hyprland = {
enable = true;
xwayland.enable = true;
systemd.variables = [ "--all" ];
settings = {
misc = {
enable_anr_dialog = false; # disable application not repsonding dialog as it tends to just get in the way when trying to fix the unresponsive application
};
# Monitor config for home desk layout
monitor = [
"eDP-2, 2560x1600@165, 0x0, auto" # main laptop monitor
"desc:Lenovo Group Limited LEN G24-10 U5B4KL78, 1920x1080@119.98, -960x-1080, auto" # left external monitor
"desc:Lenovo Group Limited LEN G24-10 U5B4ZAM2, 1920x1080@119.98, 960x-1080, auto" # right external monitor
];
workspace = [
"name:comms, monitor:desc:Lenovo Group Limited LEN G24-10 U5B4KL78, default:true, persistent:true"
"name:bg_noise, monitor:desc:Lenovo Group Limited LEN G24-10 U5B4ZAM2, default:true, persistent:true"
"name:main, monitor:eDP-2, default:true, persistent:true"
];
# Define SUPER key as mod key
"$mod" = "SUPER";
# Set keyboard layout
input = {
kb_layout = "gb";
follow_mouse = 1;
mouse_refocus = false;
touchpad = {
disable_while_typing = true;
};
};
gestures = {
workspace_swipe = true;
};
# Allow using SUPER + left click to move windows and SUPER + right click to resize windows
bindm = [
"$mod, mouse:272, movewindow"
"$mod, mouse:273, resizewindow"
];
exec-once = [
"[workspace name:comms silent; move -100%,100%] telegram-desktop"
"[workspace name:comms silent; move -100%,-100%] signal-desktop --enable-features=UseOzonePlatform --ozone-platform=wayland"
"[workspace name:comms silent; move 100%,100%] floorp https://web.whatsapp.com https://instagram.com"
"[workspace name:comms silent; move 100%,-100%] vesktop"
"[workspace name:bg_noise] floorp https://www.youtube.com/playlist?list=WL"
"[workspace name:main] alacritty"
"nm-applet --indicator"
"blueman-applet"
"trayscale"
];
# Declare all keybinds
bind = [
# Keybind for setting fullscreen
"$mod, F11, fullscreen"
# Keybinds for starting programs
"$mod, F, exec, floorp"
"$mod, 1, exec, alacritty"
"$mod, D, exec, vesktop"
"$mod, space, exec, bash -c 'wofi --show drun, run'"
# Keybind for toggling touchpad
"$mod, j, exec, sh $scripts/hyprland/touchpad_toggle.sh"
# Screenshot tool
", Print, exec, hyprshot -m region"
# Screen locking tool
"$mod, l, exec, hyprlock"
# Window management
"$mod, x, killactive"
"$mod, tab, togglefloating"
# workspace swipe but with $mod+scroll
"$mod, mouse_up, workspace, r+1"
"$mod, left, workspace, m-1"
"$mod, mouse_down, workspace, m-1"
"$mod, right, workspace, r+1"
# send window to workspace
"$mod shift, mouse_up, movetoworkspace, r+1"
"$mod shift, left, movetoworkspace, m-1"
"$mod shift, mouse_down, movetoworkspace, m-1"
"$mod shift, right, movetoworkspace, r+1"
];
# Prevent xwayland apps from looking pixellated, cursor scaling to compensate for this is defined in home.nix
xwayland = {
force_zero_scaling = true;
};
};
};
}