forked from PippCandy/autoinstallers
122 lines
3.9 KiB
Bash
Executable File
122 lines
3.9 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
echo "Welcome to the Discord-Linux OSjs Automated installer"
|
|
echo "This installer will automatically select a port on your container."
|
|
echo "I will let you know how to access your installation when this process is complete."
|
|
echo ""
|
|
echo ""
|
|
echo ""
|
|
echo "Sleeping for 5 seconds, please close this process if you do not wish to continue"
|
|
|
|
sleep 5
|
|
echo "downloading the Notification Bot"
|
|
wget -q -O /usr/bin/notif https://ssh.surf/debian/notif && chmod +x /usr/bin/notif
|
|
echo "Done"
|
|
|
|
notif "Welcome to the OSjs Automated installer for Discord-Linux, we will begin by updating your system. Please wait..."
|
|
|
|
apt update
|
|
DEBIAN_FRONTEND=noninteractive apt upgrade -o Dpkg::Options::="--force-confdef" -o Dpkg::Options::="--force-confold" -y
|
|
|
|
DEBIAN_FRONTEND=noninteractive apt-get -y install build-essential libpam-dev perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl python unzip zip
|
|
|
|
#https://askubuntu.com/questions/916199/install-apt-show-versions-inside-an-ubuntu-docker-container
|
|
|
|
sh /var/tools/getsystemctl.sh
|
|
|
|
notif "The system has been updated and systemD has been patched, we are now starting to install the required NPM's for OSjs"
|
|
|
|
mkdir -vp /webos
|
|
|
|
cd /webos && git clone https://github.com/os-js/OS.js.git
|
|
|
|
mv /webos/OS.js /webos/OSjs
|
|
|
|
cd /webos/OSjs && rm -f package-lock.json
|
|
|
|
echo "Installing main packages..."
|
|
npm install
|
|
|
|
npm update
|
|
|
|
notif "The Core OSjs Packages have been installed, we are now starting to install the Applications for OSJS Via NPM"
|
|
|
|
npm install @osjs/textpad-application
|
|
npm install --save --production @osjs/draw-application
|
|
npm install --save --production @osjs/filemanager-application
|
|
npm install @osjs/settings-application
|
|
npm install @osjs/writer-application
|
|
npm install --save --production @osjs/xterm-application
|
|
npm install --save --production @osjs/ace-application
|
|
npm install @osjs/xpra-application
|
|
npm install @osjs/vnc-application
|
|
npm install @osjs/epub-application
|
|
npm install @osjs/webodf-application
|
|
npm install @osjs/wolfenstein3d-application
|
|
npm install @osjs/tetris-application
|
|
npm install @osjs/standard-theme
|
|
npm install @osjs/standard-dark-theme
|
|
npm install @osjs/gnome-icons
|
|
npm install @osjs/freedesktop-sounds
|
|
npm install --save --production @osjs/pam-auth
|
|
|
|
echo "Fixing detected vulns"
|
|
|
|
npm audit fix
|
|
|
|
|
|
|
|
|
|
notif "We are almost finished, we are now configuring OSjs and starting the server"
|
|
|
|
echo "removing config files..."
|
|
rm -f src/server/index.js
|
|
|
|
rm -f src/server/config.js
|
|
|
|
rm -f src/client/config.js
|
|
|
|
|
|
echo "Installing our own customized config files"
|
|
|
|
wget -O src/server/index.js https://ssh.surf/install/osjs/osjs_server_index.js
|
|
|
|
wget -O src/server/config.js https://ssh.surf/install/osjs/osjs_server_config.js
|
|
|
|
wget -O src/client/config.js https://ssh.surf/install/osjs/osjs_client_config.js
|
|
|
|
wget -O src/client/wallpaper.jpg https://ssh.surf/wallpaper.jpg
|
|
|
|
wget -O osjsStart.json https://ssh.surf/install/osjs/osjsStart.json
|
|
|
|
hostname=$(hostname)
|
|
|
|
echo "Grabbing a port from your container from our API"
|
|
port=$(curl -s https://findport.ssh.surf/?id=$hostname)
|
|
|
|
echo "Setting port in our config"
|
|
sed -i "s/CUSTOM/${port}/g" src/server/config.js
|
|
|
|
echo "Discovering all installed packages..."
|
|
npm run package:discover
|
|
|
|
echo "Building the client..."
|
|
npm run build
|
|
|
|
rm -f /webos/OSjs/dist/f4cfc6708cf6bfc17d4b1e775f594ae2.png
|
|
|
|
wget -O /webos/OSjs/dist/f4cfc6708cf6bfc17d4b1e775f594ae2.png https://ssh.surf/wallpaper.png
|
|
|
|
cd /webos/OSjs && pm2 start osjsStart.json
|
|
|
|
echo "cd /webos/OSjs && pm2 start osjsStart.json" > /var/tools/osjsboot.sh
|
|
|
|
chmod +x /var/tools/osjsboot.sh
|
|
|
|
sed -i "s/#osjs/cd \/webos\/OSjs \&\& pm2 start osjsStart.json /g" /start.sh
|
|
|
|
echo "Sending discord notification to your account:"
|
|
notif "Your OSJS installation has completed and should be running at this time, you may access your installation at: http://ssh.surf:$port"
|
|
|
|
echo "Your OSJs installation has completed and should be running at this time, you may access your installation at: http://ssh.surf:$port"
|