Judgment Package Management
							parent
							
								
									20441d38bc
								
							
						
					
					
						commit
						9f001bab45
					
				| 
						 | 
				
			
			@ -30,6 +30,22 @@ if [[ "$(uname)" == 'Linux' ]]; then
 | 
			
		|||
        echo "error: Don't use outdated Linux distributions."
 | 
			
		||||
        exit 1
 | 
			
		||||
    fi
 | 
			
		||||
    if [[ "$(command -v apt)" ]]; then
 | 
			
		||||
        PACKAGE_MANAGEMENT_UPDATE='apt update'
 | 
			
		||||
        PACKAGE_MANAGEMENT_INSTALL='apt install'
 | 
			
		||||
        PACKAGE_MANAGEMENT_REMOVE='apt remove'
 | 
			
		||||
    elif [[ "$(command -v yum)" ]]; then
 | 
			
		||||
        PACKAGE_MANAGEMENT_UPDATE='yum makecache'
 | 
			
		||||
        PACKAGE_MANAGEMENT_INSTALL='yum install'
 | 
			
		||||
        PACKAGE_MANAGEMENT_REMOVE='yum remove'
 | 
			
		||||
    elif [[ "$(command -v zypper)" ]]; then
 | 
			
		||||
        PACKAGE_MANAGEMENT_UPDATE='zypper refresh'
 | 
			
		||||
        PACKAGE_MANAGEMENT_INSTALL='zypper install'
 | 
			
		||||
        PACKAGE_MANAGEMENT_REMOVE='zypper remove'
 | 
			
		||||
    else
 | 
			
		||||
        echo "error: The script does not support the package manager in this operating system."
 | 
			
		||||
        exit 1
 | 
			
		||||
    fi
 | 
			
		||||
else
 | 
			
		||||
    echo "error: This operating system is not supported."
 | 
			
		||||
    exit 1
 | 
			
		||||
| 
						 | 
				
			
			@ -138,21 +154,6 @@ installSoftware() {
 | 
			
		|||
    if [[ -n "$(command -v $COMPONENT)" ]]; then
 | 
			
		||||
        return
 | 
			
		||||
    fi
 | 
			
		||||
    case "$(cat /etc/os-release | grep '^NAME' | awk -F '"' '{print $2}')" in
 | 
			
		||||
        'Debian GNU/Linux')
 | 
			
		||||
            PACKAGE_MANAGEMENT_UPDATE='apt update'
 | 
			
		||||
            PACKAGE_MANAGEMENT_INSTALL='apt install'
 | 
			
		||||
            ;;
 | 
			
		||||
        'CentOS Linux')
 | 
			
		||||
            PACKAGE_MANAGEMENT_UPDATE='yum makecache'
 | 
			
		||||
            PACKAGE_MANAGEMENT_INSTALL='yum install'
 | 
			
		||||
            ;;
 | 
			
		||||
        'openSUSE Leap')
 | 
			
		||||
            PACKAGE_MANAGEMENT_UPDATE='zypper refresh'
 | 
			
		||||
            PACKAGE_MANAGEMENT_INSTALL='zypper install'
 | 
			
		||||
            ;;
 | 
			
		||||
    esac
 | 
			
		||||
    ${PACKAGE_MANAGEMENT_UPDATE}
 | 
			
		||||
    ${PACKAGE_MANAGEMENT_INSTALL} "$COMPONENT"
 | 
			
		||||
    if [[ "$?" -ne '0' ]]; then
 | 
			
		||||
        echo "error: Installation of $COMPONENT failed, please check your network."
 | 
			
		||||
| 
						 | 
				
			
			@ -162,7 +163,7 @@ installSoftware() {
 | 
			
		|||
}
 | 
			
		||||
versionNumber() {
 | 
			
		||||
    case "$1" in
 | 
			
		||||
        v*)
 | 
			
		||||
        'v'*)
 | 
			
		||||
            echo "$1"
 | 
			
		||||
            ;;
 | 
			
		||||
        *)
 | 
			
		||||
| 
						 | 
				
			
			@ -365,7 +366,7 @@ removeV2Ray() {
 | 
			
		|||
            echo 'removed: /usr/local/bin/v2ctl'
 | 
			
		||||
            echo 'removed: /usr/local/bin/v2ray'
 | 
			
		||||
            echo 'Please execute the command: systemctl disable v2ray'
 | 
			
		||||
            echo 'You may need to execute a command to remove dependent software: pkg_delete -ac curl unzip'
 | 
			
		||||
            echo "You may need to execute a command to remove dependent software: $PACKAGE_MANAGEMENT_REMOVE -ac curl unzip"
 | 
			
		||||
            echo 'info: V2Ray has been removed.'
 | 
			
		||||
            echo 'info: If necessary, manually delete the configuration and log files.'
 | 
			
		||||
            echo 'info: e.g., /usr/local/etc/v2ray/ and /var/log/v2ray/ ...'
 | 
			
		||||
| 
						 | 
				
			
			@ -406,11 +407,13 @@ main() {
 | 
			
		|||
        echo 'warn: Install V2Ray from a local file, but still need to make sure the network is available.'
 | 
			
		||||
        echo -n 'warn: Please make sure the file is valid because we cannot confirm it. (Press any key) ...'
 | 
			
		||||
        read
 | 
			
		||||
        ${PACKAGE_MANAGEMENT_UPDATE}
 | 
			
		||||
        installSoftware unzip
 | 
			
		||||
        mkdir "$TMP_DIRECTORY"
 | 
			
		||||
        decompression "$LOCAL_FILE"
 | 
			
		||||
    else
 | 
			
		||||
        # Normal way
 | 
			
		||||
        ${PACKAGE_MANAGEMENT_UPDATE}
 | 
			
		||||
        installSoftware curl
 | 
			
		||||
        getVersion
 | 
			
		||||
        NUMBER="$?"
 | 
			
		||||
| 
						 | 
				
			
			@ -451,7 +454,7 @@ main() {
 | 
			
		|||
    if [[ "$V2RAY_RUNNING" -ne '1' ]]; then
 | 
			
		||||
        echo 'Please execute the command: systemctl enable v2ray; systemctl start v2ray'
 | 
			
		||||
    fi
 | 
			
		||||
    echo 'You may need to execute a command to remove dependent software: pkg_delete -ac curl unzip'
 | 
			
		||||
    echo "You may need to execute a command to remove dependent software: $PACKAGE_MANAGEMENT_REMOVE -ac curl unzip"
 | 
			
		||||
    if [[ "$V2RAY_RUNNING" -eq '1' ]]; then
 | 
			
		||||
        startV2Ray
 | 
			
		||||
    fi
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in New Issue