aboutsummaryrefslogtreecommitdiff
path: root/dotfiles/hyprland
Commit message (Collapse)AuthorAgeFilesLines
* fix(hyprland): Escape special workspace on navigateCraig Jennings2026-04-241-1/+19
| | | | | | | | | | | | | When focus is inside a special workspace (e.g. special:stash), layoutmsg cyclenext/cycleprev only operates within that workspace, trapping $mod+J inside the scratchpad overlay. Detect workspace name starting with "special:" on focus navigation (not move), toggle the overlay off first, re-read active window state, then fall through to the normal layout/floating branches. Add unit tests with a fake hyprctl harness in tests/layout-navigate/. ```
* fix: Zoom windowrule syntax (stayfocused → stay_focused on)Craig Jennings2026-04-191-2/+2
|
* feat: proton-vpn, lid switch, scratchpad resizingCraig Jennings2026-04-133-12/+18
| | | | | | | | | - archsetup: add proton-vpn-gtk-app; configure logind to ignore lid switch - hyprland.conf: autostart protonvpn-app minimized - waybar: set battery module to BAT1 (velox) - pypr: resize scratchpads to fit 80x24 minimum; enlarge monitor for btop - gitconfig: add deepsat GHE credential helpers - CLAUDE.md: update notes.org reference (lowercase)
* feat: Zoom HiDPI scaling and Hyprland window rulesCraig Jennings2026-04-112-0/+18
| | | | | Add Zoom.desktop override with QT_SCALE_FACTOR=1.5 for HiDPI displays. Float all Zoom windows and fix disappearing popup menus.
* fix: emacs-wayland package, Telegram autostart, velox config syncCraig Jennings2026-04-111-0/+1
| | | | | Switch emacs to emacs-wayland for native Wayland/PGTK support. Add Telegram tray autostart to hyprland.conf.
* fix: archsetup package fixes and velox post-install improvementsCraig Jennings2026-04-101-1/+13
| | | | | | Fixed multilib, adwaita-qt, webkit2gtk, touchpad-indicator, tidaler, pocketbook URL. Added post-archsetup review tasks for laptop setup. Updated mbsyncrc for STARTTLS and waypaper config.
* docs: add usage examples to hyprland conf.d/local.confCraig Jennings2026-04-101-0/+13
|
* fix: archsetup package fixes, hyprland conf.d, dconf settingsCraig Jennings2026-04-102-0/+3
| | | | | | | | | Enable multilib repo for lib32/Steam packages. Move adwaita-qt5/qt6 to AUR, rename webkit2gtk to webkit2gtk-4.1, remove broken touchpad-indicator-git, replace tidal-dl-ng with tidaler fork, fix pocketbook URL. Add dconf GNOME interface settings to prevent 50s portal-gtk timeout. Add hyprland conf.d source pattern for machine-local overrides.
* feat: add bind package for DNS utilities, update dotfile stateCraig Jennings2026-04-093-3/+2
| | | | | | Add bind (dig, host, nslookup) to supplemental packages and systemd-resolvconf for wireguard DNS integration. Update calibre, hyprland, hyprlock, qalculate, mimeapps, and waypaper state.
* fix(hyprland): escape floating window focus trap in layout-navigateCraig Jennings2026-04-091-0/+11
| | | | | | layoutmsg cyclenext only operates on tiled windows, so $mod+J was a no-op when focus was on a floating/pinned scratchpad. Detect floating state and use cyclenext dispatcher instead.
* feat(hyprland): float xdg-desktop-portal-gtk dialogsCraig Jennings2026-03-081-0/+1
| | | | Prevents file open/save dialogs from disrupting master layout.
* chore: clean up lock screen comment, update calibre stateCraig Jennings2026-03-071-1/+1
| | | | Removed stale sxhkdrc reference from lock screen keybinding comment.
* feat: comprehensive mime type associations with emacsclient defaultsCraig Jennings2026-03-071-0/+13
| | | | | | | Merge all mime associations into mimeapps.list as single source of truth. Set emacsclient as default for all text/code files. Add TypeScript mime override, emacsclient.desktop with fixed Exec line, and simplify resetmimetypes to just restow + rebuild caches.
* feat(hyprland): remove plugins, add layout cyclingCraig Jennings2026-03-074-60/+39
| | | | | | | | Hyprland 0.54 brings scrolling and monocle layouts into core, making hyprpm plugins unnecessary. Remove hyprland-plugins-setup, focus-restore, hyprpm pacman hook, and allfloat keybinding. Add layout-cycle script and $mod+Shift+Arrow keybindings to cycle master/scrolling/monocle. Move cpio to System Utilities section.
* fix(hyprland): add new_on_top to master layout configCraig Jennings2026-03-071-0/+1
| | | | | Demoted master windows now go to top of slave stack instead of bottom, matching DWM's stack ordering behavior.
* fix: update layout-resize and waybar-netspeed for 0.54Craig Jennings2026-03-072-14/+17
| | | | | | | | layout-resize: replace removed splitratio dispatcher with layoutmsg mfact for master layout resizing. waybar-netspeed: replace iwgetid/proc/net/wireless with iw commands for SSID and signal strength (old tools no longer populated by kernel).
* fix(foot): rename [colors] to [colors-dark] for foot updateCraig Jennings2026-03-073-3/+3
| | | | | Foot deprecated [colors] section in favor of [colors-dark]. Updated all three foot configs (main, dupre theme, hudson theme).
* feat(hyprland): update plugins for 0.54, add scratchpad hide_delayCraig Jennings2026-03-072-11/+18
| | | | | Remove hyprscrolling from plugin setup (now in core). Add hide_delay workaround for pyprland bug #211 to all scratchpads.
* feat(hyprland): add monocle layout support, fix scrolling keybindingsCraig Jennings2026-03-075-8/+39
| | | | | Add monocle to layout cycle and waybar indicator. Fix scrolling layout move (swapwindow) and resize (resizeactive). Add layout-resize script.
* chore(hyprland): update hypridle settings, update calibre configsCraig Jennings2026-03-061-17/+4
| | | | | Dim at 5min, lock at 7min, remove DPMS off and suspend. Update calibre sort history and window geometry.
* fix(hyprland): remove scratchpad center windowrulesCraig Jennings2026-03-041-7/+2
| | | | | | Removed center windowrules for all 6 pyprland scratchpad classes per maintainer guidance. Rules conflicted with pyprland's float management and were not the cause of bug #211.
* feat(hyprland): rebind mod+shift+f to allfloat, add chess setup scriptCraig Jennings2026-03-021-1/+1
| | | | | | | Add workspace allfloat toggle on mod+shift+f (was togglefloating, now on mod+shift+space only). Add scripts/setup-chess.sh for En Croissant, lc0, Maia, and Stockfish setup. Update log-cleanup to use filename dates instead of mtime. Update ssh and calibre configs.
* feat(archsetup): add rustup, log-cleanup cron, update configsCraig Jennings2026-02-272-4/+11
| | | | | | | Add rustup toolchain manager to developer_workstation (before AUR packages that need rust to compile). Add log-cleanup cron job with test validation. Update ISO glob for archangel naming. Add dunst icon theme, hyprlock animations, waybar log filtering.
* feat(hyprland): add pocketbook notes panel integrationCraig Jennings2026-02-253-1/+14
| | | | | | | | Add waybar custom/pocketbook module with icon and on-click toggle. Add $mod+P keybind and exec-once for pocketbook --hidden. Add waybar CSS for pocketbook icon styling. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* fix(hyprland): re-center scratchpad windows on togglefloatingCraig Jennings2026-02-251-0/+8
| | | | | | Scratchpad windows stayed at their tiled position when returned to floating via shift+mod+space. Add center windowrules so all pyprland scratchpads snap back to center whenever they become floating.
* fix(hyprland): add polkit agent, fix portal startup order, restrict ranger ↵Craig Jennings2026-02-251-3/+5
| | | | | | | | | to DWM Launch polkit-kde-authentication-agent at startup. Restart backend portals (GTK, Hyprland) before the main xdg-desktop-portal to prevent 50s GTK settings proxy timeout. Make ranger DWM-only since Hyprland uses nautilus and dirvish.
* fix(hyprland): load plugins on every session startCraig Jennings2026-02-161-1/+2
| | | | | hyprland-plugins-setup was skipping hyprpm reload when plugins were already enabled, so they were never loaded into the running session.
* feat(hyprland): add Civ V fullscreen windowruleCraig Jennings2026-02-151-0/+3
| | | | | Force Civ5XP into real Hyprland fullscreen so waybar is hidden per-workspace instead of requiring manual toggle.
* feat(hyprland): resize term scratchpads, rename term2 to ai-termCraig Jennings2026-02-142-8/+8
| | | | | Term scratchpads now 50x70%, renamed term2 to ai-term with updated app-id. Updated calibre window state.
* fix(pyprland): use correct config path, resize scratchpadsCraig Jennings2026-02-142-65/+10
| | | | | | Pyprland 3.x reads ~/.config/pypr/config.toml, not ~/.config/hypr/pyprland.toml. Remove obsolete config, update scratchpad sizes to 50%x60% in the correct file.
* chore(dotfiles): add texlive-fontsextra, rebind screenshot keyCraig Jennings2026-02-131-1/+1
| | | | | Add texlive-fontsextra to archsetup for fontawesome5 resume icons. Change fullscreen screenshot from $mod+Print to Ctrl+$mod+S.
* fix(hyprland): fix focus behavior for swaps and new windowsCraig Jennings2026-02-121-2/+2
| | | | | | Enable cursor warping on focus change (no_warps=false) so swap-with-master moves cursor to master. Enable float_switch_override_focus so new tiled windows get focus when launched from floating scratchpads.
* fix(waybar): reduce spacing between months in date tooltipCraig Jennings2026-02-111-3/+3
|
* feat(waybar): add day abbreviation to world clock tooltipCraig Jennings2026-02-111-1/+1
|
* feat(hyprland): enable numlock on startupCraig Jennings2026-02-111-0/+1
|
* feat(hyprland): add pyprland config and toggle-scratchpad to stowCraig Jennings2026-02-112-0/+95
| | | | | Scratchpads set to 50% width (music at 60%). Adds toggle-scratchpad utility for waybar click handling.
* feat(waybar): split clock into date + world clock modulesCraig Jennings2026-02-105-10/+98
| | | | | | | Replace single clock module with custom/date (calendar tooltip) and custom/worldclock (multi-timezone tooltip from worldclock.conf). Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(waybar): SVG workspace circles, improved arch logo, remove mod+0Craig Jennings2026-02-1010-82/+75
| | | | | | | | | | Replace per-workspace SVG mapping with hybrid approach: two circle SVGs (active gold, inactive dark) as background-image with text overlay for workspace numbers. Update arch-logo.svg with padded/crisp variant. Remove sysmonitor margin to fix bar height inflation. Remove mod+0 binding to restrict workspaces to 1-9. Sync dupre theme files. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(waybar): add menu module with Arch logo and circular workspace indicatorsCraig Jennings2026-02-106-15/+73
| | | | | | | | | Add custom/menu module at far left of bar with Arch logo SVG background. Left-click opens fuzzel, right-click opens wlogout. Workspace buttons now use pixel-sized circles (34x32px with border-radius: 50%) instead of pill shapes. Both dupre and hudson theme CSS files synced with new sizing. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(hyprland): add scratchpad refocus on window closeCraig Jennings2026-02-092-0/+25
| | | | | IPC listener detects closewindow events and refocuses the visible scratchpad (special workspace) instead of falling to a regular window.
* feat(archsetup): add zoom, webcam tools, and BRIO udev ruleCraig Jennings2026-02-091-1/+1
| | | | | | | Add zoom (AUR), cameractrls, v4l-utils to archsetup. Add Logitech BRIO udev rule for auto-applying camera settings on connect. Adopt logitech-brio-settings.sh into dotfiles. Remove flatpak (no longer used). Update wallpaper config.
* feat(archsetup): add slack with Wayland/DWM conditionalCraig Jennings2026-02-083-9/+22
| | | | | | Add slack-desktop-wayland for Hyprland, slack-desktop for DWM. Update Claude startup prompts, fix Hyprland portal/waybar startup order, add signal-desktop Wayland .desktop override.
* feat(archsetup): add package-inventory script and reconcile packagesCraig Jennings2026-02-071-1/+1
| | | | | | | | | Add package-inventory script that compares archsetup-declared packages against the live system. Fix awk for-loop parser and dependency filtering. Add 10 missing packages to archsetup (hyprpaper, wev, socat, sshpass, flatpak, solaar, ttf-dejavu, atomicparsley, freetube, tidal-dl-ng). Fix pipx_install function name bug. Change Hyprland follow_mouse to 0 to fix swap focus issue.
* fix(hyprland): fix new window focus with no_warps enabledCraig Jennings2026-02-061-1/+3
| | | | | | follow_mouse=2 (loose), float_switch_override_focus=0, and mouse_refocus=false prevent focus snap-back when cursor:no_warps is true.
* feat(hyprland): waybar scratchpad toggles, remove hy3, fix cursor warpCraig Jennings2026-02-069-137/+24
| | | | | | | | | Waybar modules now toggle pyprland scratchpads on click: sysmonitor group opens btop, netspeed opens nmtui, pulseaudio opens pulsemixer. Consolidated pyprland config to canonical ~/.config/pypr/config.toml. Removed hy3 plugin from all configs and scripts (disabled since crash). Added $mod+N for network scratchpad. Set cursor:no_warps to prevent cursor jumping to window center on focus change.
* feat(themes): apply hudson theme across configsCraig Jennings2026-02-064-63/+75
| | | | Theme configs updated by set-theme: dunst, foot, fuzzel, hyprlock, waybar CSS.
* chore(waypaper): update default wallpaperCraig Jennings2026-02-051-1/+1
|
* fix(hyprland): remove duplicate fuzzel keybindingCraig Jennings2026-02-021-1/+0
| | | | $mod+P removed; fuzzel already bound elsewhere
* fix(pyprland): move config to new standard locationCraig Jennings2026-02-021-0/+0
| | | | ~/.config/pypr/config.toml replaces ~/.config/hypr/pyprland.toml
* feat(hyprland): install plugins on first login via setup scriptCraig Jennings2026-02-012-1/+62
| | | | | | | | hyprpm requires running Hyprland to determine version for plugin compilation. Move plugin installation from archsetup to a first-login script (hyprland-plugins-setup) that runs via exec-once. Script checks if plugins are already installed and skips if so. Update validation to check for setup script presence instead of enabled plugins.