diff options
author | René 'Necoro' Neumann <necoro@necoro.net> | 2009-10-07 17:05:19 +0200 |
---|---|---|
committer | René 'Necoro' Neumann <necoro@necoro.net> | 2009-10-07 17:05:19 +0200 |
commit | dd5427baaf49f8de4355abeb6bc8c6dd14f74e25 (patch) | |
tree | 46fcfc70bd792e80ceebaab89a7f8fc06bc29101 /.zsh/zshfunctions | |
download | dotfiles-dd5427baaf49f8de4355abeb6bc8c6dd14f74e25.tar.gz dotfiles-dd5427baaf49f8de4355abeb6bc8c6dd14f74e25.tar.bz2 dotfiles-dd5427baaf49f8de4355abeb6bc8c6dd14f74e25.zip |
Initial check-in of files
Diffstat (limited to '.zsh/zshfunctions')
-rw-r--r-- | .zsh/zshfunctions | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/.zsh/zshfunctions b/.zsh/zshfunctions new file mode 100644 index 0000000..118e74d --- /dev/null +++ b/.zsh/zshfunctions @@ -0,0 +1,53 @@ +# Nice mappings to restart/... the services +Start Stop Reload Restart () +{ + [[ $UID != 0 ]] && SUDO="sudo" + $SUDO /etc/init.d/$1 ${0:l} +} + +# Change to the directory of a specific package +cdu () +{ + local cp + + [[ -n $1 ]] && cp=$(eix -e $1 --format "<category>/<name>" 2>/dev/null | head -n1) + + cd /usr/portage/${cp} +} + +# Open the ebuild with a specified command +open_ebuild () +{ + local ebuild=$(equery w $2 2> /dev/null) + + if [[ -z $ebuild ]]; then + echo "Trying masked packages too..." + ebuild=$(equery w -m $2 2> /dev/null) + fi + + if [[ -n $ebuild ]]; then + $1 $ebuild + else + echo "No ebuild found" + fi +} + +if [[ $UID == 0 ]]; then + + # unpack a package + unpack() + { + ebuild $(equery w -m $1) clean unpack + } + + # set job count to 1 if there is only one package to install + emerge() + { + local e=$(whence -p emerge) + if [[ $# < 3 ]]; then + $e --jobs=1 $@ + else + $e $@ + fi + } +fi |