|
@@ -3,8 +3,34 @@
|
|
|
|
|
|
|
|
set -euo pipefail
|
|
set -euo pipefail
|
|
|
|
|
|
|
|
-check_alpine() {
|
|
|
|
|
- if [ -f /etc/alpine-release ]; then
|
|
|
|
|
|
|
+pkg_manager() {
|
|
|
|
|
+ local OP="$1" PM=apk
|
|
|
|
|
+ shift
|
|
|
|
|
+ if [ -f /etc/gentoo-release ]; then
|
|
|
|
|
+ PM=emerge
|
|
|
|
|
+ case "$OP" in
|
|
|
|
|
+ add)
|
|
|
|
|
+ OP='-v'
|
|
|
|
|
+ ;;
|
|
|
|
|
+ del)
|
|
|
|
|
+ OP='-C'
|
|
|
|
|
+ ;;
|
|
|
|
|
+ esac
|
|
|
|
|
+ fi
|
|
|
|
|
+ if [ -z "$@" ]; then
|
|
|
|
|
+ echo "$PM $OP"
|
|
|
|
|
+ else
|
|
|
|
|
+ $PM $OP $@
|
|
|
|
|
+ fi
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+check_distr() {
|
|
|
|
|
+ if [ -z "$(command -v rc-service)" ]; then
|
|
|
|
|
+ echo "No OpenRC init-system detected"
|
|
|
|
|
+ return 1
|
|
|
|
|
+ fi
|
|
|
|
|
+ if [ -f /etc/alpine-release -o -f /etc/gentoo-release ]; then
|
|
|
return 0
|
|
return 0
|
|
|
else
|
|
else
|
|
|
return 1
|
|
return 1
|
|
@@ -91,7 +117,7 @@ install_dependencies() {
|
|
|
fi
|
|
fi
|
|
|
if [ "$(command -v apk)" ]; then
|
|
if [ "$(command -v apk)" ]; then
|
|
|
echo "Installing required dependencies..."
|
|
echo "Installing required dependencies..."
|
|
|
- apk add curl unzip
|
|
|
|
|
|
|
+ pkg_manager add curl unzip #to generalize installation procedure
|
|
|
else
|
|
else
|
|
|
echo "error: The script does not support the package manager in this operating system."
|
|
echo "error: The script does not support the package manager in this operating system."
|
|
|
exit 1
|
|
exit 1
|
|
@@ -202,7 +228,7 @@ information() {
|
|
|
fi
|
|
fi
|
|
|
rm -r "$TMP_DIRECTORY"
|
|
rm -r "$TMP_DIRECTORY"
|
|
|
echo "removed: $TMP_DIRECTORY"
|
|
echo "removed: $TMP_DIRECTORY"
|
|
|
- echo "You may need to execute a command to remove dependent software: apk del curl unzip"
|
|
|
|
|
|
|
+ echo "You may need to execute a command to remove dependent software: $(pkg_manager del) curl unzip"
|
|
|
if [ "$XRAY_RUNNING" -eq '1' ]; then
|
|
if [ "$XRAY_RUNNING" -eq '1' ]; then
|
|
|
rc-service xray start
|
|
rc-service xray start
|
|
|
else
|
|
else
|
|
@@ -212,7 +238,7 @@ information() {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
main() {
|
|
main() {
|
|
|
- check_alpine || return 1
|
|
|
|
|
|
|
+ check_distr || return 1
|
|
|
check_if_running_as_root || return 1
|
|
check_if_running_as_root || return 1
|
|
|
identify_architecture || return 1
|
|
identify_architecture || return 1
|
|
|
install_dependencies
|
|
install_dependencies
|