Simplify *_install helpers

This commit is contained in:
Taiki Endo
2024-04-13 21:29:09 +09:00
parent 4c0366722b
commit c009cf7230

37
main.sh
View File

@@ -31,6 +31,13 @@ warn() {
info() { info() {
echo "info: $*" echo "info: $*"
} }
_sudo() {
if type -P sudo &>/dev/null; then
sudo "$@"
else
"$@"
fi
}
download_and_checksum() { download_and_checksum() {
local url="$1" local url="$1"
local checksum="$2" local checksum="$2"
@@ -289,36 +296,20 @@ install_cargo_binstall() {
fi fi
} }
apt_update() { apt_update() {
if type -P sudo &>/dev/null; then retry _sudo apt-get -o Acquire::Retries=10 -qq update
retry sudo apt-get -o Acquire::Retries=10 -qq update
else
retry apt-get -o Acquire::Retries=10 -qq update
fi
apt_updated=1 apt_updated=1
} }
apt_install() { apt_install() {
if [[ -z "${apt_updated:-}" ]]; then if [[ -z "${apt_updated:-}" ]]; then
apt_update apt_update
fi fi
if type -P sudo &>/dev/null; then retry _sudo apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends "$@"
retry sudo apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends "$@"
else
retry apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends "$@"
fi
} }
apt_remove() { apt_remove() {
if type -P sudo &>/dev/null; then _sudo apt-get -qq -o Dpkg::Use-Pty=0 remove -y "$@"
sudo apt-get -qq -o Dpkg::Use-Pty=0 remove -y "$@"
else
apt-get -qq -o Dpkg::Use-Pty=0 remove -y "$@"
fi
} }
snap_install() { snap_install() {
if type -P sudo &>/dev/null; then retry _sudo snap install "$@"
retry sudo snap install "$@"
else
retry snap install "$@"
fi
} }
apk_install() { apk_install() {
if type -P sudo &>/dev/null; then if type -P sudo &>/dev/null; then
@@ -330,11 +321,7 @@ apk_install() {
fi fi
} }
dnf_install() { dnf_install() {
if type -P sudo &>/dev/null; then retry _sudo "${dnf}" install -y "$@"
retry sudo "${dnf}" install -y "$@"
else
retry "${dnf}" install -y "$@"
fi
} }
sys_install() { sys_install() {
case "${base_distro}" in case "${base_distro}" in