X-Git-Url: https://iankelling.org/git/?p=distro-functions;a=blobdiff_plain;f=src%2Fpackage-manager-abstractions;h=6d433d249b0858f94032bfb4c23e5308ed4add9b;hp=6936c9271e33bd4f6123bcd724ae694de5030365;hb=6314c835343decaa195019ed2d38a1cb0d5f6a69;hpb=29a9cf3a392bc7229a332c136b9ea7d4b70b53f2 diff --git a/src/package-manager-abstractions b/src/package-manager-abstractions index 6936c92..6d433d2 100644 --- a/src/package-manager-abstractions +++ b/src/package-manager-abstractions @@ -62,11 +62,27 @@ elif command -v apt-get &>/dev/null; then fi } pi() { + if dpkg -s -- "$@" &>/dev/null; then + return 0 + fi pupdate local s; [[ $EUID != 0 ]] && s=sudo $s apt-get -y install --purge --auto-remove "$@" } + pi() { + if dpkg -s -- "$@" &>/dev/null; then + return 0 + fi + pupdate + local s; [[ $EUID != 0 ]] && s=sudo + $s $PI_PREFIX apt-get -y install --purge --auto-remove "$@" + } + pi-nostart() { + if dpkg -s -- "$@" &>/dev/null; then + return 0 + fi + pupdate local s; [[ $EUID != 0 ]] && s=sudo local f=/usr/sbin/policy-rc.d $s dd of=$f </dev/null; then exit 101 EOF $s chmod +x $f - pi "$@" + $s apt-get -y install --purge --auto-remove "$@" $s rm $f } pf() { @@ -126,6 +142,7 @@ EOF apt-file find -x "$file"\$ else apt-file find -x /"$file"\$ + update-alternatives --list "$file" 2>/dev/null fi } pkgfiles() {