diff --git a/.gitignore b/.gitignore index cee6b58..e007c81 100644 --- a/.gitignore +++ b/.gitignore @@ -17,3 +17,4 @@ ansible/collections/* ansible/galaxy_cache/* ansible/galaxy_token **/lazy-lock.json +**/*.target.wants/* diff --git a/clipse/config.json b/clipse/config.json index aeca10a..9012d69 100644 --- a/clipse/config.json +++ b/clipse/config.json @@ -1,7 +1,7 @@ { "allowDuplicates": false, "historyFile": "$XDG_DATA_HOME/clipse/clipboard_history.json", - "maxHistory": 100, + "maxHistory": 50, "logFile": "$XDG_DATA_HOME/clipse/clipse.log", "themeFile": "custom_theme.json", "tempDir": "$XDG_DATA_HOME/clipse/tmp_files", @@ -33,4 +33,3 @@ "heightCut": 2 } } - diff --git a/ghostty/config b/ghostty/config index e79bf64..6f9751d 100644 --- a/ghostty/config +++ b/ghostty/config @@ -23,7 +23,7 @@ quit-after-last-window-closed-delay = 5m # macos-titlebar-proxy-icon = hidden # macos-icon = custom-style -keybind = super+shift+t=toggle_quick_terminal +keybind = ctrl+shift+t=toggle_quick_terminal # Splits keybind = super+j=goto_split:down diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index a79bc4c..4f51ab5 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -13,23 +13,6 @@ source = ~/.config/hypr/keybinds.conf source = ~/.config/hypr/input.conf source = ~/.config/hypr/autostart.conf -################### -### PERMISSIONS ### -################### - -# See https://wiki.hyprland.org/Configuring/Permissions/ -# Please note permission changes here require a Hyprland restart and are not applied on-the-fly -# for security reasons - -# ecosystem { -# enforce_permissions = 1 -# } - -# permission = /usr/(bin|local/bin)/grim, screencopy, allow -# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow -# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow - - ##################### ### LOOK AND FEEL ### ##################### @@ -38,13 +21,13 @@ source = ~/.config/hypr/autostart.conf # https://wiki.hyprland.org/Configuring/Variables/#general general { - gaps_in = 5 + gaps_in = 3 gaps_out = 0, 5, 5, 5 border_size = 2 # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors - col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg + col.active_border = rgb(89b4fa) rgb(f2cdcd) 45deg col.inactive_border = rgba(595959aa) # Set to true enable resizing windows by clicking and dragging on borders and gaps @@ -58,7 +41,7 @@ general { # https://wiki.hyprland.org/Configuring/Variables/#decoration decoration { - rounding = 2 + rounding = 5 rounding_power = 2 # Change transparency of focused and unfocused windows diff --git a/hypr/keybinds.conf b/hypr/keybinds.conf index 6e4eaf8..793962b 100644 --- a/hypr/keybinds.conf +++ b/hypr/keybinds.conf @@ -29,7 +29,7 @@ $pwa = ~/.local/bin/launch-webapp # Apps bind = $mainMod, Space, exec, $menu # launcher (set above) bind = $mainMod, Return, exec, $terminal -bind = $mainMod, A, exec, $pwa "https://chatgpt.com" +bind = $mainMod, A, exec, $pwa "https://chatgpt.com" --class com.chromium.chatgpt bind = $mainMod, B, exec, $browser bind = $mainMod SHIFT, B, exec, $browser --private-window bind = $mainMod, C, exec, $terminal -e ~/.local/share/scripts/tmux-sessionator ~/.config diff --git a/hypr/windows.conf b/hypr/windows.conf index e8c4c0b..fff288a 100644 --- a/hypr/windows.conf +++ b/hypr/windows.conf @@ -6,19 +6,20 @@ # See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules # -# Force bluetooth settings to be a floating window -windowrule = float, class:^(blueberry.py)$ +windowrule = float, tag:floating-window +windowrule = center, tag:floating-window +windowrule = size 800 600, tag:floating-window + +# Force windows to be a floating window +windowrule = tag +floating-window, class:^(blueberry.py|org.gnome.Nautilus)$ + +# Force bluetooth settings to stay focused when visible. +windowrule = stayfocused, class:(blueberry.py) # Clipboard history tui in floating window. -windowrule = float, class:.*clipse.* -windowrule = size 622 652, class:.*clipse.* +windowrule = tag +floating-window, class:.*clipse.* windowrule = stayfocused, class:.*clipse.* - -windowrule = float,class:^(float)$ -windowrule = size 800 600,class:^(float)$,title:^(Install Web App)$ -windowrule = center,class:^(float)$,title:^(Install Web App)$ - # Ignore maximize requests from apps. You'll probably like this. windowrule = suppressevent maximize, class:.* diff --git a/nvim/lazynvim/lua/config/autocmds.lua b/nvim/lazynvim/lua/config/autocmds.lua index 03d274f..c08868d 100644 --- a/nvim/lazynvim/lua/config/autocmds.lua +++ b/nvim/lazynvim/lua/config/autocmds.lua @@ -9,7 +9,7 @@ createCmd("BufEnter", { -- HACK: Set filetype to markdown for '.md' files. -- Not sure why it doesn't detect these as markdown files, but this fixes the issue. vim.cmd.setlocal("filetype=markdown") - vim.cmd.setlocal("textwidth=80") + vim.cmd.setlocal("textwidth=120") vim.cmd.setlocal("spell spelllang=en_us") end, }) @@ -64,6 +64,7 @@ createCmd("TextYankPost", { end, }) +-- Force zsh scripts to use bash syntax hyighlighting. vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, { pattern = "*", callback = function(args) diff --git a/scripts/arch/clear-clipboard-history b/scripts/arch/clear-clipboard-history index 6c691de..057bebf 100755 --- a/scripts/arch/clear-clipboard-history +++ b/scripts/arch/clear-clipboard-history @@ -1,5 +1,8 @@ -#!/bin/zsh +#!/bin/bash -wl-copy --clear && \ - rm ~/.local/share/clipse/clipboard_history.json >/dev/null 2>&1 +#wl-copy --clear >/dev/null 2>&1 && \ +if [ -n "$WAYLAND_DISPLAY" ]; then + wl-copy --clear +fi +rm ~/.local/share/clipse/clipboard_history.json >/dev/null 2>&1 diff --git a/scripts/arch/toggle-desktop b/scripts/arch/toggle-desktop index cf5b8da..13787a3 100755 --- a/scripts/arch/toggle-desktop +++ b/scripts/arch/toggle-desktop @@ -13,7 +13,7 @@ CUR_WS=$(hyprctl -j activeworkspace | jq -r '.id') if [[ -f "$STATE_FILE" ]]; then # Restore windows ORIG_WS=$(cat "$STATE_FILE") - for win in $(hyprctl -j clients | jq -r '.[] | select(.workspace.name | contains("$HIDE_WS")) | .address'); do + for win in $(hyprctl -j clients | jq -r ".[] | select(.workspace.name | contains(\"$HIDE_WS\")) | .address"); do hyprctl dispatch movetoworkspace "$ORIG_WS,address:$win" hyprctl dispatch workspace "$ORIG_WS" done diff --git a/scripts/enable-services.sh b/scripts/enable-services.sh index a57b14d..d77713c 100755 --- a/scripts/enable-services.sh +++ b/scripts/enable-services.sh @@ -4,3 +4,5 @@ systemctl --user enable --now hyprpaper.service systemctl --user enable --now hypridle.service espanso service register sudo setcap "cap_dac_override+p" $(which espanso) + +systemctl --user enable --now logout-task.service diff --git a/systemd/user/logout-task.service b/systemd/user/logout-task.service new file mode 100644 index 0000000..ae59b93 --- /dev/null +++ b/systemd/user/logout-task.service @@ -0,0 +1,11 @@ +[Unit] +Description=Clear clipboard history at logout +DefaultDependencies=no +Before=exit.target + +[Service] +Type=oneshot +ExecStart=%h/.local/bin/clear-clipboard-history + +[Install] +WantedBy=exit.target diff --git a/waybar/style.css b/waybar/style.css index 8e75aa1..6ecd8bc 100644 --- a/waybar/style.css +++ b/waybar/style.css @@ -5,7 +5,7 @@ @define-color red #f38ba8; @define-color yellow #f9e2af; @define-color peach #fab387; -@define-color lavender #b4befe; +@define-color maroon #eba0ac; * { font-family: JetbrainsMono Nerd Font;