diff options
author | Marc Cornellà <marc.cornella@live.com> | 2019-10-24 17:57:01 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-10-24 17:57:01 +0200 |
commit | cad48e38bfbfa6e3e0096caddf330d6fc8f1ffb9 (patch) | |
tree | 2b07ec259bbd2b1a4919245669900a87fa87a03b /plugins/ubuntu | |
parent | 225425fe091ca052997833279ccc08643818c24a (diff) | |
parent | 40df67bc3b9b51caa24df5d220487043040d1f9a (diff) | |
download | zsh-cad48e38bfbfa6e3e0096caddf330d6fc8f1ffb9.tar.gz zsh-cad48e38bfbfa6e3e0096caddf330d6fc8f1ffb9.tar.bz2 zsh-cad48e38bfbfa6e3e0096caddf330d6fc8f1ffb9.zip |
Merge branch 'master' into fabric_task_description
Diffstat (limited to 'plugins/ubuntu')
-rw-r--r-- | plugins/ubuntu/README.md | 60 | ||||
-rw-r--r-- | plugins/ubuntu/readme.md | 21 | ||||
-rw-r--r-- | plugins/ubuntu/ubuntu.plugin.zsh | 114 |
3 files changed, 106 insertions, 89 deletions
diff --git a/plugins/ubuntu/README.md b/plugins/ubuntu/README.md new file mode 100644 index 000000000..f72182f5c --- /dev/null +++ b/plugins/ubuntu/README.md @@ -0,0 +1,60 @@ +# Ubuntu plugin + +This plugin adds completions and aliases for [Ubuntu](https://www.ubuntu.com/). + +To use it, add `ubuntu` to the plugins array in your zshrc file: + +```zsh +plugins=(... ubuntu) +``` + +## Aliases + +Commands that use `$APT` will use `apt` if installed or defer to `apt-get` otherwise. + +| Alias | Command | Description | +|---------|--------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------| +| age | `sudo $APT` | Run apt-get with sudo | +| acs | `apt-cache search` | Search the apt-cache with the specified criteria | +| acp | `apt-cache policy` | Display the package source priorities | +| afs | `apt-file search --regexp` | Perform a regular expression apt-file search | +| afu | `sudo apt-file update` | Generates or updates the apt-file package database | +| aga | `sudo $APT autoclean` | Clears out the local reposityory of retrieved package files that can no longer be downloaded | +| agb | `sudo $APT build-dep <source_pkg>` | Installs/Removes packages to satisfy the dependencies of a specified build pkg | +| agc | `sudo $APT clean` | Clears out the local repository of retrieved package files leaving everything from the lock files | +| agd | `sudo $APT dselect-upgrade` | Follows dselect choices for package installation | +| agi | `sudo $APT install <pkg>` | Install the specified package | +| agli | `apt list --installed` | List the installed packages | +| aglu | `sudo apt-get -u upgrade --assume-no` | Run an apt-get upgrade assuming no to all prompts | +| agp | `sudo $APT purge <pkg>` | Remove a package including any configuration files | +| agr | `sudo $APT remove <pkg>` | Remove a package | +| ags | `$APT source <pkg>` | Fetch the source for the specified package | +| agu | `sudo $APT update` | Update package list | +| agud | `sudo $APT update && sudo $APT dist-upgrade` | Update packages list and perform a distribution upgrade | +| agug | `sudo $APT upgrade` | Upgrade available packages | +| agar | `sudo $APT autoremove` | Remove automatically installed packages no longer needed | +| aguu | `sudo $APT update && sudo $APT upgrade` | Update packages list and upgrade available packages | +| allpkgs | `dpkg --get-selections \| grep -v deinstall` | Print all installed packages | +| kclean | `sudo aptitude remove -P ?and(~i~nlinux-(ima\|hea) ?not(~n$(uname -r)))` |Remove ALL kernel images and headers EXCEPT the one in use | +| mydeb | `time dpkg-buildpackage -rfakeroot -us -uc` | Create a basic .deb package | +| ppap | `sudo ppa-purge <ppa>` | Remove the specified PPA | + + +## Functions + +| Function | Usage |Description | +|-------------------|---------------------------------------|--------------------------------------------------------------------------| +| aar | `aar ppa:xxxxxx/xxxxxx [packagename]` | apt-add-repository with automatic install/upgrade of the desired package | +| apt-history | `apt-history <action>` | Prints the Apt history of the specified action | +| apt-list-packages | `apt-list-packages` | List packages by size | +| kerndeb | `kerndeb` | Kernel-package building shortcut | + +## Authors: + +- [@AlexBio](https://github.com/AlexBio) +- [@dbb](https://github.com/dbb) +- [@Mappleconfusers](https://github.com/Mappleconfusers) +- [@trinaldi](https://github.com/trinaldi) +- [Nicolas Jonas](https://nextgenthemes.com) +- [@loctauxphilippe](https://github.com/loctauxphilippe) +- [@HaraldNordgren](https://github.com/HaraldNordgren) diff --git a/plugins/ubuntu/readme.md b/plugins/ubuntu/readme.md deleted file mode 100644 index c9ef61f4e..000000000 --- a/plugins/ubuntu/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -This plugin was created because the aliases in the debian plugin are inconsistent and hard to remember. Also this apt-priority detection that switched between apt-get and aptitude was dropped to keep it simpler. This plugin uses apt-get for everything but a few things that are only possible with aptitude I guess. Ubuntu does not have aptitude installed by default. - -acs = Apt-Cache Search -acp = Apt-Cache Policy - -ag = sudo Apt-Get -agi = sudo Apt-Get Install -agd = sudo Apt-Get Dselect-upgrade -By now you already can guess almost all aliases - -There are two exeptions since ... -agu = sudo Apt-Get Update - we have ... -agug = sudo Apt-Get UpGrade - as the exeptional 4 letter alias for a single command. - -afs = Apt-File Search --regexp - this has the regexp switch on without being represented in the alias, I guess this makes sense since the debian plugin has it, I never used that command. - -Then there are the 2 other 4 letter aliases for combined commands, that are straight forward and easy to remember. -aguu = sudo Apt-Get Update && sudo apt-get Upgrade - better then adg or not? -agud = sudo Apt-Get Update && sudo apt-get Dist-upgrade - -For a full list aliases and the functions just watch the plugins code https://github.com/robbyrussell/oh-my-zsh/blob/master/plugins/ubuntu/ubuntu.plugin.zsh, look at the comments if you want to switch from the debian plugin. Ubuntu, Mint and & co users will like the new aar function to install packages from ppas with a single command. diff --git a/plugins/ubuntu/ubuntu.plugin.zsh b/plugins/ubuntu/ubuntu.plugin.zsh index d924f8861..a53752fb2 100644 --- a/plugins/ubuntu/ubuntu.plugin.zsh +++ b/plugins/ubuntu/ubuntu.plugin.zsh @@ -1,65 +1,43 @@ -# Authors: -# https://github.com/AlexBio -# https://github.com/dbb -# https://github.com/Mappleconfusers -# Nicolas Jonas nextgenthemes.com -# https://github.com/loctauxphilippe -# -# Debian, Ubuntu and friends related zsh aliases and functions for zsh +(( $+commands[apt] )) && APT=apt || APT=apt-get alias acs='apt-cache search' -compdef _acs acs='apt-cache search' alias afs='apt-file search --regexp' -compdef _afs afs='apt-file search --regexp' -# These are apt-get only -alias ags='apt-get source' # asrc -compdef _ags ags='apt-get source' +# These are apt/apt-get only +alias ags="$APT source" -alias acp='apt-cache policy' # app -compdef _acp acp='apt-cache policy' +alias acp='apt-cache policy' + +#List all installed packages +alias agli='apt list --installed' + +# List available updates only +alias aglu='apt list --upgradable' # superuser operations ###################################################### + alias afu='sudo apt-file update' -compdef _afu afu='sudo apt-file update' alias ppap='sudo ppa-purge' -compdef _ppap ppap='sudo ppa-purge' - -alias ag='sudo apt-get' # age - but without sudo -alias aga='sudo apt-get autoclean' # aac -alias agar='sudo apt-get autoremove' -alias agb='sudo apt-get build-dep' # abd -alias agc='sudo apt-get clean' # adc -alias agd='sudo apt-get dselect-upgrade' # ads -alias agi='sudo apt-get install' # ai -alias agp='sudo apt-get purge' # ap -alias agr='sudo apt-get remove' # ar -alias agu='sudo apt-get update' # ad -alias agud='sudo apt-get update && sudo apt-get dist-upgrade' #adu -alias agug='sudo apt-get upgrade' # ag -alias aguu='sudo apt-get update && sudo apt-get upgrade' #adg -alias agar='sudo apt-get autoremove' - -compdef _ag ag='sudo apt-get' -compdef _aga aga='sudo apt-get autoclean' -compdef _agar agar='sudo apt-get autoremove' -compdef _agb agb='sudo apt-get build-dep' -compdef _agc agc='sudo apt-get clean' -compdef _agd agd='sudo apt-get dselect-upgrade' -compdef _agi agi='sudo apt-get install' -compdef _agp agp='sudo apt-get purge' -compdef _agr agr='sudo apt-get remove' -compdef _agu agu='sudo apt-get update' -compdef _agud agud='sudo apt-get update && sudo apt-get dist-upgrade' -compdef _agug agug='sudo apt-get upgrade' -compdef _aguu aguu='sudo apt-get update && sudo apt-get upgrade' -compdef _agar agar='sudo apt-get autoremove' + +alias age="sudo $APT" +alias aga="sudo $APT autoclean" +alias agb="sudo $APT build-dep" +alias agc="sudo $APT clean" +alias agd="sudo $APT dselect-upgrade" +alias agi="sudo $APT install" +alias agp="sudo $APT purge" +alias agr="sudo $APT remove" +alias agu="sudo $APT update" +alias agud="sudo $APT update && sudo $APT dist-upgrade" +alias agug="sudo $APT upgrade" +alias aguu="sudo $APT update && sudo $APT upgrade" +alias agar="sudo $APT autoremove" + # Remove ALL kernel images and headers EXCEPT the one in use -alias kclean='sudo aptitude remove -P ?and(~i~nlinux-(ima|hea) \ - ?not(~n`uname -r`))' +alias kclean='sudo aptitude remove -P ?and(~i~nlinux-(ima|hea) ?not(~n`uname -r`))' # Misc. ##################################################################### # print all installed packages @@ -71,20 +49,20 @@ alias mydeb='time dpkg-buildpackage -rfakeroot -us -uc' # apt-add-repository with automatic install/upgrade of the desired package # Usage: aar ppa:xxxxxx/xxxxxx [packagename] # If packagename is not given as 2nd argument the function will ask for it and guess the default by taking -# the part after the / from the ppa name wich is sometimes the right name for the package you want to install +# the part after the / from the ppa name which is sometimes the right name for the package you want to install aar() { if [ -n "$2" ]; then PACKAGE=$2 else read "PACKAGE?Type in the package name to install/upgrade with this ppa [${1##*/}]: " fi - + if [ -z "$PACKAGE" ]; then PACKAGE=${1##*/} fi - - sudo apt-add-repository $1 && sudo apt-get update - sudo apt-get install $PACKAGE + + sudo apt-add-repository $1 && sudo $APT update + sudo $APT install $PACKAGE } # Prints apt history @@ -94,7 +72,7 @@ aar() { # apt-history remove # apt-history rollback # apt-history list -# Based On: http://linuxcommando.blogspot.com/2008/08/how-to-show-apt-log-history.html +# Based On: https://linuxcommando.blogspot.com/2008/08/how-to-show-apt-log-history.html apt-history () { case "$1" in install) @@ -110,7 +88,7 @@ apt-history () { awk '{print $4"="$5}' ;; list) - zcat $(ls -rt /var/log/dpkg*) + zgrep --no-filename '' $(ls -rt /var/log/dpkg*) ;; *) echo "Parameters:" @@ -125,22 +103,22 @@ apt-history () { # Kernel-package building shortcut kerndeb () { - # temporarily unset MAKEFLAGS ( '-j3' will fail ) - MAKEFLAGS=$( print - $MAKEFLAGS | perl -pe 's/-j\s*[\d]+//g' ) - print '$MAKEFLAGS set to '"'$MAKEFLAGS'" - appendage='-custom' # this shows up in $ (uname -r ) - revision=$(date +"%Y%m%d") # this shows up in the .deb file name + # temporarily unset MAKEFLAGS ( '-j3' will fail ) + MAKEFLAGS=$( print - $MAKEFLAGS | perl -pe 's/-j\s*[\d]+//g' ) + print '$MAKEFLAGS set to '"'$MAKEFLAGS'" + appendage='-custom' # this shows up in $(uname -r) + revision=$(date +"%Y%m%d") # this shows up in the .deb file name - make-kpkg clean + make-kpkg clean - time fakeroot make-kpkg --append-to-version "$appendage" --revision \ - "$revision" kernel_image kernel_headers + time fakeroot make-kpkg --append-to-version "$appendage" --revision \ + "$revision" kernel_image kernel_headers } # List packages by size function apt-list-packages { - dpkg-query -W --showformat='${Installed-Size} ${Package} ${Status}\n' | \ - grep -v deinstall | \ - sort -n | \ - awk '{print $1" "$2}' + dpkg-query -W --showformat='${Installed-Size} ${Package} ${Status}\n' | \ + grep -v deinstall | \ + sort -n | \ + awk '{print $1" "$2}' } |