865d2d8a53f65eba22c8a0436be1ea985aaa2aba
- Author
- ratijas <me@ratijas.tk>
- Committer
- GitHub <noreply@github.com>
- Date
Message
refactor(archlinux): prevent leaking local variables (#9476)
Co-authored-by: Marc Cornellà <marc.cornella@live.com>
Diff
1diff --git a/plugins/archlinux/archlinux.plugin.zsh b/plugins/archlinux/archlinux.plugin.zsh
2index 4d39bd86b889697357d4c0ac5cd499aceb39309c..c72e06dc202c9ae1fb2b5cf65d4aaea971b3dbdb 100644
3--- a/plugins/archlinux/archlinux.plugin.zsh
4+++ b/plugins/archlinux/archlinux.plugin.zsh
5@@ -171,14 +171,13 @@ function paclist() {
6 }
7
8 function pacdisowned() {
9- emulate -L zsh
10-
11+ local tmp db fs
12 tmp=${TMPDIR-/tmp}/pacman-disowned-$UID-$$
13 db=$tmp/db
14 fs=$tmp/fs
15
16 mkdir "$tmp"
17- trap 'rm -rf "$tmp"' EXIT
18+ trap 'rm -rf "$tmp"' EXIT
19
20 pacman -Qlq | sort -u > "$db"
21
22@@ -189,15 +188,14 @@ function pacdisowned() {
23 }
24
25 function pacmanallkeys() {
26- emulate -L zsh
27 curl -s https://www.archlinux.org/people/{developers,trustedusers}/ | \
28 awk -F\" '(/pgp.mit.edu/) { sub(/.*search=0x/,""); print $1}' | \
29 xargs sudo pacman-key --recv-keys
30 }
31
32 function pacmansignkeys() {
33- emulate -L zsh
34- for key in $*; do
35+ local key
36+ for key in $@; do
37 sudo pacman-key --recv-keys $key
38 sudo pacman-key --lsign-key $key
39 printf 'trust\n3\n' | sudo gpg --homedir /etc/pacman.d/gnupg \
40@@ -207,13 +205,13 @@ function pacmansignkeys() {
41
42 if (( $+commands[xdg-open] )); then
43 function pacweb() {
44- pkg="$1"
45- infos="$(LANG=C pacman -Si "$pkg")"
46+ local pkg="$1"
47+ local infos="$(LANG=C pacman -Si "$pkg")"
48 if [[ -z "$infos" ]]; then
49 return
50 fi
51- repo="$(grep -m 1 '^Repo' <<< "$infos" | grep -oP '[^ ]+$')"
52- arch="$(grep -m 1 '^Arch' <<< "$infos" | grep -oP '[^ ]+$')"
53+ local repo="$(grep -m 1 '^Repo' <<< "$infos" | grep -oP '[^ ]+$')"
54+ local arch="$(grep -m 1 '^Arch' <<< "$infos" | grep -oP '[^ ]+$')"
55 xdg-open "https://www.archlinux.org/packages/$repo/$arch/$pkg/" &>/dev/null
56 }
57 fi