diff --git a/.config/hypr/apps.conf b/.config/hypr/apps.conf index c068edb..a7b305d 100644 --- a/.config/hypr/apps.conf +++ b/.config/hypr/apps.conf @@ -1,8 +1,11 @@ # Set programs that you use # $terminal = alacritty -e tmux $terminal = kitty +$spotify = spotify --enable-features=UseOzonePlatform --ozone-platform=wayland $fileManager = dolphin $menu = wofi --show drun $appLauncher = tofi-drun | xargs hyprctl dispatch exec -- -$lockscreen = hyprlock +$lockscreen = hyprlock --immediate +$lockscreen_timeout = hyprlock $nextcloud = nextcloud --background +$clipboard-manager = cliphist list | awk '{gsub("\t", " "); print}' | tofi --width=800 --font-size=14 --font-features="" --background-color=191A1CE0 | cliphist decode | wl-copy diff --git a/.config/hypr/autostart b/.config/hypr/autostart index e810e4c..fa8b1bb 100755 --- a/.config/hypr/autostart +++ b/.config/hypr/autostart @@ -19,6 +19,9 @@ waybar & syncthing & nextcloud --background & +# clipboard +wl-paste --watch cliphist store & + # network-manager tray icon NetworkManager & nm-applet & @@ -27,3 +30,4 @@ polkit-kde-authentication-agent-1 & dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP & hypridle & polkit-qt6 & +xwaylandvideobridge & diff --git a/.config/hypr/hyprbindings.conf b/.config/hypr/hyprbindings.conf index bbb484b..4d9207d 100644 --- a/.config/hypr/hyprbindings.conf +++ b/.config/hypr/hyprbindings.conf @@ -14,14 +14,20 @@ bind = $mainMod ALT_L, K, exec, hyprctl switchxkblayout holtek-usb-hid-keyboard binde = ,XF86AudioLowerVolume, exec, amixer -M -- set Master Playback Switch 1%- binde = ,XF86AudioRaiseVolume, exec, amixer -M -- set Master Playback Switch 1%+ +bind = ,XF86AudioMute, exec, amixer -M -- set Master Playback Switch toggle + # Reduce effects for performance bind = WIN, F1, exec, ~/.config/hypr/gamemode.sh +# Clipboard +bind = $mainMod, V, exec, $clipboard-manager +bind = $mainMod SHIFT, V, exec, cliphist wipe + # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more bind = $mainMod, Q, exec, $terminal bind = $mainMod, M, exit, bind = $mainMod, E, exec, $fileManager -bind = $mainMod, V, togglefloating, +bind = $mainMod, F, togglefloating, bind = $mainMod, R, exec, $menu bind = $mainMod, P, pseudo, # dwindle bind = $mainMod, C, killactive, @@ -45,6 +51,9 @@ bind = $mainMod, O, fullscreenstate, 1 # lock bind = $mainMod, F12, exec, $lockscreen +# swap workspaces between monitors +bind = $mainMod ALT_L, s, swapactiveworkspaces, DP-1 DP-2 +bind = $mainMod ALT_L, s, swapactiveworkspaces, eDP-1 HDMI-A-2 # Move window in direction bind = $mainMod SHIFT, h, swapwindow, l diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf index 97c711c..fd77702 100644 --- a/.config/hypr/hyprland.conf +++ b/.config/hypr/hyprland.conf @@ -8,17 +8,14 @@ autogenerated = 0 # remove this line to remove the warning # See https://wiki.hyprland.org/Configuring/Monitors/ #monitor=name,resolution,offset, scale #offset scales with scale XC -#monitor=DP-2,3840x2160,-2560x0,auto, bitdepth, 10, vrr, 1 +#monitor=DP-1,3840x2160@60,320x-1440,auto, bitdepth, 10, vrr, 1 #320=(2560-1920)/2 #monitor=DP-1,3840x2160@144,auto,auto, bitdepth, 10, vrr, 1 -monitor=DP-1,3840x2160@60,320x-1440,auto, bitdepth, 10, vrr, 1 #320=(2560-1920)/2 -monitor=DP-1,3840x2160@144,auto,auto, bitdepth, 10, vrr, 1 -monitor=DP-2,3840x2160,-2560x0,auto, bitdepth, 10, vrr, 1 -monitor=eDP-1,1920x1080,0x0,1 +#monitor=DP-2,3840x2160,-2560x0,auto, bitdepth, 10, vrr, 1 +monitor=eDP-1,1920x1080,auto,1,vrr, 1 monitor=HDMI-A-1,2560x1440@60.00,0x-1440,1 -monitor=HDMI-A-2,1920x1080@74.97,0x-1080,1 -#monitor=HDMI-A-2,2560x1440@60.00,0x-1440,1 -#monitor=HDMI-A-2,3840x2160@60.00,0x-2160,auto -#monitor=HDMI-A-2,3840x2160,0x-1080,2,bitdepth, 10, vrr, 1 +monitor= ,highres@highrr,auto-up,1 +monitor=DP-1,highres@highrr,auto-right,auto, bitdepth, 10, vrr, 1 +monitor=DP-2,highres@highrr,auto-left,auto, bitdepth, 10, vrr, 1 # See https://wiki.hyprland.org/Configuring/Keywords/ for more @@ -26,7 +23,6 @@ monitor=HDMI-A-2,1920x1080@74.97,0x-1080,1 # Execute your favorite apps at launch # exec-once = waybar & hyprpaper & dunst & syncthing & $nextcloud & $terminal exec-once = $HOME/.config/hypr/autostart -exec-once = /usr/lib/polkit-kde-authentication-agent-1 exec-once = gsettings set org.gnome.desktop.interface gtk-theme "Adwaita-dark" # for GTK3 apps exec-once = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark" # for GTK4 apps @@ -35,14 +31,15 @@ exec-once = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark" source = ~/.config/hypr/background.conf source = ~/.config/hypr/hyprbindings.conf source = ~/.config/hypr/apps.conf +source = ~/.config/hypr/windowrules.conf # Some default env vars. env = XCURSOR_SIZE,32 +env = GSK_RENDERER,ngl +env = GTK_THEME,Adwaita-dark env = QT_QPA_PLATFORM,wayland # here for calibre, with debatable effect env = QT_QPA_PLATFORMTHEME,qt6ct # change to qt6ct if you have that env = QT_AUTO_SCREEN_SCALE_FACTOR,1 -env = GSK_RENDERER,ngl -env = GTK_THEME,Adwaita-dark # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { @@ -57,10 +54,12 @@ input { repeat_delay = 300 # Follow mouse 1 2 3 : - follow_mouse = 2 + follow_mouse = 2 # see also float_switch_override_focus + float_switch_override_focus = 0 touchpad { natural_scroll = yes + clickfinger_behavior = true } scroll_factor = 1.0 @@ -90,7 +89,7 @@ general { decoration { # See https://wiki.hyprland.org/Configuring/Variables/ for more - rounding = 3 + rounding = 0 blur { enabled = true @@ -100,11 +99,12 @@ decoration { vibrancy = 0.3 vibrancy_darkness = 0.8 } - - drop_shadow = no - shadow_range = 4 - shadow_render_power = 3 - col.shadow = rgba(1a1a1aee) + shadow { + enabled = no + range = 4 + render_power = 3 + color = rgba(1a1a1aee) + } } group { groupbar{ @@ -113,9 +113,12 @@ group { font_size = 11 gradients = false scrolling = false - col.active = rgba(ea1d4e77) + render_titles = false + col.active = rgba(33ccffaa) + col.inactive = rgba(00ff9933) } - col.border_active = rgba(ea1d4ebb) rgba(fd7000bb) 45deg + #col.border_active = rgba(ea1d4ebb) rgba(fd7000bb) 45deg + col.border_active = rgba(00ff99ee) rgba(33ccffee) 30deg } animations { @@ -167,18 +170,5 @@ device { accel_profile = flat } -# 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 -# now invalid: # windowrulev2 = nomaximizerequest, class:.* # You'll probably like this. -windowrule = float, pinned, ^(dunst)$ -windowrule = float, pinned, ^(notification)$ -windowrulev2 = float, pinned, title:^(Nextcloud)$ -windowrulev2 = float, title:^(Volume Control)$ -windowrulev2 = float, title:^(Network Connections)$ -windowrulev2 = float, stayfocused, dimaround, fullscreenstate, 0, title:^(Bitwarden - Vivaldi)$ -windowrulev2 = float, pin, workspace unset, noinitialfocus, suppressevents [fullscreen, maximize, activate, activatefocus], title:^(notificationtoasts) -windowrulev2 = workspace 6, noinitialfocus, class:^(steam)$ -windowrulev2 = noinitialfocus, class: ^(steam)$ +# execute at end +exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP diff --git a/.config/hypr/hyprlock.conf b/.config/hypr/hyprlock.conf index a264553..c69445d 100644 --- a/.config/hypr/hyprlock.conf +++ b/.config/hypr/hyprlock.conf @@ -1,5 +1,10 @@ disable_loading_bar = false +general { + grace = 20 + text_trim = false +} + background { monitor = # empty for all monitors #path = /home/felix/Pictures/backgrounds/arch_linux_bg.png diff --git a/.config/hypr/windowrules.conf b/.config/hypr/windowrules.conf new file mode 100644 index 0000000..d02d164 --- /dev/null +++ b/.config/hypr/windowrules.conf @@ -0,0 +1,31 @@ +# 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 +# now invalid: # windowrulev2 = nomaximizerequest, class:.* # You'll probably like this. +windowrule = float, pinned, ^(dunst)$ +windowrule = float, pinned, ^(notification)$ +windowrulev2 = float, pinned, title:^(Nextcloud)$ +windowrulev2 = float, title:^(Volume Control)$ +windowrulev2 = float, title:^(Network Connections)$ +windowrulev2 = float, size 300 700, stayfocused, dimaround, fullscreenstate, 0, title:(Bitwarden - Vivaldi) +windowrulev2 = float, pin, workspace unset, noinitialfocus, suppressevents [fullscreen, maximize, activate, activatefocus], title:^(notificationtoasts) + +windowrulev2 = workspace 6 silent, noinitialfocus, class:^(steam)$ +windowrulev2 = workspace special:A silent, noinitialfocus, class:^(org.telegram.desktop)$ +windowrulev2 = workspace special:A silent, noinitialfocus, class:^(zapzap)$ +windowrulev2 = workspace special:A silent, noinitialfocus, class:^(discord)$ +windowrulev2 = workspace special:A silent, noinitialfocus, class:^(Slack)$ +windowrulev2 = workspace special:S silent, noinitialfocus, class:^(spotify)$ # not capitalised on PC +windowrulev2 = workspace special:S silent, noinitialfocus, class:^(Spotify)$ # capitalised on laptop +windowrulev2 = workspace special:S silent, noinitialfocus, class:^(com.sayonara-player.Sayonara)$ + + +windowrulev2 = opacity 0.0 override, class:^(xwaylandvideobridge)$ +windowrulev2 = noanim, class:^(xwaylandvideobridge)$ +windowrulev2 = noinitialfocus, class:^(xwaylandvideobridge)$ +windowrulev2 = maxsize 1 1, class:^(xwaylandvideobridge)$ +windowrulev2 = noblur, class:^(xwaylandvideobridge)$ +windowrulev2 = nofocus, class:^(xwaylandvideobridge)$ +windowrulev2 = workspace special:X silent, noinitialfocus, class:^(xwaylandvideobridge)$