Browse Source

Red Matrix install

Bob Mottram 11 years ago
parent
commit
1302615995
1 changed files with 65 additions and 10 deletions
  1. 65
    10
      install-freedombone.sh

+ 65
- 10
install-freedombone.sh View File

@@ -90,7 +90,9 @@ MICROBLOG_ADMIN_PASSWORD=
90 90
 # Domain name or redmatrix installation
91 91
 REDMATRIX_DOMAIN_NAME=
92 92
 REDMATRIX_FREEDNS_SUBDOMAIN_CODE=
93
-REDMATRIX_REPO=""
93
+REDMATRIX_REPO="https://github.com/friendica/red.git"
94
+REDMATRIX_ADDONS_REPO="https://github.com/friendica/red-addons.git"
95
+REDMATRIX_ADMIN_PASSWORD=
94 96
 
95 97
 # Domain name or freedns subdomain for Owncloud installation
96 98
 OWNCLOUD_DOMAIN_NAME=
@@ -2212,6 +2214,14 @@ function get_mariadb_gnusocial_admin_password {
2212 2214
   fi
2213 2215
 }
2214 2216
 
2217
+function get_mariadb_redmatrix_admin_password {
2218
+  if [ -f /home/$MY_USERNAME/README ]; then
2219
+      if grep -q "MariaDB Red Matrix admin password" /home/$MY_USERNAME/README; then
2220
+          REDMATRIX_ADMIN_PASSWORD=$(cat /home/$MY_USERNAME/README | grep "MariaDB Red Matrix admin password" | awk -F ':' '{print $2}' | sed 's/^ *//')
2221
+      fi
2222
+  fi
2223
+}
2224
+
2215 2225
 function install_mariadb {
2216 2226
   if grep -Fxq "install_mariadb" $COMPLETION_FILE; then
2217 2227
       return
@@ -2304,10 +2314,12 @@ quit" > $INSTALL_DIR/batch.sql
2304 2314
   newaliases
2305 2315
 
2306 2316
   # update the dynamic DNS
2307
-  if [[ $MICROBLOG_FREEDNS_SUBDOMAIN_CODE != $FREEDNS_SUBDOMAIN_CODE ]]; then
2308
-      if ! grep -q "$MICROBLOG_DOMAIN_NAME" /usr/bin/dynamicdns; then
2309
-          echo "# $MICROBLOG_DOMAIN_NAME" >> /usr/bin/dynamicdns
2310
-          echo "wget -O - https://freedns.afraid.org/dynamic/update.php?$MICROBLOG_FREEDNS_SUBDOMAIN_CODE== >> /dev/null 2>&1" >> /usr/bin/dynamicdns
2317
+  if [ $MICROBLOG_FREEDNS_SUBDOMAIN_CODE ]; then
2318
+      if [[ $MICROBLOG_FREEDNS_SUBDOMAIN_CODE != $FREEDNS_SUBDOMAIN_CODE ]]; then
2319
+          if ! grep -q "$MICROBLOG_DOMAIN_NAME" /usr/bin/dynamicdns; then
2320
+              echo "# $MICROBLOG_DOMAIN_NAME" >> /usr/bin/dynamicdns
2321
+              echo "wget -O - https://freedns.afraid.org/dynamic/update.php?$MICROBLOG_FREEDNS_SUBDOMAIN_CODE== >> /dev/null 2>&1" >> /usr/bin/dynamicdns
2322
+          fi
2311 2323
       fi
2312 2324
   fi
2313 2325
 
@@ -2461,8 +2473,12 @@ function install_redmatrix {
2461 2473
       REDMATRIX_DOMAIN_NAME=$DOMAIN_NAME
2462 2474
       REDMATRIX_FREEDNS_SUBDOMAIN_CODE=$FREEDNS_SUBDOMAIN_CODE
2463 2475
   fi
2476
+  if [ ! $REDMATRIX_DOMAIN_NAME ]; then
2477
+	  return
2478
+  fi
2464 2479
 
2465 2480
   install_mariadb
2481
+  get_mariadb_password
2466 2482
 
2467 2483
   apt-get -y --force-yes install php5-common php5-cli php5-curl php5-gd php5-mysql php5-mcrypt git
2468 2484
 
@@ -2473,16 +2489,55 @@ function install_redmatrix {
2473 2489
       mkdir /var/www/$REDMATRIX_DOMAIN_NAME/htdocs
2474 2490
   fi
2475 2491
 
2476
-  cd $INSTALL_DIR
2492
+  if [ ! -f /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/index.php ]; then
2493
+      cd $INSTALL_DIR
2494
+      git clone $REDMATRIX_REPO redmatrix
2495
+
2496
+      rm -rf /var/www/$REDMATRIX_DOMAIN_NAME/htdocs
2497
+      mv redmatrix /var/www/$REDMATRIX_DOMAIN_NAME/htdocs
2498
+      chown -R www-data:www-data /var/www/$REDMATRIX_DOMAIN_NAME/htdocs
2499
+	  mkdir /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/view/tpl/smarty3
2500
+	  mkdir /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/store/[data]
2501
+	  mkdir /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/store/[data]/smarty3
2502
+	  chmod 777 /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/view/tpl
2503
+	  chmod 777 /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/view/tpl/smarty3
2504
+	  chmod 777 /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/store/[data]/smarty3
2505
+	  git clone $REDMATRIX_ADDONS_REPO /var/www/$REDMATRIX_DOMAIN_NAME/htdocs/addon
2506
+  fi
2507
+
2508
+  get_mariadb_redmatrix_admin_password
2509
+  if [ ! $REDMATRIX_ADMIN_PASSWORD ]; then
2510
+      REDMATRIX_ADMIN_PASSWORD=$(openssl rand -base64 32)
2511
+      echo '' >> /home/$MY_USERNAME/README
2512
+      echo "Your MariaDB Red Matrix admin password is: $REDMATRIX_ADMIN_PASSWORD" >> /home/$MY_USERNAME/README
2513
+      echo '' >> /home/$MY_USERNAME/README
2514
+      chown $MY_USERNAME:$MY_USERNAME /home/$MY_USERNAME/README
2515
+  fi
2516
+
2517
+  echo "create database redmatrix;
2518
+CREATE USER 'redmatrixadmin'@'localhost' IDENTIFIED BY '$REDMATRIX_ADMIN_PASSWORD';
2519
+GRANT ALL PRIVILEGES ON redmatrix.* TO 'redmatrixadmin'@'localhost';
2520
+quit" > $INSTALL_DIR/batch.sql
2521
+  chmod 600 $INSTALL_DIR/batch.sql
2522
+  mysql -u root --password="$MARIADB_PASSWORD" < $INSTALL_DIR/batch.sql
2523
+  shred -zu $INSTALL_DIR/batch.sql
2524
+
2525
+  if ! grep -q "/var/www/$REDMATRIX_DOMAIN_NAME/htdocs" /etc/crontab; then
2526
+      echo "12,22,32,42,52 * *   *   *   root cd /var/www/$REDMATRIX_DOMAIN_NAME/htdocs; /usr/bin/timeout 240 /usr/bin/php include/poller.php" >> /etc/crontab
2527
+  fi
2477 2528
 
2478 2529
   # update the dynamic DNS
2479
-  if [[ $REDMATRIX_FREEDNS_SUBDOMAIN_CODE != $FREEDNS_SUBDOMAIN_CODE ]]; then
2480
-      if ! grep -q "$REDMATRIX_DOMAIN_NAME" /usr/bin/dynamicdns; then
2481
-          echo "# $REDMATRIX_DOMAIN_NAME" >> /usr/bin/dynamicdns
2482
-          echo "wget -O - https://freedns.afraid.org/dynamic/update.php?$REDMATRIX_FREEDNS_SUBDOMAIN_CODE== >> /dev/null 2>&1" >> /usr/bin/dynamicdns
2530
+  if [ $REDMATRIX_FREEDNS_SUBDOMAIN_CODE ]; then
2531
+      if [[ $REDMATRIX_FREEDNS_SUBDOMAIN_CODE != $FREEDNS_SUBDOMAIN_CODE ]]; then
2532
+          if ! grep -q "$REDMATRIX_DOMAIN_NAME" /usr/bin/dynamicdns; then
2533
+              echo "# $REDMATRIX_DOMAIN_NAME" >> /usr/bin/dynamicdns
2534
+              echo "wget -O - https://freedns.afraid.org/dynamic/update.php?$REDMATRIX_FREEDNS_SUBDOMAIN_CODE== >> /dev/null 2>&1" >> /usr/bin/dynamicdns
2535
+          fi
2483 2536
       fi
2484 2537
   fi
2485 2538
 
2539
+  service cron restart
2540
+
2486 2541
   echo 'install_redmatrix' >> $COMPLETION_FILE
2487 2542
 }
2488 2543