mirror of
				https://github.com/solero/wand.git
				synced 2025-10-30 20:21:56 +00:00 
			
		
		
		
	Update install.sh & README.md (#37)
* Update install.sh Add support for more Linux distros as opposed to only being Debian. Now supports: Debian/Ubuntu, Fedora, CentOS & Arch Linux. * Update README.md * Update install.sh Added a repository update before installing on all platforms, added output for what the script is doing i.e installing docker, compose, git etc
This commit is contained in:
		
							
								
								
									
										52
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										52
									
								
								README.md
									
									
									
									
									
								
							| @@ -1,14 +1,16 @@ | ||||
| # wand | ||||
|  | ||||
| Wand makes it easy to configure dash, houdini and a media server. | ||||
| Wand makes it easy to configure dash, houdini and a media server utilizing docker & docker-compose. | ||||
|  | ||||
| ## Install script | ||||
| > [!NOTE] | ||||
| > This can also be ran on Windows using WSL. | ||||
|  | ||||
| ## Installation script | ||||
| **Step 1** run the script | ||||
| ```bash | ||||
| bash <(curl -s https://raw.githubusercontent.com/solero/wand/master/install.sh) | ||||
| ``` | ||||
| **Step 2** Answer Questions | ||||
| the questions are: | ||||
| **Step 2** Answer Questions which are: | ||||
| * Database password (Leave blank for random password) | ||||
| * Hostname (example: `clubpenguin.com`) (Leave empty for localhost) | ||||
| * External IP Address (Leave empty for localhost) | ||||
| @@ -17,23 +19,57 @@ Run this command: | ||||
| ```bash | ||||
| $ cd wand && sudo docker-compose up | ||||
| ``` | ||||
| ## Basic setup | ||||
| ## Manual setup | ||||
|  | ||||
| **Step 1** Install git, docker & docker-compose | ||||
| > [!IMPORTANT] | ||||
| > This is not recommended for beginners. If you're not sure what you're doing, use the install script. | ||||
|  | ||||
| **Step 1** Choose your Linux Distribution | ||||
|  | ||||
| <details> | ||||
|   <summary>Debian/Ubuntu</summary> | ||||
|  | ||||
| ```bash | ||||
| $ sudo apt update | ||||
| $ sudo apt install docker.io git curl | ||||
| $ sudo apt install git curl | ||||
| $ curl -fsSL https://get.docker.com -o get-docker.sh | ||||
| $ sh get-docker.sh | ||||
| $ sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | ||||
| $ sudo chmod +x /usr/local/bin/docker-compose | ||||
| ``` | ||||
| </details> | ||||
|  | ||||
| <details> | ||||
|   <summary>Fedora/RHEL</summary> | ||||
|    | ||||
| ```bash | ||||
| $ sudo dnf update | ||||
| $ sudo dnf install git curl | ||||
| $ curl -fsSL https://get.docker.com -o get-docker.sh | ||||
| $ sh get-docker.sh | ||||
| $ sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | ||||
| $ sudo chmod +x /usr/local/bin/docker-compose | ||||
| ``` | ||||
| </details> | ||||
|  | ||||
| <details> | ||||
|   <summary>Arch based distros</summary> | ||||
|    | ||||
| ```bash | ||||
| $ sudo pacman -Syu | ||||
| $ sudo pacman -S docker docker-compose git curl | ||||
| $ systemctl start docker.service | ||||
| $ systemctl enable docker.service | ||||
| ``` | ||||
| </details> | ||||
|  | ||||
|  | ||||
| **Step 2** Clone the repository & submodules | ||||
| ```bash | ||||
| $ git clone --recurse-submodules https://github.com/solero/wand && cd wand | ||||
| ``` | ||||
|  | ||||
| **Step 3** Edit the config file | ||||
| **Step 3** Edit the config file (optional, default values are fine for a local setup) | ||||
| ```bash | ||||
| $ nano .env | ||||
| ``` | ||||
|   | ||||
							
								
								
									
										93
									
								
								install.sh
									
									
									
									
									
								
							
							
						
						
									
										93
									
								
								install.sh
									
									
									
									
									
								
							| @@ -1,5 +1,20 @@ | ||||
| #!/bin/bash | ||||
| clear | ||||
|  | ||||
| print_banner() { | ||||
|     echo ' | ||||
|  __          __     _   _ _____   | ||||
|  \ \        / /\   | \ | |  __ \  | ||||
|   \ \  /\  / /  \  |  \| | |  | | | ||||
|    \ \/  \/ / /\ \ | . ` | |  | | | ||||
|     \  /\  / ____ \| |\  | |__| | | ||||
|      \/  \/_/    \_\_| \_|_____/  | ||||
|                                      | ||||
|       Wand Installation Script | ||||
|     ' | ||||
| } | ||||
| print_banner | ||||
|  | ||||
| echo "Please answer these questions to set up the game:" | ||||
| echo "Enter password for the database (leave empty for a random password):" | ||||
| dbpass="" | ||||
| @@ -36,20 +51,80 @@ fi | ||||
| read -p "Do you want to run the game when the installation ends? (y/N): " run_game | ||||
|  | ||||
|  | ||||
| install_docker_official() { | ||||
|     echo "Installing Docker..." | ||||
|     curl -fsSL https://get.docker.com -o get-docker.sh | ||||
|     sudo sh get-docker.sh | ||||
|     sudo systemctl start docker | ||||
|     sudo systemctl enable docker | ||||
| } | ||||
|  | ||||
| if [[ $(uname) == "Linux" ]]; then | ||||
|     echo "Setting up the environment." | ||||
|     sudo apt update | ||||
|     sudo apt install docker.io git curl -y | ||||
|     sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | ||||
|     sudo chmod +x /usr/local/bin/docker-compose | ||||
| elif [[$(uname) == "Darwin" ]]; then | ||||
|     echo "Installing homebrew" | ||||
|     sudo curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh | ||||
|     echo "Setting up the environment for Linux." | ||||
|      | ||||
|     # Detect the package manager | ||||
|     if command -v apt &> /dev/null || command -v dnf &> /dev/null || command -v yum &> /dev/null; then | ||||
|         if command -v apt &> /dev/null; then | ||||
|             PKG_MANAGER="apt" | ||||
|             INSTALL_CMD="sudo apt" | ||||
|         elif command -v dnf &> /dev/null; then | ||||
|             PKG_MANAGER="dnf" | ||||
|             INSTALL_CMD="sudo dnf" | ||||
|         elif command -v yum &> /dev/null; then | ||||
|             PKG_MANAGER="yum" | ||||
|             INSTALL_CMD="sudo yum" | ||||
|         fi | ||||
|  | ||||
|         echo "Detected package manager: $PKG_MANAGER" | ||||
|  | ||||
|         # Update the system | ||||
|         echo "Updating system repositories..." | ||||
|         $INSTALL_CMD update  | ||||
|  | ||||
|         # Install git and curl | ||||
|         echo "Installing Curl and Git..." | ||||
|         $INSTALL_CMD install -y git curl | ||||
|  | ||||
|         # Install Docker using the official script supports Debian, Ubuntu, and CentOS | ||||
|         install_docker_official | ||||
|  | ||||
|     # Installer for Arch because they do it a little differently over there | ||||
|     elif command -v pacman &> /dev/null; then | ||||
|         PKG_MANAGER="pacman" | ||||
|         INSTALL_CMD="sudo pacman -S --noconfirm" | ||||
|          | ||||
|         echo "Detected package manager: $PKG_MANAGER" | ||||
|  | ||||
|         # Update the system | ||||
|         echo "Updating system repositories..." | ||||
|         sudo pacman -Syu --noconfirm | ||||
|          | ||||
|         # Install Docker, git, and curl | ||||
|         echo "Installing Curl and Git, Docker and Docker Compose..." | ||||
|         $INSTALL_CMD docker docker-compose git curl | ||||
|         sudo systemctl start docker | ||||
|         sudo systemctl enable docker | ||||
|     else | ||||
|         echo "This operating system isn't supported yet. Feel free to join the Discord and ask questions." | ||||
|         exit 1 | ||||
|     fi | ||||
|  | ||||
|     # Install Docker Compose for non-Arch systems | ||||
|     if [[ $PKG_MANAGER != "pacman" ]]; then | ||||
|         echo "Installing Docker Compose..." | ||||
|         sudo curl -L "https://github.com/docker/compose/releases/download/v2.20.3/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose | ||||
|         sudo chmod +x /usr/local/bin/docker-compose | ||||
|     fi | ||||
|  | ||||
| elif [[ $(uname) == "Darwin" ]]; then | ||||
|     echo "Installing Homebrew..." | ||||
|     /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | ||||
|     echo "Installing Docker, git, and Docker Compose..." | ||||
|     brew install docker | ||||
|     brew install git | ||||
|     brew install docker-compose@2.20.3 | ||||
| else | ||||
|     echo "This operating system isn't supported yet. feel free to join the discord and ask questions." | ||||
|     echo "This operating system isn't supported yet. Feel free to join the Discord and ask questions." | ||||
|     exit 1 | ||||
| fi | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 sina
					sina