|
@@ -0,0 +1,589 @@
|
|
|
+
|
|
|
+set -e
|
|
|
+Version=15.1
|
|
|
+Cuda=NO
|
|
|
+kernel_custom=YES
|
|
|
+Webmin="webmin-2.101"
|
|
|
+kernel_dkms="5.15.127-custom"
|
|
|
+
|
|
|
+if (( $EUID != 0 )); then
|
|
|
+ echo -e "$(tput setaf 11)This must be run as root. Try 'sudo $0'.$(tput sgr0)"
|
|
|
+ exit 1
|
|
|
+fi
|
|
|
+clear
|
|
|
+function ubuntu_version_check {
|
|
|
+if [[ $(lsb_release -rs) == "20.04" ]]
|
|
|
+then
|
|
|
+
|
|
|
+ Ubuntu_version="20.04.5"
|
|
|
+
|
|
|
+else
|
|
|
+ echo "Non-compatible version"
|
|
|
+ exit 0
|
|
|
+fi
|
|
|
+}
|
|
|
+
|
|
|
+function print_centered {
|
|
|
+ [[ $# == 0 ]] && return 1
|
|
|
+
|
|
|
+ declare -i TERM_COLS="$(tput cols)"
|
|
|
+ declare -i str_len="${#1}"
|
|
|
+ [[ $str_len -ge $TERM_COLS ]] && {
|
|
|
+ echo "$1";
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+
|
|
|
+ declare -i filler_len="$(( (TERM_COLS - str_len) / 2 ))"
|
|
|
+ [[ $# -ge 2 ]] && ch="${2:0:1}" || ch=" "
|
|
|
+ filler=""
|
|
|
+ for (( i = 0; i < filler_len; i++ )); do
|
|
|
+ filler="${filler}${ch}"
|
|
|
+ done
|
|
|
+
|
|
|
+ printf "%s%s%s" "$filler" "$1" "$filler"
|
|
|
+ [[ $(( (TERM_COLS - str_len) % 2 )) -ne 0 ]] && printf "%s" "${ch}"
|
|
|
+ printf "\n"
|
|
|
+
|
|
|
+ return 0
|
|
|
+}
|
|
|
+
|
|
|
+function decompte_ {
|
|
|
+echo -e "$(tput setaf 10)\nReboot in 5 seconds (CRTL+C to abord):$(tput sgr0)"
|
|
|
+for i in {5..1}
|
|
|
+do
|
|
|
+echo -e -n "$i "
|
|
|
+sleep 1
|
|
|
+done
|
|
|
+echo ""
|
|
|
+sudo reboot
|
|
|
+}
|
|
|
+
|
|
|
+function intro_ {
|
|
|
+print_centered "$(tput setaf 244)"
|
|
|
+print_centered "██████╗ ███████╗███╗ ██╗██████╗ ███████╗██████╗ "
|
|
|
+print_centered "██╔══██╗██╔════╝████╗ ██║██╔══██╗██╔════╝██╔══██╗"
|
|
|
+print_centered "██████╔╝█████╗ ██╔██╗ ██║██║ ██║█████╗ ██████╔╝"
|
|
|
+print_centered "██╔══██╗██╔══╝ ██║╚██╗██║██║ ██║██╔══╝ ██╔══██╗"
|
|
|
+print_centered "██████╔╝███████╗██║ ╚████║██████╔╝███████╗██║ ██║"
|
|
|
+print_centered "╚═════╝ ╚══════╝╚═╝ ╚═══╝╚═════╝ ╚══════╝╚═╝ ╚═╝"
|
|
|
+echo -n "$(tput sgr0)$(tput setaf 10)"
|
|
|
+print_centered "Bender Server installation script v$Version"
|
|
|
+print_centered "Ubuntu version 20.04"
|
|
|
+print_centered "Dell R640"
|
|
|
+echo -n "$(tput sgr0)"
|
|
|
+sleep 3
|
|
|
+}
|
|
|
+
|
|
|
+function update_ {
|
|
|
+if [ -f /home/wareck/.pass2 ] && [ ! -f /home/wareck/.pass3 ] && [ ! -f /home/wareck/.pass4 ]
|
|
|
+then
|
|
|
+echo -e "$(tput setaf 10)\nUpdate and install packages:$(tput sgr0)"
|
|
|
+sudo apt-get update
|
|
|
+echo -e ""
|
|
|
+sudo apt-get install lxde lxde-icon-theme -y
|
|
|
+echo -e ""
|
|
|
+sudo apt-get install samba cifs-utils mdadm git build-essential libtool pkg-config automake autoconf ethtool net-tools openvpn filezilla \
|
|
|
+tasksel lzma-dev lzma cmake libuv1-dev libssl-dev msr-tools tightvncserver lm-sensors openssh-server xfsprogs -y
|
|
|
+echo -e ""
|
|
|
+sudo apt-get install pixz pbzip2 pigz btrfs-progs gparted gpart gnome-remote-desktop libcanberra-gtk-module \
|
|
|
+ctorrent libcurl4-openssl-dev bison byacc screen libudev-dev libjansson-dev libncurses5-dev libmicrohttpd-dev curl nvme-cli -y
|
|
|
+echo -e ""
|
|
|
+sudo apt-get install libglib2.0-dev libgtk2.0-dev libsensors4-dev htop vlc locate -y
|
|
|
+echo -e ""
|
|
|
+fi
|
|
|
+}
|
|
|
+
|
|
|
+function kernel_check_ {
|
|
|
+unamestr=$(uname -r)
|
|
|
+if ! [[ "$unamestr" == $kernel_dkms ]]
|
|
|
+then
|
|
|
+echo -e "\n$(tput setaf 10)Custom kernel install $(tput setaf 9)$KLversion$(tput setaf 10) (fix DKMS/WOL) :$(tput sgr0)"
|
|
|
+cd /tmp/
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/custom_kernel/kernel_5.15.127-skylake.run
|
|
|
+chmod +x kernel_5.15.127-skylake.run
|
|
|
+sudo ./kernel_5.15.127-skylake.run
|
|
|
+fi
|
|
|
+nvidia_driver_
|
|
|
+}
|
|
|
+
|
|
|
+function nvidia_driver_ {
|
|
|
+if ! [ -f /home/wareck/.pass1 ]
|
|
|
+then
|
|
|
+sudo apt-get install build-essential libglvnd-dev -y
|
|
|
+touch /home/wareck/.pass1
|
|
|
+touch /home/wareck/.pass2
|
|
|
+decompte_
|
|
|
+fi
|
|
|
+}
|
|
|
+
|
|
|
+function download_packs_ {
|
|
|
+if [ ! -f /home/wareck/.pass3 ]
|
|
|
+then
|
|
|
+echo -e "$(tput setaf 10)\nDownload complement packs:$(tput sgr0)"
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/cgminer.conf -O /home/wareck/Build_Cube/pack/cgminer.conf
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/chia-miner.tar.xz -O /home/wareck/Build_Cube/pack/chia-miner.tar.xz
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/gerbera.tar.xz -O /home/wareck/Build_Cube/pack/gerbera.tar.xz
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/start_cgminer.tar.xz -O /home/wareck/Build_Cube/pack/start_cgminer.tar.xz
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/$Webmin.tar.xz -O /home/wareck/Build_Cube/pack/$Webmin.tar.xz
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/xmrig.tar.xz -O /home/wareck/Build_Cube/pack/xmrig.tar.xz
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/zfsmanager-0.0.4.wbm.gz -O /home/wareck/Build_Cube/pack/zfsmanager-0.0.4.wbm.gz
|
|
|
+wget -c -q --show-progress http://folivier.homelinux.org/cube/pack/gpu-miners.tar.xz -O /home/wareck/Build_Cube/pack/gpu-miners.tar.xz
|
|
|
+
|
|
|
+cp /home/wareck/Build_Cube/pack/gpu-miners.tar.xz /home/wareck
|
|
|
+cp /home/wareck/Build_Cube/pack/pack1.tar.xz /home/wareck
|
|
|
+cp /home/wareck/Build_Cube/pack/pack2.tar.xz /home/wareck
|
|
|
+cp /home/wareck/Build_Cube/pack/pack3.tar.xz /home/wareck
|
|
|
+cp /home/wareck/Build_Cube/pack/xmrig.tar.xz /home/wareck
|
|
|
+cp /home/wareck/Build_Cube/pack/start_cgminer.tar.xz /home/wareck
|
|
|
+echo "Done."
|
|
|
+if [ ! -d /home/wareck/$Webmin ]
|
|
|
+then
|
|
|
+cp /home/wareck/Build_Cube/pack/$Webmin.tar.xz /home/wareck/
|
|
|
+cd /home/wareck/
|
|
|
+echo -e "$(tput setaf 10)\nWebmin uncompress:$(tput sgr0)"
|
|
|
+tar xfJ $Webmin.tar.xz
|
|
|
+rm $Webmin.tar.xz
|
|
|
+echo -e "Done"
|
|
|
+fi
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nDownloading miners:$(tput sgr0)"
|
|
|
+cd /home/wareck
|
|
|
+if ! [ -d miners ]; then mkdir -p miners;fi
|
|
|
+
|
|
|
+cd /home/wareck/miners
|
|
|
+if ! [ -d xmrig ]
|
|
|
+then
|
|
|
+git clone https://github.com/xmrig/xmrig.git
|
|
|
+echo -e ""
|
|
|
+fi
|
|
|
+if ! [ -d xmr-stak ]
|
|
|
+then
|
|
|
+git clone https://github.com/fireice-uk/xmr-stak.git
|
|
|
+echo -e ""
|
|
|
+fi
|
|
|
+if ! [ -d xmr-stak-rx ]
|
|
|
+then
|
|
|
+git clone https://github.com/fireice-uk/xmr-stak.git -b xmr-stak-rx xmr-stak-rx
|
|
|
+echo -e ""
|
|
|
+fi
|
|
|
+if ! [ -d cgminer-gekko ]
|
|
|
+then
|
|
|
+git clone https://github.com/wareck/cgminer-gekko.git
|
|
|
+echo -e ""
|
|
|
+fi
|
|
|
+if ! [ -d cgminer-lketc ]
|
|
|
+then
|
|
|
+git clone https://github.com/wareck/cgminer-lketc.git
|
|
|
+fi
|
|
|
+
|
|
|
+fi
|
|
|
+echo "Done."
|
|
|
+}
|
|
|
+
|
|
|
+function build_miners_ {
|
|
|
+if [ ! -f /home/wareck/.pass3 ]
|
|
|
+then
|
|
|
+cmake_
|
|
|
+cd /home/wareck
|
|
|
+tar xfJ gpu-miners.tar.xz
|
|
|
+cd /home/wareck/miners
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nUncompress xmr files:$(tput sgr0)"
|
|
|
+tar xfJ /home/wareck/xmrig.tar.xz --checkpoint=.100
|
|
|
+echo "Done."
|
|
|
+echo -n -e "\n"
|
|
|
+echo -e "$(tput setaf 10)\nBuild xmrig:$(tput sgr0)"
|
|
|
+cd xmrig
|
|
|
+git config --global --add safe.directory /home/wareck/miners/xmrig
|
|
|
+git pull
|
|
|
+sed -i "s/kDefaultDonateLevel = 5;/kDefaultDonateLevel = 0;/g" src/donate.h
|
|
|
+sed -i "s/kMinimumDonateLevel = 1;/kMinimumDonateLevel = 0;/g" src/donate.h
|
|
|
+wget -c https://download.open-mpi.org/release/hwloc/v2.7/hwloc-2.7.1.tar.bz2
|
|
|
+tar xfj hwloc-2.7.1.tar.bz2 --checkpoint=.100
|
|
|
+cd hwloc-2.7.1
|
|
|
+./configure
|
|
|
+make -j$((`nproc`+1))
|
|
|
+sudo make install
|
|
|
+cd ..
|
|
|
+sudo ldconfig
|
|
|
+cd build
|
|
|
+cmake ..
|
|
|
+make -j$((`nproc`+1))
|
|
|
+cd ..
|
|
|
+cd ..
|
|
|
+echo "Done."
|
|
|
+
|
|
|
+rm -r -f cgminer*
|
|
|
+rm -r -f xmrig-upx
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nBuild xmr-stak-rx:$(tput sgr0)"
|
|
|
+cd xmr-stak-rx
|
|
|
+git config --global --add safe.directory /home/wareck/miners/xmr-stak-rx
|
|
|
+git pull
|
|
|
+cd build
|
|
|
+cmake ..
|
|
|
+make -j$((`nproc`+1))
|
|
|
+cd ..
|
|
|
+cd ..
|
|
|
+echo "Done."
|
|
|
+echo -e "$(tput setaf 10)\nBuild xmr-stak:$(tput sgr0)"
|
|
|
+cd xmr-stak
|
|
|
+if ! [ -d build ];then mkdir build ;fi
|
|
|
+git config --global --add safe.directory /home/wareck/miners/xmr-stak
|
|
|
+git pull
|
|
|
+cd build
|
|
|
+cmake .. -DOpenCL_ENABLE=OFF -DCUDA_ENABLE=OFF
|
|
|
+make -j$((`nproc`+1))
|
|
|
+cd ..
|
|
|
+cd ..
|
|
|
+echo "Done."
|
|
|
+touch /home/wareck/.pass3
|
|
|
+fi
|
|
|
+sudo chmod -R 775 /home/wareck/miners
|
|
|
+}
|
|
|
+
|
|
|
+function configure_ {
|
|
|
+if [ ! -f /home/wareck/.pass4 ]
|
|
|
+then
|
|
|
+echo -e "$(tput setaf 10)\nlxPanel sensors:$(tput sgr0)"
|
|
|
+cd /home/wareck
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nConfig files:$(tput sgr0)"
|
|
|
+cd /home/wareck/
|
|
|
+zip="['firefox.desktop', 'thunderbird.desktop', 'org.remmina.Remmina.desktop', 'filezilla.desktop', 'org.gnome.Nautilus.desktop', 'org.gnome.Terminal.desktop']"
|
|
|
+cat <<'EOF'>> zap
|
|
|
+
|
|
|
+gsettings set org.gnome.shell.extensions.dash-to-dock dash-max-icon-size 32
|
|
|
+gsettings set org.gnome.desktop.background picture-uri /home/wareck/Images/bender.jpg
|
|
|
+gsettings set org.gnome.shell favorite-apps "XXX"
|
|
|
+
|
|
|
+dconf load /org/gnome/terminal/ < /usr/local/bin/zap2
|
|
|
+EOF
|
|
|
+sed -i "s/XXX/$zip/g" zap
|
|
|
+
|
|
|
+UUID=$(gsettings get org.gnome.Terminal.ProfilesList default | tr -d \')
|
|
|
+cat <<'EOF'>> zap2
|
|
|
+[legacy/profiles:/:XXX]
|
|
|
+default-size-columns=110
|
|
|
+font='Monospace 9'
|
|
|
+use-system-font=false
|
|
|
+use-theme-colors=false
|
|
|
+EOF
|
|
|
+sed -i "s/XXX/$UUID/g" zap2
|
|
|
+chmod +x zap
|
|
|
+sudo cp zap /usr/local/bin
|
|
|
+sudo cp zap2 /usr/local/bin
|
|
|
+sudo rm zap
|
|
|
+sudo rm zap2
|
|
|
+sleep 1
|
|
|
+
|
|
|
+sudo rm -r -f /etc/update-motd.d/*
|
|
|
+tar xfJ pack1.tar.xz --checkpoint=.10
|
|
|
+echo -n -e "\n"
|
|
|
+sudo cp /home/wareck/pack2.tar.xz /
|
|
|
+sudo cp /home/wareck/pack3.tar.xz /
|
|
|
+cd /
|
|
|
+sudo tar xfJ pack2.tar.xz --checkpoint=.10
|
|
|
+sudo tar xfJ pack3.tar.xz --checkpoint=.10
|
|
|
+echo -n -e "\n"
|
|
|
+cd /home/wareck
|
|
|
+
|
|
|
+
|
|
|
+dynmotd
|
|
|
+
|
|
|
+sudo sed -i -e "s/# set constantshow/set constantshow/g" /etc/nanorc
|
|
|
+
|
|
|
+if ! grep "wareck" /etc/sudoers >/dev/null
|
|
|
+then
|
|
|
+sudo sh -c "echo \"wareck ALL=(ALL) NOPASSWD: ALL\" >> /etc/sudoers"
|
|
|
+fi
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nBuild folder and mount drives:$(tput sgr0)"
|
|
|
+if ! [ -r /farm ];then sudo mkdir /farm;fi
|
|
|
+echo "Done."
|
|
|
+
|
|
|
+sudo apt install ethtool -y
|
|
|
+iface=$(ip link | awk -F: '$0 !~ "lo|vir|^[^0-9]"{print $2a;getline}')
|
|
|
+sudo ethtool --change eno1 wol g
|
|
|
+sudo ethtool --change eno2 wol g
|
|
|
+sudo ethtool --change eno3 wol g
|
|
|
+sudo ethtool --change eno4 wol g
|
|
|
+
|
|
|
+
|
|
|
+cat <<'EOF'>> /tmp/wakemeup.sh
|
|
|
+
|
|
|
+set -e
|
|
|
+if ! [ -x "$(command -v etherwake)" ];then sudo apt-get install etherwake -y;fi
|
|
|
+clear
|
|
|
+echo -e "$(tput setaf 10)Wake On Lan v1.0:$(tput sgr0)"
|
|
|
+PS3="Select : "
|
|
|
+items=("Nzxt" "Garage")
|
|
|
+
|
|
|
+select item in "${items[@]}" Quit
|
|
|
+ do
|
|
|
+ case $REPLY in
|
|
|
+ 1) sudo etherwake -i enp5s0 E0:D5:5E:2D:9E:CB ; break;;
|
|
|
+ 2) sudo etherwake -i enp5s0 58:11:22:CD:FC:7A ; break;;
|
|
|
+ $((${#items[@]}+1))) echo "We're done!"; break 2;;
|
|
|
+ *) echo "Ooops - unknown choice $REPLY"; break;
|
|
|
+ esac
|
|
|
+ done
|
|
|
+echo -e ""
|
|
|
+EOF
|
|
|
+sudo chmod +x /tmp/wakemeup.sh
|
|
|
+sudo cp /tmp/wakemeup.sh /usr/local/bin
|
|
|
+echo "Done."
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nVnc init:$(tput sgr0)"
|
|
|
+sudo update-rc.d vncserver defaults
|
|
|
+echo "Done."
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nOpening ports:$(tput sgr0)"
|
|
|
+sudo ufw disable
|
|
|
+echo "Done."
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nBashrc mod:$(tput sgr0)"
|
|
|
+if ! grep "#mod for tightvncserver" /home/wareck/.bashrc
|
|
|
+then
|
|
|
+echo "#mod for tightvncserver" >>/home/wareck/.bashrc
|
|
|
+echo "cd ~" >>/home/wareck/.bashrc
|
|
|
+fi
|
|
|
+echo "Done."
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nDisable IPv6:$(tput sgr0)"
|
|
|
+if ! grep "ipv6.disable=1" /etc/default/grub >/dev/null
|
|
|
+then
|
|
|
+sed -i -e "s/quiet splash/quiet splash ipv6.disable=1/g" /etc/default/grub
|
|
|
+sed -i -e "s/GRUB_CMDLINE_LINUX=\"/GRUB_CMDLINE_LINUX=\"ipv6.disable=1 acpi_enforce_resources=lax/g" /etc/default/grub
|
|
|
+sudo update-grub2
|
|
|
+fi
|
|
|
+sudo chown -R wareck:wareck /home/wareck/miners/xmr*
|
|
|
+sudo apt-get remove light-locker* -y
|
|
|
+if [ ! -d /home/wareck/.config/lxpanel/LXDE/panels ]
|
|
|
+then
|
|
|
+mkdir /home/wareck/.config/lxpanel
|
|
|
+mkdir /home/wareck/.config/lxpanel/LXDE
|
|
|
+mkdir /home/wareck/.config/lxpanel/LXDE/panels
|
|
|
+fi
|
|
|
+sudo cp /home/wareck/Build_Cube/pack/panel /home/wareck/.config/lxpanel/LXDE/panels/panel
|
|
|
+sudo chmod 777 /home/wareck/.config/lxpanel/LXDE/panels/panel
|
|
|
+if [ ! -d /home/wareck/.config/lxterminal ]
|
|
|
+then
|
|
|
+mkdir /home/wareck/.config/lxterminal
|
|
|
+fi
|
|
|
+sudo cp /home/wareck/Build_Cube/pack/lxterminal.conf /home/wareck/.config/lxterminal/
|
|
|
+sudo chmod 777 /home/wareck/.config/lxterminal/lxterminal.conf
|
|
|
+
|
|
|
+echo "Done."
|
|
|
+touch /home/wareck/.pass4
|
|
|
+decompte_
|
|
|
+fi
|
|
|
+}
|
|
|
+
|
|
|
+function printer_ {
|
|
|
+if [ ! -f /home/wareck/.pass3 ]
|
|
|
+then
|
|
|
+if [ ! -d /usr/local/share/foomatic/ ]
|
|
|
+then
|
|
|
+if [ ! -d /tmp/foomatic-db/ ]
|
|
|
+then
|
|
|
+cd /tmp/
|
|
|
+echo -e "$(tput setaf 10)\nInstall printers generic drivers:$(tput sgr0)"
|
|
|
+git clone https://github.com/OpenPrinting/foomatic-db.git
|
|
|
+fi
|
|
|
+cd /tmp/foomatic-db
|
|
|
+if [ ! -d /usr/local/share/foomatic/ ]
|
|
|
+then
|
|
|
+./make_configure
|
|
|
+./configure
|
|
|
+sudo make install
|
|
|
+echo "Done."
|
|
|
+fi
|
|
|
+fi
|
|
|
+fi
|
|
|
+}
|
|
|
+
|
|
|
+function mounting_drives_ {
|
|
|
+if [ ! -f /home/wareck/.pass4 ]
|
|
|
+then
|
|
|
+echo -e "$(tput setaf 10)\nMounting Drives$(tput sgr0)"
|
|
|
+echo "Done."
|
|
|
+fi
|
|
|
+}
|
|
|
+
|
|
|
+function cleaning_ {
|
|
|
+if [ -f /home/wareck/.pass4 ]
|
|
|
+then
|
|
|
+echo -e "$(tput setaf 10)\nCleaning install files:$(tput sgr0)"
|
|
|
+if [ -f /pack2.tar.xz ]; then sudo rm /pack2.tar.xz ;fi
|
|
|
+if [ -f /pack3.tar.xz ]; then sudo rm /pack3.tar.xz ;fi
|
|
|
+if [ -f /home/wareck/pack1.tar.xz ]; then rm /home/wareck/pack1.tar.xz ;fi
|
|
|
+if [ -f /home/wareck/pack2.tar.xz ]; then rm /home/wareck/pack2.tar.xz ;fi
|
|
|
+if [ -f /home/wareck/pack3.tar.xz ]; then rm /home/wareck/pack3.tar.xz ;fi
|
|
|
+if [ -f /home/wareck/xmrig.tar.xz ]; then rm /home/wareck/xmrig.tar.xz ;fi
|
|
|
+if [ -f /home/wareck/gpu-miners.tar.xz ]; then rm /home/wareck/gpu-miners.tar.xz;fi
|
|
|
+if [ -r /home/wareck/Music ]; then sudo rm -r -f /home/wareck/Music ;fi
|
|
|
+if [ -r /home/wareck/Public ]; then sudo rm -r -f /home/wareck/Public ;fi
|
|
|
+if [ -r /home/wareck/Templates ]; then sudo rm -r -f /home/wareck/Templates ;fi
|
|
|
+if [ -r /home/wareck/Vidéos ]; then sudo rm -r -f /home/wareck/Vidéos ;fi
|
|
|
+if [ -f /home/wareck/NVIDIA-Linux-x86_64-470.74.run ]; then rm /home/wareck/NVIDIA-Linux-x86_64-470.74.run ;fi
|
|
|
+if [ -f /home/wareck/NVIDIA-Linux-x86_64-470.82.00.run ]; then rm /home/wareck/NVIDIA-Linux-x86_64-470.82.00.run ;fi
|
|
|
+if [ -f /home/wareck/.pass1 ]; then rm /home/wareck/.pass1 ;fi
|
|
|
+if [ -f /home/wareck/.pass2 ]; then rm /home/wareck/.pass2 ;fi
|
|
|
+if [ -f /home/wareck/.pass3 ]; then rm /home/wareck/.pass3 ;fi
|
|
|
+if [ -f /home/wareck/.pass4 ]; then rm /home/wareck/.pass4 ;fi
|
|
|
+if [ -f /usr/local/bin/zap ]; then sudo rm /usr/local/bin/zap* ;fi
|
|
|
+if [ -f /home/wareck/.config/autostart/install_os.desktop ];then sudo rm /home/wareck/.config/autostart/install_os.desktop;fi
|
|
|
+if [ -f /home/wareck/.config/autostart/zappy.desktop ];then sudo rm /home/wareck/.config/autostart/zappy.desktop;fi
|
|
|
+if [ -r /lib/modules/5.15.0-60-generic ]; then sudo rm -r /lib/modules/5.15.0-60-generic ;fi
|
|
|
+if [ -r /lib/modules/5.15.0-46-generic ]; then sudo rm -r /lib/modules/5.15.0-46-generic ;fi
|
|
|
+if [ -r /lib/modules/5.15.0-70-generic ]; then sudo rm -r /lib/modules/5.15.0-70-generic ;fi
|
|
|
+cd /home/wareck/Build_Cube/pack
|
|
|
+sudo chown -R wareck:wareck /home/wareck/miners
|
|
|
+sudo chmod -R 775 /home/wareck/miners
|
|
|
+./clean.sh
|
|
|
+echo -e "Done. \n"
|
|
|
+
|
|
|
+echo `date` "install/update" >/home/wareck/.buildcube
|
|
|
+fi
|
|
|
+sudo apt-get autoremove -y
|
|
|
+sleep 1
|
|
|
+}
|
|
|
+
|
|
|
+function autoroot_ {
|
|
|
+if [ ! -d /home/wareck/.config/autostart ]
|
|
|
+then
|
|
|
+echo -e "$(tput setaf 10)\nInit install & autostart:$(tput sgr0)"
|
|
|
+mkdir /home/wareck/.config/autostart
|
|
|
+echo -e "Done."
|
|
|
+sleep 1
|
|
|
+fi
|
|
|
+
|
|
|
+if [ ! -f /home/wareck/.config/autostart/install_os.desktop ]
|
|
|
+then
|
|
|
+cat <<'EOF'>> /home/wareck/.config/autostart/install_os.desktop
|
|
|
+[Desktop Entry]
|
|
|
+
|
|
|
+Name=Terminal
|
|
|
+Comment=Use the command line
|
|
|
+Keywords=shell;prompt;command;commandline;cmd;
|
|
|
+TryExec=gnome-terminal
|
|
|
+Exec=gnome-terminal -- bash -c "sudo /home/wareck/Build_Cube/bender.sh; exec bash"
|
|
|
+Icon=org.gnome.Terminal
|
|
|
+Type=Application
|
|
|
+Categories=GNOME;GTK;System;TerminalEmulator;
|
|
|
+StartupNotify=true
|
|
|
+X-GNOME-SingleWindow=false
|
|
|
+OnlyShowIn=GNOME;Unity;
|
|
|
+Actions=new-window;preferences;
|
|
|
+X-Ubuntu-Gettext-Domain=gnome-terminal
|
|
|
+
|
|
|
+[Desktop Action new-window]
|
|
|
+Name=New Window
|
|
|
+Exec=gnome-terminal --window
|
|
|
+
|
|
|
+[Desktop Action preferences]
|
|
|
+Name=Preferences
|
|
|
+Exec=gnome-terminal --preferences
|
|
|
+EOF
|
|
|
+chmod +x /home/wareck/.config/autostart/install_os.desktop
|
|
|
+fi
|
|
|
+
|
|
|
+if [ ! -f /home/wareck/.config/autostart/zappy.desktop ]
|
|
|
+then
|
|
|
+cat <<'EOF'>> /home/wareck/.config/autostart/zappy.desktop
|
|
|
+[Desktop Entry]
|
|
|
+
|
|
|
+Name=Terminal
|
|
|
+Comment=Use the command line
|
|
|
+Keywords=shell;prompt;command;commandline;cmd;
|
|
|
+TryExec=gnome-terminal
|
|
|
+Exec=gnome-terminal -- bash -c "/usr/local/bin/zap"
|
|
|
+Icon=org.gnome.Terminal
|
|
|
+Type=Application
|
|
|
+Categories=GNOME;GTK;System;TerminalEmulator;
|
|
|
+StartupNotify=true
|
|
|
+X-GNOME-SingleWindow=false
|
|
|
+OnlyShowIn=GNOME;Unity;
|
|
|
+Actions=new-window;preferences;
|
|
|
+X-Ubuntu-Gettext-Domain=gnome-terminal
|
|
|
+
|
|
|
+[Desktop Action new-window]
|
|
|
+Name=New Window
|
|
|
+Exec=gnome-terminal --window
|
|
|
+
|
|
|
+[Desktop Action preferences]
|
|
|
+Name=Preferences
|
|
|
+Exec=gnome-terminal --preferences
|
|
|
+EOF
|
|
|
+chmod +x /home/wareck/.config/autostart/zappy.desktop
|
|
|
+fi
|
|
|
+if ! grep "wareck" /etc/sudoers >/dev/null
|
|
|
+then
|
|
|
+sudo sh -c "echo \"wareck ALL=(ALL) NOPASSWD: ALL\" >> /etc/sudoers"
|
|
|
+fi
|
|
|
+echo -e "$(tput setaf 10)\nUpdate and install packages:$(tput sgr0)"
|
|
|
+sudo apt-get update
|
|
|
+sudo apt-get install lxde lxde-icon-theme -y
|
|
|
+sleep 1
|
|
|
+}
|
|
|
+
|
|
|
+function remove_screensaver {
|
|
|
+
|
|
|
+cat <<EOF>> autostart
|
|
|
+@lxpanel --profile LXDE
|
|
|
+@pcmanfm --desktop --profile LXDE
|
|
|
+EOF
|
|
|
+sudo chmod 744 autostart
|
|
|
+sudo cp autostart /etc/xdg/lxsession/LXDE/
|
|
|
+sudo cp autostart /home/wareck/.config/lxsession/LXDE/
|
|
|
+sudo rm autostart
|
|
|
+sudo apt-get remove xscreensaver xscreensaver-data -y
|
|
|
+}
|
|
|
+
|
|
|
+function cmake_ {
|
|
|
+pids=""
|
|
|
+/home/wareck/Build_Cube/options/tools/_cmake.sh rollback & pids="$pids $!"
|
|
|
+wait $pids
|
|
|
+}
|
|
|
+
|
|
|
+function wol_ {
|
|
|
+iface=$(ip link | awk -F: '$0 !~ "lo|vir|^[^0-9]"{print $2a;getline}')
|
|
|
+ether=$(which ethtool)
|
|
|
+echo "[Unit]" >>/tmp/wol.service
|
|
|
+echo "Description=Enable Wake On Lan" >>/tmp/wol.service
|
|
|
+echo "" >>/tmp/wol.service
|
|
|
+echo "[Service]" >>/tmp/wol.service
|
|
|
+echo "Type=oneshot" >>/tmp/wol.service
|
|
|
+echo "ExecStart = $ether --change$iface wol g" >>/tmp/wol.service
|
|
|
+echo "" >>/tmp/wol.service
|
|
|
+echo "[Install]" >>/tmp/wol.service
|
|
|
+echo "WantedBy=basic.target" >>/tmp/wol.service
|
|
|
+sudo cp /tmp/wol.service /etc/systemd/system/wol.service
|
|
|
+sudo systemctl daemon-reload
|
|
|
+sudo systemctl enable wol.service
|
|
|
+sudo systemctl start wol.service
|
|
|
+}
|
|
|
+
|
|
|
+intro_
|
|
|
+autoroot_
|
|
|
+ubuntu_version_check
|
|
|
+update_
|
|
|
+
|
|
|
+nvidia_driver_
|
|
|
+download_packs_
|
|
|
+printer_
|
|
|
+build_miners_
|
|
|
+configure_
|
|
|
+mounting_drives_
|
|
|
+cleaning_
|
|
|
+remove_screensaver
|
|
|
+clear
|
|
|
+wol_
|
|
|
+dynmotd
|
|
|
+
|
|
|
+echo -e "$(tput setaf 10)\nEnd of script:$(tput sgr0) \n"
|
|
|
+echo -e "$(tput setaf 7)Need to install webmin manually (reboot required)$(tput sgr0)"
|
|
|
+echo -e "$(tput setaf 7)after install webmin, reboot is required $(tput sgr0)"
|
|
|
+echo -e ""
|
|
|
+
|