Skip to content

Instantly share code, notes, and snippets.

@hnrq
Created October 25, 2021 00:37
Show Gist options
  • Save hnrq/113254a320e0b07211589fa4b269507b to your computer and use it in GitHub Desktop.
Save hnrq/113254a320e0b07211589fa4b269507b to your computer and use it in GitHub Desktop.
Setup Veloren server
#!/bin/bash
setup_rust(){
if [ ! -d "$HOME/.cargo/bin" ]; then
echo "Rust not installed. Installing..."
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
fi
export PATH="$HOME/.cargo/bin:$PATH"
}
setup_service(){
echo "Veloren server daemon not found. Creating..."
BASEDIR=$(pwd)
echo "
[Unit]
Description=Veloren Server
After=network.target
StartLimitIntervalSec=0
[Service]
Type=simple
WorkingDirectory=$BASEDIR/veloren
ExecStart=$BASEDIR/veloren/target/release/./veloren-server-cli
[Install]
WantedBy=multi-user.target
" > /etc/systemd/system/veloren-server.service &&
systemctl enable veloren-server.service
}
if [ "$EUID" -ne 0 ]; then
echo "Please, run setup_veloren_server.sh as root"
elif [ ! -f /usr/bin/git-lfs ]; then
echo "Git LFS not found, installing..."
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bash
else
[ ! -f /etc/systemd/system/veloren-server.service ] && setup_service
systemctl stop veloren-server.service
[ ! -d ./veloren ] && git clone https://gitlab.com/veloren/veloren
cd ./veloren
mkdir -p target/release
git fetch origin master
git pull origin master
git lfs install
setup_rust &&
# cargo build -j 2 --bin veloren-server-cli --release &&
systemctl start veloren-server.service &&
echo "Successfully updated veloren server!"
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment