|
@@ -1,10 +1,10 @@
|
|
|
#!/bin/sh
|
|
#!/bin/sh
|
|
|
set -e
|
|
set -e
|
|
|
|
|
|
|
|
-if [ "$UID" != 0 ]; then
|
|
|
|
|
- SUDO="$(command -v sudo)"
|
|
|
|
|
|
|
+if [ "$(id -u)" != 0 ]; then
|
|
|
|
|
+ SUDO="${SUDO:-$(command -v sudo)}"
|
|
|
else
|
|
else
|
|
|
- SUDO=""
|
|
|
|
|
|
|
+ SUDO="${SUDO:-}"
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
brew_sh="https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh"
|
|
brew_sh="https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh"
|
|
@@ -15,99 +15,73 @@ setup_mac() {
|
|
|
bash -c "$(curl -fL "${brew_sh}")" || return 1
|
|
bash -c "$(curl -fL "${brew_sh}")" || return 1
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
- for i in cmake gcc jq pkgconf llvm@13 freetype expat; do
|
|
|
|
|
|
|
+ for i in cmake gcc jq pkgconf llvm@13; do
|
|
|
echo "Installing $i with brew..." >&2
|
|
echo "Installing $i with brew..." >&2
|
|
|
brew install "$i" || return 1
|
|
brew install "$i" || return 1
|
|
|
done
|
|
done
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
setup_apt() {
|
|
setup_apt() {
|
|
|
- APTGET="$SUDO $1"
|
|
|
|
|
-
|
|
|
|
|
- $APTGET update || return 1
|
|
|
|
|
- $APTGET install -y build-essential cmake jq wget pkg-config \
|
|
|
|
|
- clang libclang-dev llvm-dev libudev-dev libfreetype6-dev \
|
|
|
|
|
- libexpat1-dev curl gcc make libssl-dev fonts-lato \
|
|
|
|
|
- libfontconfig-dev || return 1
|
|
|
|
|
|
|
+ apt_deps="git make jq gcc pkg-config libssl-dev"
|
|
|
|
|
+ $1 install "$apt_deps" || return 1
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
setup_pacman() {
|
|
setup_pacman() {
|
|
|
- PACMAN="$SUDO $1"
|
|
|
|
|
-
|
|
|
|
|
- $PACMAN -Sy base-devel cmake wget expat freetype2 fontconfig \
|
|
|
|
|
- jq openssl clang llvm libgudev
|
|
|
|
|
|
|
+ pacman_deps="git make jq gcc pkgconf openssl"
|
|
|
|
|
+ $1 -Sy "$pacman_deps" || return 1
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
setup_xbps() {
|
|
setup_xbps() {
|
|
|
- XBPS="$SUDO $1"
|
|
|
|
|
-
|
|
|
|
|
- $XBPS -S base-devel cmake wget expat-devel freetype-devel \
|
|
|
|
|
- fontconfig-devel jq openssl-devel clang libclang llvm \
|
|
|
|
|
- libllvm12 libgudev-devel
|
|
|
|
|
|
|
+ xbps_deps="git make jq gcc pkg-config openssl-devel"
|
|
|
|
|
+ $1 -S "$xbps_deps" || return 1
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
setup_dnf() {
|
|
setup_dnf() {
|
|
|
- DNF="$SUDO $1"
|
|
|
|
|
-
|
|
|
|
|
- $DNF install -y gcc gcc-c++ kernel-headers cmake jq wget \
|
|
|
|
|
- pkg-config clang clang-libs llvm-libs \
|
|
|
|
|
- rust-libudev-devel rust-freetype-rs-devel \
|
|
|
|
|
- rust-expat-sys-devel openssl-devel findutils \
|
|
|
|
|
- fontconfig-devel || return 1
|
|
|
|
|
|
|
+ dnf_deps="git make jq gcc pkg-config openssl-devel findutils"
|
|
|
|
|
+ $1 install -y "$dnf_deps" || return 1
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
setup_apk() {
|
|
setup_apk() {
|
|
|
- APK="$SUDO $1"
|
|
|
|
|
-
|
|
|
|
|
- $APK update
|
|
|
|
|
- $APK add cmake jq wget clang curl gcc make llvm-dev openssl-dev expat-dev \
|
|
|
|
|
- freetype-dev libudev-zero-dev libgudev-dev pkgconf clang-dev \
|
|
|
|
|
- fontconfig-dev build-base || return 1
|
|
|
|
|
|
|
+ apk_deps="git make jq gcc musl-dev openssl-dev"
|
|
|
|
|
+ $1 add "$apk_deps" || return 1
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
setup_zypper() {
|
|
setup_zypper() {
|
|
|
- ZYPPER="$SUDO $1"
|
|
|
|
|
-
|
|
|
|
|
- $ZYPPER install -y gcc gcc-c++ kernel-headers cmake jq wget git \
|
|
|
|
|
- pkg-config clang openssl-devel findutils \
|
|
|
|
|
- fontconfig-devel || return 1
|
|
|
|
|
|
|
+ zypper_deps="git make jq gcc pkg-config openssl-devel findutils"
|
|
|
|
|
+ $1 install -y "$zypper_deps" || return 1
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
setup_emerge() {
|
|
setup_emerge() {
|
|
|
- EMERGE="$SUDO $1"
|
|
|
|
|
-
|
|
|
|
|
- $EMERGE dev-util/cmake app-misc/jq net-misc/wget dev-util/pkgconf \
|
|
|
|
|
- virtual/libudev media-libs/freetype dev-libs/expat \
|
|
|
|
|
- net-misc/curl net-libs/libssh media-libs/fontconfig || return 1
|
|
|
|
|
-# sys-devel/clang failed, but it worked anyway
|
|
|
|
|
|
|
+ emerge_deps="dev-vcs/git app-misc/jq dev-util/pkgconf dev-libs/openssl"
|
|
|
|
|
+ $1 "$emerge_deps" || return 1
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
case "$(uname -s)" in
|
|
case "$(uname -s)" in
|
|
|
Linux)
|
|
Linux)
|
|
|
if command -v apt >/dev/null; then
|
|
if command -v apt >/dev/null; then
|
|
|
echo "Setting up for apt" >&2
|
|
echo "Setting up for apt" >&2
|
|
|
- setup_apt "$(command -v apt)" || exit 1
|
|
|
|
|
|
|
+ setup_apt "$SUDO $(command -v apt)" || exit 1
|
|
|
echo "Dependencies installed!" >&2
|
|
echo "Dependencies installed!" >&2
|
|
|
exit 0
|
|
exit 0
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
if command -v apt-get >/dev/null; then
|
|
if command -v apt-get >/dev/null; then
|
|
|
echo "Setting up for apt-get" >&2
|
|
echo "Setting up for apt-get" >&2
|
|
|
- setup_apt "$(command -v apt-get)" || exit 1
|
|
|
|
|
|
|
+ setup_apt "$SUDO $(command -v apt-get)" || exit 1
|
|
|
echo "Dependencies installed!" >&2
|
|
echo "Dependencies installed!" >&2
|
|
|
exit 0
|
|
exit 0
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
if command -v pacman; then
|
|
if command -v pacman; then
|
|
|
echo "Setting up for pacman" >&2
|
|
echo "Setting up for pacman" >&2
|
|
|
- setup_pacman "$(command -v pacman)" || exit 1
|
|
|
|
|
|
|
+ setup_pacman "$SUDO $(command -v pacman)" || exit 1
|
|
|
echo "Dependencies installed!" >&2
|
|
echo "Dependencies installed!" >&2
|
|
|
exit 0
|
|
exit 0
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
if command -v xbps-install; then
|
|
if command -v xbps-install; then
|
|
|
echo "Setting up for xbps" >&2
|
|
echo "Setting up for xbps" >&2
|
|
|
- setup_xbps "$(command -v xbps-install)" || exit 1
|
|
|
|
|
|
|
+ setup_xbps "$SUDO $(command -v xbps-install)" || exit 1
|
|
|
echo "Dependencies installed!" >&2
|
|
echo "Dependencies installed!" >&2
|
|
|
exit 0
|
|
exit 0
|
|
|
fi
|
|
fi
|
|
@@ -115,28 +89,28 @@ Linux)
|
|
|
|
|
|
|
|
if command -v dnf; then
|
|
if command -v dnf; then
|
|
|
echo "Setting up for dnf" >&2
|
|
echo "Setting up for dnf" >&2
|
|
|
- setup_dnf "$(command -v dnf)" || exit 1
|
|
|
|
|
|
|
+ setup_dnf "$SUDO $(command -v dnf)" || exit 1
|
|
|
echo "Dependencies installed!" >&2
|
|
echo "Dependencies installed!" >&2
|
|
|
exit 0
|
|
exit 0
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
if command -v apk; then
|
|
if command -v apk; then
|
|
|
echo "Setting up for apk" >&2
|
|
echo "Setting up for apk" >&2
|
|
|
- setup_apk "$(command -v apk)" || exit 1
|
|
|
|
|
|
|
+ setup_apk "$SUDO $(command -v apk)" || exit 1
|
|
|
echo "Dependencies installed!" >&2
|
|
echo "Dependencies installed!" >&2
|
|
|
exit 0
|
|
exit 0
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
if command -v zypper; then
|
|
if command -v zypper; then
|
|
|
echo "Setting up for zypper" >&2
|
|
echo "Setting up for zypper" >&2
|
|
|
- setup_zypper "$(command -v zypper)" || exit 1
|
|
|
|
|
|
|
+ setup_zypper "$SUDO $(command -v zypper)" || exit 1
|
|
|
echo "Dependencies installed!" >&2
|
|
echo "Dependencies installed!" >&2
|
|
|
exit 0
|
|
exit 0
|
|
|
fi
|
|
fi
|
|
|
|
|
|
|
|
if command -v emerge; then
|
|
if command -v emerge; then
|
|
|
echo "Setting up for emerge" >&2
|
|
echo "Setting up for emerge" >&2
|
|
|
- setup_emerge "$(command -v emerge)" || exit 1
|
|
|
|
|
|
|
+ setup_emerge "$SUDO $(command -v emerge)" || exit 1
|
|
|
echo "Dependencies installed!" >&2
|
|
echo "Dependencies installed!" >&2
|
|
|
exit 0
|
|
exit 0
|
|
|
fi
|
|
fi
|
|
@@ -152,7 +126,7 @@ Darwin)
|
|
|
exit 0
|
|
exit 0
|
|
|
;;
|
|
;;
|
|
|
|
|
|
|
|
-*|"")
|
|
|
|
|
|
|
+""|*)
|
|
|
echo "Unsupported OS, sorry." >&2
|
|
echo "Unsupported OS, sorry." >&2
|
|
|
exit 1
|
|
exit 1
|
|
|
;;
|
|
;;
|