#!/bin/bash ## Define admin user account export ADMIN_ACCOUNT=sys-admin ## Define bulk storage location export ZFS_DIR=/data ## Check if user is root if [ 'whoami' != 'root' ];then su - fi ## Ensure HOME directories are stored in ${ZFS_DIR}/home awk '{sub("#HOME=/home","HOME=/home")} {print}' /etc/default/useradd > /tmp/temp.txt && mv /tmp/temp.txt /etc/default/useradd awk '{sub("# HOME=/home","HOME=/home")} {print}' /etc/default/useradd > /tmp/temp.txt && mv /tmp/temp.txt /etc/default/useradd awk -v dir=${ZFS_DIR}/home '{sub("HOME=/home","HOME="dir)} {print}' /etc/default/useradd > /tmp/temp.txt && mv /tmp/temp.txt /etc/default/useradd ## Install a few helpful packages apt update apt install -y cockpit apt update apt install -y htop nano rsync wget tree ## Check if administrator account exists if id ${ADMIN_ACCOUNT} &>/dev/null; then echo 'Admin User account found' else ## Create and su into sys-admin echo 'Creating Admin User account ...' useradd -m -d ${ZFS_DIR}/home/${ADMIN_ACCOUNT} -G sudo ${ADMIN_ACCOUNT} passwd ${ADMIN_ACCOUNT} # adduser ${ADMIN_ACCOUNT} echo "User account created" fi su - ${ADMIN_ACCOUNT} echo "Setting up Docker ..." ## Uninstall old versions sudo apt remove docker docker-engine docker.io containerd runc ## Set up repository # sudo apt-get remove docker docker-engine docker.io containerd runc sudo apt update sudo apt install -y ca-certificates curl gnupg sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg echo \ "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null ## Install Docker Engine sudo apt update sudo apt install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin ./gitlab_install.sh ./jupyterhub_install.sh ./mineos_install.sh ./netbootxyz_install.sh ./nextcloud_install.sh ./plex_install.sh echo "Setup Complete!" ###########################################