diff options
| author | 2026-04-21 01:23:20 +0100 | |
|---|---|---|
| committer | 2026-04-21 01:23:20 +0100 | |
| commit | a93494aa2aa48583142594cfe6c005851046f16b (patch) | |
| tree | c89cbc8897944b7c266e2ea3d849f0dd22573591 /justfile | |
| parent | 9a4cef8de726574b11f2bf56ddc27430a4f5e941 (diff) | |
| download | dotfiles-a93494aa2aa48583142594cfe6c005851046f16b.tar.gz dotfiles-a93494aa2aa48583142594cfe6c005851046f16b.tar.bz2 dotfiles-a93494aa2aa48583142594cfe6c005851046f16b.zip | |
refactor: replace meta/ PKGBUILDs with plain text package lists
- Convert 16 PKGBUILD metapackages to simple .txt files (one package per line)
- Delete all PKGBUILD, .SRCINFO, and .pkg.tar.zst binary artifacts
- Clean stale packages: lf→yazi, tmux→zellij, neofetch→fastfetch, stow→chezmoi
- Remove duplicate rustup in dev, duplicate mesa in intel
- Add justfile recipes: install, install-all, status (unified drift detection)
- Configure chezmoi to exclude scripts from status/diff output
- Update copilot instructions
Diffstat (limited to 'justfile')
| -rw-r--r-- | justfile | 27 |
1 files changed, 27 insertions, 0 deletions
@@ -5,3 +5,30 @@ install-hooks: # Deploy dotfiles apply: chezmoi apply + +# Install packages from one or more groups (e.g. just install base dev wayland) +install *groups: + #!/bin/sh + for group in {{ groups }}; do + grep -v '^\s*#' "meta/${group}.txt" | grep -v '^\s*$' | paru -S --needed - + done + +# Install all package groups +install-all: + #!/bin/sh + cat meta/*.txt | grep -v '^\s*#' | grep -v '^\s*$' | sort -u | paru -S --needed - + +# Show package and dotfile drift +status: + #!/bin/sh + echo "=== Package drift ===" + declared=$(cat meta/*.txt | grep -v '^\s*#' | grep -v '^\s*$' | sort -u) + echo "$declared" | while read -r pkg; do + pacman -Qi "$pkg" >/dev/null 2>&1 || echo " missing: $pkg" + done + pacman -Qqe | while read -r pkg; do + echo "$declared" | grep -qxF "$pkg" || echo " undeclared: $pkg" + done + echo "" + echo "=== Dotfile drift ===" + chezmoi status || true |
