mirror of https://github.com/tteck/Proxmox
parent
ba94d2ee8c
commit
c929b48ac4
1 changed files with 89 additions and 0 deletions
@ -0,0 +1,89 @@ |
||||
#!/usr/bin/env bash |
||||
IP=$(hostname -I | awk '{print $1}') |
||||
YW=`echo "\033[33m"` |
||||
BL=`echo "\033[36m"` |
||||
RD=`echo "\033[01;31m"` |
||||
BGN=`echo "\033[4;92m"` |
||||
GN=`echo "\033[1;92m"` |
||||
DGN=`echo "\033[32m"` |
||||
CL=`echo "\033[m"` |
||||
BFR="\\r\\033[K" |
||||
HOLD="-" |
||||
CM="${GN}✓${CL}" |
||||
APP="Code Server" |
||||
hostname="$(hostname)" |
||||
set -o errexit |
||||
set -o errtrace |
||||
set -o nounset |
||||
set -o pipefail |
||||
shopt -s expand_aliases |
||||
alias die='EXIT=$? LINE=$LINENO error_exit' |
||||
trap die ERR |
||||
|
||||
function error_exit() { |
||||
trap - ERR |
||||
local reason="Unknown failure occured." |
||||
local msg="${1:-$reason}" |
||||
local flag="${RD}‼ ERROR ${CL}$EXIT@$LINE" |
||||
echo -e "$flag $msg" 1>&2 |
||||
exit $EXIT |
||||
} |
||||
|
||||
while true; do |
||||
read -p "This will Install ${APP} on $hostname. Proceed(y/n)?" yn |
||||
case $yn in |
||||
[Yy]* ) break;; |
||||
[Nn]* ) exit;; |
||||
* ) echo "Please answer yes or no.";; |
||||
esac |
||||
done |
||||
clear |
||||
function header_info { |
||||
echo -e "${BL} |
||||
______ __ _____ |
||||
/ ____/___ ____/ /__ / ___/___ ______ _____ _____ |
||||
/ / / __ \/ __ / _ \ \__ \/ _ \/ ___/ | / / _ \/ ___/ |
||||
/ /___/ /_/ / /_/ / __/ ___/ / __/ / | |/ / __/ / |
||||
\____/\____/\__,_/\___/ /____/\___/_/ |___/\___/_/ |
||||
${CL}" |
||||
} |
||||
|
||||
header_info |
||||
|
||||
function msg_info() { |
||||
local msg="$1" |
||||
echo -ne " ${HOLD} ${YW}${msg}..." |
||||
} |
||||
|
||||
function msg_ok() { |
||||
local msg="$1" |
||||
echo -e "${BFR} ${CM} ${GN}${msg}${CL}" |
||||
} |
||||
|
||||
msg_info "Installing Dependencies" |
||||
apt-get install -y curl &>/dev/null |
||||
apt-get install -y sudo &>/dev/null |
||||
apt-get install -y git &>/dev/null |
||||
msg_ok "Installed Dependencies" |
||||
|
||||
VERSION=$(curl -s https://api.github.com/repos/coder/code-server/releases/latest \ |
||||
| grep "tag_name" \ |
||||
| awk '{print substr($2, 3, length($2)-4) }') \ |
||||
|
||||
msg_info "Installing Code-Server v${VERSION}" |
||||
curl -fOL https://github.com/coder/code-server/releases/download/v$VERSION/code-server_${VERSION}_amd64.deb &>/dev/null |
||||
sudo dpkg -i code-server_${VERSION}_amd64.deb &>/dev/null |
||||
rm -rf code-server_${VERSION}_amd64.deb |
||||
mkdir -p ~/.config/code-server/ |
||||
sudo systemctl enable --now code-server@$USER &>/dev/null |
||||
cat <<EOF > ~/.config/code-server/config.yaml |
||||
bind-addr: 0.0.0.0:8680 |
||||
auth: none |
||||
password: |
||||
cert: false |
||||
EOF |
||||
sudo systemctl restart code-server@$USER |
||||
msg_ok "Installed Code-Server v${VERSION} on $hostname" |
||||
|
||||
echo -e "${APP} should be reachable by going to the following URL. |
||||
${BL}http://$IP:8680${CL} \n" |
Loading…
Reference in new issue