|
|
|
|
@ -4,8 +4,13 @@ |
|
|
|
|
# |
|
|
|
|
# Debian-related zsh aliases and functions for zsh |
|
|
|
|
|
|
|
|
|
# Set to 'apt-get' or 'aptitude' |
|
|
|
|
apt_pref='aptitude' |
|
|
|
|
# Use aptitude if installed, or apt-get if not. |
|
|
|
|
# You can just set apt_pref='apt-get' to override it. |
|
|
|
|
if [[ -e $( which aptitude ) ]]; then |
|
|
|
|
apt_pref='aptitude' |
|
|
|
|
else |
|
|
|
|
apt_pref='apt-get' |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
# Use sudo by default if it's installed |
|
|
|
|
if [[ -e $( which sudo ) ]]; then |
|
|
|
|
@ -13,6 +18,10 @@ if [[ -e $( which sudo ) ]]; then |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
# Aliases ################################################################### |
|
|
|
|
# These are for more obscure uses of apt-get and aptitude that aren't covered |
|
|
|
|
# below. |
|
|
|
|
alias ag='apt-get' |
|
|
|
|
alias at='aptitude' |
|
|
|
|
|
|
|
|
|
# Some self-explanatory aliases |
|
|
|
|
alias acs="apt-cache search" |
|
|
|
|
@ -28,19 +37,23 @@ alias afs='apt-file search --regexp' |
|
|
|
|
alias asrc='apt-get source' |
|
|
|
|
alias ap='apt-cache policy' |
|
|
|
|
|
|
|
|
|
# superuser operations ################ |
|
|
|
|
# superuser operations ###################################################### |
|
|
|
|
if [[ $use_sudo -eq 1 ]]; then |
|
|
|
|
alias ai="sudo $apt_pref install" |
|
|
|
|
# commands using sudo ####### |
|
|
|
|
alias aac="sudo $apt_pref autoclean" |
|
|
|
|
alias abd="sudo $apt_pref build-dep" |
|
|
|
|
alias ac="sudo $apt_pref clean" |
|
|
|
|
alias ad="sudo $apt_pref update" |
|
|
|
|
alias adg="sudo $apt_pref update && sudo $apt_pref upgrade" |
|
|
|
|
alias adu="sudo $apt_pref update && sudo $apt_pref dist-upgrade" |
|
|
|
|
alias afu='sudo apt-file update' |
|
|
|
|
alias ag="sudo $apt_pref upgrade" |
|
|
|
|
alias adg="sudo $apt_pref update && sudo $apt_pref upgrade" |
|
|
|
|
alias ai="sudo $apt_pref install" |
|
|
|
|
alias ap="sudo $apt_pref purge" |
|
|
|
|
alias ar="sudo $apt_pref remove" |
|
|
|
|
|
|
|
|
|
if [[ $apt_pref -eq 'apt-get' ]]; then |
|
|
|
|
alias ads="sudo $apt_pref dselect-upgrade" |
|
|
|
|
fi |
|
|
|
|
# apt-get only |
|
|
|
|
alias ads="sudo $apt_pref dselect-upgrade" |
|
|
|
|
|
|
|
|
|
# Install all .deb files in the current directory. |
|
|
|
|
# Warning: you will need to put the glob in single quotes if you use: |
|
|
|
|
@ -48,25 +61,54 @@ if [[ $use_sudo -eq 1 ]]; then |
|
|
|
|
alias di='sudo dpkg -i ./*.deb' |
|
|
|
|
|
|
|
|
|
# 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`))' |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# commands using su ######### |
|
|
|
|
else |
|
|
|
|
alias ai='apin' |
|
|
|
|
alias aac='su -ls "'"$apt_pref"' autoclean" root' |
|
|
|
|
abd() { |
|
|
|
|
cmd="su -lc '$apt_pref build-dep $@' root" |
|
|
|
|
print "$cmd" |
|
|
|
|
eval "$cmd" |
|
|
|
|
} |
|
|
|
|
alias ac='su -ls "'"$apt_pref"' clean" root' |
|
|
|
|
alias ad='su -lc "'"$apt_pref"' update" root' |
|
|
|
|
alias adg='su -lc "'"$apt_pref"' update && aptitude safe-upgrade" root' |
|
|
|
|
alias adu='su -lc "'"$apt_pref"' update && aptitude dist-upgrade" root' |
|
|
|
|
alias afu='su -lc "apt-file update"' |
|
|
|
|
alias ag='su -lc "'"$apt_pref"' safe-upgrade" root' |
|
|
|
|
alias adg='su -lc "'"$apt_pref"' update && aptitude safe-upgrade" root' |
|
|
|
|
ai() { |
|
|
|
|
cmd="su -lc 'aptitude -P install $@' root" |
|
|
|
|
print "$cmd" |
|
|
|
|
eval "$cmd" |
|
|
|
|
} |
|
|
|
|
ap() { |
|
|
|
|
cmd="su -lc '$apt_pref -P purge $@' root" |
|
|
|
|
print "$cmd" |
|
|
|
|
eval "$cmd" |
|
|
|
|
} |
|
|
|
|
ar() { |
|
|
|
|
cmd="su -lc '$apt_pref -P remove $@' root" |
|
|
|
|
print "$cmd" |
|
|
|
|
eval "$cmd" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# Install all .deb files in the current directory |
|
|
|
|
# Assumes glob_subst is off |
|
|
|
|
alias di='su -lc "dpkg -i ./*.deb" root' |
|
|
|
|
|
|
|
|
|
# Remove ALL kernel images and headers EXCEPT the one in use |
|
|
|
|
alias kclean='su -lc '\''aptitude remove -P ?and(~i~nlinux-(ima|hea) ?not(~n`uname -r`))'\'' root' |
|
|
|
|
alias kclean='su -lc '\''aptitude remove -P ?and(~i~nlinux-(ima|hea) \ |
|
|
|
|
?not(~n`uname -r`))'\'' root' |
|
|
|
|
fi |
|
|
|
|
# end superuser operations ########## |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Misc. ##################################################################### |
|
|
|
|
# print all installed packages |
|
|
|
|
alias allpkgs='aptitude search -F "%p" --disable-columns ~i' |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Create a basic .deb package |
|
|
|
|
alias mydeb='time dpkg-buildpackage -rfakeroot -us -uc' |
|
|
|
|
|
|
|
|
|
@ -75,23 +117,19 @@ alias mydeb='time dpkg-buildpackage -rfakeroot -us -uc' |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
# Functions ################################################################# |
|
|
|
|
|
|
|
|
|
# install packages without sudo |
|
|
|
|
apin() { |
|
|
|
|
cmd="su -lc 'aptitude -P install $@' root" |
|
|
|
|
print "$cmd" |
|
|
|
|
eval "$cmd" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
# create a simple script that can be used to 'duplicate' a system |
|
|
|
|
apt-copy() { |
|
|
|
|
print '#!/bin/sh'"\n" > apt-copy.sh |
|
|
|
|
print '#!/bin/sh'"\n" > apt-copy.sh |
|
|
|
|
|
|
|
|
|
cmd="$apt_pref install -s " |
|
|
|
|
|
|
|
|
|
list=$(perl -m'AptPkg::Cache' -e '$c=AptPkg::Cache->new; for (keys %$c){ push @a, $_ if $c->{$_}->{'CurrentState'} eq 'Installed';} print "$_ " for sort @a;') |
|
|
|
|
for p in ${(f)"$(aptitude search -F "%p" --disable-columns \~i)"}; { |
|
|
|
|
cmd="${cmd} ${p}" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
print 'aptitude install '"$list\n" >> apt-copy.sh |
|
|
|
|
print $cmd "\n" >> apt-copy.sh |
|
|
|
|
|
|
|
|
|
chmod +x apt-copy.sh |
|
|
|
|
chmod +x apt-copy.sh |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|