]> Freerunner's - dotfiles.git/commitdiff
hypr: update config for 0.50.x
authorAndre Ramnitz <tux.rising@gmail.com>
Fri, 5 Sep 2025 00:02:23 +0000 (02:02 +0200)
committerAndre Ramnitz <tux.rising@gmail.com>
Fri, 5 Sep 2025 00:02:23 +0000 (02:02 +0200)
dot-config/hypr/fragments/animations.conf
dot-config/hypr/fragments/keybinds.conf
dot-config/hypr/fragments/layerrules.conf
dot-config/hypr/fragments/windowrules.conf
dot-config/hypr/fragments/workspacerules.conf
dot-config/hypr/hyprland.conf
dot-config/hypr/hyprlock.conf
dot-config/hypr/scripts/RofiEmoji.sh
dot-config/hypr/scripts/moveorswapwindow.sh [new file with mode: 0755]
dot-config/hypr/scripts/startup.sh

index 5306d348b54d4a2ea2e139417329aeb251f9249c..38d19a5ad7a3ce4a60114be8a4710f4539fb4a3d 100644 (file)
@@ -54,7 +54,9 @@ animations {
 
        # Custom Animations / Overrides
     animation = windowsMove, 1, 3, easeOutQuad
-    animation = borderangle, 1, 60, border, loop
+    # animation = borderangle, 1, 5, border, loop
+    animation = workspacesIn, 1, 2.91, easeInOutExpo, slidefade 57%
+    animation = workspacesOut, 1, 2.21, easeInOutExpo, slidefade 57%
 
 }
 
index 2a6c5e67502a4a8056428c68e82181594858ba70..3c9171d9fd5f19ef1d4699a12b1b82a27c49b853 100644 (file)
@@ -14,8 +14,10 @@ bind = $mainmod Shift,                  Q, killactive,
 bind = $mainmod Shift,                  Return, exec, foot -w 1280x800 -o pad=0x0 -a popup
 bind = $mainmod,                        A, pseudo, # dwindle, A for Artificial
 bind = $mainmod,                        B, exec, $HOME/.config/hypr/scripts/browser_focus_or_run.sh
-bind = $mainmod,                        D, exec, killall fuzzel || fuzzel --config=$HOME/.config/fuzzel/fuzzel-startmenu.ini
-bind = $mainmod Shift,                  D, exec, killall fuzzel || fuzzel --config=$HOME/.config/fuzzel/fuzzel-centered.ini
+# bind = $mainmod,                        C, exec, killall fuzzel || cliphist list | fuzzel -d --config=$HOME/.config/fuzzel/fuzzel-emojii.ini --prompt='Copy > ' | cliphist decode | wl-copy
+bind = $mainmod,                        C, exec, foot -a clipse -e clipse
+bind = $mainmod,                        D, exec, killall fuzzel || fuzzel --config=$HOME/.config/fuzzel/fuzzel-centered.ini
+bind = $mainmod SHIFT,                  D, exec, sherlock
 bind = $mainmod,                        E, exec, foot -a lf lfrun
 bind = $mainmod SHIFT,                  E, exec, dolphin
 bind = $mainmod,                        F, fullscreen,1
@@ -34,12 +36,10 @@ bind = $mainmod,                        S, layoutmsg, swapwithmaster # master
 bind = $mainmod,                        S, togglesplit, # dwindle
 bind = $mainmod Shift,                  S, swapsplit, # dwindle
 bind = $mainmod,                        V, togglefloating
-bind = $mainmod Shift,                  V, exec, killall fuzzel || cliphist list | fuzzel -d --config=$HOME/.config/fuzzel/fuzzel-centered.ini | cliphist decode | wl-copy
 bind = $mainmod,                        W, exec, killall -SIGUSR1 waybar
 bind = $mainmod SHIFT,                  W, exec, killall -SIGUSR2 waybar
 bind = $mainmod,                        grave, exec, ~/.config/hypr/scripts/RofiEmoji.sh
 bind = $mainmod,                        Z, centerwindow
-
 # scratchpad
 bind = $mainmod,                        I, togglespecialworkspace, overlay
 bind = $mainmod SHIFT,                  I, movetoworkspace, special:overlay
@@ -57,13 +57,12 @@ bind = $suremod,                        L, exec, ~/.config/hypr/scripts/powermen
 bind = $mainmod,                        Print, exec, hyprshot -m output -m active -o $HOME/Bilder/Screenshots
 bind = SHIFT,                           Print, exec, hyprshot -m window -m active -o $HOME/Bilder/Screenshots
 bind = CTRL,                            Print, exec, hyprshot -z -m region -o $HOME/Bilder/Screenshots
-bind = ALT SHIFT,                   F12, exec, ~/.config/hypr/scripts/gamemode.sh
 bind = ALT CTRL,            L, exec, hyprlock
 
 # media keys
 # ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
-bindl = ,                               XF86AudioRaiseVolume, exec, wp+
-bindl = ,                               XF86AudioLowerVolume, exec, wp-
+bindl = ,                               XF86AudioRaiseVolume, exec, /home/andy/.local/bin/wp+
+bindl = ,                               XF86AudioLowerVolume, exec, /home/andy/.local/bin/wp-
 bindl = ,                               XF86AudioMute, exec, ~/.config/hypr/scripts/muteorunmute.sh
 bindl = ,                               XF86AudioPlay, exec, playerctl play-pause
 bindl = ,                               XF86AudioNext, exec, playerctl next
@@ -87,15 +86,16 @@ bind = $mainmod,                        L, movefocus, r
 bind = $mainmod,                        K, movefocus, u
 bind = $mainmod,                        J, movefocus, d
 
-# move windows or entire groups
-bind = $mainmod SHIFT,                  left, movewindow, l
-bind = $mainmod SHIFT,                  right, movewindow, r
-bind = $mainmod SHIFT,                  up, movewindow, u
-bind = $mainmod SHIFT,                  down, movewindow, d
-bind = $mainmod SHIFT,                  H, movewindow, l
-bind = $mainmod SHIFT,                  L, movewindow, r
-bind = $mainmod SHIFT,                  K, movewindow, u
-bind = $mainmod SHIFT,                  J, movewindow, d
+# swap windows or entire groups if tiled, move around if floated 
+$moveAmount = 120
+bind = $mainmod SHIFT,                  left, exec, $HOME/.config/hypr/scripts/moveorswapwindow.sh $moveAmount l
+bind = $mainmod SHIFT,                  right, exec, $HOME/.config/hypr/scripts/moveorswapwindow.sh $moveAmount r
+bind = $mainmod SHIFT,                  up, exec, $HOME/.config/hypr/scripts/moveorswapwindow.sh $moveAmount u
+bind = $mainmod SHIFT,                  down, exec, $HOME/.config/hypr/scripts/moveorswapwindow.sh $moveAmount d
+bind = $mainmod SHIFT,                  H, exec, $HOME/.config/hypr/scripts/moveorswapwindow.sh $moveAmount l
+bind = $mainmod SHIFT,                  L, exec, $HOME/.config/hypr/scripts/moveorswapwindow.sh $moveAmount r
+bind = $mainmod SHIFT,                  K, exec, $HOME/.config/hypr/scripts/moveorswapwindow.sh $moveAmount u
+bind = $mainmod SHIFT,                  J, exec, $HOME/.config/hypr/scripts/moveorswapwindow.sh $moveAmount d
 
 # Move windows into or out of groups with $suremod
 bind = $mainmod CTRL,                   left, movewindoworgroup, l
@@ -119,17 +119,6 @@ bind = $mainmod,                        U, changegroupactive, b
 bind = $mainmod SHIFT,                  O, movegroupwindow, f
 bind = $mainmod SHIFT,                  U, movegroupwindow, b
 
-# Move floating windows u/d/l/r
-bind = $mainmod ALT,                    left, moveactive, -40 0
-bind = $mainmod ALT,                    right, moveactive, 40 0
-bind = $mainmod ALT,                    up, moveactive, 0 -40
-bind = $mainmod ALT,                    down, moveactive, 0 40
-bind = $mainmod ALT,                    H, moveactive, -40 0
-bind = $mainmod ALT,                    L, moveactive, 40 0
-bind = $mainmod ALT,                    K, moveactive, 0 -40
-bind = $mainmod ALT,                    J, moveactive, 0 40
-
-
 # workspaces
 # ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
 
index fe3222a4ba3ab0fe723e0ad8053d8e4730af45f0..ffed9af99965df8eb6540570a5eea291d3e5e165 100644 (file)
@@ -1,12 +1,26 @@
 # kak: filetype=conf:tabstop=4:indentwidth=4:ai
 
+# general
 layerrule = blurpopups, top
+
+# waybar
 layerrule = blur, waybar
 layerrule = ignorealpha 0.1, waybar
+layerrule = xray 1, waybar
+layerrule = noanim, waybar
+
+# mako
 layerrule = blur, notifications
 layerrule = ignorealpha 0.1, notifications
 layerrule = ignorezero, notifications
+
+# gtkdock
 layerrule = blur, GTKDock
 layerrule = ignorealpha 0.1, GTKDock
+layerrule = xray 1, GTKDock
+
+# fuzzel
 layerrule = blur, launcher
 layerrule = ignorealpha 0.1, launcher
+layerrule = dimaround, launcher
+layerrule = animation layers, launcher
index 832a3c71e3842c68afe2eaa5b0aa7852de169065..3e1bc34ba171c1a6453eb07e26b48e7e6cc2f25c 100644 (file)
@@ -17,6 +17,7 @@ windowrule = float, class:^(lxqt-.*)$
 windowrule = float, class:^(vlc.*)$
 windowrule = float, class:^(pcmanfm.*)$
 windowrule = float, class:^(qalculate.*)$
+windowrule = size 1560 1000, class:^(org.kde.dolphin)$
 
 windowrule = minsize 1 1, stayfocused, float, class:^(com.nextcloud.desktopclient.nextcloud)$
 windowrule = stayfocused, class:^(com.nextcloud.desktopclient.nextcloud)$
@@ -24,10 +25,15 @@ windowrule = float, class: ^(com.nextcloud.desktopclient.nextcloud)$
 
 windowrule = float, class:^(kdesystemsettings.*)$
 windowrule = float, size 1560 1000, pin, workspace special:overlay, class:^(org.keepassxc.KeePassXC)$
-windowrule = stayfocused, class:^(org.kde.kwalletd6)$
+
+# handle dialogs
+windowrule = float, title:^((Über|About|Öffnen).*)$
+windowrule = stayfocused, title:^((Über|About|Öffnen).*)$
+windowrule = float, class:^((org.kde.kwalletd6|org.kde.ksecretd).*)$
+windowrule = stayfocused, class:^((org.kde.kwalletd6|org.kde.ksecretd).*)$
 
 # indicate windows with special attention
-windowrulev2 = bordercolor 0xff$base08 0x8a$base08 45deg, initialTitle:^(upgrayyedd)$
+windowrulev2 = bordercolor 0xff$berror 0xff$black 30deg, initialTitle:^(upgrayyedd)$
 
 # handle windows tray items (xembedsniproxy)
 # dirty: can't match it since class+title are empty
@@ -36,10 +42,6 @@ windowrulev2 = bordercolor 0xff$base08 0x8a$base08 45deg, initialTitle:^(upgrayy
 windowrule = opacity 0, title:^()$, class:^()$
 windowrule = noblur, title:^()$, class:^()$
 
-# handle dialogs
-windowrule = float, title:^((Über|About).*)$
-windowrule = stayfocused, title:^((Über|About).*)$
-
 # handle gimp (omg)
 windowrule = workspace 5, class:^(gimp)$
 windowrule = float, class:^(gimp)$
@@ -47,19 +49,25 @@ windowrule = tile, class:^(gimp)$, title:^(.*GIMP)$
 
 # handle krita
 windowrule = workspace 5, class:^(krita)$
-windowrule = float, class:^(krita)$,title:.*(?=\sKrita)
-windowrule = minsize 1280 800, class:^(krita)$,title:.*(?=\sKrita)
-windowrule = focusonactivate, class:^(krita)$,title:.*(?=\sKrita)
+# windowrule = float, class:^(krita)$,title:.*(?=\sKrita)
+# windowrule = minsize 1280 800, class:^(krita)$,title:.*(?=\sKrita)
+# windowrule = focusonactivate, class:^(krita)$,title:.*(?=\sKrita)
+
+# handle Softmaker Office
+windowrule = workspace 7, class:^(pm|tm|pr)$
 
 # WIP: handle cava launched by .desktop file
 windowrule = float,class:^(cava|foot)$,title:cava
-windowrule = noinitialfocus,^(cava|foot)$,title:cava
+windowrule = noinitialfocus,^(cava|foot)$,title:cava
 windowrule = size 1024 600,^(cava|foot)$,title:cava
 windowrule = move 100% 100%,^(cava|foot)$,title:cava
 
 # handle browsers
-windowrule = tag +neverdim, class:^(firefox.*)$
 windowrule = tag +neverdim, class:^(org.qutebrowser.*)$
+windowrule = tag +neverdim, class:^(Microsoft-edge.*)$
+windowrule = tag +neverdim, class:^(firefox.*)$
+windowrule = workspace 1, class:^(firefox.*)$
+windowrule = group barred, class:^(firefox.*)$, title:^(Mozilla Firefox)$
 
 # handle video PiPs
 windowrule = float, class:^(firefox.*)$, title:^(Bild-im-Bild|Picture-in-picture)$
@@ -68,9 +76,13 @@ windowrule = size 800 450, class:^(firefox.*)$, title:^(Bild-im-Bild|Picture-in-
 windowrule = plugin:hyprbars:nobar, class:^(firefox.*)$, title:^(Bild-im-Bild|Picture-in-picture)$
 windowrule = noinitialfocus, class:^(firefox.*)$, title:^(Bild-im-Bild|Picture-in-picture)$
 windowrule = group deny, class:^(firefox.*)$, title:^(Bild-im-Bild|Picture-in-picture)$
+windowrule = pin, class:^(firefox.*)$, title:^(Bild-im-Bild|Picture-in-picture)$
 
 # handle terminal(s/-apps)
 windowrule = float, class:^(popup)$
+windowrule = float, class:^(clipse)$
+windowrule = plugin:hyprbars:nobar, class:^(clipse)$
+
 windowrule = pseudo, class:^(ncmpcpp)$
 windowrule = workspace 4, class:^(ncmpcpp)$
 windowrule = noinitialfocus, class:^(ncmpcpp)$
@@ -78,10 +90,12 @@ windowrule = float, stayfocused, center, opacity 1.0 override, class:^(kakpopup)
 
 # handle other clients
 windowrule = float, class:^(openrgb)$
-
+windowrule = float, class:^(nwg-look)$
+windowrule = float, class:^(alsa-scarlett-gui)$
+windowrule = float, class:^(lstopo)$
 windowrule = float, class:^(org.corectrl.CoreCtrl)$
-
 windowrule = float, class:^(lutris)$
+windowrule = workspace 7, class:^(thunderbird|thunderbird-bin)$
 
 windowrule = float, class:^(pavucontrol.*)$
 windowrule = maxsize 600 800, class:^(pavucontrol.*)$
@@ -105,20 +119,21 @@ windowrule = noshadow on, class:^(ueberzugpp.*)$
 windowrule = group deny, class:^(ueberzugpp.*)$
 
 # handle portals
-windowrule = float, class:^(org.freedesktop.impl.portal.desktop.kde)$
-windowrule = stayfocused, class:^(org.freedesktop.impl.portal.desktop.kde)$
+windowrule = float, class:^(org.freedesktop.impl.portal.desktop.kde)$
+windowrule = stayfocused, class:^(org.freedesktop.impl.portal.desktop.kde)$
 
 # handle steam client
 windowrule = float, class:^(steam)$
-windowrule = stayfocused, title:^()$, class:^(steam)$, title:^(Steam)$
-windowrule = suppressevent activate, class:^(steam)$, title:^(Steam)$
+windowrule = workspace 6, class:^(steam)$
 windowrule = minsize 1 1, title:^()$, class:^(steam)$
-windowrule = noanim 1, class:^(steam)$
-windowrule = noblur 1, class:^(steam)$
-windowrule = norounding 1, class:^(steam)$
-windowrule = nodim 1, class:^(steam)$
-windowrule = decorate 0, class:^(steam)$
 windowrule = plugin:hyprbars:nobar,class:^(steam)$
+# windowrule = decorate 0, class:^(steam)$
+# windowrule = stayfocused, title:^()$, class:^(steam)$, title:^(Steam)$
+# windowrule = suppressevent activate, class:^(steam)$, title:^(Steam)$
+# windowrule = noanim 1, class:^(steam)$
+# windowrule = noblur 1, class:^(steam)$
+# windowrule = norounding 1, class:^(steam)$
+# windowrule = nodim 1, class:^(steam)$
 
 # handle wine/proton games
 $GAMES = ^(steam_app_.*|steam_proton|streaming_client|gamescope)$
index e1791795ff48cbef2c80dea1801ec211ce429d70..8717c10c3449c9520087b0dc2d797ae5f1a283db 100644 (file)
@@ -3,10 +3,7 @@
 # workspace rules
 #example: on-created-empty: exec, something"
 
-workspace = 1, monitor:DP-1, default:true
-workspace = 2, monitor:DP-1
-workspace = 3, monitor:DP-1
-workspace = 4, monitor:DP-1, gapsout:40, gapsin:20
-workspace = 5, monitor:DP-1
-workspace = 6, monitor:DP-1, float
-workspace = special:magic, monitor:DP-1
+workspace = 1, default:1
+workspace = 4, gapsout:40, gapsin:20
+workspace = 6, float
+workspace = special:magic
index 604552be37e4b92f55ab3922c72266c0772a6418..3d4f6ac2d3705cd2e1f7e6d045dacf5018e53e8a 100644 (file)
@@ -4,12 +4,12 @@
 # ░▀░▀░░▀░░▀░░░▀░▀░▀▀▀░▀░▀░▀░▀░▀▀░░░░▀▀▀░▀▀▀░▀░▀░▀░░░▀▀▀░▀▀▀i
 # compiled plugins reside in /var/cache/hyprpm/[username]/
 
-# flavours integration
-source=./base16-colors.conf
+# colorscheme integration
+source=./matugen-colors.conf
 
 # LG 34"
 monitorv2 {
-    output = DP-1
+    output = DP-2
     mode = preferred
     position = 0x0
     scale = 1
@@ -24,30 +24,28 @@ monitorv2 {
 # other displays
 monitor=,preferred,auto-center-right,1,vrr,2
 
-exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
-exec-shutdown = setenv WAYLAND_DISPLAY= XDG_SESSION_TYPE= XDG_CURRENT_DESKTOP=
-
 # Execute your favorite apps at launch
+exec-once = dbus-update-activation-environment --systemd --all
+# exec-once = /usr/bin/gnome-keyring-daemon --start --components=secrets --daemonize
+exec-once = /usr/libexec/pam_kwallet_init
 exec-once = ~/.config/hypr/scripts/startup.sh
-exec-once = hypridle
 exec-once = hyprpm reload
-exec-once = swww-daemon
-exec-once = swww img /home/andy/Bilder/Wallpapers/3440x1440\ SW.png
-exec-once = hyprsunset
-exec-once = flatpak run ch.threema.threema-desktop
+
+# Unset variables on exit
+exec-shutdown = setenv WAYLAND_DISPLAY= XDG_SESSION_TYPE= XDG_CURRENT_DESKTOP=
 
 general {
     allow_tearing = 0
     border_size = 2
     gaps_in = 5
     gaps_out = 10
-    # col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg #vanilla colors
-    col.active_border = 0xea$base0C 0x8a$base0D 45deg
-    col.inactive_border = 0xea$base03 0xda$base02 45deg
-    col.nogroup_border_active = 0xea$base0E 0x8a$base08 45deg
-    col.nogroup_border = 0xea$base03 0xda$base02 45deg
+    # col.active_border = rgba(33ccffee) rgba(00ff99ee) 15deg #vanilla colors
+    col.active_border = 0xff$tertiary 0x88$tertiary 50deg
+    col.nogroup_border_active = 0xff$error 0x88$error 50deg
+    col.inactive_border = 0xff$background
+    col.nogroup_border  = 0xff$background
     snap {
-        enabled = true
+        enabled = 1
         window_gap = 10
         monitor_gap = 0
         border_overlap = 0
@@ -58,53 +56,52 @@ general {
 dwindle {
     pseudotile = yes
     force_split = 2
-    smart_split = false
+    smart_split = 0
     split_width_multiplier = 2.0
-    single_window_aspect_ratio = 16 9
+    single_window_aspect_ratio = 16 10
     single_window_aspect_ratio_tolerance = 0.1
     pseudotile = 1 # master switch for pseudotiling. Enabling is bound to mainMod + A in the keybinds section below
-    preserve_split = true # you probably want this
+    preserve_split = 1 # you probably want this
 }
 
 master {
     new_status = slave
-    allow_small_split = true
+    allow_small_split = 1
     special_scale_factor = .80
     mfact = .45
     orientation = center
     slave_count_for_center_master = 2
     center_master_fallback = left
-    inherit_fullscreen = false
+    inherit_fullscreen = 0
 }
 
 decoration {
-    rounding = 4
+    rounding = 10
     dim_special = 0.3
-    dim_inactive = true
+    dim_inactive = 1
     dim_strength = 0.2
     blur {
-        enabled = true
-        special = true
-        popups = false
+        enabled = 1
+        special = 1
+        popups = 0
         size = 3
-        passes = 1
-        noise = 0.0317
+        passes = 2
+        noise = 0.0117
         contrast = 0.8916
-        brightness = 0.7172
+        brightness = 0.8172
         vibrancy = 0.1696
-        vibrancy_darkness = 0.1
-        ignore_opacity = true
+        vibrancy_darkness = 0.0
+        ignore_opacity = 1
     }
     shadow {
-        enabled = true
-        range = 20
+        enabled = 1
+        range = 5
         render_power = 3
-        sharp = false
-        ignore_window = true
-        color = 0xee$base01
-        color_inactive = 0xee$base01
-        offset = 1, 1
-        scale = 0.9992
+        ignore_window = 1
+        color = 0xff$shadow
+        color_inactive = 0xff$shadow
+        offset = 0, 0
+        scale = 1.0
     }
 }
 
@@ -132,60 +129,55 @@ device {
     accel_profile = custom 0.3308622437 0.000 0.224 0.449 0.673 0.997 1.335 1.672 2.010 2.348 2.685 3.186 3.699 4.212 4.725 5.237 5.750 6.263 6.776 7.288 7.801 8.314 8.827 9.339 9.852 10.365 10.878 11.390 11.903 12.416 13.476
 }
 
-gestures {
-    workspace_swipe = false
-}
-
 group {
     merge_groups_on_drag = 0
     insert_after_current = 1
-    col.border_active = 0xea$base0C 0xda$base0D 60deg
-    col.border_locked_active = 0xea$base0B 0xda$base0C 60deg
-    col.border_inactive = 0xea$base03 0xda$base02 60deg
-    col.border_locked_inactive = 0xea$base03 0xda$base02 60deg
+    col.border_active = 0xff$secondary 0x88$secondary 50deg
+    col.border_locked_active = 0xff$primary 0x88$primary 50deg
+    col.border_inactive = 0xff$background
+    col.border_locked_inactive = 0xff$background
     groupbar {
         enabled = 1
         font_family = ZedMono NFP
-        font_size = 13
-        font_weight_active = normal
-        font_weight_inactive = normal
-        text_color = 0xff$base01
-        text_color_locked_active = 0xff$base05
-        text_color_inactive = 0xff$base01
-        text_color_locked_inactive = 0xff$base01
-        height = 20
         font_size = 16
-        text_color = 0xFF$base00
-        scrolling = false
-        col.active = 0xea$base0C 0x7a$base0C 45deg
-        col.inactive = 0xea$base03 0x6a$base03 45deg
-        col.locked_active = 0xea$base0B 0x6a$base0B 45deg
-        col.locked_inactive = 0xea$base03 0x6a$base03 45deg
-        indicator_gap = 1
-        indicator_height = 8
-        render_titles = false
+        font_weight_active = bold
+        font_weight_inactive = bold
+        text_color = 0xff$on_secondary
+        text_color_locked_active = 0xff$on_primary
+        text_color_inactive = 0xff$on_background
+        text_color_locked_inactive = 0xff$background
+        height = 22
+        text_color = 0xff$on_secondary
+        scrolling = 1
+        col.active = 0xff$secondary 0xaa$secondary 50deg
+        col.locked_active = 0xff$primary 0xaa$primary 50deg
+        col.inactive = 0xff$background
+        col.locked_inactive = 0xff$background
+        indicator_gap = 0
+        indicator_height = 0
+        render_titles = 1
         priority = 3
         rounding = 4
-        round_only_edges = true
-        gradients = false
-        gradient_rounding = 4
-        gradient_round_only_edges = true
-        stacked = false
+        round_only_edges = 1
+        gradients = 1
+        gradient_rounding = 10
+        gradient_round_only_edges = 1
+        stacked = 0
         gaps_in = 2
         gaps_out = 2
-        keep_upper_gap = true
+        keep_upper_gap = 0
     }
 }
 
 misc {
     force_default_wallpaper = 1 # Set to 0 to disable the anime mascot wallpapers
-    key_press_enables_dpms = true
-    vfr = true #enable for battery savings
+    key_press_enables_dpms = 1
+    vfr = 1 #enable for battery savings
     render_unfocused_fps = 60
     allow_session_lock_restore = 1
     initial_workspace_tracking = 1
     font_family = ZedMono NFP
-    enable_swallow = 1
+    enable_swallow = 0
     swallow_regex = ^(Alacritty|kitty|foot|footclient|konsole)$
 }
 
@@ -196,7 +188,7 @@ binds {
 }
 
 xwayland {
-    force_zero_scaling = true    # unscale XWayland
+    force_zero_scaling = 1    # unscale XWayland
 }
 
 render {
@@ -224,7 +216,7 @@ experimental {
 }
 
 debug {
-    disable_logs = false # file logging. defaults to 1 for production
+    disable_logs = 0 # file logging. defaults to 1 for production
 }
 
 plugin {
@@ -232,15 +224,41 @@ plugin {
         bar_text_font = ZedMono NFP
         bar_text_size = 12
         bar_height = 24
-        bar_color = 0xfb$base00
-        col.text = 0xff$base05
+        bar_color = 0xff$surface
+        col.text = 0xff$on_surface
         bar_part_of_window = 1
         bar_precedence_over_border = 1
         #NOTE: hyprbars-button = color, size, icon, on-click
-        hyprbars-button = 0xaa$base08, 20, 󰖭, hyprctl dispatch killactive
-        hyprbars-button = 0xaa$base0A, 20, 󰁌, hyprctl dispatch fullscreen 1
-        hyprbars-button = 0xaa$base0B, 20, , hyprctl dispatch pin active
+        hyprbars-button = 0xaa$error, 20, 󰖭, hyprctl dispatch killactive
+        hyprbars-button = 0xaa$primary, 20, 󰁌, hyprctl dispatch fullscreen 1
+        hyprbars-button = 0xaa$secondary, 20, , hyprctl dispatch pin active
     }
+       hyprfoci {
+               # can be from -1 to 1, will be
+                       # dynamic ratio with the window instead.
+                       # recommend fixed size for image as dynamic can look weird
+                       # in some cases.
+                       # leave one as 0 to keep original image ratio (image only)
+               # width, height
+               size = 36, 0                    
+
+               # shift down right (can be from -1 to 1 similarly)
+               pos = 0, 2
+
+               # rounding of 3~4 usually results in circle
+                       # depends on monitor type
+                       # higher and lower will make it look square-ly
+                       # doesn't affect image
+               rounding = 1.0
+
+               # color = rgba(FFDD33FF)
+
+               #0: left/top, 1: middle, 2: down/right
+               origin = 1, 0 
+
+               # Absolute path is needed
+               img = /media/multimedia/Bilder/Icons/gentoo-36px-Ripples-larry.svg.png
+       }
 }
 
 
index ca499fb1a1740c79c0bad0ee703124d0156e8930..202cbef75b96c3215e6eccf9e6b6352166ad4973 100644 (file)
@@ -1,4 +1,4 @@
-source=./base16-colors.conf
+source=./matugen-colors.conf
 
 $font = ZedMono NFP
 
@@ -14,7 +14,7 @@ animations {
 background {
     monitor =
        path = ~/Bilder/Wallpapers-simple/atmosphere.png
-    color = 0xdd$base00
+    color = 0xdd$background
     blur_passes = 2
     blur_size = 7
     noise = 0.0117
@@ -29,7 +29,7 @@ image {
        size = 200
        rounding = -1 # negative values mean circle
        border_size = 4
-       border_color = 0xff$base05
+       border_color = 0xff$on_background 
        rotate = 0
        reload_time = -1 # seconds between reloading, 0 to reload with SIGUSR2
        reload_cmd =  # command to get new path. if empty, old path will be used. don't run "follow" commands like tail -F
@@ -43,10 +43,10 @@ image {
 
 shape {
        size = 300, 20
-       color = 0xff$base0C
+       color = 0xff$primary
        rounding = 8
        border_size = 2
-       border_color = 0xffbase01
+       border_color = 0xff$outline_variant
        xray = false
        shadow_passes = 3
        shadow_size = 8
@@ -61,7 +61,7 @@ label {
        text_align = right
        font_size = 64
        font_family = $font
-       color = 0xff$base05
+       color = 0xff$on_background
 
        position = 0, 360
        halign = center
@@ -76,7 +76,7 @@ label {
        text_align = right
        font_size = 15
        font_family = $font
-       color = 0xff$base05
+       color = 0xff$on_background
 
        position = -10, -5
        halign = right
@@ -89,7 +89,7 @@ label {
        text_align = right
        font_size = 15
        font_family = $font
-       color = 0xff$base05
+       color = 0xff$on_background
 
        position = 10, -5
        halign = left
@@ -99,22 +99,22 @@ label {
 
 input-field {
     monitor =
-    size = 300, 50
+    size = 320, 50
     outline_thickness = 3
     dots_size = 0.33 # Scale of input-field height, 0.2 - 0.8
     dots_spacing = 0.15 # Scale of dots' absolute size, 0.0 - 1.0
     dots_center = false
     dots_rounding = -1 # -1 default circle, -2 follow input-field rounding
-    outer_color = 0xff$base00
-    inner_color = 0xff$base05
-    font_color = 0xff$base00
+    outer_color = 0xff$outline
+    inner_color = 0xff$surface
+    font_color = 0xff$on_surface
     fade_on_empty = true
     fade_timeout = 1000 # Milliseconds before fade_on_empty is triggered.
-    placeholder_text = <i>$PROMPT </i> # Text rendered in the input box when it's empty.
+    placeholder_text = <i>Password required...</i> # Text rendered in the input box when it's empty.
     hide_input = false
     rounding = -1 # -1 means complete rounding (circle/oval)
-    check_color = 0xff$base07
-    fail_color = 0xff$base08 # if authentication failed, changes outer_color and fail message color
+    check_color = 0xff$primary
+    fail_color = 0xff$error # if authentication failed, changes outer_color and fail message color
     fail_text = <i>$FAIL <b>($ATTEMPTS)</b></i> # can be set to empty
     fail_transition = 300 # transition time in ms between normal outer_color and fail_color
     capslock_color = -1
index fee9b92d69440ac516de45bea6e9032ef7655618..1f0c78b71c3ba22cd242cc1bf2cf9f17cffa50a4 100755 (executable)
@@ -1,7 +1,6 @@
 #!/bin/bash
 
-# sed '1,/^### DATA ###$/d' $0 | rofi -dmenu -config ~/.config/rofi/config.rasi | cut -d ' ' -f 1 | tr -d '\n' | wl-copy
-sed '1,/^### DATA ###$/d' $0 | fuzzel --config=$HOME/.config/fuzzel/fuzzel-centered.ini --dmenu | cut -d ' ' -f 1 | tr -d '\n' | wl-copy
+sed '1,/^### DATA ###$/d' $0 | fuzzel --config=$HOME/.config/fuzzel/fuzzel-emojii.ini --dmenu | cut -d ' ' -f 1 | tr -d '\n' | wl-copy
 exit
 
 ### DATA ###
diff --git a/dot-config/hypr/scripts/moveorswapwindow.sh b/dot-config/hypr/scripts/moveorswapwindow.sh
new file mode 100755 (executable)
index 0000000..0126158
--- /dev/null
@@ -0,0 +1,37 @@
+#!/bin/sh
+#https://github.com/hyprwm/Hyprland/issues/2321
+
+RESIZE_SIZE=${1:?Missing resize size}
+
+RESIZE_PARAMS_X=0
+RESIZE_PARAMS_Y=0
+
+DIRECTION=${2:?Missing move direction}
+case $DIRECTION in
+l)
+       RESIZE_PARAMS_X=-$RESIZE_SIZE
+       ;;
+r)
+       RESIZE_PARAMS_X=$RESIZE_SIZE
+       ;;
+u)
+       RESIZE_PARAMS_Y=-$RESIZE_SIZE
+       ;;
+d)
+       RESIZE_PARAMS_Y=$RESIZE_SIZE
+       ;;
+*)
+       echo "kbye"
+       return 1
+       ;;
+esac
+
+ACTIVE_WINDOW=$(hyprctl activewindow -j)
+IS_FLOATING=$(echo "$ACTIVE_WINDOW" | jq .floating)
+
+if [ "$IS_FLOATING" = "true" ]; then
+       hyprctl dispatch moveactive "$RESIZE_PARAMS_X" "$RESIZE_PARAMS_Y"
+else
+       hyprctl dispatch movewindow "$DIRECTION"
+fi
+
index c9e61e6e8d91c1905aef9433104e242ffffe73e6..58e88393e5c23e4b26fe1da43f0e8fbcdeab825d 100755 (executable)
@@ -4,29 +4,6 @@
 logger '============================'
 logger 'HYPRLAND MAIN STARTUP BEGIN'
 
-# shellcheck disable=SC2155,SC2046
-# test ! -d "$XDG_RUNTIME_DIR" && export XDG_RUNTIME_DIR=$(mktemp -d /tmp/$(id -u)-runtime-dir.XXX) && logger 'xdg-runtime dir set NOW'
-# test ! "$DBUS_SESSION_BUS_ADDRESS" && dbus-daemon --session --address=unix:path="$XDG_RUNTIME_DIR"/bus && logger 'dbus session daemon started'
-dbus-update-activation-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
-
-# export PATH="$HOME/.local/bin:$HOME/.cargo/bin:$HOME/go/bin:$HOME/Applications:$PATH"
-
-#------------------------------------------------------ xdg-desktop-portal
-# killall -e xdg-desktop-portal-hyprland
-# killall -e xdg-desktop-portal-kde
-# killall -e xdg-desktop-portal-gtk
-# killall -e xdg-desktop-portal-gnome
-# killall -e xdg-desktop-portal-wlr
-# killall xdg-desktop-portal
-# logger 'all xdg-desktop killed '
-# sleep 2
-# # test -f /usr/libexec/xdg-desktop-portal-kde && sleep 1 && /usr/libexec/xdg-desktop-portal-kde &
-# test -f /usr/libexec/xdg-desktop-portal-gtk && /usr/libexec/xdg-desktop-portal-gtk &
-# sleep 1
-# test -f /usr/libexec/xdg-desktop-portal-hyprland && /usr/libexec/xdg-desktop-portal-hyprland &
-# sleep 2
-# test -f /usr/libexec/xdg-desktop-portal && /usr/libexec/xdg-desktop-portal &
-
 #------------------------------------------------------ polkit-kde
 if ! pidof /usr/libexec/polkit-kde-authentication-agent-1; then
     if ! command -v /usr/libexec/polkit-kde-authentication-agent-1 &> /dev/null
@@ -44,38 +21,31 @@ fi
 test -f ~/.Xresources && xrdb ~/.Xresources &
 logger '.Xresources merged'
 
-#------------------------------------------------------ waybar and tray apps
-# gentoo-pipewire-launcher restart > /dev/null 2>&1 &
-# logger 'gentoo-pipewire-launcher (re-)started'
+#------------------------------------------------------ wallpaper daemon
+! pidof swww-daemon && /usr/bin/swww-daemon > /dev/null 2>&1 &
 
-# sleep 2
-# ! pidof mpd && mpd # does fork unless called with --no-daemon
-# logger 'mpd is running'
-# pidof mpd-mpris && pkill mpd-mpris || mpd-mpris > /dev/null 2>&1 &
-# logger 'mpd-mpris is running'
-
-sleep 1
+#------------------------------------------------------ waybar
 pidof waybar && pkill waybar || waybar > /dev/null 2>&1 &
 logger 'waybar started'
 
+#------------------------------------------------------ fix mime association
+# fix open_with menu in dolphin etc.
+env XDG_MENU_PREFIX=plasma- kbuildsycoca6
+
+#------------------------------------------------------ autorun tray apps
 pidof mako && pkill mako || mako > /dev/null 2>&1 &
-pidof kwalletd6 && ~/.config/hypr/scripts/nextcloud.sh > /dev/null 2>&1 &
-pidof kwalletd6 && nextcloud --background &
 pidof xembedsniproxy && pkill xembedsniproxy || xembedsniproxy > /dev/null 2>&1 & # xembedsniproxy needs plasma-workspace
 pidof udiskie && pkill udiskie || udiskie --no-automount --no-notify --tray > /dev/null 2>&1 &
-
 openrgb --startminimized -p sunset > /dev/null 2>&1 &
-
-# ! pidof swww-daemon && nohup /usr/bin/swww-daemon > /dev/null 2>&1
-# sleep 0.5 && ~/.local/bin/rndwallpaper swww
-# sleep 0.5 && ~/.local/bin/rndhyprpaper
-
-pidof wl-paste && pkill wl-paste || true
-wl-paste --type text --watch cliphist store &
-wl-paste --type image --watch cliphist store &
-
-# fix open_with menu in dolphin etc.
-XDG_MENU_PREFIX=plasma- kbuildsycoca6
+! pidof hypridle && hypridle &
+! pidof hyprsunset && hyprsunset &
+! pidof clipse && clipse --listen
+
+#------------------------------------------------------ autorun flatpaks/other (delayed)
+sleep 5
+! pidof nextcloud && nextcloud --background &
+flatpak run ch.threema.threema-desktop > /dev/null 2>&1 &
+flatpak run org.keepassxc.KeePassXC > /dev/null 2>&1 &
 
 logger 'HYPRLAND MAIN STARTUP END'
 logger '============================'