From 6e224784a3d9c27996c0eae52a462cf74005f6b6 Mon Sep 17 00:00:00 2001 From: moonleay Date: Thu, 4 Jan 2024 02:51:55 +0100 Subject: [PATCH] chore: cleaned up hyprland.conf, split on as important stuff into different hyprland configs --- hypr/autorun.conf | 9 ++++ hypr/env_vars.conf | 11 ++++ hypr/hyprland.conf | 129 +++++++++++++++++---------------------------- 3 files changed, 67 insertions(+), 82 deletions(-) create mode 100644 hypr/autorun.conf create mode 100644 hypr/env_vars.conf diff --git a/hypr/autorun.conf b/hypr/autorun.conf new file mode 100644 index 0000000..832d26b --- /dev/null +++ b/hypr/autorun.conf @@ -0,0 +1,9 @@ +# Autorun apps +exec-once = dunst & waybar & hyprpaper +exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP +exec-once = hyprctl setcursor Adwaita 24 +exec-once = zsh /home/moonleay/.config/hypr/hyprland/scripts/fixXwaylandVideoBridge.sh +exec-once = solaar -w hide +exec-once = setxkbmap -model 'pc105angle' -layout 'us' -variant 'cmk_ed_us' -option'' -option 'misc:extend,lv5:caps_switch_lock,grp:shifts_toggle,compose:menu,misc:cmk_curl_dh' +exec-once = flatpak run org.kde.xwaylandvideobridge +# exec-once = /usr/lib/polkit-kde-authentication-agent-1 diff --git a/hypr/env_vars.conf b/hypr/env_vars.conf new file mode 100644 index 0000000..240f7a7 --- /dev/null +++ b/hypr/env_vars.conf @@ -0,0 +1,11 @@ +# Environment variables +env = MOZ_ENABLE_WAYLAND,1 +env = MOZ_DISABLE_RDD_SANDBOX,1 +env = WLR_DRM_NO_ATOMIC,1 +env = GDK_BACKEND=wayland,x11 +env = QT_QPA_PLATFORM="wayland;xcb" +env = SDL_VIDEODRIVER=wayland +env = CLUTTER_BACKEND=wayland +env = XDG_CURRENT_DESKTOP=Hyprland +env = XDG_SESSION_TYPE=wayland +env = XDG_SESSION_DESKTOP=Hyprland diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 7e0aa48..3510681 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -1,60 +1,32 @@ -# -# Please note not all available settings / options are set here. -# For a full list, see the wiki -# - -# See https://wiki.hyprland.org/Configuring/Monitors/ +# Monitors #monitor=,preferred,auto,auto monitor=eDP-2,preferred,0x0,2 monitor=eDP-1,preferred,0x0,2 monitor=DP-1,3840x2160@120,1280x0,1.2 monitor=HDMI-A-1,preferred,4480x0,1 +#monitor=HDMI-A-1,3440x1440@100,1280x0,1 +# Other Hyprland configs +source = ~/.config/hypr/autorun.conf # Autorun apps +source = ~/.config/hypr/env_vars.conf # Set environment variables -# See https://wiki.hyprland.org/Configuring/Keywords/ for more -# Execute your favorite apps at launch -exec-once = dunst & waybar & hyprpaper -exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP -exec-once = hyprctl setcursor Adwaita 24 -exec-once = zsh /home/moonleay/.config/hypr/hyprland/scripts/fixXwaylandVideoBridge.sh -exec-once = solaar -w hide -exec-once = setxkbmap -model 'pc105angle' -layout 'us' -variant 'cmk_ed_us' -option'' -option 'misc:extend,lv5:caps_switch_lock,grp:shifts_toggle,compose:menu,misc:cmk_curl_dh' -exec-once = flatpak run org.kde.xwaylandvideobridge -#exec-once = /usr/lib/polkit-kde-authentication-agent-1 - -# Source a file (multi-file configs) -# source = ~/.config/hypr/myColors.conf - -# Some default env vars. -#env = XCURSOR_SIZE,24 -env = MOZ_ENABLE_WAYLAND,1 -env = MOZ_DISABLE_RDD_SANDBOX,1 -env = WLR_DRM_NO_ATOMIC,1 -env = GDK_BACKEND=wayland,x11 -env = QT_QPA_PLATFORM="wayland;xcb" -env = SDL_VIDEODRIVER=wayland -env = CLUTTER_BACKEND=wayland -env = XDG_CURRENT_DESKTOP=Hyprland -env = XDG_SESSION_TYPE=wayland -env = XDG_SESSION_DESKTOP=Hyprland -#env = STEAM_FORCE_DESKTOPUI_SCALING, 1.5 - +# Disable xwayland scaling xwayland { force_zero_scaling = true } misc { disable_hyprland_logo = true - # Lower static fr + # lower framerate when not updating screen (powersaving) vfr = true } -# For all categories, see https://wiki.hyprland.org/Configuring/Variables/ +# Input settings input { kb_layout = us - #kb_variant = colemak_dh kb_model = pc105angle + # kb_variant = colemak_dh kb_variant = cmk_ed_us kb_options = misc:extend, lv5:caps_switch_lock, grp:shifts_toggle, compose:menu, misc:cmk_curl_dh @@ -68,6 +40,7 @@ input { follow_mouse = 1 touchpad { + disable_while_typing = yes natural_scroll = yes } @@ -75,29 +48,25 @@ input { accel_profile = flat } +# General Hyprland settings general { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - - gaps_in = 5 #5 - gaps_out = 5 #20 - border_size = 2 #1.5 #2 + gaps_in = 5 + gaps_out = 10 #20 + border_size = 2 col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.inactive_border = rgba(595959aa) layout = dwindle - allow_tearing = true } +# Window decorations decoration { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - - rounding = 5 # 10 + rounding = 5 blur { - # Battery saving + # Disable blur for battery saving enabled = false - # enabled = true size = 3 passes = 1 } @@ -108,11 +77,10 @@ decoration { col.shadow = rgba(1a1a1aee) } +# Window animations animations { enabled = yes - # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more - bezier = myBezier, 0.05, 0.9, 0.1, 1.05 animation = windows, 1, 7, myBezier @@ -123,14 +91,13 @@ animations { animation = workspaces, 1, 6, default } +# Dwindle layout dwindle { - # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more - pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below - preserve_split = yes # you probably want this + pseudotile = yes + preserve_split = yes } master { - # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more new_is_master = true } @@ -142,19 +109,12 @@ gestures { workspace_swipe_direction_lock = false } -# Example per-device config -# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more -#device:5586d3691540 { -# sensitivity = -0.5 -#} +# Per device configs +# - -# Example windowrule v1 -# windowrule = float, ^(kitty)$ -# Example windowrule v2 -# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ -# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more +# Windowrules windowrulev2 = immediate, class:^(minecraft)$ + # Screensharing windowrulev2 = opacity 0.0 override 0.0 override,class:^(xwaylandvideobridge)$ windowrulev2 = noanim,class:^(xwaylandvideobridge)$ @@ -164,30 +124,35 @@ windowrulev2 = noinitialfocus,class:^(xwaylandvideobridge)$ # See https://wiki.hyprland.org/Configuring/Keywords/ for more $mainMod = SUPER +# Custom mappings -# Custom Mappings -# -# Eject = XF86Eject -# XF86Tools = F13 -# XF86Launch5 = F14 -# XF86Launch6 = F15 -# ... -# XF86Launch9 = F18 -# NoSymbol = F19 +# Shutdown / Reboot bind = $mainMod, XF86Eject, exec, shutdown now -bind = $mainMod, XF86Launch1, exec, shutdown now bind = $mainMod SHIFT, XF86Eject, exec, reboot +bind = $mainMod, XF86Launch1, exec, shutdown now bind = $mainMod SHIFT, XF86Launch1, exec, reboot + +# Music controll bind = , XF86Tools, exec, playerctl previous bind = , XF86Launch5, exec, playerctl play-pause bind = , XF86Launch6, exec, playerctl next + +# Run "overlay apps" bind = CTRL ALT, DELETE, exec, swaylock bind = $mainMod SHIFT, s, exec, grim -g "$(slurp)" -c "/home/moonleay/Pictures/Screenshots/$(date +'%s_grim.png')" + +# Run application bind = $mainMod SHIFT, q, exec, librewolf +# Force app fullsceen +bind = ALT_L, f, fullscreen +bind = ALT_L SHIFT, f, fakefullscreen + +# Custom rofi +bind = $mainMod, TAB, exec, rofi -show window -show-icons + # Default Mappings -# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more -bind = $mainMod, Q, exec, alacritty # kitty +bind = $mainMod, Q, exec, alacritty bind = $mainMod, C, killactive, bind = $mainMod, M, exit, bind = $mainMod, E, exec, thunar @@ -196,13 +161,13 @@ bind = $mainMod, R, exec, rofi -show drun -show-icons bind = $mainMod, P, pseudo, # dwindle bind = $mainMod, J, togglesplit, # dwindle -# Move focus with mainMod + arrow keys +# Move the window focus bind = $mainMod, left, movefocus, l bind = $mainMod, right, movefocus, r bind = $mainMod, up, movefocus, u bind = $mainMod, down, movefocus, d -# Switch workspaces with mainMod + [0-9] +# Switch focus bind = $mainMod, 1, workspace, 1 bind = $mainMod, 2, workspace, 2 bind = $mainMod, 3, workspace, 3 @@ -216,7 +181,7 @@ bind = $mainMod, 0, workspace, 10 bind = $mainMod, minus, workspace, 11 bind = $mainMod, equal, workspace, 12 -# Move active window to a workspace with mainMod + SHIFT + [0-9] +# Move window to other workspace bind = $mainMod SHIFT, 1, movetoworkspace, 1 bind = $mainMod SHIFT, 2, movetoworkspace, 2 bind = $mainMod SHIFT, 3, movetoworkspace, 3 @@ -230,11 +195,11 @@ bind = $mainMod SHIFT, 0, movetoworkspace, 10 bind = $mainMod SHIFT, minus, movetoworkspace, 11 bind = $mainMod SHIFT, equal, movetoworkspace, 12 -# Scroll through existing workspaces with mainMod + scroll +# Scroll through workspaces bind = $mainMod, mouse_down, workspace, e+1 bind = $mainMod, mouse_up, workspace, e-1 -# Move/resize windows with mainMod + LMB/RMB and dragging +# Move and scale workspaces bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow