X-Git-Url: https://iankelling.org/git/?p=distro-functions;a=blobdiff_plain;f=src%2Fpackage-manager-abstractions;h=81940bbbb319fd256a80c3c8963d7c49d648a6ec;hp=96e4f6db55335e3263e59aa9d702d87bb28bfa8d;hb=HEAD;hpb=2494932a3b4425bd693219bd30c4ee19969dd4cc diff --git a/src/package-manager-abstractions b/src/package-manager-abstractions index 96e4f6d..aa14875 100644 --- a/src/package-manager-abstractions +++ b/src/package-manager-abstractions @@ -1,5 +1,12 @@ #!/bin/bash -# Copyright (C) 2014 Ian Kelling +# I, Ian Kelling, follow the GNU license recommendations at +# https://www.gnu.org/licenses/license-recommendations.en.html. They +# recommend that small programs, < 300 lines, be licensed under the +# Apache License 2.0. This file contains or is part of one or more small +# programs. If a small program grows beyond 300 lines, I plan to switch +# its license to GPL. + +# Copyright 2024 Ian Kelling # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. @@ -35,6 +42,7 @@ if command -v yum &> /dev/null; then local s; [[ $EUID != 0 ]] && s=sudo $s yum autoremove "$@" } + # shellcheck disable=SC2120 pup() { # upgrade local s; [[ $EUID != 0 ]] && s=sudo $s yum -y distro-sync full "$@" @@ -106,7 +114,7 @@ elif command -v apt-get &>/dev/null; then fi fi done - if (( cachtime > limittime )); then + if (( cachetime > limittime )); then $s apt-get update fi } @@ -183,6 +191,7 @@ EOF # seems slightly redundant, but it removes more stuff sometimes. $s apt-get -y autoremove } + # shellcheck disable=SC2120 pup() { # upgrade plock-wait pupdate @@ -234,7 +243,7 @@ EOF } pkgfiles() { if dpkg -s "$1" &>/dev/null; then - dpkg-query -L $1 + dpkg-query -L $1 | while read -r l; do [[ -f $l ]] && printf "%s\n" "$l"; done else apt-file -x list "^$1$" fi @@ -259,14 +268,15 @@ elif command -v pacman &>/dev/null; then aurex() { p="$1" aur='https://aur.archlinux.org' - curl -s $aur/$(curl -s "$aur/rpc.php?type=info&arg=$p" \ - | jq -r .results.URLPath) | tar xz + curl -s $aur/"$(curl -s "$aur/rpc.php?type=info&arg=$p" \ + | jq -r .results.URLPath)" | tar xz cd "$p" } pmirror() { local s; [[ $EUID != 0 ]] && s=sudo - local x=$(mktemp) + local x + x=$(mktemp) curl -s "https://www.archlinux.org/mirrorlist/\ ?country=US&protocol=https&ip_version=4&ip_version=6&use_mirror_status=on" \ | sed -r 's/^[ #]*(Server *=)/\1/' > $x @@ -275,6 +285,7 @@ elif command -v pacman &>/dev/null; then rm $x fi } + # shellcheck disable=SC2120 pup() { # upgrade local s; [[ $EUID != 0 ]] && s=sudo # file_time + 24 hours > current_time