Created
July 17, 2016 02:15
-
-
Save NTICompass/27d4959e5fb4167f95e5643380555461 to your computer and use it in GitHub Desktop.
Gentoo Portage shortcuts script (and ZSH completion file)
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#compdef emergeTools | |
# This is a zsh autocomplete file for NTICompass' "emergeTools" script | |
_emergeTools(){ | |
local -a commands | |
commands=( | |
'update: Update emerge''s database' | |
'upgrade: List available package updates' | |
'safe-upgrade: Run upgrade WITHOUT --keep-going' | |
'check: [deprecated] Run revdep-rebuild' | |
'clean: Remove unneeded packages (--depclean)' | |
'rebuild: Rebuild packages with updated libraries (@preserved-rebuild)' | |
'fix: Run both "clean" and "rebuild"' | |
'modules: Reinstall modules after a kernel update (@module-rebuild)' | |
'x11: Reinstall X11 packages (@x11-module-rebuild)' | |
) | |
if (( CURRENT == 2 )); then | |
_describe -t commands 'commands' commands | |
fi | |
return 0 | |
} | |
_emergeTools |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
if [ $# -ne 1 ]; then | |
echo "Usage: `basename $0` ( update | (safe-)upgrade | fix [clean+rebuild] | x11 | modules | check )" | |
exit 1 | |
fi | |
case $1 in | |
"update") | |
# sudo emerge --sync && sudo layman -S && sudo eix-update | |
echo "Running: 'sudo eix-sync'" | |
sudo eix-sync | |
;; | |
"upgrade") | |
echo "Running: 'sudo emerge --ask --verbose --update --newuse --deep --with-bdeps=y --keep-going @world'" | |
sudo emerge --ask --verbose --update --newuse --deep --with-bdeps=y --keep-going @world | |
;; | |
"safe-upgrade") | |
echo "Running: 'sudo emerge --ask --verbose --update --newuse --deep --with-bdeps=y @world'" | |
sudo emerge --ask --verbose --update --newuse --deep --with-bdeps=y @world | |
;; | |
"check") | |
echo "[deprecated] Running: 'revdep-rebuild -ip'" | |
revdep-rebuild -ip | |
echo "[deprecated] Now run: 'sudo revdep-rebuild -i -- --ask'" | |
;; | |
"clean") | |
echo "Running: 'sudo emerge --depclean --ask'" | |
sudo emerge --depclean --ask | |
;; | |
"rebuild") | |
echo "Running: 'sudo emerge -1av @preserved-rebuild'" | |
sudo emerge -1av @preserved-rebuild | |
;; | |
"fix") | |
echo "Running: 'sudo emerge --depclean --ask && sudo emerge -1av @preserved-rebuild'" | |
sudo emerge --depclean --ask && sudo emerge -1av @preserved-rebuild | |
;; | |
"modules") | |
echo "Running: 'sudo emerge -1av @module-rebuild'" | |
sudo emerge -1av @module-rebuild | |
;; | |
"x11") | |
echo "Running: 'sudo emerge -1av @x11-module-rebuild'" | |
sudo emerge -1av @x11-module-rebuild | |
;; | |
*) | |
echo "Invalid command" | |
exit 1 | |
;; | |
esac |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
To enable ZSH auto completion, put the
_emergeTools
file into~/.zsh/completion
and add the following to~/.zshrc
: