From 45f5f41399ca1a40d9a5510b118d3ee08a4dbed0 Mon Sep 17 00:00:00 2001 From: Hydroxycarbamide Date: Thu, 15 Aug 2024 16:30:44 +0200 Subject: [PATCH] Update personal config --- dot_config/hypr/appearance.conf | 9 ++++++--- dot_config/hypr/binds.conf | 11 +++++----- dot_config/niri/config.kdl | 20 ++++++++++--------- dot_config/river/executable_init | 2 +- dot_config/sway/config | 15 +++++++++----- dot_config/waybar/config.jsonc | 12 +++++------ .../waybar/modules/executable_window.nu | 18 +++++++++++++++++ .../waybar/modules/executable_workspaces.nu | 15 ++++++++++++++ dot_config/waybar/style.css | 2 +- 9 files changed, 74 insertions(+), 30 deletions(-) create mode 100644 dot_config/waybar/modules/executable_window.nu create mode 100644 dot_config/waybar/modules/executable_workspaces.nu diff --git a/dot_config/hypr/appearance.conf b/dot_config/hypr/appearance.conf index ec500b1..cda9447 100644 --- a/dot_config/hypr/appearance.conf +++ b/dot_config/hypr/appearance.conf @@ -75,9 +75,9 @@ animations { bezier = strongOvershot, 0.13, 0.99, 0.29, 1.3 bezier = easeOutExpo, 0.16, 1, 0.3, 1 bezier = easeInOutBack, 0.68, -0.6, 0.32, 1.6 - animation = windows, 1, 4, easeOutExpo, popin - animation = border, 1, 4, easeOutExpo - animation = borderangle, 1, 8, default + animation = windowsIn, 1, 4, easeOutExpo, slide + animation = windowsOut, 1, 4, easeOutExpo, slide + animation = windowsMove, 1, 4, easeOutExpo, slide animation = layers, 1, 3, overshot, fade animation = fadeIn, 1, 1, easeOutExpo animation = fadeOut, 1, 1, easeOutExpo @@ -85,6 +85,8 @@ animations { animation = fadeShadow, 1, 6, easeOutExpo animation = fadeDim, 1, 6, easeOutExpo animation = fadeLayers, 1, 2, easeOutExpo + animation = border, 1, 4, easeOutExpo + animation = borderangle, 1, 8, default animation = workspaces, 1, 6, easeOutExpo, slide animation = specialWorkspace, 1, 1, easeOutExpo, fade } @@ -98,6 +100,7 @@ master { always_center_master = false mfact = 0.55 no_gaps_when_only = 0 + new_status = master } misc { diff --git a/dot_config/hypr/binds.conf b/dot_config/hypr/binds.conf index 89ba2eb..058cb9c 100644 --- a/dot_config/hypr/binds.conf +++ b/dot_config/hypr/binds.conf @@ -27,7 +27,7 @@ bind = $mod, T, exec, swaync-client --toggle-panel # bind = $mod SHIFT, D, exec, tofi-drun --drun-launch=true bind = $mod, D, exec, rofi -show drun -theme catppuccin-macchiato # bind = $mod, D, exec, anyrun -bind = $mod SHIFT, W, exec, rofi -show window -theme catppuccin-macchiato +bind = $mod, W, exec, rofi -show window -theme catppuccin-macchiato # bind = ALT_L, Tab, exec, rofi -show window -theme catppuccin-macchiato # bind = ALT_L, Tab, exec, eww open overview # bind = ALT_L, Tab, exec, killall -SIGUSR1 sfwbar @@ -62,8 +62,8 @@ bind = $mod CONTROL, Tab, movewindow, mon:+1 bind = $mod, Escape, cyclenext bind = $mod, S, togglesplit -bind = $mod, F, fullscreen -bind = $mod SHIFT, F, fullscreen, 1 +bind = $mod, F, fullscreen, 1 +bind = $mod SHIFT, F, fullscreen # bind = $mod, M, fakefullscreen bind = $mod, left, movefocus, l @@ -154,7 +154,8 @@ bind = $mod CONTROL, Space, changegroupactive bind = $mod, comma, focusmonitor, -1 bind = $mod, period, focusmonitor, +1 -bind = $mod, TAB, focusmonitor, +1 +bind = $mod, Tab, focusmonitor, +1 +bind = $mod SHIFT, Tab, movecurrentworkspacetomonitor, +1 bind = $mod SHIFT, comma, movewindow, mon:-1 bind = $mod SHIFT, period, movewindow, mon:+1 @@ -168,8 +169,8 @@ bind = $mod SHIFT, period, movewindow, mon:+1 # hycov +# bind = $mod, W, hycov:toggleoverview # bind = $mod, Tab, hycov:toggleoverview -bind = $mod, W, hycov:toggleoverview # bind = $mod SHIFT, Tab,hycov:toggleoverview,forceall #grave key is the '~' key # bind = $mod CONTROL, Tab, hycov:toggleoverview,forceallinone # bind = ALT_L, Escape, hycov:toggleoverview diff --git a/dot_config/niri/config.kdl b/dot_config/niri/config.kdl index 6a3c84e..18b5c87 100644 --- a/dot_config/niri/config.kdl +++ b/dot_config/niri/config.kdl @@ -74,7 +74,7 @@ input { warp-mouse-to-focus // Focus windows and outputs automatically when moving the mouse into them. - focus-follows-mouse + focus-follows-mouse max-scroll-amount="0%" // Uncomment this to enable workspace auto-back-and-forth. // If enabled, switching to the same workspace by index twice will switch back to the @@ -204,7 +204,8 @@ layout { } // You can change the default width of the new windows. - default-column-width { proportion 0.5; } + default-column-width { proportion 0.66667; } + // If you leave the brackets empty, the windows themselves will decide their initial width. // default-column-width {} @@ -229,7 +230,7 @@ layout { // - "on-overflow", focusing a column will center it if it doesn't fit // together with the previously focused column. // - "always", the focused column will always be centered. - center-focused-column "never" + center-focused-column "on-overflow" } // You can override environment variables for processes spawned by niri. @@ -435,13 +436,13 @@ binds { Mod+Shift+Slash { show-hotkey-overlay; } // Suggested binds for running programs: terminal, app launcher, screen locker. - Mod+Return { spawn "foot"; } + Mod+Return { spawn "footclient"; } Mod+D { spawn "rofi" "-show" "drun" "-theme" "catppuccin-macchiato"; } Mod+W { spawn "rofi" "-show" "window" "-theme" "catppuccin-macchiato"; } Mod+Q { spawn "wlogout" "-p" "layer-shell"; } - Mod+E { spawn "kitty" "--class='fm-term'" "nnn" "-da" "-P" "p"; } - Mod+Shift+E { spawn "xdg-open" "."; } + Mod+E repeat=false { spawn "kitty" "--class='fm-term'" "nnn" "-da" "-P" "p"; } + Mod+Shift+E repeat=false { spawn "xdg-open" "."; } Mod+V { spawn "bash" "-c" "cliphist list | rofi -dmenu | cliphist decode | wl-copy"; } @@ -621,10 +622,11 @@ binds { Mod+BracketLeft { consume-or-expel-window-left; } Mod+BracketRight { consume-or-expel-window-right; } - Mod+R { switch-preset-column-width; } - Mod+F { maximize-column; } - Mod+Shift+F { fullscreen-window; } + Mod+R repeat=false { switch-preset-column-width; } + Mod+F repeat=false { maximize-column; } + Mod+Shift+F repeat=false { fullscreen-window; } Mod+Ctrl+C { center-column; } + Mod+X { center-column; } // Finer width adjustments. // This command can also: diff --git a/dot_config/river/executable_init b/dot_config/river/executable_init index afb5102..087a842 100644 --- a/dot_config/river/executable_init +++ b/dot_config/river/executable_init @@ -250,7 +250,7 @@ declare -a rule_sets rule_sets[1]="footclient kitty foot" rule_sets[2]="LibreWolf firefox" rule_sets[3]="org.gnome.Nautilus fm-term org.qbittorrent.qBittorrent syncplay org.kde.dolphin org.kde.ktorrent" -rule_sets[4]="com.usebottles.bottles cs2 osu* org.prismlauncher.PrismLauncher moe.launcher.sleepy-launcher moe.launcher.an-anime-game-launcher moe.launcher.the-honkers-railway-launcher genshinimpact.exe starrail.exe zenlesszonezero.exe steam steam_app_*" +rule_sets[4]="com.usebottles.bottles cs2 osu* org.prismlauncher.PrismLauncher moe.launcher.sleepy-launcher moe.launcher.an-anime-game-launcher moe.launcher.the-honkers-railway-launcher genshinimpact.exe starrail.exe zenlesszonezero.exe Steam steam steam_app_*" rule_sets[5]="org.remmina.Remmina Code VSCodium" rule_sets[6]="io.github.celluloid_player.Celluloid mpv Spotify" rule_sets[7]="discord vesktop teams-for-linux 'Microsoft Teams - Preview'" diff --git a/dot_config/sway/config b/dot_config/sway/config index 4ba132e..5db4290 100644 --- a/dot_config/sway/config +++ b/dot_config/sway/config @@ -40,8 +40,6 @@ output HDMI-A-1 { adaptive_sync off } -exec "~/.config/sway/scripts/vrr_fullscreen.sh" - ### Idle configuration # # Example configuration: @@ -205,12 +203,18 @@ bindsym $mod+Shift+8 move container to workspace $ws8 bindsym $mod+Shift+9 move container to workspace $ws9 bindsym $mod+Shift+0 move container to workspace $ws10 -bindsym $mod+Tab move workspace to output right +bindsym $mod+Tab focus output right +bindsym $mod+Shift+Tab move workspace to output right bindsym $mod+Control+Shift+Right move workspace to output right bindsym $mod+Control+Shift+Left move workspace to output left bindsym $mod+Control+Shift+Down move workspace to output down bindsym $mod+Control+Shift+Up move workspace to output up +bindsym $mod+comma focus output left +bindsym $mod+period focus output right +bindsym $mod+Shift+comma move container to output left +bindsym $mod+Shift+period move container to output right + ############## # Layout stuff ############## @@ -437,18 +441,19 @@ assign [class=$ws7classes] $ws7 # Autostart +exec_always "~/.config/sway/scripts/vrr_fullscreen.sh" exec waybar & exec swaync & exec swayosd-server & exec /usr/lib/kdeconnectd & exec kdeconnect-indicator & exec_always autotiling -exec flatpak run me.kozec.syncthingtk -m & +# exec flatpak run me.kozec.syncthingtk -m & exec systemctl start --user foot-server exec systemctl start --user sunshine exec wl-paste --type text --watch cliphist store exec wl-paste --type image --watch cliphist store -exec swayidle before-sleep 'loginctl lock-session' lock '/home/eric/.config/hypr/bsplock' +exec swayidle before-sleep 'loginctl lock-session' lock 'swaylock' # exec /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & exec /usr/lib/polkit-kde-authentication-agent-1 & exec rm -f /tmp/sovpipe && mkfifo /tmp/sovpipe && tail -f /tmp/sovpipe | sov -t 200 -n -c 1 -s $HOME/.config/sov diff --git a/dot_config/waybar/config.jsonc b/dot_config/waybar/config.jsonc index 061a457..eea1b7f 100644 --- a/dot_config/waybar/config.jsonc +++ b/dot_config/waybar/config.jsonc @@ -1,6 +1,6 @@ { "output": ["DP-1", "HDMI-A-1"], - "layer": "bottom", + "layer": "top", "position": "top", "height": 32, "modules-left": [ @@ -95,12 +95,12 @@ "7": " ", "8": " ", "default": "" - }, - "persistent-workspaces": { - "*": 4, - "DP-1": [1, 2, 3, 4], - "HDMI-A-1": [5, 6, 7, 8] } + // "persistent-workspaces": { + // "*": 4, + // "DP-1": [1, 2, 3, 4], + // "HDMI-A-1": [5, 6, 7, 8] + // } }, "sway/workspaces#sway": { "current-only": false, diff --git a/dot_config/waybar/modules/executable_window.nu b/dot_config/waybar/modules/executable_window.nu new file mode 100644 index 0000000..49f6ab6 --- /dev/null +++ b/dot_config/waybar/modules/executable_window.nu @@ -0,0 +1,18 @@ +#!/usr/bin/nu + +let out = { + text: "", + tooltip: "" +} + +loop { + sleep 1sec + + let fw = niri msg -j focused-window | from json + + print ( + $out + | try { update text $fw.title | update tooltip $"($fw.title) | ($fw.app_id)" } + | to json -r + ) +} diff --git a/dot_config/waybar/modules/executable_workspaces.nu b/dot_config/waybar/modules/executable_workspaces.nu new file mode 100644 index 0000000..d69bc1c --- /dev/null +++ b/dot_config/waybar/modules/executable_workspaces.nu @@ -0,0 +1,15 @@ +#!/usr/bin/nu + +def main [output_name] { + loop { + sleep 1sec + + print ( + niri msg -j workspaces + | from json + | where output == $output_name + | each {|ws| if $ws.is_active { '󰪥' } else { '󰄰' } } + | str join " " + ) + } +} diff --git a/dot_config/waybar/style.css b/dot_config/waybar/style.css index 6789cd8..3bb48a8 100644 --- a/dot_config/waybar/style.css +++ b/dot_config/waybar/style.css @@ -151,7 +151,7 @@ widget>label { #taskbar button.maximized, #taskbar button.fullscreen { - border-bottom: 3px solid #8aadf4; + border-top: 3px solid #8aadf4; } #taskbar button.active {