mirror of
				https://github.com/1Panel-dev/1Panel.git
				synced 2025-10-31 11:15:58 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			71 lines
		
	
	
		
			No EOL
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
			
		
		
	
	
			71 lines
		
	
	
		
			No EOL
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable file
		
	
	
	
	
| #!/bin/bash
 | |
| 
 | |
| set -e
 | |
| 
 | |
| download_resources() {
 | |
|   command -v wget >/dev/null || {
 | |
|     echo "wget not found, please install it and try again."
 | |
|     exit 1
 | |
|   }
 | |
| 
 | |
|   if [ ! -f "1pctl" ]; then
 | |
|     wget https://github.com/1Panel-dev/installer/raw/v2/1pctl
 | |
|   fi
 | |
| 
 | |
|   if [ ! -f "install.sh" ]; then
 | |
|     wget https://github.com/1Panel-dev/installer/raw/v2/install.sh
 | |
|   fi
 | |
| 
 | |
|   if [ ! -f "1panel-core.service" ]; then
 | |
|     wget https://github.com/1Panel-dev/installer/raw/v2/1panel-core.service
 | |
|   fi
 | |
| 
 | |
|   if [ ! -f "1panel-agent.service" ]; then
 | |
|     wget https://github.com/1Panel-dev/installer/raw/v2/1panel-agent.service
 | |
|   fi
 | |
| 
 | |
|   if [ ! -d "lang" ]; then
 | |
|     mkdir -p lang && cd lang
 | |
|     for lang in en fa pt-BR ru zh; do
 | |
|       wget -q https://github.com/1Panel-dev/installer/raw/v2/lang/$lang.sh
 | |
|     done
 | |
|     cd ..
 | |
|   fi
 | |
| 
 | |
|   if [ ! -f "GeoIP.mmdb" ]; then
 | |
|     wget https://resource.fit2cloud.com/1panel/package/v2/geo/GeoIP.mmdb
 | |
|   fi
 | |
| 
 | |
|   chmod 755 1pctl install.sh
 | |
| }
 | |
| 
 | |
| compress_binary() {
 | |
|   local binary_path="$1"
 | |
|   local arch="$2"
 | |
| 
 | |
|   echo "Attempting to compress: $binary_path for arch: $arch"
 | |
| 
 | |
|   if [ "$arch" = "s390x" ]; then
 | |
|     echo "Skipping UPX compression for s390x"
 | |
|     return
 | |
|   fi
 | |
| 
 | |
|   if ! command -v upx >/dev/null; then
 | |
|     echo "Installing upx..."
 | |
|     if [ "$(uname -m)" = "s390x" ]; then
 | |
|       echo "UPX not supported on s390x"
 | |
|       return
 | |
|     fi
 | |
| 
 | |
|     sudo apt-get update
 | |
|     sudo apt-get install -y upx-ucl
 | |
|   fi
 | |
| 
 | |
|   upx --best --lzma "$binary_path" && echo "[ok] Compressed: $binary_path" || echo "[warn] Failed to compress: $binary_path"
 | |
| }
 | |
| 
 | |
| if [ "$1" = "compress_binary" ]; then
 | |
|   compress_binary "$2" "$3"
 | |
| else
 | |
|   download_resources
 | |
| fi |