Fedora Remix maintained by the Rochester Institute of Technology (RIT) Linux Users Group, targeted at users new to Linux and RIT students, faculty, and staff
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

107 lines
4.5 KiB

  1. #!/usr/bin/bash
  2. # TigerOS postinstall package setup script
  3. # author: Aidan Kahrs <axk4545@rit.edu>
  4. # Check that the current user is root
  5. if [ $EUID != 0 ]
  6. then
  7. echo "Please run this script as root ( $@$0)."
  8. exit
  9. fi
  10. echo -e "Welcome to the TigerOS post install script.\n
  11. This script will walk you through initial configuration of TigerOS including installing a set of packages used for classes in your major."
  12. echo -e "\n"
  13. sleep 3;
  14. find / -name "tigeros-postinstall.desktop" |xargs rm > /dev/null
  15. bash /usr/local/bin/enablerpmfusion
  16. echo -e "\n\n"
  17. PS3='Please enter your major: '
  18. options=("CS" "IT/WMC" "NSSA/CIT" "SE" "Quit")
  19. select opt in "${options[@]}"
  20. do
  21. case $opt in
  22. "CS")
  23. echo -e "Welcome to the TigerOS CS package installer script.\n
  24. This script will install Intellij IDEA, PyCharm, PROLOG, Racket, Logisim and JFLAP on your machine."
  25. while true; do
  26. read -p "Do you wish to continue? [y/n] " yn
  27. case $yn in
  28. [Yy]* ) break;;
  29. [Nn]* ) exit;;
  30. esac
  31. done
  32. bash /usr/local/bin/cs/idea.sh
  33. dnf copr enable -y phracek/PyCharm; dnf install pycharm-community;
  34. # TODO PROLOG
  35. wget https://mirror.racket-lang.org/installers/6.8/racket-6.8-x86_64-linux.sh
  36. chmod +x racket-6.8-x86_64-linux.sh
  37. bash /racket-6.8-x86_64-linux.sh
  38. bash /usr/local/bin/cs/logisim.sh
  39. bash /usr/local/bin/cs/jflap.sh
  40. ;;
  41. "IT/WMC")
  42. echo -e "Welcome to the TigerOS IT/WMC package installer script.
  43. This script will install mysql, mongodb, subversion, filezilla, and nodejs on your machine."
  44. while true; do
  45. read -p "Do you wish to continue? [y/n] " yn
  46. case $yn in
  47. [Yy]* ) break;;
  48. [Nn]* ) exit;;
  49. esac
  50. done
  51. wget https://dev.mysql.com/get/mysql57-community-release-fc25-9.noarch.rpm -O mysql-repo.rpm
  52. dnf install -y mysql-repo.rpm
  53. dnf install -y mysql-community-server
  54. echo "mysql installed see "https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/" for further instructions. Start at step 4."
  55. dnf install -y mongodb
  56. semanage port -a -t mongod_port_t -p tcp 27017
  57. dnf install -y subversion filezilla nodejs java-1.8.0-openjdk
  58. echo "Due to licensing constraints we cannot distribute jGrasp at this time.\n
  59. Please see http://spider.eng.auburn.edu/user-cgi/grasp/grasp.pl?;dl=download_jgrasp.html for download instructions.\n
  60. Please note that the JDK is already installed and accesibble on your system."
  61. mysql_secure_installation
  62. echo "Install finished"
  63. exit
  64. ;;
  65. "NSSA/CIT")
  66. echo -e "Welcome to the TigerOS NSSA/CIT package installer script.\n
  67. This script will install wireshark, python 2.7, and python 3 on your machine."
  68. while true; do
  69. read -p "Do you wish to continue? [y/n] " yn
  70. case $yn in
  71. [Yy]* ) break;;
  72. [Nn]* ) exit;;
  73. esac
  74. done
  75. dnf install -y wireshark-gtk python python3 java-1.8.0-openjdk
  76. groupadd wireshark
  77. usermod -aG wireshark $USER
  78. echo "Due to licensing constraints we cannot distribute jGrasp at this time.\n
  79. Please see http://spider.eng.auburn.edu/user-cgi/grasp/grasp.pl?;dl=download_jgrasp.html for download instructions.\n
  80. Please note that the JDK is already installed and accessible on your system."
  81. echo "Install finished"
  82. exit
  83. ;;
  84. "SE")
  85. echo -e "Welcome to the TigerOS SE package installer script.\n
  86. This script will install ruby, eclipse, Spin, sqlite3, plantUML, gitk and MIT Alloy on your machine."
  87. while true; do
  88. read -p "Do you wish to continue? [y/n] " yn
  89. case $yn in
  90. [Yy]* ) break;;
  91. [Nn]* ) exit;;
  92. esac
  93. done
  94. dnf install -y eclipse-jdt ruby sqlite plantuml gitk geany
  95. bash /usr/local/bin/se/spin.sh && bash /usr/bin/tigeros/se/alloy.sh
  96. echo "Install finished"
  97. exit
  98. ;;
  99. "Quit")
  100. break
  101. ;;
  102. *) echo invalid option;;
  103. esac
  104. done