| #!/bin/bash | |
|  | |
| # TigerOS postinstall package setup script | |
| # author: Aidan Kahrs <axk4545@rit.edu> | |
| 
 | |
| 
 | |
| # Check that the current user is root | |
| if [ $EUID != 0 ] | |
| then | |
|     echo "Please run this script as root ( $@$0)." | |
|     exit | |
| fi | |
| echo -e "Welcome to the TigerOS post install script.\n | |
| This script will install a set of packages used for classes in your major." | |
| echo -e "\n" | |
| sleep 5; | |
| PS3='Please enter your major: ' | |
| options=("CS" "IT/WMC" "NSSA/CIT" "SE" "Quit") | |
| select opt in "${options[@]}" | |
| do | |
|     case $opt in | |
|         "CS") | |
|             echo -e "Welcome to the TigerOS CS package installer script.\n  | |
|                   This script will install Intellij IDEA, PyCharm, PROLOG, Racket, Logisim and JFLAP on your machine." | |
|             while true; do | |
|                 read -p "Do you wish to continue? [y/n] " yn | |
|                 case $yn in | |
|                     [Yy]* ) break;; | |
|                     [Nn]* ) exit;; | |
|                 esac | |
|             done | |
|             ./cs/idea.sh | |
|             dnf copr enable phracek/PyCharm; dnf install pycharm-community; | |
|             # TODO PROLOG | |
|             wget https://mirror.racket-lang.org/installers/6.8/racket-6.8-x86_64-linux.sh | |
|             chmod +x racket-6.8-x86_64-linux.sh | |
|             ./racket-6.8-x86_64-linux.sh | |
|             ./cs/logisim.sh | |
|             ./cs/jflap.sh | |
|             ;; | |
|         "IT/WMC") | |
|             echo -e "Welcome to the TigerOS IT/WMC package installer script.  | |
|             This script will install mysql, mongodb, subversion, filezilla, and nodejs on your machine." | |
|             while true; do | |
|                 read -p "Do you wish to continue? [y/n] " yn | |
|                 case $yn in | |
|                     [Yy]* ) break;; | |
|                     [Nn]* ) exit;; | |
|                 esac | |
|             done | |
|             wget https://dev.mysql.com/get/mysql57-community-release-fc25-9.noarch.rpm -O mysql-repo.rpm | |
|             dnf install -y mysql-repo.rpm | |
|             dnf install -y mysql-community-server | |
|             echo "mysql installed see "https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/" for further instructions. Start at step 4." | |
|             dnf install -y mongodb | |
|             semanage port -a -t mongod_port_t -p tcp 27017 | |
|             dnf install -y subversion filezilla nodejs java-1.8.0-openjdk | |
|             echo "Due to licensing constraints we cannot distribute jGrasp at this time.\n | |
|             Please see http://spider.eng.auburn.edu/user-cgi/grasp/grasp.pl?;dl=download_jgrasp.html for download instructions.\n | |
|             Please note that the JDK is already installed and accesibble on your system." | |
|             mysql_secure_installation | |
|             echo "Install finished" | |
|             exit | |
|             ;; | |
|         "NSSA/CIT") | |
|             echo -e "Welcome to the TigerOS NSSA/CIT package installer script.\n  | |
|             This script will install wireshark, python 2.7, and python 3 on your machine." | |
|             while true; do | |
|                 read -p "Do you wish to continue? [y/n] " yn | |
|                 case $yn in | |
|                     [Yy]* ) break;; | |
|                     [Nn]* ) exit;; | |
|                 esac | |
|             done | |
|             dnf install -y wireshark-gtk python python3 java-1.8.0-openjdk | |
|             groupadd wireshark | |
|             usermod -aG wireshark $USER | |
|             echo "Due to licensing constraints we cannot distribute jGrasp at this time.\n | |
|             Please see http://spider.eng.auburn.edu/user-cgi/grasp/grasp.pl?;dl=download_jgrasp.html for download instructions.\n | |
|             Please note that the JDK is already installed and accessible on your system." | |
|             echo "Install finished" | |
|             exit | |
|             ;; | |
|         "SE") | |
|             echo -e "Welcome to the TigerOS SE package installer script.\n | |
|             This script will install ruby, eclipse, Spin, sqlite3, plantUML, gitk and MIT Alloy on your machine." | |
|             while true; do | |
|                 read -p "Do you wish to continue? [y/n] " yn | |
|                 case $yn in | |
|                     [Yy]* ) break;; | |
|                     [Nn]* ) exit;; | |
|                 esac | |
|             done | |
|             dnf install -y eclipse-jdt ruby sqlite plantuml gitk geany | |
|             ./se/spin.sh && ./se/alloy.sh  | |
|             echo "Install finished" | |
|             exit | |
|             ;; | |
|         "Quit") | |
|             break | |
|             ;; | |
|         *) echo invalid option;; | |
|     esac | |
| done
 |