• rootiest released this 2026-05-09 05:02:23 +00:00 | 0 commits to main since this release

    Summary

    🚀 New Features

    • XDG Base Directory compliance — all install/config/runtime paths now resolve via $XDG_CONFIG_HOME, $XDG_DATA_HOME, and $XDG_RUNTIME_DIR with the conventional defaults (~/.config, ~/.local/share, /tmp) as fallbacks. BIN_DIR stays ~/.local/bin since no XDG standard covers user binaries.
    • --uninstall flag — removes the binary symlink, .desktop entry, and data directory with colored per-step output and a post-run verification pass. Prompts to remove the config directory when stdin is a TTY; skips the prompt (keeps config) in non-interactive mode.

    Enhancements

    • xclip advisory--check-deps and --install now emit a yellow warning when wl-clipboard is absent but xclip is found, explaining that xclip routes through XWayland and may be unreliable on Wayland.
    • Dependency message cleanup — normalized all clipboard messages to use package names (wl-clipboard, xclip) consistently.
    • Readable path output — added tilde_path helper that replaces the $HOME prefix with ~/ in any user-facing path string. Applied throughout --help, --install, and --uninstall output. Paths outside $HOME (e.g. custom XDG roots) are shown as full absolute paths. All actual file operations continue to use the original absolute paths.

    📝 Documentation

    • README — updated install steps, usage block, and configuration section to reference XDG variables; added xclip advisory to prerequisites; documented --uninstall.

    Tests

    • Improve Legibility — export XDG_CONFIG_HOME/XDG_DATA_HOME in the sandbox so the overridden HOME is respected (fixes a pre-existing test regression).
    • Mock Tools — add cp and ln to mocked tools.
    • New Test — add test 15 (install verifies XDG file placement).
    • New Test — add test 16 (uninstall verifies cleanup with config kept).

    Changelog

    • docs: link script directly in manual install guide (979c0b7436)
    • feat: XDG Base Directory compliance, --uninstall flag, and xclip advisory (075bb10265)
    • refactor: apply tilde_path to all user-facing path output (06dd84d3a3)
    • fix(deps): dynamic clipboard label and yellow check for xclip-only in --check-deps (ad7a1f15b3)
    • fix(tests): redirect stdin from /dev/null in uninstall test to prevent hang (1a27dbde4e)
    Downloads