aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
...
* docs(todo): update wallpaper note to reflect swww choiceCraig Jennings2026-02-011-1/+1
| | | | Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* chore: remove yazi, update file manager notesCraig Jennings2026-02-012-3/+10
| | | | | | | | - Remove yazi, lazygit, ouch from archsetup (theming issues) - Update ranger comment to note X11/ueberzug dependency - Update todo with yazi trial notes, lower priority Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(dotfiles): prioritize user bin in PATH, add libvterm, remove hyprpaperCraig Jennings2026-02-012-2/+2
| | | | | | - .profile: Move ~/.local/bin to start of PATH so user scripts take precedence - archsetup: Add libvterm for Emacs vterm package - archsetup: Remove unused hyprpaper (using swww instead)
* feat(dotfiles): add alarm.ogg sound fileCraig Jennings2026-01-311-0/+0
|
* feat(calibre): add dupre color theme and toolbar layoutCraig Jennings2026-01-311-0/+536
|
* feat(calibre): update config from velox (device drivers, plugins list)Craig Jennings2026-01-314-40/+118
|
* chore(calibre): remove auto-generated files (plugins, caches, icons)Craig Jennings2026-01-3159-24274/+0
|
* fix(dotfiles): remove keyrings from version control (contains secrets)Craig Jennings2026-01-312-7/+0
|
* feat(archsetup): add dfu-util for USB firmware flashingCraig Jennings2026-01-311-1/+1
|
* feat(dotfiles): add browser helpers and update qalculate configCraig Jennings2026-01-312-1/+37
| | | | | - Add browser.sh with Wayland-aware open-chrome/firefox/url functions - Disable qalculate multiple instances
* fix(hyprland): auto-rebuild plugins and preserve stash master positionCraig Jennings2026-01-314-5/+88
| | | | | | | - Add pacman hook to rebuild hyprpm plugins after Hyprland updates - Change startup to hyprpm update -n (rebuilds if needed) - Fix stash-restore to preserve master window using batch commands - Add validation tests for plugins and hyprpm hook
* fix(waybar): switch to pulseaudio module and unify colorsCraig Jennings2026-01-314-15/+22
| | | | | | | - Replace wireplumber module with pulseaudio for reliable volume display - Make all module text colors consistent (#969385) - Add idle_inhibitor to styled modules - Add wf-recorder package to archsetup for screen recording
* fix(waybar): raise temperature warning threshold to 80CCraig Jennings2026-01-312-4/+1
| | | | Also remove 60s Sounds radio stream from playlist.
* feat(archsetup): add hyprland plugins and migrate yt-dlp to pipxCraig Jennings2026-01-303-1/+84
| | | | | | Add Hyprland plugin section with hyprpm for hyprscrolling, xtra-dispatchers, and hy3. Migrate yt-dlp from pacman to pipx for current releases. Add deno as required JS runtime for YouTube extraction.
* test(validation): add Settings portal dark mode checkCraig Jennings2026-01-301-0/+33
| | | | | | Validates that portals.conf uses gtk backend for Settings portal and that the portal returns color-scheme=1 (prefer-dark) for libadwaita apps like Nautilus.
* fix(portal): enable Settings portal for libadwaita dark modeCraig Jennings2026-01-301-1/+1
| | | | | Use gtk portal for Settings instead of none, allowing Nautilus and other libadwaita apps to respect the color-scheme preference.
* feat(theme): improve notification visibility with bg+1 backgroundCraig Jennings2026-01-305-8/+7
| | | | | | | - Change dunst notification background from bg to bg+1 (#252321) - Remove shortwave keybinding ($mod+Shift+R) - Move addmaster to $mod+U, keep term2 scratchpad on $mod+I - Update btop box order
* feat(hyprland): add second terminal scratchpad on mod+ICraig Jennings2026-01-302-0/+8
| | | | | Adds term2 scratchpad with slightly lower position (20% 30%) to distinguish from primary terminal scratchpad when both visible.
* docs(assets): add mDNS resolution fix referenceCraig Jennings2026-01-291-0/+120
|
* feat(hyprland): add pyprland for scratchpads, magnify, and window stashingCraig Jennings2026-01-296-46/+93
| | | | | | | Replace native special workspace scratchpads with pyprland to fix issue where new windows were captured by visible scratchpads. Add magnify on mod+Z and window stash scripts (mod+O to stash, mod+Alt+O stash others, mod+Shift+O restore).
* fix(hyprland): simplify monitor scratchpad to btop onlyCraig Jennings2026-01-291-36/+2
| | | | | | | Remove tmux session and other monitoring tools (s-tui, nvtop, duf, bandwhich, wavemon, powertop). Just run btop directly. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* chore(dotfiles): update authinfo credentialsCraig Jennings2026-01-291-0/+0
| | | | Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(theme): apply Dupre palette to all configsCraig Jennings2026-01-295-75/+75
| | | | | | | | | | | | | Update theme colors from Hudson to Dupre across: - dunstrc (notifications) - foot.ini (terminal) - fuzzel.ini (launcher) - hyprlock.conf (lock screen) - waybar/style.css (status bar) Colors now match dupre-palette.org specification. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(hyprland): only reload hyprpm if plugins are installedCraig Jennings2026-01-291-1/+1
| | | | | | | Check if hyprpm list has output before running reload. Prevents "headers are not up-to-date" error on fresh installs. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(hyprland): remove easyeffects auto-launchCraig Jennings2026-01-292-6/+0
| | | | | | | | | | Remove easyeffects from exec-once - user can configure autostart themselves via easyeffects settings. Also remove easyeffects config from dotfiles as it gets overwritten by the app when user changes settings. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(dotfiles): add mimeapps.list with default associationsCraig Jennings2026-01-292-0/+45
| | | | | | | | | | | Move mimeapps.list to ~/.config/ location (takes precedence) and set default applications: - Browser: google-chrome - Documents: zathura (pdf, epub, mobi, cbz, cbr) - Images: feh - Video/Audio: mpv Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(keyring,hyprpm): use template keyring, fix hyprpm warningCraig Jennings2026-01-295-63/+10
| | | | | | | | | | | | | | Keyring: - Add empty-password login.keyring template to dotfiles - Remove init-keyring script (secretstorage API requires prompting) - Remove python-secretstorage dependency - Remove PAM gnome-keyring config (not needed with template approach) Hyprpm: - Only run hyprpm reload if plugins are installed - Prevents "Failed to load plugins" warning on fresh installs Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(hyprland): resolve autologin startup issuesCraig Jennings2026-01-295-10/+56
| | | | | | | | | | | | - Use start-hyprland wrapper instead of Hyprland directly (fixes "started without start-hyprland" warning) - Add init-keyring script to create empty-password keyring (fixes keyring password prompt with autologin) - Add easyeffects config with noWindowAfterStarting=true (starts minimized instead of fullscreen) - Install python-secretstorage for init-keyring script Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(test): use local repo for archsetup instead of remoteCraig Jennings2026-01-291-0/+3
| | | | | | | | Set ARCHSETUP_REPO=/tmp/archsetup-test in VM config so archsetup uses the bundled test repo instead of cloning from remote server. This ensures tests use the current local changes. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(test): use PROJECT_ROOT for git bundle creationCraig Jennings2026-01-291-1/+1
| | | | | | | The git bundle command was running from current directory instead of PROJECT_ROOT, causing it to bundle from wrong repo. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(archsetup): remount /.snapshots after snapper configCraig Jennings2026-01-291-0/+6
| | | | | | | | Archangel creates @snapshots subvolume and adds it to fstab. Archsetup unmounts it for snapper create-config, but never remounted it, causing snap-pac errors during package installs. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(test,hyprland): improve test infrastructure and fix easyeffectsCraig Jennings2026-01-295-14/+38
| | | | | | | | | | | | | | | | | | | | Test Infrastructure: - Add make test-keep target to keep VM running after test - Add make test-vm-base target for creating base VM only - Update make test to auto-create VM if missing - Remove manual user creation from create-base-vm.sh (archsetup handles it) - Remove unused USERNAME/USER_PASSWORD from archsetup-test.conf Archsetup: - Add snapper-gui-git for btrfs snapshot GUI - Add SYNC_ACL=yes for snapper permissions - Add setfacl for wheel group access to /.snapshots Hyprland: - Remove easyeffects scratchpad (keep auto-launch) - Remove ecosystem permissions (caused too many popups) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(dotfiles): add easyeffects UI configCraig Jennings2026-01-281-0/+2
|
* fix(dotfiles): move easyeffects presets to correct locationCraig Jennings2026-01-283-0/+0
| | | | | EasyEffects stores presets in ~/.local/share/easyeffects/output/, not ~/.config/easyeffects/output/. Moved presets to correct path.
* feat(dotfiles): add btop, wavemon, waypaper configsCraig Jennings2026-01-283-0/+312
| | | | | | - btop: resource monitor configuration - wavemon: wifi signal monitor configuration - waypaper: wallpaper picker configuration (Hyprland)
* feat(hyprland): add monitor-dashboard, remove htop scratchpadCraig Jennings2026-01-282-8/+38
| | | | | | - Monitor scratchpad now launches monitor-dashboard (tmux session with btop, s-tui, nvtop, duf, bandwhich, wavemon, powertop) - Remove htop scratchpad ($mod+Shift+H now free)
* fix(dotfiles): remove vim=nvim aliasCraig Jennings2026-01-282-2/+0
| | | | Use vim directly instead of aliasing to neovim.
* feat(archsetup): add packages and fix vi->vimCraig Jennings2026-01-281-6/+9
| | | | | | | | | | | | | | | | | | | Hyprland utilities: - Add waypaper (wallpaper GUI, swww frontend) - Add wlogout-git (logout menu) Monitoring tools: - Add btop, nvtop, s-tui, wavemon, bandwhich - Remove gotop-bin (replaced by btop) Qt theming: - Add adwaita-qt5, adwaita-qt6 for consistent Qt/GTK appearance Btrfs snapshots: - Add snap-pac for automatic snapshots on pacman transactions Fix: - Change vi to vim (vi package doesn't exist in repos)
* feat(Makefile): add deps target for project dependenciesCraig Jennings2026-01-281-1/+16
| | | | | Installs stow, fzf for Makefile targets and qemu-full, virt-manager, libguestfs, bridge-utils, dnsmasq, archiso, sshpass, socat for VM testing.
* fix(archsetup): remove thunar in favor of nautilusCraig Jennings2026-01-281-2/+1
| | | | | Nautilus was added as the file manager. Thunar was redundant and caused D-Bus duplicate name warnings for org.freedesktop.FileManager1.
* feat(hyprland): add TTY1 auto-start with crash recoveryCraig Jennings2026-01-281-0/+26
| | | | | | | Auto-starts Hyprland on TTY1 login while preserving console access if Hyprland crashes. Uses no exec so shell stays alive as parent process. Skip with touch ~/.skip-hyprland. Silent launch with logging to ~/.local/var/log/.
* fix(hyprland): resolve waybar 25s startup delay and separate X11 dotfilesCraig Jennings2026-01-2810-8/+25
| | | | | | | | - Add portals.conf with Settings=none to prevent D-Bus timeout - Reorder exec-once: portal/dbus first, then services, then apps - Move X11-specific dotfiles from common/ to dwm/ (Xresources, xinitrc, picom, redshift, conky, flameshot, touchpad-indicator) - Delete obsolete xdg-desktop-portal-gtk drop-in from common/
* feat(hyprland): add easyeffects EQ presets and autostartCraig Jennings2026-01-286-0/+748
| | | | | | - Add Harman EQ presets for DT770, PXC 550-II, and Pixel Buds Pro 2 - Start easyeffects minimized on Hyprland startup - Move preset docs and install script to assets/
* fix(hyprland): add persistent logging and fix waybar/script issuesCraig Jennings2026-01-288-16/+50
| | | | | | | | | | - Add persistent logging for waybar, dunst, hypridle, gammastep to ~/.local/var/log/ - Create start-hyprland wrapper script for Hyprland logging - Fix waybar-layout and toggle-scratchpad to auto-detect Hyprland socket - Add swap-icon-label: false to waybar group, remove height setting - Fix GTK CSS margin units (1 → 1px) to silence deprecation warning - Add battery detection in archsetup to exclude module on desktops - Update cursor theme to Bibata-Modern-Ice size 24
* feat(archsetup): add easyeffects, nautilus extensions, and WS-DiscoveryCraig Jennings2026-01-282-1/+17
| | | | | | Add easyeffects to audio section, nautilus/sushi/nautilus-open-any-terminal to hyprland section, wsdd and gvfs-wsdd for SMB network discovery. Add easyeffects scratchpad on mod+shift+a in hyprland config.
* feat(testing): add make test target and display report on completionCraig Jennings2026-01-272-1/+11
| | | | | Add 'make test' Makefile target to run full VM integration test suite. Print test report to terminal after generation for immediate visibility.
* feat(hyprland): add focus-restore script to preserve master on mod+shift+oCraig Jennings2026-01-272-1/+10
| | | | | | | | | The xtra-dispatchers bringallfrom dispatcher doesn't preserve window positions, displacing the focused window from master. The new script captures the focused window address, brings all windows back, then swaps the original window back to master. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* fix(mbsync): update cmail password file pathCraig Jennings2026-01-271-1/+1
| | | | Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* feat(hyprland): speed up animations from 3 to 2Craig Jennings2026-01-271-5/+5
| | | | Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
* docs(todo): add task to review theme config architectureCraig Jennings2026-01-271-0/+11
| | | | | | | | The dunst/fuzzel configs exist in both dotfiles/common (stowed) and dotfiles/hyprland/.config/themes/ (templates), requiring edits in multiple places. Needs a cleaner single-source-of-truth approach. Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>