aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* 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-144-17/+13
| | | | | Term scratchpads now 50x70%, renamed term2 to ai-term with updated app-id. Updated calibre window state.
* feat(ncmpcpp): bind x to toggle_consume, update calibre stateCraig Jennings2026-02-142-3/+3
| | | | | Replaced default crossfade binding with consume toggle. Calibre usage stats updated from normal use.
* chore(calibre): add cover plugins, update configCraig Jennings2026-02-145-38/+206
| | | | | Add Apple Books and Kindle hi-res cover plugins. Update GUI state and metadata source config.
* feat(archsetup): add loudgain-ffmpeg7, set mpd replaygain to autoCraig Jennings2026-02-143-1/+8
| | | | | Add loudgain-ffmpeg7 (AUR) for ReplayGain/EBU R128 scanning. Switch mpd replaygain from "track" to "auto" for album-aware playback.
* chore(calibre): update config, add plugins and tag rulesCraig Jennings2026-02-1414-59/+514
| | | | | Add Extract ISBN, Favourites Menu, Find Duplicates plugins. Update tag mapping rules, window geometries, and download timestamps.
* fix(aix): classify windows by project name instead of shell regexCraig Jennings2026-02-141-8/+28
| | | | | | sort_windows now builds known project basenames from candidate dirs and treats everything else as non-project. Prevents TUI apps (mc, ranger, htop) from being misclassified as project windows.
* 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.
* feat(archsetup): add rbw Bitwarden CLI, update calibre configCraig Jennings2026-02-143-9/+2
| | | | | Add rbw (Rust Bitwarden CLI) to security section. Update calibre config state.
* feat(aix): focus newly opened project window after sortCraig Jennings2026-02-142-1272/+177
| | | | | | Move select-window after sort_windows so the first new project gets focus via stable window ID. Also restructure todo.org into flat task list (V2MOM preserved in docs/v2mom.org).
* test: verify post-receive hook permissionsCraig Jennings2026-02-130-0/+0
|
* Test post-receive hook permissionsCraig Jennings2026-02-130-0/+0
|
* fix(aix): respect tmux base-index for shell window placementCraig Jennings2026-02-131-7/+8
| | | | | Shell window was intermittently shifting to index 1 because sort_windows hardcoded index 0, which conflicts with base-index=1 and renumber-windows.
* chore(dotfiles): add texlive-fontsextra, rebind screenshot keyCraig Jennings2026-02-135-1/+25
| | | | | Add texlive-fontsextra to archsetup for fontawesome5 resume icons. Change fullscreen screenshot from $mod+Print to Ctrl+$mod+S.
* chore(archsetup): add texlive-latexextra, update test scriptsCraig Jennings2026-02-127-2/+32
| | | | | Add texlive-latexextra for pdflatex resume builds (enumitem package). Update test VM password and Arch mirror URL. Process inbox items.
* chore(calibre): update calibre config stateCraig Jennings2026-02-124-13/+177
|
* 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(archsetup): add VLC plugin packages, process inboxCraig Jennings2026-02-112-0/+30
|
* 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(dotfiles): add coderman and ucb-lambda images to stowCraig Jennings2026-02-112-0/+0
|
* feat(archsetup): add ditaa package, process inboxCraig Jennings2026-02-102-0/+60
| | | | | Add ditaa to Emacs Dependencies for org-babel diagram support. File waybar date/worldclock inbox item to assets/outbox.
* 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(aix): sort windows on every attach, add --attach flagCraig Jennings2026-02-101-11/+12
| | | | | | Sort windows (shells at 0, projects alphabetically from 1) on every session access including --attach. Move --attach check after function definitions so sort_windows is available.
* refactor(aix): extract helper functions, remove duplicationCraig Jennings2026-02-101-35/+62
| | | | | | Extract attach_session, create_window, read_selections, and build_candidates functions. Remove unused variable. Simplify new-session window ID capture.
* feat(aix): sort windows alphabetically, shells last, start from 1Craig Jennings2026-02-101-2/+27
| | | | | | Windows are reordered after creation and when adding to an existing session. Shell windows (bash/zsh) sort to the end. Window numbering starts at 1. Focus lands on the first selected window.
* feat(aix): add windows to existing session, fix special char handlingCraig Jennings2026-02-101-33/+76
| | | | | | | Allow calling aix from within the ai tmux session to add new project windows. Already-open projects are filtered from the selection list. Use tmux window IDs instead of names to fix errors with dots in directory names (e.g. chime.el).
* feat(waybar): SVG workspace circles, improved arch logo, remove mod+0Craig Jennings2026-02-1011-93/+86
| | | | | | | | | | 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>
* chore(dotfiles): update calibre viewer window geometry and recentsCraig Jennings2026-02-092-41/+92
| | | | Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(archsetup): add gaming section with Steam and performance toolsCraig Jennings2026-02-091-2/+29
| | | | | | | Adds dedicated gaming() step with lib32 graphics, gamemode, mangohud, and Steam. Enables gamemoded service for CPU/GPU performance tuning. 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(dotfiles): manage calibre via directory symlink, add ncmpcpp bindingsCraig Jennings2026-02-097-8/+257
| | | | | | Calibre does atomic writes that break individual stow symlinks. Exclude calibre from stow and use a directory symlink instead. Add ncmpcpp keybindings for space/pause, arrow seek, playlist add, visualization.
* feat(archsetup): add zoom, webcam tools, and BRIO udev ruleCraig Jennings2026-02-094-2/+70
| | | | | | | 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-089-16/+58
| | | | | | 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(common): add aix script for fzf-based Claude Code tmux launcherCraig Jennings2026-02-071-0/+74
| | | | | | | Provides flexible alternative to ai-assistants: multi-select project directories via fzf, then open each in a tmux window running Claude. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
* feat(archsetup): add ffmpeg-audio-thumbnailer for nautilus FLAC thumbnailsCraig Jennings2026-02-071-0/+1
| | | | Enables album art display for FLAC files in Nautilus grid view.
* feat(archsetup): add package-inventory script and reconcile packagesCraig Jennings2026-02-074-3/+237
| | | | | | | | | 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.
* chore(todo): add monocle layout task and update qalculate historyCraig Jennings2026-02-062-0/+11
|
* 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-065-74/+86
| | | | Theme configs updated by set-theme: dunst, foot, fuzzel, hyprlock, waybar CSS.
* chore(assets): archive processed inbox itemsCraig Jennings2026-02-055-0/+442
|
* chore(waypaper): update default wallpaperCraig Jennings2026-02-051-1/+1
|
* feat(archsetup): add obs-studio for screen recordingCraig Jennings2026-02-051-0/+1
|
* feat(dotfiles): add GPG symmetric encryption scriptsCraig Jennings2026-02-052-0/+45
| | | | | encryptfile: encrypt file with AES256, prompt to delete original decryptfile: decrypt to clipboard (wl-copy for Wayland, xclip for X11)
* chore(todo): mark completed tasks from session reviewCraig Jennings2026-02-021-30/+73
| | | | | | | | | | | | - Mark DONE: set-theme overwriting, plugin notifications, FZF verification - Mark DONE: testing infrastructure (VM-based, 90 validation functions) - Mark DONE: disk encryption, UFW firewall (handled in archangel) - Mark DONE: SSH and Proton Mail Bridge verification - Cancel: hy3 tab bar theming (plugin disabled due to crashes) - Add: Chrome theme with dupre colors [#C] - Reschedule: linux-lts check to 2026-02-23 (+3w) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* chore(calibre): adopt current GUI stateCraig Jennings2026-02-021-46/+46
| | | | Window dimensions and JSON key ordering from runtime