archlinux.plugin.zsh 5.26 KB
Newer Older
1
2
3
#######################################
#               Pacman                #
#######################################
4

Benjamin Boudreau's avatar
Benjamin Boudreau committed
5
# Pacman - https://wiki.archlinux.org/index.php/Pacman_Tips
6
7
8
9
10
11
12
13
14
15
16
17
18
alias pacupg='sudo pacman -Syu'
alias pacin='sudo pacman -S'
alias pacins='sudo pacman -U'
alias pacre='sudo pacman -R'
alias pacrem='sudo pacman -Rns'
alias pacrep='pacman -Si'
alias pacreps='pacman -Ss'
alias pacloc='pacman -Qi'
alias paclocs='pacman -Qs'
alias pacinsd='sudo pacman -S --asdeps'
alias pacmir='sudo pacman -Syy'
alias paclsorphans='sudo pacman -Qdt'
alias pacrmorphans='sudo pacman -Rs $(pacman -Qtdq)'
19
alias pacfileupg='sudo pacman -Fy'
20
alias pacfiles='pacman -F'
21
22
alias pacls='pacman -Ql'
alias pacown='pacman -Qo'
23
alias pacupd="sudo pacman -Sy"
24
alias upgrade='sudo pacman -Syu'
Benjamin Boudreau's avatar
Benjamin Boudreau committed
25

26
function paclist() {
27
28
29
30
  # Based on https://bbs.archlinux.org/viewtopic.php?id=93683
  pacman -Qqe | \
    xargs -I '{}' \
      expac "${bold_color}% 20n ${fg_no_bold[white]}%d${reset_color}" '{}'
Benjamin Boudreau's avatar
Benjamin Boudreau committed
31
}
Benjamin Boudreau's avatar
Benjamin Boudreau committed
32

33
function pacdisowned() {
34
  local tmp db fs
Benjamin Boudreau's avatar
Benjamin Boudreau committed
35
36
37
38
39
  tmp=${TMPDIR-/tmp}/pacman-disowned-$UID-$$
  db=$tmp/db
  fs=$tmp/fs

  mkdir "$tmp"
40
  trap 'rm -rf "$tmp"' EXIT
Benjamin Boudreau's avatar
Benjamin Boudreau committed
41
42
43

  pacman -Qlq | sort -u > "$db"

44
45
  find /bin /etc /lib /sbin /usr ! -name lost+found \
    \( -type d -printf '%p/\n' -o -print \) | sort > "$fs"
Benjamin Boudreau's avatar
Benjamin Boudreau committed
46
47
48

  comm -23 "$fs" "$db"
}
49

50
alias pacmanallkeys='sudo pacman-key --refresh-keys'
51

52
function pacmansignkeys() {
53
54
  local key
  for key in $@; do
55
56
57
58
59
60
    sudo pacman-key --recv-keys $key
    sudo pacman-key --lsign-key $key
    printf 'trust\n3\n' | sudo gpg --homedir /etc/pacman.d/gnupg \
      --no-permission-warning --command-fd 0 --edit-key $key
  done
}
61
62
63

if (( $+commands[xdg-open] )); then
  function pacweb() {
64
65
66
67
68
69
70
71
72
    if [[ $# = 0 || "$1" =~ '--help|-h' ]]; then
      local underline_color="\e[${color[underline]}m"
      echo "$0 - open the website of an ArchLinux package"
      echo
      echo "Usage:"
      echo "    $bold_color$0$reset_color ${underline_color}target${reset_color}"
      return 1
    fi

73
74
    local pkg="$1"
    local infos="$(LANG=C pacman -Si "$pkg")"
75
76
77
    if [[ -z "$infos" ]]; then
      return
    fi
78
79
    local repo="$(grep -m 1 '^Repo' <<< "$infos" | grep -oP '[^ ]+$')"
    local arch="$(grep -m 1 '^Arch' <<< "$infos" | grep -oP '[^ ]+$')"
80
81
82
    xdg-open "https://www.archlinux.org/packages/$repo/$arch/$pkg/" &>/dev/null
  }
fi
83
84
85
86
87

#######################################
#             AUR helpers             #
#######################################

88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
if (( $+commands[aura] )); then
  alias auin='sudo aura -S'
  alias aurin='sudo aura -A'
  alias auins='sudo aura -U'
  alias auinsd='sudo aura -S --asdeps'
  alias aurinsd='sudo aura -A --asdeps'
  alias auloc='aura -Qi'
  alias aulocs='aura -Qs'
  alias aulst='aura -Qe'
  alias aumir='sudo aura -Syy'
  alias aurph='sudo aura -Oj'
  alias aure='sudo aura -R'
  alias aurem='sudo aura -Rns'
  alias aurep='aura -Si'
  alias aurrep='aura -Ai'
  alias aureps='aura -As --both'
  alias auras='aura -As --both'
105
  alias auupd="sudo aura -Sy"
106
107
108
109
110
111
112
113
114
115
116
  alias auupg='sudo sh -c "aura -Syu              && aura -Au"'
  alias ausu='sudo  sh -c "aura -Syu --no-confirm && aura -Au --no-confirm"'
  alias upgrade='sudo aura -Syu'

  # extra bonus specially for aura
  alias auown="aura -Qqo"
  alias auls="aura -Qql"
  function auownloc() { aura -Qi  $(aura -Qqo $@); }
  function auownls () { aura -Qql $(aura -Qqo $@); }
fi

117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
if (( $+commands[pacaur] )); then
  alias paupg='pacaur -Syu'
  alias pasu='pacaur -Syu --noconfirm'
  alias pain='pacaur -S'
  alias pains='pacaur -U'
  alias pare='pacaur -R'
  alias parem='pacaur -Rns'
  alias parep='pacaur -Si'
  alias pareps='pacaur -Ss'
  alias paloc='pacaur -Qi'
  alias palocs='pacaur -Qs'
  alias palst='pacaur -Qe'
  alias paorph='pacaur -Qtd'
  alias painsd='pacaur -S --asdeps'
  alias pamir='pacaur -Syy'
132
  alias paupd="pacaur -Sy"
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
  alias upgrade='pacaur -Syu'
fi

if (( $+commands[trizen] )); then
  alias trconf='trizen -C'
  alias trupg='trizen -Syua'
  alias trsu='trizen -Syua --noconfirm'
  alias trin='trizen -S'
  alias trins='trizen -U'
  alias trre='trizen -R'
  alias trrem='trizen -Rns'
  alias trrep='trizen -Si'
  alias trreps='trizen -Ss'
  alias trloc='trizen -Qi'
  alias trlocs='trizen -Qs'
  alias trlst='trizen -Qe'
  alias trorph='trizen -Qtd'
  alias trinsd='trizen -S --asdeps'
  alias trmir='trizen -Syy'
152
  alias trupd="trizen -Sy"
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
  alias upgrade='trizen -Syu'
fi

if (( $+commands[yaourt] )); then
  alias yaconf='yaourt -C'
  alias yaupg='yaourt -Syua'
  alias yasu='yaourt -Syua --noconfirm'
  alias yain='yaourt -S'
  alias yains='yaourt -U'
  alias yare='yaourt -R'
  alias yarem='yaourt -Rns'
  alias yarep='yaourt -Si'
  alias yareps='yaourt -Ss'
  alias yaloc='yaourt -Qi'
  alias yalocs='yaourt -Qs'
  alias yalst='yaourt -Qe'
  alias yaorph='yaourt -Qtd'
  alias yainsd='yaourt -S --asdeps'
  alias yamir='yaourt -Syy'
172
  alias yaupd="yaourt -Sy"
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
  alias upgrade='yaourt -Syu'
fi

if (( $+commands[yay] )); then
  alias yaconf='yay -Pg'
  alias yaupg='yay -Syu'
  alias yasu='yay -Syu --noconfirm'
  alias yain='yay -S'
  alias yains='yay -U'
  alias yare='yay -R'
  alias yarem='yay -Rns'
  alias yarep='yay -Si'
  alias yareps='yay -Ss'
  alias yaloc='yay -Qi'
  alias yalocs='yay -Qs'
  alias yalst='yay -Qe'
  alias yaorph='yay -Qtd'
  alias yainsd='yay -S --asdeps'
  alias yamir='yay -Syy'
192
  alias yaupd="yay -Sy"
193
194
195
  alias upgrade='yay -Syu'
fi