From 45085224802d62435ae1a17fa6e076fec3e4a56e Mon Sep 17 00:00:00 2001 From: Josue Zamudio Date: Sat, 7 Mar 2026 10:05:03 -0800 Subject: [PATCH] fix: hyprland workspace on multiple monitors, hyprlock time & password input positioning --- .config/hypr/hypridle.conf | 34 ++++++++++++++++++++++++++++ .config/hypr/hyprland.conf | 35 +++++++++++++++++++++++------ .config/hypr/hyprlock.conf | 22 ++++++++++++++++++ .config/kitty/kitty.conf | 2 +- .config/nvim/lazy-lock.json | 19 ++++++++-------- .config/nvim/lua/plugins/claude.lua | 11 +++++++++ .config/nvim/lua/plugins/mason.lua | 2 +- .config/waybar/config.jsonc | 4 ++-- 8 files changed, 109 insertions(+), 20 deletions(-) create mode 100644 .config/hypr/hypridle.conf create mode 100644 .config/hypr/hyprlock.conf create mode 100644 .config/nvim/lua/plugins/claude.lua diff --git a/.config/hypr/hypridle.conf b/.config/hypr/hypridle.conf new file mode 100644 index 0000000..876c076 --- /dev/null +++ b/.config/hypr/hypridle.conf @@ -0,0 +1,34 @@ +general { + lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances. + before_sleep_cmd = loginctl lock-session # lock before suspend. + after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display. +} + +listener { + timeout = 150 # 2.5min. + on-timeout = brightnessctl -s set 10 # set monitor backlight to minimum, avoid 0 on OLED monitor. + on-resume = brightnessctl -r # monitor backlight restore. +} + +# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight. +listener { + timeout = 150 # 2.5min. + on-timeout = brightnessctl -sd rgb:kbd_backlight set 0 # turn off keyboard backlight. + on-resume = brightnessctl -rd rgb:kbd_backlight # turn on keyboard backlight. +} + +listener { + timeout = 300 # 5min + on-timeout = loginctl lock-session # lock screen when timeout has passed +} + +listener { + timeout = 330 # 5.5min + on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed + on-resume = hyprctl dispatch dpms on && brightnessctl -r # screen on when activity is detected after timeout has fired. +} + +listener { + timeout = 1800 # 30min + on-timeout = systemctl suspend # suspend pc +} diff --git a/.config/hypr/hyprland.conf b/.config/hypr/hyprland.conf index 5c39104..4ac0e5a 100644 --- a/.config/hypr/hyprland.conf +++ b/.config/hypr/hyprland.conf @@ -24,10 +24,12 @@ autogenerated = 0 # remove this line to remove the warning # See https://wiki.hypr.land/Configuring/Monitors/ monitor=,preferred,auto,auto, -workspace=1, monitor:DP-2 -workspace=10, monitor:DP-3 -exec-once=hyperctl dispatch workspace 10 -exec-once=hyperctl dispatch workspace 1 + +workspace=name:1, monitor:DP-1 +exec-once=hyprctl dispatch workspace 1 + +workspace=name:10, monitor:DP-2 +exec-once=hyprctl dispatch workspace 10 ################### @@ -59,6 +61,7 @@ exec-once = waybar -c ~/.config/hypr/waybar/config.jsonc -s ~/.config/hypr/wayba exec-once = hyprpm reload -n exec-once = flatpak run com.github.wwmm.easyeffects -w exec-once = systemctl --user start hyprpolkitagent +exec-once = hypridle ############################# @@ -70,6 +73,10 @@ exec-once = systemctl --user start hyprpolkitagent env = XCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24 +env = GDK_BACKEND,wayland,x11 +env = QT_QPA_PLATFORM,wayland;xcb +env = ELECTRON_OZONE_PLATFORM_HINT,auto + ################### ### PERMISSIONS ### @@ -126,7 +133,7 @@ decoration { inactive_opacity = 1.0 shadow { - enabled = true + enabled = false range = 4 render_power = 3 color = rgba(1a1a1aee) @@ -134,7 +141,7 @@ decoration { # https://wiki.hypr.land/Configuring/Variables/#blur blur { - enabled = true + enabled = false size = 3 passes = 1 @@ -144,7 +151,8 @@ decoration { # https://wiki.hypr.land/Configuring/Variables/#animations animations { - enabled = yes, please :) + #enabled = yes, please :) + enabled = false # Default curves, see https://wiki.hypr.land/Configuring/Animations/#curves # NAME, X0, Y0, X1, Y1 @@ -200,6 +208,7 @@ master { misc { force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = true# If true disables the random hyprland logo / anime girl background. :( + vfr = true } @@ -307,6 +316,14 @@ bind = $mainMod SHIFT, 8, hy3:movetoworkspace, 8 bind = $mainMod SHIFT, 9, hy3:movetoworkspace, 9 bind = $mainMod SHIFT, 0, hy3:movetoworkspace, 10 +#workspace = name:10, monitor:DP-3 +#exec-once = hyperctl dispatch workspace 10 + +#workspace = name:1, monitor:DP-2 +#exec-once = hyperctl dispatch workspace 1 + + + # Example special workspace (scratchpad) bind = $mainMod, MINUS, togglespecialworkspace, magic bind = $mainMod SHIFT, MINUS, movetoworkspace, special:magic @@ -348,3 +365,7 @@ bindl = , XF86AudioPrev, exec, playerctl previous # Fix some dragging issues with XWayland #windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0 + + +bindel = $mainMod, p, exec, grimshot --notify savecopy anything +bind = $mainMod, M, exec, hyprlock; playerctl pause diff --git a/.config/hypr/hyprlock.conf b/.config/hypr/hyprlock.conf new file mode 100644 index 0000000..5490fc5 --- /dev/null +++ b/.config/hypr/hyprlock.conf @@ -0,0 +1,22 @@ +background { + monitor = # monitor-agnostic + blur_passes = 1 + blur_size = 7 +} + +input-field { + monitor = + size = 10%, 3% + font_family = Noto Sans + dots_size = 0.08 + position = 0, -200 + fade_on_empty = false +} + + +label { + monitor = + text = $TIME + font_size = 80 + position = 0,0 +} diff --git a/.config/kitty/kitty.conf b/.config/kitty/kitty.conf index 294d5e3..dcaf411 100644 --- a/.config/kitty/kitty.conf +++ b/.config/kitty/kitty.conf @@ -1,7 +1,7 @@ #font_family family='JetBrainsMono Nerd Font Mono' #font_family family='JetBrainsMono' font_family family='JetBrainsMonoNFM-Regular' -font_size 11 +font_size 10.5 #text_composition_strategy legacy modify_font cell_width 95% diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json index 74c8c85..c2f6bbc 100644 --- a/.config/nvim/lazy-lock.json +++ b/.config/nvim/lazy-lock.json @@ -1,13 +1,14 @@ { "black-metal-theme-neovim": { "branch": "main", "commit": "6d0207871387077f40d5396ab1ae90520e688d36" }, - "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "4d0e5b49363cac187326998b96aa6a2884e0e89b" }, - "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, + "claude-code.nvim": { "branch": "main", "commit": "55c0cb59828fbc3bec744288286a46f5d5750b83" }, + "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "3d89e7c92fbd96c5e10e0298fc2b006f21cf9428" }, + "mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" }, "mini.completion": { "branch": "main", "commit": "4d451f82f193f6751719935a63d16ccb79a76e0b" }, - "mini.nvim": { "branch": "main", "commit": "c163117900c17d4abf30bc09452a261c8536060c" }, - "nvim-lspconfig": { "branch": "master", "commit": "54617a18f4cf46f0c2f6d024fa6feb7515fe036d" }, - "nvim-treesitter": { "branch": "master", "commit": "92d2501d698e0fe855bd222540f9648890fab6c7" }, - "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, - "telescope.nvim": { "branch": "master", "commit": "776b509f80dd49d8205b9b0d94485568236d1192" }, - "vim-tmux-navigator": { "branch": "master", "commit": "97e58f2b3b4f8fd30ce149302f10202f363cc361" } + "mini.nvim": { "branch": "main", "commit": "9b935c218ddba02e5dc75c94f90143bce1f7c646" }, + "nvim-lspconfig": { "branch": "master", "commit": "79c9a15be5731bc8694840a8fb0c9141c20a80c0" }, + "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, + "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, + "telescope.nvim": { "branch": "master", "commit": "84b9ba066d1860f7a586ce9cd732fd6c4f77d1d9" }, + "vim-tmux-navigator": { "branch": "master", "commit": "e41c431a0c7b7388ae7ba341f01a0d217eb3a432" } } diff --git a/.config/nvim/lua/plugins/claude.lua b/.config/nvim/lua/plugins/claude.lua new file mode 100644 index 0000000..e6beca4 --- /dev/null +++ b/.config/nvim/lua/plugins/claude.lua @@ -0,0 +1,11 @@ +return { + "greggh/claude-code.nvim", + dependencies = { + "nvim-lua/plenary.nvim", -- Required for git operations + }, + config = function() + require("claude-code").setup({ + command = "ollama launch --model gpt-oss:latest", + }) + end +} diff --git a/.config/nvim/lua/plugins/mason.lua b/.config/nvim/lua/plugins/mason.lua index cd7b751..d7eb588 100644 --- a/.config/nvim/lua/plugins/mason.lua +++ b/.config/nvim/lua/plugins/mason.lua @@ -16,7 +16,7 @@ return { -- Autocompletion --- - require('mini.snippets').setup() + --require('mini.snippets').setup() require('mini.completion').setup() --- diff --git a/.config/waybar/config.jsonc b/.config/waybar/config.jsonc index 0489d74..1289648 100644 --- a/.config/waybar/config.jsonc +++ b/.config/waybar/config.jsonc @@ -3,8 +3,8 @@ // "layer": "top", // Waybar at top layer "position": "top", // Waybar position (top|bottom|left|right) //"height": 10, // Waybar height (to be removed for auto height) - // "width": 1280, // Waybar width - "spacing": 0, // Gaps between modules (4px) + //"width": 0, // Waybar width + "spacing": 10, // Gaps between modules (4px) // Choose the order of the modules "modules-left": [ "sway/workspaces",