summaryrefslogtreecommitdiff
path: root/plugins/ubuntu
diff options
context:
space:
mode:
authorMarc Cornellà <marc.cornella@live.com>2019-10-24 17:57:01 +0200
committerGitHub <noreply@github.com>2019-10-24 17:57:01 +0200
commitcad48e38bfbfa6e3e0096caddf330d6fc8f1ffb9 (patch)
tree2b07ec259bbd2b1a4919245669900a87fa87a03b /plugins/ubuntu
parent225425fe091ca052997833279ccc08643818c24a (diff)
parent40df67bc3b9b51caa24df5d220487043040d1f9a (diff)
downloadzsh-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.md60
-rw-r--r--plugins/ubuntu/readme.md21
-rw-r--r--plugins/ubuntu/ubuntu.plugin.zsh114
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}'
}