summaryrefslogtreecommitdiff
path: root/plugins/ubuntu
diff options
context:
space:
mode:
authorMarc Cornellà <marc.cornella@live.com>2019-05-08 20:40:36 +0200
committerGitHub <noreply@github.com>2019-05-08 20:40:36 +0200
commit0232ac4bb1cb64b5bfaa7e5fc979d6f7ab23e534 (patch)
tree946d9f8b758ebdd63da96152ca56b154c99068da /plugins/ubuntu
parentafb028763cf40fc339e49011b2cba124dc108fcb (diff)
parentebc700be9b2fa7ae770a644093a5c46a8e323726 (diff)
downloadzsh-0232ac4bb1cb64b5bfaa7e5fc979d6f7ab23e534.tar.gz
zsh-0232ac4bb1cb64b5bfaa7e5fc979d6f7ab23e534.tar.bz2
zsh-0232ac4bb1cb64b5bfaa7e5fc979d6f7ab23e534.zip
Merge branch 'master' into master
Diffstat (limited to 'plugins/ubuntu')
-rw-r--r--plugins/ubuntu/README.md52
-rw-r--r--plugins/ubuntu/readme.md21
-rw-r--r--plugins/ubuntu/ubuntu.plugin.zsh69
3 files changed, 88 insertions, 54 deletions
diff --git a/plugins/ubuntu/README.md b/plugins/ubuntu/README.md
new file mode 100644
index 000000000..caa6a90b4
--- /dev/null
+++ b/plugins/ubuntu/README.md
@@ -0,0 +1,52 @@
+# 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 |
+|---------|------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------|
+| 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 |
+| ag | `sudo $APT` | Run apt-get with sudo |
+| 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 |
+
+
diff --git a/plugins/ubuntu/readme.md b/plugins/ubuntu/readme.md
deleted file mode 100644
index 99d62a6f7..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 exceptional 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 full-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 082481466..198f06743 100644
--- a/plugins/ubuntu/ubuntu.plugin.zsh
+++ b/plugins/ubuntu/ubuntu.plugin.zsh
@@ -5,18 +5,21 @@
# https://github.com/trinaldi
# Nicolas Jonas nextgenthemes.com
# https://github.com/loctauxphilippe
+# https://github.com/HaraldNordgren
#
# 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" # asrc
+compdef _ags ags="$APT source"
alias acp='apt-cache policy' # app
compdef _acp acp='apt-cache policy'
@@ -37,33 +40,33 @@ compdef _afu afu='sudo apt-file update'
alias ppap='sudo ppa-purge'
compdef _ppap ppap='sudo ppa-purge'
-alias apg='sudo apt-get' # age - but without sudo
-alias aga='sudo apt-get autoclean' # aac
-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 full-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 apg='sudo apt-get'
-compdef _aga aga='sudo apt-get autoclean'
-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 full-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 ag="sudo $APT" # age - but without sudo
+alias aga="sudo $APT autoclean" # aac
+alias agb="sudo $APT build-dep" # abd
+alias agc="sudo $APT clean" # adc
+alias agd="sudo $APT dselect-upgrade" # ads
+alias agi="sudo $APT install" # ai
+alias agp="sudo $APT purge" # ap
+alias agr="sudo $APT remove" # ar
+alias agu="sudo $APT update" # ad
+alias agud="sudo $APT update && sudo $APT dist-upgrade" #adu
+alias agug="sudo $APT upgrade" # ag
+alias aguu="sudo $APT update && sudo $APT upgrade" #adg
+alias agar="sudo $APT autoremove"
+
+compdef _ag ag="sudo $APT"
+compdef _aga aga="sudo $APT autoclean"
+compdef _agb agb="sudo $APT build-dep"
+compdef _agc agc="sudo $APT clean"
+compdef _agd agd="sudo $APT dselect-upgrade"
+compdef _agi agi="sudo $APT install"
+compdef _agp agp="sudo $APT purge"
+compdef _agr agr="sudo $APT remove"
+compdef _agu agu="sudo $APT update"
+compdef _agud agud="sudo $APT update && sudo $APT dist-upgrade"
+compdef _agug agug="sudo $APT upgrade"
+compdef _aguu aguu="sudo $APT update && sudo $APT upgrade"
+compdef _agar 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) \
@@ -91,8 +94,8 @@ aar() {
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
@@ -102,7 +105,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)