diff options
Diffstat (limited to '')
-rw-r--r-- | .zsh/zshfunctions | 124 |
1 files changed, 0 insertions, 124 deletions
diff --git a/.zsh/zshfunctions b/.zsh/zshfunctions index 67186cd..ad50ea1 100644 --- a/.zsh/zshfunctions +++ b/.zsh/zshfunctions @@ -26,130 +26,6 @@ _unpack () ebuild $1 clean unpack } -# Open the ebuild with a specified command -open_ebuild () -{ - local ebuild sel - local -a elist - - if [[ $# -lt 2 ]]; then - echo "No package name given." - return 4 - fi - - ebuild="$(equery w $2 2>&1 )" - if [[ $? -ne 0 ]]; then - if [[ $ebuild == *"Ambiguous"* ]]; then - elist=(${(f)ebuild}) - - # remove the first line - shift elist - - echo "Ambiguous package name '$2' -- choose from: " - cat -n <<< ${(F)elist} - read "sel?Selection: " - - if [[ -z $elist[$sel] ]]; then - echo "Invalid choice." - return 1 - else - # the "=" is needed to strip the leading spaces and the quotes - open_ebuild $1 ${=elist[$sel]} - return $? - fi - - elif [[ $ebuild == *"No packages matching"* ]]; then - echo "Trying masked packages too..." - ebuild=$(equery w -m $2 2>&1) - fi - fi - - if [[ $? -eq 0 ]]; then - $1 $ebuild - else - echo "No ebuild found" - fi -} - -# Commit a new config change -# Works only for simple cases -cci () -{ - _ask_$0 () - { - echo -n "Is this ok? [y/n] " - - if ! read -q; then - echo - echo "I would have done the wrong thing ... aborting!" - return 2 - else - echo - fi - } - - if [[ $# == 0 ]]; then - echo "No message given. Aborting." - return 1 - fi - - local message=$1 - local tok=__cci__ - - pushd -q ~ - - local indexed="$(config status --porcelain | grep -v '^ ')" - - if [[ -n $indexed ]]; then - echo ">> Stuff in index -- only commiting this" - echo "$indexed" - _ask_$0 || return 2 - else - echo ">> Nothing in index -- commiting everything which has changed" - echo "$(config status)" - - _ask_$0 || return 2 - config add -u - fi - - cstg diff -O --cached - _ask_$0 || return 2 - - echo ">> Creating new patch" - cstg new $tok -m "$message" - - echo ">> Refreshing" - cstg refresh -i - - if [[ -z $(cstg files) ]]; then - echo - echo "Ehm - this patch is empty. Narf. Aborting!" - echo "Deleting useless patch" - cstg del $tok - return 3 - fi - - echo ">> Committing" - cstg commit $tok - - if [[ -n $(cstg series --applied) ]]; then - echo - echo "Urgs! Something went wrong. There are still patches applied." - echo "Clean up for yourself. Aborting here!" - return 4 - fi - - echo ">> Pushing to remote" - config push - - echo ">> Re-apply patches" - cstg push -a -k - - echo ">> Done" - - popd -q -} - check_libs() { for i in $(ps -A -o pid | tail -n +2); do |