Switch to hyprland
c3df872bb425da3e4cfad90a689263776c1bd39c
Couldn't get used to sway.
1 parent
aaadfbdb
.config/fish/config.fish
+7 -2
| 39 | 39 | set -e SSH_AGENT_PID |
|
| 40 | 40 | end |
|
| 41 | 41 | end |
|
| 42 | 42 | end |
|
| 43 | 43 | ||
| 44 | - | if type -q keychain |
|
| 44 | + | if status is-login; and type -q keychain |
|
| 45 | 45 | keychain --eval --quiet --noinherit \ |
|
| 46 | 46 | ~/.ssh/id_ed25519 \ |
|
| 47 | 47 | ~/.ssh/id_rsa \ |
|
| 48 | 48 | ~/.ssh/id_rsa_share \ |
|
| 49 | 49 | ~/.radicle/keys/radicle \ |
|
| 50 | 50 | ~/.ssh/alexis.radiant.computer | source |
|
| 51 | + | else if not set -q SSH_AUTH_SOCK |
|
| 52 | + | set -l keychain_env ~/.keychain/(uname -n)-fish |
|
| 53 | + | if test -r "$keychain_env" |
|
| 54 | + | source "$keychain_env" |
|
| 55 | + | end |
|
| 51 | 56 | end |
|
| 52 | 57 | ||
| 53 | 58 | function fish_mode_prompt |
|
| 54 | 59 | end |
|
| 55 | 60 |
| 73 | 78 | alias n "sudo netctl" |
|
| 74 | 79 | alias m "make -j8" |
|
| 75 | 80 | alias b yazi |
|
| 76 | 81 | alias f fd |
|
| 77 | 82 | alias mv "/bin/mv -i" |
|
| 78 | - | alias img imv |
|
| 83 | + | alias img swayimg |
|
| 79 | 84 | alias df "df -h" |
|
| 80 | 85 | alias sys systemctl |
|
| 81 | 86 | alias s systemctl |
|
| 82 | 87 | alias pdf zathura |
|
| 83 | 88 | alias webserver "python -m http.server" |
.config/hypr/hyprland.conf
added
+157 -0
| 1 | + | # Plain Hyprland trial config with xmonad-like bindings. |
|
| 2 | + | ||
| 3 | + | $mod = SUPER |
|
| 4 | + | $terminal = foot |
|
| 5 | + | $bar = waybar |
|
| 6 | + | $menu = fuzzel |
|
| 7 | + | $active = rgba(404040ff) |
|
| 8 | + | $dim = rgba(101010ff) |
|
| 9 | + | ||
| 10 | + | monitor = , preferred, auto, 1.5 |
|
| 11 | + | ||
| 12 | + | env = MOZ_ENABLE_WAYLAND,1 |
|
| 13 | + | env = QT_QPA_PLATFORM,wayland;xcb |
|
| 14 | + | ||
| 15 | + | # Start one terminal when the session opens. |
|
| 16 | + | exec-once = $terminal |
|
| 17 | + | # Start the bottom status bar with Hyprland workspace support. |
|
| 18 | + | exec-once = $bar |
|
| 19 | + | # Set the desktop wallpaper. |
|
| 20 | + | exec-once = hyprpaper |
|
| 21 | + | # Keep the screenshot tray helper available for the Print binding. |
|
| 22 | + | exec-once = flameshot |
|
| 23 | + | # Store copied text in the clipboard history. |
|
| 24 | + | exec-once = wl-paste --type text --watch cliphist store |
|
| 25 | + | # Store copied images in the clipboard history. |
|
| 26 | + | exec-once = wl-paste --type image --watch cliphist store |
|
| 27 | + | ||
| 28 | + | input { |
|
| 29 | + | kb_layout = us |
|
| 30 | + | kb_variant = altgr-intl |
|
| 31 | + | follow_mouse = 1 |
|
| 32 | + | repeat_rate = 40 |
|
| 33 | + | repeat_delay = 180 |
|
| 34 | + | sensitivity = -0.1 |
|
| 35 | + | } |
|
| 36 | + | ||
| 37 | + | general { |
|
| 38 | + | layout = master |
|
| 39 | + | gaps_in = 0 |
|
| 40 | + | gaps_out = 0 |
|
| 41 | + | border_size = 1 |
|
| 42 | + | col.active_border = $active |
|
| 43 | + | col.inactive_border = $dim |
|
| 44 | + | resize_on_border = true |
|
| 45 | + | } |
|
| 46 | + | ||
| 47 | + | decoration { |
|
| 48 | + | rounding = 0 |
|
| 49 | + | ||
| 50 | + | shadow { |
|
| 51 | + | enabled = false |
|
| 52 | + | } |
|
| 53 | + | ||
| 54 | + | blur { |
|
| 55 | + | enabled = false |
|
| 56 | + | } |
|
| 57 | + | } |
|
| 58 | + | ||
| 59 | + | animations { |
|
| 60 | + | enabled = false |
|
| 61 | + | } |
|
| 62 | + | ||
| 63 | + | misc { |
|
| 64 | + | disable_hyprland_logo = true |
|
| 65 | + | disable_splash_rendering = true |
|
| 66 | + | mouse_move_enables_dpms = true |
|
| 67 | + | key_press_enables_dpms = true |
|
| 68 | + | on_focus_under_fullscreen = 1 |
|
| 69 | + | } |
|
| 70 | + | ||
| 71 | + | ecosystem { |
|
| 72 | + | no_update_news = true |
|
| 73 | + | } |
|
| 74 | + | ||
| 75 | + | master { |
|
| 76 | + | mfact = 0.60 |
|
| 77 | + | new_status = slave |
|
| 78 | + | new_on_active = after |
|
| 79 | + | new_on_top = false |
|
| 80 | + | orientation = left |
|
| 81 | + | } |
|
| 82 | + | ||
| 83 | + | # xmonad defaults, translated to Hyprland's master layout. |
|
| 84 | + | bind = $mod SHIFT, Return, exec, $terminal |
|
| 85 | + | bind = $mod, P, exec, $menu |
|
| 86 | + | bind = $mod SHIFT, C, killactive |
|
| 87 | + | bind = $mod, Space, layoutmsg, orientationnext |
|
| 88 | + | bind = $mod, N, layoutmsg, orientationleft |
|
| 89 | + | bind = $mod, Tab, workspace, previous |
|
| 90 | + | bind = $mod SHIFT, Tab, layoutmsg, cyclenext prev |
|
| 91 | + | bind = $mod, J, layoutmsg, cyclenext |
|
| 92 | + | bind = $mod, K, layoutmsg, cyclenext prev |
|
| 93 | + | bind = $mod, M, layoutmsg, focusmaster |
|
| 94 | + | bind = $mod, Return, layoutmsg, swapwithmaster |
|
| 95 | + | bind = $mod SHIFT, J, layoutmsg, swapnext |
|
| 96 | + | bind = $mod SHIFT, K, layoutmsg, swapnext prev |
|
| 97 | + | bind = $mod, H, layoutmsg, mfact -0.05 |
|
| 98 | + | bind = $mod, L, layoutmsg, mfact +0.05 |
|
| 99 | + | bind = $mod, T, settiled |
|
| 100 | + | bind = $mod, comma, layoutmsg, addmaster |
|
| 101 | + | bind = $mod, period, layoutmsg, removemaster |
|
| 102 | + | bind = $mod SHIFT, Q, exit |
|
| 103 | + | bind = $mod, Q, exec, hyprctl reload |
|
| 104 | + | ||
| 105 | + | # Existing practical bindings retained from the Sway setup. |
|
| 106 | + | bind = $mod, X, exec, swaylock -f -c 000000 |
|
| 107 | + | bind = $mod SHIFT, L, exec, sh -c 'cliphist list | fuzzel --dmenu --width 100 | cliphist decode | wl-copy' |
|
| 108 | + | bind = $mod, F, fullscreen, 1 |
|
| 109 | + | bind = $mod SHIFT, F, fullscreen |
|
| 110 | + | bind = $mod SHIFT, minus, movetoworkspacesilent, special |
|
| 111 | + | bind = $mod, minus, togglespecialworkspace |
|
| 112 | + | bind = , Print, exec, flameshot gui |
|
| 113 | + | ||
| 114 | + | bind = $mod, 1, workspace, 1 |
|
| 115 | + | bind = $mod, 2, workspace, 2 |
|
| 116 | + | bind = $mod, 3, workspace, 3 |
|
| 117 | + | bind = $mod, 4, workspace, 4 |
|
| 118 | + | bind = $mod, 5, workspace, 5 |
|
| 119 | + | bind = $mod, 6, workspace, 6 |
|
| 120 | + | bind = $mod, 7, workspace, 7 |
|
| 121 | + | bind = $mod, 8, workspace, 8 |
|
| 122 | + | bind = $mod, 9, workspace, 9 |
|
| 123 | + | bind = $mod, 0, workspace, 10 |
|
| 124 | + | ||
| 125 | + | bind = $mod SHIFT, 1, movetoworkspace, 1 |
|
| 126 | + | bind = $mod SHIFT, 2, movetoworkspace, 2 |
|
| 127 | + | bind = $mod SHIFT, 3, movetoworkspace, 3 |
|
| 128 | + | bind = $mod SHIFT, 4, movetoworkspace, 4 |
|
| 129 | + | bind = $mod SHIFT, 5, movetoworkspace, 5 |
|
| 130 | + | bind = $mod SHIFT, 6, movetoworkspace, 6 |
|
| 131 | + | bind = $mod SHIFT, 7, movetoworkspace, 7 |
|
| 132 | + | bind = $mod SHIFT, 8, movetoworkspace, 8 |
|
| 133 | + | bind = $mod SHIFT, 9, movetoworkspace, 9 |
|
| 134 | + | bind = $mod SHIFT, 0, movetoworkspace, 10 |
|
| 135 | + | ||
| 136 | + | # xmonad's W/E/R screen bindings, using Hyprland monitor indexes. |
|
| 137 | + | bind = $mod, W, focusmonitor, 0 |
|
| 138 | + | bind = $mod, E, focusmonitor, 1 |
|
| 139 | + | bind = $mod, R, focusmonitor, 2 |
|
| 140 | + | bind = $mod SHIFT, W, movewindow, mon:0 |
|
| 141 | + | bind = $mod SHIFT, E, movewindow, mon:1 |
|
| 142 | + | bind = $mod SHIFT, R, movewindow, mon:2 |
|
| 143 | + | ||
| 144 | + | bind = , XF86AudioMute, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle |
|
| 145 | + | bind = , XF86AudioLowerVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ -5% |
|
| 146 | + | bind = , XF86AudioRaiseVolume, exec, pactl set-sink-volume @DEFAULT_SINK@ +5% |
|
| 147 | + | bind = , XF86AudioMicMute, exec, pactl set-source-mute @DEFAULT_SOURCE@ toggle |
|
| 148 | + | bind = , XF86MonBrightnessDown, exec, brightnessctl set 5%- |
|
| 149 | + | bind = , XF86MonBrightnessUp, exec, brightnessctl set 5%+ |
|
| 150 | + | ||
| 151 | + | bindm = $mod, mouse:272, movewindow |
|
| 152 | + | bindm = $mod, mouse:273, resizewindow |
|
| 153 | + | ||
| 154 | + | windowrule = match:class ^(org.keepassxc.KeePassXC)$, float on |
|
| 155 | + | windowrule = match:class ^(org.pulseaudio.pavucontrol)$, float on |
|
| 156 | + | windowrule = match:class ^(org.telegram.desktop)$, float on |
|
| 157 | + | windowrule = match:class ^(org.telegram.desktop)$, border_size 0 |
.config/hypr/hyprpaper.conf
added
+7 -0
| 1 | + | splash = false |
|
| 2 | + | ||
| 3 | + | wallpaper { |
|
| 4 | + | monitor = DP-1 |
|
| 5 | + | path = /home/cloudhead/images/wallpaper.png |
|
| 6 | + | fit_mode = tile |
|
| 7 | + | } |
.config/sway/config
deleted
+0 -128
| 1 | - | # |
|
| 2 | - | # sway/config |
|
| 3 | - | # |
|
| 4 | - | set $mod Mod4 |
|
| 5 | - | set $term foot |
|
| 6 | - | set $menu fuzzel |
|
| 7 | - | ||
| 8 | - | set $accent #66ffcc |
|
| 9 | - | set $urgent #b03060 |
|
| 10 | - | set $bg #000000 |
|
| 11 | - | set $panel #0d0d0d |
|
| 12 | - | set $dim #333333 |
|
| 13 | - | set $fg #dddddd |
|
| 14 | - | ||
| 15 | - | output * scale 1.5 bg $bg solid_color |
|
| 16 | - | output * bg ~/images/wallpaper.png tile |
|
| 17 | - | exec $term |
|
| 18 | - | exec waybar |
|
| 19 | - | exec flameshot |
|
| 20 | - | exec wl-paste --type text --watch cliphist store |
|
| 21 | - | exec wl-paste --type image --watch cliphist store |
|
| 22 | - | ||
| 23 | - | focus_follows_mouse yes |
|
| 24 | - | mouse_warping none |
|
| 25 | - | workspace_auto_back_and_forth no |
|
| 26 | - | floating_modifier $mod normal |
|
| 27 | - | ||
| 28 | - | default_border normal 1 |
|
| 29 | - | default_floating_border normal 1 |
|
| 30 | - | hide_edge_borders none |
|
| 31 | - | smart_borders off |
|
| 32 | - | gaps inner 0 |
|
| 33 | - | gaps outer 0 |
|
| 34 | - | titlebar_border_thickness 1 |
|
| 35 | - | titlebar_padding 8 2 |
|
| 36 | - | ||
| 37 | - | # client.<class> border background text indicator child_border |
|
| 38 | - | client.focused #303030 #1a1a1a #999999 #2f2f2f #303030 |
|
| 39 | - | client.focused_inactive #101010 $panel #444444 #101010 #101010 |
|
| 40 | - | client.unfocused #101010 $panel #444444 #101010 #101010 |
|
| 41 | - | client.urgent $urgent $urgent #ffffff $urgent $urgent |
|
| 42 | - | client.placeholder $dim $bg $fg $dim $dim |
|
| 43 | - | client.background $bg |
|
| 44 | - | ||
| 45 | - | input type:keyboard { |
|
| 46 | - | repeat_rate 40 |
|
| 47 | - | repeat_delay 180 |
|
| 48 | - | xkb_layout us |
|
| 49 | - | xkb_variant altgr-intl |
|
| 50 | - | } |
|
| 51 | - | ||
| 52 | - | input type:pointer { |
|
| 53 | - | pointer_accel -0.1 |
|
| 54 | - | } |
|
| 55 | - | ||
| 56 | - | bindsym $mod+Shift+Return exec $term |
|
| 57 | - | bindsym $mod+p exec $menu |
|
| 58 | - | bindsym $mod+b split v |
|
| 59 | - | bindsym $mod+v split h |
|
| 60 | - | bindsym $mod+Shift+c kill |
|
| 61 | - | bindsym $mod+q reload |
|
| 62 | - | bindsym $mod+x exec swaylock -f -c 000000 |
|
| 63 | - | bindsym $mod+Shift+q exit |
|
| 64 | - | bindsym $mod+h focus left |
|
| 65 | - | bindsym $mod+j focus down |
|
| 66 | - | bindsym $mod+k focus up |
|
| 67 | - | bindsym $mod+l focus right |
|
| 68 | - | bindsym $mod+Page_Up focus parent |
|
| 69 | - | bindsym $mod+Page_Down focus child |
|
| 70 | - | bindsym $mod+Shift+j move down |
|
| 71 | - | bindsym $mod+Shift+k move up |
|
| 72 | - | bindsym $mod+Shift+h move left |
|
| 73 | - | bindsym $mod+Shift+l exec sh -c 'cliphist list | fuzzel --dmenu --width 100 | cliphist decode | wl-copy' |
|
| 74 | - | bindsym $mod+f fullscreen toggle |
|
| 75 | - | bindsym $mod+Shift+space floating toggle |
|
| 76 | - | bindsym $mod+space layout toggle split |
|
| 77 | - | bindsym $mod+Return layout toggle split |
|
| 78 | - | bindsym $mod+s layout stacking |
|
| 79 | - | bindsym $mod+w layout tabbed |
|
| 80 | - | bindsym $mod+minus scratchpad show |
|
| 81 | - | bindsym $mod+Shift+minus move scratchpad |
|
| 82 | - | bindsym $mod+Left focus output left |
|
| 83 | - | bindsym $mod+Right focus output right |
|
| 84 | - | bindsym $mod+Up focus output up |
|
| 85 | - | bindsym $mod+Down focus output down |
|
| 86 | - | bindsym $mod+Shift+Left move workspace to output left |
|
| 87 | - | bindsym $mod+Shift+Right move workspace to output right |
|
| 88 | - | bindsym $mod+Tab workspace back_and_forth |
|
| 89 | - | bindsym $mod+1 workspace number 1 |
|
| 90 | - | bindsym $mod+2 workspace number 2 |
|
| 91 | - | bindsym $mod+3 workspace number 3 |
|
| 92 | - | bindsym $mod+4 workspace number 4 |
|
| 93 | - | bindsym $mod+5 workspace number 5 |
|
| 94 | - | bindsym $mod+6 workspace number 6 |
|
| 95 | - | bindsym $mod+7 workspace number 7 |
|
| 96 | - | bindsym $mod+8 workspace number 8 |
|
| 97 | - | bindsym $mod+9 workspace number 9 |
|
| 98 | - | bindsym $mod+0 workspace number 10 |
|
| 99 | - | bindsym $mod+Shift+1 move container to workspace number 1 |
|
| 100 | - | bindsym $mod+Shift+2 move container to workspace number 2 |
|
| 101 | - | bindsym $mod+Shift+3 move container to workspace number 3 |
|
| 102 | - | bindsym $mod+Shift+4 move container to workspace number 4 |
|
| 103 | - | bindsym $mod+Shift+5 move container to workspace number 5 |
|
| 104 | - | bindsym $mod+Shift+6 move container to workspace number 6 |
|
| 105 | - | bindsym $mod+Shift+7 move container to workspace number 7 |
|
| 106 | - | bindsym $mod+Shift+8 move container to workspace number 8 |
|
| 107 | - | bindsym $mod+Shift+9 move container to workspace number 9 |
|
| 108 | - | bindsym $mod+Shift+0 move container to workspace number 10 |
|
| 109 | - | bindsym $mod+Shift+s exec sudo systemctl suspend |
|
| 110 | - | bindsym Print exec flameshot gui |
|
| 111 | - | ||
| 112 | - | for_window [app_id="org.keepassxc.KeePassXC"] floating enable |
|
| 113 | - | for_window [app_id="org.pulseaudio.pavucontrol"] floating enable |
|
| 114 | - | for_window [app_id="firefox"] border pixel 1 |
|
| 115 | - | for_window [class="firefox"] border pixel 1 |
|
| 116 | - | for_window [app_id="org.telegram.desktop"] floating enable |
|
| 117 | - | for_window [class="TelegramDesktop"] floating enable |
|
| 118 | - | for_window [app_id="org.telegram.desktop"] border none |
|
| 119 | - | for_window [class="TelegramDesktop"] border none |
|
| 120 | - | ||
| 121 | - | bindsym --locked XF86AudioMute exec pactl set-sink-mute @DEFAULT_SINK@ toggle |
|
| 122 | - | bindsym --locked XF86AudioLowerVolume exec pactl set-sink-volume @DEFAULT_SINK@ -5% |
|
| 123 | - | bindsym --locked XF86AudioRaiseVolume exec pactl set-sink-volume @DEFAULT_SINK@ +5% |
|
| 124 | - | bindsym --locked XF86AudioMicMute exec pactl set-source-mute @DEFAULT_SOURCE@ toggle |
|
| 125 | - | bindsym --locked XF86MonBrightnessDown exec brightnessctl set 5%- |
|
| 126 | - | bindsym --locked XF86MonBrightnessUp exec brightnessctl set 5%+ |
|
| 127 | - | ||
| 128 | - | include /etc/sway/config.d/* |
.config/waybar/config
+6 -5
| 1 | 1 | { |
|
| 2 | 2 | "layer": "top", |
|
| 3 | 3 | "position": "bottom", |
|
| 4 | 4 | "height": 30, |
|
| 5 | 5 | "spacing": 8, |
|
| 6 | - | "modules-left": [ "sway/workspaces" ], |
|
| 7 | - | "modules-center": [], |
|
| 6 | + | "modules-left": [ "hyprland/workspaces" ], |
|
| 7 | + | "modules-center": [ "hyprland/window" ], |
|
| 8 | 8 | "modules-right": [ "network", "cpu", "memory", "disk", "pulseaudio", "battery", "custom/clipboard", "tray", "clock" ], |
|
| 9 | - | "sway/workspaces": { |
|
| 9 | + | "hyprland/workspaces": { |
|
| 10 | 10 | "disable-scroll": true, |
|
| 11 | 11 | "all-outputs": false, |
|
| 12 | - | "format": "{name}" |
|
| 12 | + | "format": "{name}", |
|
| 13 | + | "sort-by-number": true |
|
| 13 | 14 | }, |
|
| 14 | - | "sway/window": { |
|
| 15 | + | "hyprland/window": { |
|
| 15 | 16 | "format": "{}", |
|
| 16 | 17 | "max-length": 80 |
|
| 17 | 18 | }, |
|
| 18 | 19 | "clock": { |
|
| 19 | 20 | "format": "{:%a %H:%M}", |