Advertisement
Justman10000

UltimateFlarumMaster

Dec 15th, 2021 (edited)
712
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. apt install dialog -y
  2.  
  3. reset
  4.  
  5. HEIGHT=15
  6. WIDTH=40
  7. CHOICE_HEIGHT=7
  8. BACKTITLE="UltimateFlarumMaster"
  9. TITLE="UltimateFlarumMaster by Justman10000 | This is under the GNU General Public License v3.0"
  10. MENU="What should be done?"
  11.  
  12. OPTIONS=(SPU "Systempackages Update"
  13.          PR "Preparation (Must be done first!)"
  14.          V "Check PHP Version"
  15.          1 "Install"
  16.          2 "Updating"
  17.          3 "Uninstall"
  18.          4 "Exit"
  19.          )
  20.  
  21. WhatDo=$(dialog --clear \
  22.                 --backtitle "$BACKTITLE" \
  23.                 --title "$TITLE" \
  24.                 --menu "$MENU" \
  25.                 $HEIGHT $WIDTH $CHOICE_HEIGHT \
  26.                 "${OPTIONS[@]}" \
  27.                 2>&1 >/dev/tty)
  28.  
  29. reset
  30.  
  31. case $WhatDo in
  32.     "SPU")
  33.         apt update
  34.         apt upgrade -y
  35.  
  36.         reset
  37.  
  38.         bash UltimateFlarummaster.sh
  39.     ;;
  40.  
  41.     "PR")
  42.         OPTIONS=(1 "Debian"
  43.                  2 "Ubuntu"
  44.                  )
  45.  
  46.         OS=$(dialog --clear \
  47.                         --backtitle "$BACKTITLE" \
  48.                         --title "$TITLE" \
  49.                         --menu "$MENU" \
  50.                         $HEIGHT $WIDTH $CHOICE_HEIGHT \
  51.                         "${OPTIONS[@]}" \
  52.                         2>&1 >/dev/tty)
  53.  
  54.         clear
  55.  
  56.         if ! [ -f /usr/local/bin/composer ]; then
  57.             echo "Installing Composer"
  58.             php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
  59.             php -r "if (hash_file('sha384', 'composer-setup.php') === '906a84df04cea2aa72f40b5f787e49f22d4c2f19492ac310e8cba5b96ac8b64115ac402c8cd292b8a03482574915d1a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
  60.             php composer-setup.php
  61.             php -r "unlink('composer-setup.php');"
  62.             mv composer.phar /usr/local/bin/composer
  63.             clear
  64.         fi
  65.  
  66.         clear
  67.  
  68.         echo "Which PHP version should be installed?"
  69.         read PHP
  70.         clear
  71.         apt autoremove -y
  72.         clear
  73.  
  74.         case $OS in
  75.             "1")
  76.                 echo "Scanning"
  77.                 sleep 2
  78.                 clear
  79.                 echo "."
  80.                 sleep 1
  81.                 clear
  82.                 echo ".."
  83.                 sleep 1
  84.                 clear
  85.                 echo "..."
  86.                 sleep 2
  87.                 clear
  88.  
  89.                 if [ -f /etc/apt/sources.list.d/php.list ]; then
  90.                     echo "PHP.list already installed!"
  91.                     sleep 2
  92.                     echo "Skipping PHP.list installation"
  93.                     clear
  94.                 fi
  95.  
  96.                 if ! [ -f /etc/apt/sources.list.d/php.list ]; then
  97.                     echo "Installing PHP.list"
  98.                     wget -q https://packages.sury.org/php/apt.gpg -O- | apt-key add -
  99.                     echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
  100.                     apt update
  101.                 fi
  102.  
  103.                 if ! ( [ "$PHP" == "8.1" ] || [ "$PHP" == "8.2" ]); then
  104.                     apt install php$PHP php$PHP-mbstring php$PHP-xml php$PHP-curl php$PHP-gd php$PHP-mysql -y
  105.                 fi
  106.  
  107.                 if ( [ "$PHP" == "8.1" ] || [ "$PHP" == "8.2" ]); then
  108.                     echo "Anything above PHP 8.0 is not supported by Flarum"
  109.                     sleep 2
  110.                 fi
  111.             ;;
  112.  
  113.             "2")
  114.                 if ! ( [ "$PHP" == "8.1" ] || [ "$PHP" == "8.2" ]); then
  115.                     apt install php$PHP php$PHP-mbstring php$PHP-xml php$PHP-curl php$PHP-gd php$PHP-mysql -y
  116.                 fi
  117.  
  118.                 if ( [ "$PHP" == "8.1" ] || [ "$PHP" == "8.2" ]); then
  119.                     echo "Anything above PHP 8.0 is not supported by Flarum"
  120.                 fi
  121.                
  122.                 echo "Scanning"
  123.                 sleep 2
  124.                 echo "."
  125.                 sleep 2
  126.                 clear
  127.                 echo ".."
  128.                 sleep 2
  129.                 clear
  130.                 echo "..."
  131.  
  132.                 if [ -f /etc/apt/sources.list.d/php.list ]; then
  133.                     echo "PHP.list already installed!"
  134.                     sleep 2
  135.                     echo "Skipping PHP.list installation"
  136.                 fi
  137.  
  138.                 if ! [ -f /etc/apt/sources.list.d/php.list ]; then
  139.                     echo "Installing PHP.list"
  140.                     apt install software-properties-common -y
  141.                     add-apt-repository ppa:ondrej/php
  142.                     apt update
  143.                 fi
  144.             ;;
  145.  
  146.             *)
  147.                 echo "No OS provided"
  148.                 sleep 3
  149.  
  150.                 bash UltimateFlarumMaster.sh
  151.             ;;
  152.         esac
  153.  
  154.         apt install apache2 -y
  155.         bash UltimateFlarumMaster.sh
  156.     ;;
  157.  
  158.     "V")
  159.         php -v
  160.         sleep 3
  161.  
  162.         clear
  163.  
  164.         bash UltimateFlarumMaster.sh
  165.     ;;
  166.  
  167.     "1")
  168.         echo "Where should Flarum be installed?"
  169.         read WhereInstall
  170.  
  171.         clear
  172.  
  173.         if ! [ WhereInstall ]; then
  174.             echo "This must be stated!"
  175.             sleep 2
  176.  
  177.             bash UltimateFlarumMaster.sh
  178.         fi
  179.  
  180.  
  181.         if ( [ "$WhereInstall" == "." ] && [ -f * ] ); then
  182.             echo "I can't install into the current directory because it's not empty!"
  183.             sleep 2
  184.  
  185.             bash UltimateFlarumMaster.sh
  186.         fi
  187.    
  188.         echo "Installing Flarum"
  189.         composer create-project flarum/flarum $WhereInstall
  190.         rm -r $WhereInstall/*.md
  191.         rm -r $WhereInstall/LICENSE
  192.  
  193.         clear
  194.  
  195.         echo "Remove .nginx.conf? [Y/N]"
  196.         read NginxConf
  197.  
  198.         case $NginxConf in
  199.             "Y")
  200.                 rm -r $WhereInstall/.nginx.conf
  201.             ;;
  202.  
  203.             "N")
  204.             ;;
  205.  
  206.             *)
  207.                 echo "This must be stated!"
  208.                 sleep 2
  209.  
  210.                 bash UltimateFlarumMaster.sh
  211.             ;;
  212.         esac
  213.  
  214.         clear
  215.  
  216.         echo "Remove web.config? [Y/N]"
  217.         read WebConf
  218.  
  219.         case $WebConf in
  220.             "Y")
  221.                 rm -r $WhereInstall/web.config
  222.                 rm -r $WhereInstall/public/web.config
  223.             ;;
  224.  
  225.             "N")
  226.             ;;
  227.  
  228.             *)
  229.                 echo "This must be stated!"
  230.                 sleep 2
  231.  
  232.                 bash UltimateFlarumMaster.sh
  233.             ;;
  234.         esac
  235.  
  236.         echo "Remove .editorconfig? [Y/N]"
  237.         read EditorConf
  238.  
  239.         case $EditorConf in
  240.             "Y")
  241.                 rm -r $WhereInstall/.editorconfig
  242.             ;;
  243.  
  244.             "N")
  245.             ;;
  246.  
  247.             *)
  248.                 echo "This must be stated!"
  249.                 sleep 2
  250.  
  251.                 bash UltimateFlarumMaster.sh
  252.             ;;
  253.         esac
  254.  
  255.         clear
  256.  
  257.         HEIGHT=15
  258.         WIDTH=40
  259.         CHOICE_HEIGHT=2
  260.         BACKTITLE="UltimateFlarumMaster"
  261.         TITLE="UltimateFlarumMaster by Justman10000 | This is under the GNU General Public License v3.0"
  262.         MENU="How should Flarum be confgure? That it on..."
  263.  
  264.         OPTIONS=(1 "a domain or subdomain is running (mydomain.tld or flarum.mydomain.tld)"
  265.                  2 "a underfolder is running (mydomain.tld/flarum)"
  266.                  )
  267.  
  268.         HowConfigure=$(dialog --clear \
  269.                         --backtitle "$BACKTITLE" \
  270.                         --title "$TITLE" \
  271.                         --menu "$MENU" \
  272.                         $HEIGHT $WIDTH $CHOICE_HEIGHT \
  273.                         "${OPTIONS[@]}" \
  274.                         2>&1 >/dev/tty)
  275.  
  276.         clear
  277.  
  278.         case $HowConfigure in
  279.             "1")
  280.                 mv $WhereInstall/public/* $WhereInstall/.
  281.  
  282.                 rm -r $WhereInstall/public
  283.                 wget https://pastebin.com/raw/xiLiHdQa
  284.                 mv xiLiHdQa $WhereInstall/.htaccess
  285.  
  286.                 rm -r $WhereInstall/index.php
  287.                 wget https://pastebin.com/raw/jE3R2saj
  288.                 mv jE3R2saj $WhereInstall/index.php
  289.  
  290.                 rm -r $WhereInstall/site.php
  291.                 wget https://pastebin.com/raw/VrsJfRRz
  292.                 mv VrsJfRRz $WhereInstall/site.php
  293.             ;;
  294.  
  295.             "2")
  296.             ;;
  297.         esac
  298.  
  299.         chmod -R 777 $WhereInstall
  300.  
  301.         bash UltimateFlarumMaster.sh
  302.     ;;
  303.  
  304.     "2")
  305.         composer update
  306.         reset
  307.  
  308.         bash UltimateFlarumMaster.sh
  309.     ;;
  310.  
  311.     "3")
  312.         echo "Where is Flarum be installed?"
  313.         read WhereInstall
  314.  
  315.         if [ "$WhereInstall" ]; then
  316.             rm -r $WhereInstall/*
  317.             rm -r $WhereInstall/.*
  318.  
  319.             clear
  320.  
  321.             echo "Remove directory? [Y/N]"
  322.             read RemoveDiretory
  323.  
  324.             case $RemoveDiretory in
  325.                 "Y")
  326.                     rm -r $WhereInstall
  327.                 ;;
  328.  
  329.                 "N")
  330.                 ;;
  331.  
  332.                 *)
  333.                     echo "This must be stated!"
  334.                     sleep 2
  335.  
  336.                     bash UltimateFlarumMaster.sh
  337.                 ;;
  338.             esac
  339.         fi
  340.  
  341.         if ! [ "$WhereInstall" ]; then
  342.             echo "This must be stated"
  343.             sleep 2
  344.  
  345.             bash UltimateFlarumMaster.sh
  346.         fi
  347.  
  348.         clear
  349.  
  350.         bash UltimateFlarumMaster.sh
  351.     ;;
  352.  
  353.     "4")
  354.         echo "Exit"
  355.         sleep 2
  356.         clear
  357.  
  358.         bash UltimateFlarumMaster.sh
  359.     ;;
  360. esac
Advertisement
RAW Paste Data Copied
Advertisement