
* Fix multi-package removal in omarchy-pkg-remove The script already had multi-selection enabled with --multi flag, but wasn't handling multiple selections correctly. When users selected multiple packages with Tab, they wouldn't all get removed. Fixed by using xargs to properly convert newline-separated package names from fzf into individual arguments for yay. Fixes #805 * Add multi-select explainer * Fix multi install like we did for remove --------- Co-authored-by: David Heinemeier Hansson <david@hey.com>
23 lines
654 B
Bash
Executable File
23 lines
654 B
Bash
Executable File
#!/bin/bash
|
|
|
|
fzf_args=(
|
|
--multi
|
|
--preview 'yay -Qi {1}'
|
|
--preview-label='alt-p: toggle description, alt-j/k: scroll, tab: multi-select, F11: maximize'
|
|
--preview-label-pos='bottom'
|
|
--preview-window 'down:65%:wrap'
|
|
--bind 'alt-p:toggle-preview'
|
|
--bind 'alt-d:preview-half-page-down,alt-u:preview-half-page-up'
|
|
--bind 'alt-k:preview-up,alt-j:preview-down'
|
|
--color 'pointer:red,marker:red'
|
|
)
|
|
|
|
pkg_names=$(yay -Qqe | fzf "${fzf_args[@]}")
|
|
|
|
if [[ -n "$pkg_names" ]]; then
|
|
# Convert newline-separated selections to space-separated for yay
|
|
echo "$pkg_names" | tr '\n' ' ' | xargs yay -Rns --noconfirm
|
|
sudo updatedb
|
|
omarchy-show-done
|
|
fi
|