|
@@ -154,6 +154,13 @@ REDMATRIX_REPO="https://github.com/redmatrix/redmatrix.git"
|
154
|
154
|
REDMATRIX_ADDONS_REPO="https://github.com/redmatrix/redmatrix-addons.git"
|
155
|
155
|
REDMATRIX_ADMIN_PASSWORD=
|
156
|
156
|
|
|
157
|
+# Domain name for hubzilla installation
|
|
158
|
+HUBZILLA_DOMAIN_NAME=
|
|
159
|
+HUBZILLA_CODE=
|
|
160
|
+HUBZILLA_REPO="https://github.com/redmatrix/hubzilla.git"
|
|
161
|
+HUBZILLA_ADDONS_REPO="https://github.com/redmatrix/hubzilla-addons.git"
|
|
162
|
+HUBZILLA_ADMIN_PASSWORD=
|
|
163
|
+
|
157
|
164
|
# Domain name for git hosting installation
|
158
|
165
|
GIT_DOMAIN_NAME=
|
159
|
166
|
GIT_CODE=
|
|
@@ -439,6 +446,7 @@ function show_help {
|
439
|
446
|
echo ' --blogdomain Blog domain name'
|
440
|
447
|
echo ' --ownclouddomain Owncloud domain name'
|
441
|
448
|
echo ' --redmatrixdomain Redmatrix domain name'
|
|
449
|
+ echo ' --hubzilladomain Hubzilla domain name'
|
442
|
450
|
echo ' --gitdomain Git hosting domain name'
|
443
|
451
|
echo ' -t --time Domain used as a TLS time source'
|
444
|
452
|
echo ' --ssh ssh port number'
|
|
@@ -591,6 +599,11 @@ else
|
591
|
599
|
shift
|
592
|
600
|
REDMATRIX_DOMAIN_NAME="$1"
|
593
|
601
|
;;
|
|
602
|
+ # hubzilla domain name
|
|
603
|
+ --hubzilladomain)
|
|
604
|
+ shift
|
|
605
|
+ HUBZILLA_DOMAIN_NAME="$1"
|
|
606
|
+ ;;
|
594
|
607
|
# git hosting domain name
|
595
|
608
|
--gitdomain)
|
596
|
609
|
shift
|
|
@@ -979,6 +992,12 @@ function read_configuration {
|
979
|
992
|
if grep -q "REDMATRIX_CODE" $CONFIGURATION_FILE; then
|
980
|
993
|
REDMATRIX_CODE=$(grep "REDMATRIX_CODE" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
|
981
|
994
|
fi
|
|
995
|
+ if grep -q "HUBZILLA_DOMAIN_NAME" $CONFIGURATION_FILE; then
|
|
996
|
+ HUBZILLA_DOMAIN_NAME=$(grep "HUBZILLA_DOMAIN_NAME" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
|
|
997
|
+ fi
|
|
998
|
+ if grep -q "HUBZILLA_CODE" $CONFIGURATION_FILE; then
|
|
999
|
+ HUBZILLA_CODE=$(grep "HUBZILLA_CODE" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
|
|
1000
|
+ fi
|
982
|
1001
|
if grep -q "OWNCLOUD_DOMAIN_NAME" $CONFIGURATION_FILE; then
|
983
|
1002
|
OWNCLOUD_DOMAIN_NAME=$(grep "OWNCLOUD_DOMAIN_NAME" $CONFIGURATION_FILE | awk -F '=' '{print $2}')
|
984
|
1003
|
fi
|
|
@@ -1047,106 +1066,151 @@ function check_domains {
|
1047
|
1066
|
if [ $WIKI_DOMAIN_NAME ]; then
|
1048
|
1067
|
test_domain_name "$WIKI_DOMAIN_NAME"
|
1049
|
1068
|
|
1050
|
|
- if [[ "$WIKI_DOMAIN_NAME" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
|
1069
|
+ if [[ "$test_domain_name" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
1051
|
1070
|
echo 'Wiki domain name is the same as Owncloud domain name. They must be different'
|
1052
|
1071
|
exit 73863
|
1053
|
1072
|
fi
|
1054
|
|
- if [[ "$WIKI_DOMAIN_NAME" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
|
1073
|
+ if [[ "$test_domain_name" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
1055
|
1074
|
echo 'Wiki domain name is the same as blog domain name. They must be different'
|
1056
|
1075
|
exit 97326
|
1057
|
1076
|
fi
|
1058
|
|
- if [[ "$WIKI_DOMAIN_NAME" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
|
1077
|
+ if [[ "$test_domain_name" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
1059
|
1078
|
echo 'Wiki domain name is the same as microblog domain name. They must be different'
|
1060
|
1079
|
exit 36827
|
1061
|
1080
|
fi
|
1062
|
|
- if [[ "$WIKI_DOMAIN_NAME" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
|
1081
|
+ if [[ "$test_domain_name" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
1063
|
1082
|
echo 'Wiki domain name is the same as redmatrix domain name. They must be different'
|
1064
|
1083
|
exit 93637
|
1065
|
1084
|
fi
|
|
1085
|
+ if [[ "$test_domain_name" == "$HUBZILLA_DOMAIN_NAME" ]]; then
|
|
1086
|
+ echo 'Wiki domain name is the same as hubzilla domain name. They must be different'
|
|
1087
|
+ exit 65848
|
|
1088
|
+ fi
|
1066
|
1089
|
fi
|
1067
|
1090
|
|
1068
|
1091
|
if [ $OWNCLOUD_DOMAIN_NAME ]; then
|
1069
|
1092
|
test_domain_name "$OWNCLOUD_DOMAIN_NAME"
|
1070
|
1093
|
|
1071
|
|
- if [[ "$OWNCLOUD_DOMAIN_NAME" == "$WIKI_DOMAIN_NAME" ]]; then
|
|
1094
|
+ if [[ "$test_domain_name" == "$WIKI_DOMAIN_NAME" ]]; then
|
1072
|
1095
|
echo 'Owncloud domain name is the same as wiki domain name. They must be different'
|
1073
|
1096
|
exit 37994
|
1074
|
1097
|
fi
|
1075
|
|
- if [[ "$OWNCLOUD_DOMAIN_NAME" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
|
1098
|
+ if [[ "$test_domain_name" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
1076
|
1099
|
echo 'Owncloud domain name is the same as blog domain name. They must be different'
|
1077
|
1100
|
exit 37936
|
1078
|
1101
|
fi
|
1079
|
|
- if [[ "$OWNCLOUD_DOMAIN_NAME" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
|
1102
|
+ if [[ "$test_domain_name" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
1080
|
1103
|
echo 'Owncloud domain name is the same as microblog domain name. They must be different'
|
1081
|
1104
|
exit 36896
|
1082
|
1105
|
fi
|
1083
|
|
- if [[ "$OWNCLOUD_DOMAIN_NAME" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
|
1106
|
+ if [[ "$test_domain_name" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
1084
|
1107
|
echo 'Owncloud domain name is the same as redmatrix domain name. They must be different'
|
1085
|
1108
|
exit 79362
|
1086
|
1109
|
fi
|
|
1110
|
+ if [[ "$test_domain_name" == "$HUBZILLA_DOMAIN_NAME" ]]; then
|
|
1111
|
+ echo 'Owncloud domain name is the same as hubzilla domain name. They must be different'
|
|
1112
|
+ exit 68365
|
|
1113
|
+ fi
|
1087
|
1114
|
fi
|
1088
|
1115
|
|
1089
|
1116
|
if [ $FULLBLOG_DOMAIN_NAME ]; then
|
1090
|
1117
|
test_domain_name "$FULLBLOG_DOMAIN_NAME"
|
1091
|
1118
|
|
1092
|
|
- if [[ "$FULLBLOG_DOMAIN_NAME" == "$WIKI_DOMAIN_NAME" ]]; then
|
|
1119
|
+ if [[ "$test_domain_name" == "$WIKI_DOMAIN_NAME" ]]; then
|
1093
|
1120
|
echo 'Blog domain name is the same as wiki domain name. They must be different'
|
1094
|
1121
|
exit 62348
|
1095
|
1122
|
fi
|
1096
|
|
- if [[ "$FULLBLOG_DOMAIN_NAME" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
|
1123
|
+ if [[ "$test_domain_name" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
1097
|
1124
|
echo 'Blog domain name is the same as Owncloud domain name. They must be different'
|
1098
|
1125
|
exit 84682
|
1099
|
1126
|
fi
|
1100
|
|
- if [[ "$FULLBLOG_DOMAIN_NAME" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
|
1127
|
+ if [[ "$test_domain_name" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
1101
|
1128
|
echo 'Blog domain name is the same as microblog domain name. They must be different'
|
1102
|
1129
|
exit 38236
|
1103
|
1130
|
fi
|
1104
|
|
- if [[ "$FULLBLOG_DOMAIN_NAME" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
|
1131
|
+ if [[ "$test_domain_name" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
1105
|
1132
|
echo 'Blog domain name is the same as redmatrix domain name. They must be different'
|
1106
|
1133
|
exit 36813
|
1107
|
1134
|
fi
|
|
1135
|
+ if [[ "$test_domain_name" == "$HUBZILLA_DOMAIN_NAME" ]]; then
|
|
1136
|
+ echo 'Blog domain name is the same as hubzilla domain name. They must be different'
|
|
1137
|
+ exit 35483
|
|
1138
|
+ fi
|
1108
|
1139
|
fi
|
1109
|
1140
|
|
1110
|
1141
|
if [ $MICROBLOG_DOMAIN_NAME ]; then
|
1111
|
1142
|
test_domain_name "$MICROBLOG_DOMAIN_NAME"
|
1112
|
1143
|
|
1113
|
|
- if [[ "$MICROBLOG_DOMAIN_NAME" == "$WIKI_DOMAIN_NAME" ]]; then
|
|
1144
|
+ if [[ "$test_domain_name" == "$WIKI_DOMAIN_NAME" ]]; then
|
1114
|
1145
|
echo 'Microblog domain name is the same as wiki domain name. They must be different'
|
1115
|
1146
|
exit 73924
|
1116
|
1147
|
fi
|
1117
|
|
- if [[ "$MICROBLOG_DOMAIN_NAME" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
|
1148
|
+ if [[ "$test_domain_name" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
1118
|
1149
|
echo 'Microblog domain name is the same as Owncloud domain name. They must be different'
|
1119
|
1150
|
exit 73683
|
1120
|
1151
|
fi
|
1121
|
|
- if [[ "$MICROBLOG_DOMAIN_NAME" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
|
1152
|
+ if [[ "$test_domain_name" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
1122
|
1153
|
echo 'Microblog domain name is the same as blog domain name. They must be different'
|
1123
|
1154
|
exit 26832
|
1124
|
1155
|
fi
|
1125
|
|
- if [[ "$MICROBLOG_DOMAIN_NAME" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
|
1156
|
+ if [[ "$test_domain_name" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
1126
|
1157
|
echo 'Microblog domain name is the same as redmatrix domain name. They must be different'
|
1127
|
1158
|
exit 36373
|
1128
|
1159
|
fi
|
|
1160
|
+ if [[ "$test_domain_name" == "$HUBZILLA_DOMAIN_NAME" ]]; then
|
|
1161
|
+ echo 'Microblog domain name is the same as hubzilla domain name. They must be different'
|
|
1162
|
+ exit 678382
|
|
1163
|
+ fi
|
1129
|
1164
|
fi
|
1130
|
1165
|
|
1131
|
1166
|
if [ $REDMATRIX_DOMAIN_NAME ]; then
|
1132
|
1167
|
test_domain_name "$REDMATRIX_DOMAIN_NAME"
|
1133
|
1168
|
|
1134
|
|
- if [[ "$REDMATRIX_DOMAIN_NAME" == "$WIKI_DOMAIN_NAME" ]]; then
|
|
1169
|
+ if [[ "$test_domain_name" == "$WIKI_DOMAIN_NAME" ]]; then
|
|
1170
|
+ echo 'RedMatrix domain name is the same as wiki domain name. They must be different'
|
|
1171
|
+ exit 83682
|
|
1172
|
+ fi
|
|
1173
|
+ if [[ "$test_domain_name" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
|
1174
|
+ echo 'RedMatrix domain name is the same as Owncloud domain name. They must be different'
|
|
1175
|
+ exit 65192
|
|
1176
|
+ fi
|
|
1177
|
+ if [[ "$test_domain_name" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
|
1178
|
+ echo 'RedMatrix domain name is the same as blog domain name. They must be different'
|
|
1179
|
+ exit 74817
|
|
1180
|
+ fi
|
|
1181
|
+ if [[ "$test_domain_name" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
|
1182
|
+ echo 'RedMatrix domain name is the same as microblog domain name. They must be different'
|
|
1183
|
+ exit 83683
|
|
1184
|
+ fi
|
|
1185
|
+ if [[ "$test_domain_name" == "$HUBZILLA_DOMAIN_NAME" ]]; then
|
|
1186
|
+ echo 'RedMatrix domain name is the same as hubzilla domain name. They must be different'
|
|
1187
|
+ exit 82672
|
|
1188
|
+ fi
|
|
1189
|
+ fi
|
|
1190
|
+
|
|
1191
|
+ if [ $HUBZILLA_DOMAIN_NAME ]; then
|
|
1192
|
+ test_domain_name "$HUBZILLA_DOMAIN_NAME"
|
|
1193
|
+
|
|
1194
|
+ if [[ "$test_domain_name" == "$WIKI_DOMAIN_NAME" ]]; then
|
1135
|
1195
|
echo 'RedMatrix domain name is the same as wiki domain name. They must be different'
|
1136
|
1196
|
exit 83682
|
1137
|
1197
|
fi
|
1138
|
|
- if [[ "$REDMATRIX_DOMAIN_NAME" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
|
1198
|
+ if [[ "$test_domain_name" == "$OWNCLOUD_DOMAIN_NAME" ]]; then
|
1139
|
1199
|
echo 'RedMatrix domain name is the same as Owncloud domain name. They must be different'
|
1140
|
1200
|
exit 65192
|
1141
|
1201
|
fi
|
1142
|
|
- if [[ "$REDMATRIX_DOMAIN_NAME" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
|
1202
|
+ if [[ "$test_domain_name" == "$FULLBLOG_DOMAIN_NAME" ]]; then
|
1143
|
1203
|
echo 'RedMatrix domain name is the same as blog domain name. They must be different'
|
1144
|
1204
|
exit 74817
|
1145
|
1205
|
fi
|
1146
|
|
- if [[ "$REDMATRIX_DOMAIN_NAME" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
|
1206
|
+ if [[ "$test_domain_name" == "$MICROBLOG_DOMAIN_NAME" ]]; then
|
1147
|
1207
|
echo 'RedMatrix domain name is the same as microblog domain name. They must be different'
|
1148
|
1208
|
exit 83683
|
1149
|
1209
|
fi
|
|
1210
|
+ if [[ "$test_domain_name" == "$REDMATRIX_DOMAIN_NAME" ]]; then
|
|
1211
|
+ echo 'RedMatrix domain name is the same as redmatrix domain name. They must be different'
|
|
1212
|
+ exit 82672
|
|
1213
|
+ fi
|
1150
|
1214
|
fi
|
1151
|
1215
|
}
|
1152
|
1216
|
|
|
@@ -2404,6 +2468,14 @@ function get_mariadb_redmatrix_admin_password {
|
2404
|
2468
|
fi
|
2405
|
2469
|
}
|
2406
|
2470
|
|
|
2471
|
+function get_mariadb_hubzilla_admin_password {
|
|
2472
|
+ if [ -f /home/$MY_USERNAME/README ]; then
|
|
2473
|
+ if grep -q "MariaDB Hubzilla admin password" /home/$MY_USERNAME/README; then
|
|
2474
|
+ HUBZILLA_ADMIN_PASSWORD=$(cat /home/$MY_USERNAME/README | grep "MariaDB Hubzilla admin password" | awk -F ':' '{print $2}' | sed 's/^ *//')
|
|
2475
|
+ fi
|
|
2476
|
+ fi
|
|
2477
|
+}
|
|
2478
|
+
|
2407
|
2479
|
function get_mariadb_owncloud_admin_password {
|
2408
|
2480
|
if [ -f /home/$MY_USERNAME/README ]; then
|
2409
|
2481
|
if grep -q "Owncloud database password" /home/$MY_USERNAME/README; then
|
|
@@ -2422,6 +2494,7 @@ function create_backup_script {
|
2422
|
2494
|
get_mariadb_password
|
2423
|
2495
|
get_mariadb_gnusocial_admin_password
|
2424
|
2496
|
get_mariadb_redmatrix_admin_password
|
|
2497
|
+ get_mariadb_hubzilla_admin_password
|
2425
|
2498
|
get_mariadb_owncloud_admin_password
|
2426
|
2499
|
get_mariadb_git_admin_password
|
2427
|
2500
|
|
|
@@ -2574,6 +2647,47 @@ function create_backup_script {
|
2574
|
2647
|
echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
2575
|
2648
|
echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
2576
|
2649
|
fi
|
|
2650
|
+ if grep -Fxq "install_hubzilla" $COMPLETION_FILE; then
|
|
2651
|
+ BACKUP_INCLUDES_DATABASES="yes"
|
|
2652
|
+ echo "if [ ! -d $USB_MOUNT/backup/hubzilla ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2653
|
+ echo " mkdir -p $USB_MOUNT/backup/hubzilla" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2654
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2655
|
+ echo "if [ ! -d $USB_MOUNT/backup/hubzilladata ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2656
|
+ echo " mkdir -p $USB_MOUNT/backup/hubzilladata" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2657
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2658
|
+ echo "if [ ! -d /root/temphubzilladata ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2659
|
+ echo " mkdir -p /root/temphubzilladata" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2660
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2661
|
+ echo 'echo "Obtaining Red Matrix database backup"' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2662
|
+ echo 'mysqldump --password=$DATABASE_PASSWORD hubzilla > /root/temphubzilladata/hubzilla.sql' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2663
|
+ echo "if [ ! -s /root/temphubzilladata/hubzilla.sql ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2664
|
+ echo ' echo "Red Matrix database could not be saved"' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2665
|
+ echo ' if [ ! $DATABASE_PASSWORD ]; then' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2666
|
+ echo " echo 'No MariaDB password was given'" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2667
|
+ echo " fi" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2668
|
+ echo ' shred -zu /root/temphubzilladata/*' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2669
|
+ echo ' rm -rf /root/temphubzilladata' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2670
|
+ echo " umount $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2671
|
+ echo " rm -rf $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2672
|
+ echo ' exit 378' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2673
|
+ echo "fi" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2674
|
+ echo "rsyncrypto -v -r /root/temphubzilladata $USB_MOUNT/backup/hubzilladata $USB_MOUNT/backup/hubzilladata.keys $BACKUP_CERTIFICATE" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2675
|
+ echo 'if [ ! "$?" = "0" ]; then' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2676
|
+ echo " umount $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2677
|
+ echo " rm -rf $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2678
|
+ echo ' exit 285' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2679
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2680
|
+ echo 'shred -zu /root/temphubzilladata/*' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2681
|
+ echo 'rm -rf /root/temphubzilladata' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2682
|
+ echo 'echo "Backing up Red Matrix installation"' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2683
|
+ echo "rsyncrypto -v -r /var/www/$HUBZILLA_DOMAIN_NAME/htdocs $USB_MOUNT/backup/hubzilla $USB_MOUNT/backup/hubzilla.keys $BACKUP_CERTIFICATE" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2684
|
+ echo 'if [ ! "$?" = "0" ]; then' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2685
|
+ echo " umount $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2686
|
+ echo " rm -rf $USB_MOUNT" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2687
|
+ echo ' exit 593' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2688
|
+ echo 'fi' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2689
|
+ echo '' >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
2690
|
+ fi
|
2577
|
2691
|
if grep -Fxq "install_owncloud" $COMPLETION_FILE; then
|
2578
|
2692
|
BACKUP_INCLUDES_DATABASES="yes"
|
2579
|
2693
|
echo "if [ ! -d $USB_MOUNT/backup/owncloud ]; then" >> /usr/bin/$BACKUP_SCRIPT_NAME
|
|
@@ -3081,6 +3195,7 @@ function create_restore_script {
|
3081
|
3195
|
get_mariadb_password
|
3082
|
3196
|
get_mariadb_gnusocial_admin_password
|
3083
|
3197
|
get_mariadb_redmatrix_admin_password
|
|
3198
|
+ get_mariadb_hubzilla_admin_password
|
3084
|
3199
|
get_mariadb_owncloud_admin_password
|
3085
|
3200
|
get_mariadb_git_admin_password
|
3086
|
3201
|
|
|
@@ -3496,6 +3611,56 @@ function create_restore_script {
|
3496
|
3611
|
echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
3497
|
3612
|
echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
3498
|
3613
|
fi
|
|
3614
|
+ if grep -Fxq "install_hubzilla" $COMPLETION_FILE; then
|
|
3615
|
+ BACKUP_INCLUDES_WEBSITES="yes"
|
|
3616
|
+ echo "if [ -d $USB_MOUNT/backup/hubzilla ]; then" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3617
|
+ echo ' echo "Restoring Red Matrix database"' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3618
|
+ echo ' if [ ! -d /root/temphubzilladata ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3619
|
+ echo ' mkdir /root/temphubzilladata' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3620
|
+ echo ' fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3621
|
+ echo " rsyncrypto -v -d -r $USB_MOUNT/backup/hubzilladata /root/temphubzilladata $USB_MOUNT/backup/hubzilladata.keys $BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3622
|
+ echo ' if [ ! -f /root/temphubzilladata/usb/backup/hubzilladata/temphubzilladata/hubzilla.sql ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3623
|
+ echo ' echo "Unable to restore Red Matrix database"' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3624
|
+ echo ' rm -rf /root/temphubzilladata' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3625
|
+ echo " umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3626
|
+ echo " rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3627
|
+ echo ' exit 504' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3628
|
+ echo ' fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3629
|
+ echo ' mysqlsuccess=$(mysql -u root --password=$DATABASE_PASSWORD hubzilla -o < /root/temphubzilladata/usb/backup/hubzilladata/temphubzilladata/hubzilla.sql)' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3630
|
+ echo ' if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3631
|
+ echo ' echo "$mysqlsuccess"' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3632
|
+ echo " umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3633
|
+ echo " rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3634
|
+ echo ' exit 965' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3635
|
+ echo ' fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3636
|
+ echo ' shred -zu /root/temphubzilladata/usb/backup/hubzilladata/temphubzilladata/*' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3637
|
+ echo ' rm -rf /root/temphubzilladata' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3638
|
+ echo ' echo "Restoring Red Matrix installation"' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3639
|
+ echo ' if [ ! -d /root/temphubzilla ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3640
|
+ echo ' mkdir /root/temphubzilla' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3641
|
+ echo ' fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3642
|
+ echo " rsyncrypto -v -d -r $USB_MOUNT/backup/hubzilla /root/temphubzilla $USB_MOUNT/backup/hubzilla.keys $BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3643
|
+ echo " rm -rf /var/www/$HUBZILLA_DOMAIN_NAME/htdocs" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3644
|
+ echo ' if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3645
|
+ echo " cp -r /root/temphubzilla/usb/backup/hubzilla/www/$HUBZILLA_DOMAIN_NAME/htdocs/* /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3646
|
+ echo ' else' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3647
|
+ echo " mv /root/temphubzilla/usb/backup/hubzilla/www/$HUBZILLA_DOMAIN_NAME/htdocs /var/www/$HUBZILLA_DOMAIN_NAME/" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3648
|
+ echo ' fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3649
|
+ echo ' if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3650
|
+ echo " umount $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3651
|
+ echo " rm -rf $USB_MOUNT" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3652
|
+ echo ' exit 759' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3653
|
+ echo ' fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3654
|
+ echo ' rm -rf /root/temphubzilla' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3655
|
+ echo ' # Ensure that the bundled SSL cert is being used' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3656
|
+ echo " if [ -f /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.bundle.crt ]; then" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3657
|
+ echo " sed -i 's|$HUBZILLA_DOMAIN_NAME.crt|$HUBZILLA_DOMAIN_NAME.bundle.crt|g' /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3658
|
+ echo ' fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3659
|
+ echo " chmod 777 /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store/[data]/smarty3" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3660
|
+ echo " chown -R www-data:www-data /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/*" >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3661
|
+ echo 'fi' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3662
|
+ echo '' >> /usr/bin/$RESTORE_SCRIPT_NAME
|
|
3663
|
+ fi
|
3499
|
3664
|
|
3500
|
3665
|
if grep -Fxq "install_owncloud" $COMPLETION_FILE; then
|
3501
|
3666
|
BACKUP_INCLUDES_WEBSITES="yes"
|
|
@@ -3842,6 +4007,12 @@ function create_freedns_updater {
|
3842
|
4007
|
echo "$FREEDNS_WGET$REDMATRIX_CODE=" >> /usr/bin/dynamicdns
|
3843
|
4008
|
fi
|
3844
|
4009
|
fi
|
|
4010
|
+ if [ $HUBZILLA_CODE ]; then
|
|
4011
|
+ if [[ $HUBZILLA_CODE != "$DEFAULT_DOMAIN_CODE" ]]; then
|
|
4012
|
+ echo "# $HUBZILLA_DOMAIN_NAME" >> /usr/bin/dynamicdns
|
|
4013
|
+ echo "$FREEDNS_WGET$HUBZILLA_CODE=" >> /usr/bin/dynamicdns
|
|
4014
|
+ fi
|
|
4015
|
+ fi
|
3845
|
4016
|
if [ $OWNCLOUD_CODE ]; then
|
3846
|
4017
|
if [[ $OWNCLOUD_CODE != "$DEFAULT_DOMAIN_CODE" ]]; then
|
3847
|
4018
|
echo "# $OWNCLOUD_DOMAIN_NAME" >> /usr/bin/dynamicdns
|
|
@@ -3891,6 +4062,7 @@ function backup_to_friends_servers {
|
3891
|
4062
|
get_mariadb_password
|
3892
|
4063
|
get_mariadb_gnusocial_admin_password
|
3893
|
4064
|
get_mariadb_redmatrix_admin_password
|
|
4065
|
+ get_mariadb_hubzilla_admin_password
|
3894
|
4066
|
get_mariadb_owncloud_admin_password
|
3895
|
4067
|
get_mariadb_git_admin_password
|
3896
|
4068
|
|
|
@@ -4044,6 +4216,53 @@ function backup_to_friends_servers {
|
4044
|
4216
|
echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
4045
|
4217
|
echo '' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
4046
|
4218
|
fi
|
|
4219
|
+ if grep -Fxq "install_hubzilla" $COMPLETION_FILE; then
|
|
4220
|
+ BACKUP_INCLUDES_DATABASES="yes"
|
|
4221
|
+ echo 'if [ ! -d $SERVER_DIRECTORY/backup/hubzilla ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4222
|
+ echo ' mkdir -p $SERVER_DIRECTORY/backup/hubzilla' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4223
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4224
|
+ echo 'if [ ! -d $SERVER_DIRECTORY/backup/hubzilladata ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4225
|
+ echo ' mkdir -p $SERVER_DIRECTORY/backup/hubzilladata' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4226
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4227
|
+ echo "if [ ! -d /root/temphubzilladata ]; then" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4228
|
+ echo " mkdir -p /root/temphubzilladata" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4229
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4230
|
+ echo 'echo "Obtaining Red Matrix database backup"' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4231
|
+ echo 'mysqldump --password=$DATABASE_PASSWORD hubzilla > /root/temphubzilladata/hubzilla.sql' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4232
|
+ echo "if [ ! -s /root/temphubzilladata/hubzilla.sql ]; then" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4233
|
+ echo ' echo "Red Matrix database could not be saved"' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4234
|
+ echo ' if [ ! $DATABASE_PASSWORD ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4235
|
+ echo " echo 'No MariaDB password was given'" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4236
|
+ echo " fi" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4237
|
+ echo ' # Send a warning email' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4238
|
+ echo -n ' echo "Unable to export hubzilla database" | mail -s "Freedombone backup to friends" ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4239
|
+ echo "$MY_EMAIL_ADDRESS" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4240
|
+ echo ' exit 378' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4241
|
+ echo "fi" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4242
|
+ echo -n 'rsyncrypto -v -r /root/temphubzilladata $SERVER_DIRECTORY/backup/hubzilladata $SERVER_DIRECTORY/backup/hubzilladata.keys ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4243
|
+ echo "$BACKUP_CERTIFICATE" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4244
|
+ echo 'if [ ! "$?" = "0" ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4245
|
+ echo ' shred -zu /root/temphubzilladata/*' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4246
|
+ echo ' rm -rf /root/temphubzilladata' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4247
|
+ echo ' # Send a warning email' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4248
|
+ echo -n ' echo "Unable to encrypt hubzilla database" | mail -s "Freedombone backup to friends" ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4249
|
+ echo "$MY_EMAIL_ADDRESS" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4250
|
+ echo ' exit 285' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4251
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4252
|
+ echo 'shred -zu /root/temphubzilladata/*' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4253
|
+ echo 'rm -rf /root/temphubzilladata' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4254
|
+ echo 'echo "Backing up Red Matrix installation"' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4255
|
+ echo -n "rsyncrypto -v -r /var/www/$HUBZILLA_DOMAIN_NAME/htdocs " >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4256
|
+ echo -n '$SERVER_DIRECTORY/backup/hubzilla $SERVER_DIRECTORY/backup/hubzilla.keys ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4257
|
+ echo "$BACKUP_CERTIFICATE" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4258
|
+ echo 'if [ ! "$?" = "0" ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4259
|
+ echo ' # Send a warning email' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4260
|
+ echo -n ' echo "Unable to encrypt hubzilla installation" | mail -s "Freedombone backup to friends" ' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4261
|
+ echo "$MY_EMAIL_ADDRESS" >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4262
|
+ echo ' exit 593' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4263
|
+ echo 'fi' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4264
|
+ echo '' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
4265
|
+ fi
|
4047
|
4266
|
if grep -Fxq "install_owncloud" $COMPLETION_FILE; then
|
4048
|
4267
|
BACKUP_INCLUDES_DATABASES="yes"
|
4049
|
4268
|
echo 'if [ ! -d $SERVER_DIRECTORY/backup/owncloud ]; then' >> /usr/bin/$BACKUP_TO_FRIENDS_SCRIPT_NAME
|
|
@@ -4703,6 +4922,7 @@ function restore_from_friend {
|
4703
|
4922
|
get_mariadb_password
|
4704
|
4923
|
get_mariadb_gnusocial_admin_password
|
4705
|
4924
|
get_mariadb_redmatrix_admin_password
|
|
4925
|
+ get_mariadb_hubzilla_admin_password
|
4706
|
4926
|
get_mariadb_owncloud_admin_password
|
4707
|
4927
|
get_mariadb_git_admin_password
|
4708
|
4928
|
|
|
@@ -5087,6 +5307,52 @@ function restore_from_friend {
|
5087
|
5307
|
echo 'fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
5088
|
5308
|
echo '' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
5089
|
5309
|
fi
|
|
5310
|
+ if grep -Fxq "install_hubzilla" $COMPLETION_FILE; then
|
|
5311
|
+ BACKUP_INCLUDES_WEBSITES="yes"
|
|
5312
|
+ echo 'if [ -d $SERVER_DIRECTORY/backup/hubzilla ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5313
|
+ echo ' echo "Restoring Red Matrix database"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5314
|
+ echo ' if [ ! -d /root/temphubzilladata ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5315
|
+ echo ' mkdir /root/temphubzilladata' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5316
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5317
|
+ echo -n ' rsyncrypto -v -d -r $SERVER_DIRECTORY/backup/hubzilladata /root/temphubzilladata $SERVER_DIRECTORY/backup/hubzilladata.keys ' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5318
|
+ echo "$BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5319
|
+ echo ' if [ ! -f /root/temphubzilladata/remoterestore/backup/hubzilladata/temphubzilladata/hubzilla.sql ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5320
|
+ echo ' echo "Unable to restore Red Matrix database"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5321
|
+ echo ' rm -rf /root/temphubzilladata' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5322
|
+ echo ' exit 504' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5323
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5324
|
+ echo ' mysqlsuccess=$(mysql -u root --password=$DATABASE_PASSWORD hubzilla -o < /root/temphubzilladata/remoterestore/backup/hubzilladata/temphubzilladata/hubzilla.sql)' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5325
|
+ echo ' if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5326
|
+ echo ' echo "$mysqlsuccess"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5327
|
+ echo ' exit 965' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5328
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5329
|
+ echo ' shred -zu /root/temphubzilladata/remoterestore/backup/hubzilladata/temphubzilladata/*' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5330
|
+ echo ' rm -rf /root/temphubzilladata' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5331
|
+ echo ' echo "Restoring Red Matrix installation"' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5332
|
+ echo ' if [ ! -d /root/temphubzilla ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5333
|
+ echo ' mkdir /root/temphubzilla' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5334
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5335
|
+ echo -n ' rsyncrypto -v -d -r $SERVER_DIRECTORY/backup/hubzilla /root/temphubzilla $SERVER_DIRECTORY/backup/hubzilla.keys ' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5336
|
+ echo "$BACKUP_CERTIFICATE" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5337
|
+ echo " rm -rf /var/www/$HUBZILLA_DOMAIN_NAME/htdocs" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5338
|
+ echo ' if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5339
|
+ echo " cp -r /root/temphubzilla/remoterestore/backup/hubzilla/www/$HUBZILLA_DOMAIN_NAME/htdocs/* /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5340
|
+ echo ' else' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5341
|
+ echo " mv /root/temphubzilla/remoterestore/backup/hubzilla/www/$HUBZILLA_DOMAIN_NAME/htdocs /var/www/$HUBZILLA_DOMAIN_NAME/" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5342
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5343
|
+ echo ' if [ ! "$?" = "0" ]; then' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5344
|
+ echo ' exit 759' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5345
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5346
|
+ echo ' rm -rf /root/temphubzilla' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5347
|
+ echo ' # Ensure that the bundled SSL cert is being used' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5348
|
+ echo " if [ -f /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.bundle.crt ]; then" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5349
|
+ echo " sed -i 's|$HUBZILLA_DOMAIN_NAME.crt|$HUBZILLA_DOMAIN_NAME.bundle.crt|g' /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5350
|
+ echo ' fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5351
|
+ echo " chmod 777 /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store/[data]/smarty3" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5352
|
+ echo " chown -R www-data:www-data /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/*" >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5353
|
+ echo 'fi' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5354
|
+ echo '' >> /usr/bin/$RESTORE_FROM_FRIEND_SCRIPT_NAME
|
|
5355
|
+ fi
|
5090
|
5356
|
|
5091
|
5357
|
if grep -Fxq "install_owncloud" $COMPLETION_FILE; then
|
5092
|
5358
|
BACKUP_INCLUDES_WEBSITES="yes"
|
|
@@ -9859,6 +10125,272 @@ quit" > $INSTALL_DIR/batch.sql
|
9859
|
10125
|
echo 'install_redmatrix' >> $COMPLETION_FILE
|
9860
|
10126
|
}
|
9861
|
10127
|
|
|
10128
|
+function install_hubzilla {
|
|
10129
|
+ if grep -Fxq "install_hubzilla" $COMPLETION_FILE; then
|
|
10130
|
+ return
|
|
10131
|
+ fi
|
|
10132
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_MEDIA" || $SYSTEM_TYPE == "$VARIANT_DEVELOPER" || $SYSTEM_TYPE == "$VARIANT_MESH" ]]; then
|
|
10133
|
+ return
|
|
10134
|
+ fi
|
|
10135
|
+ if [ ! $HUBZILLA_DOMAIN_NAME ]; then
|
|
10136
|
+ return
|
|
10137
|
+ fi
|
|
10138
|
+
|
|
10139
|
+ install_mariadb
|
|
10140
|
+ get_mariadb_password
|
|
10141
|
+ repair_databases_script
|
|
10142
|
+
|
|
10143
|
+ apt-get -y install php5-common php5-cli php5-curl php5-gd php5-mysql php5-mcrypt git
|
|
10144
|
+
|
|
10145
|
+ if [ ! -d /var/www/$HUBZILLA_DOMAIN_NAME ]; then
|
|
10146
|
+ mkdir /var/www/$HUBZILLA_DOMAIN_NAME
|
|
10147
|
+ fi
|
|
10148
|
+ if [ ! -d /var/www/$HUBZILLA_DOMAIN_NAME/htdocs ]; then
|
|
10149
|
+ mkdir /var/www/$HUBZILLA_DOMAIN_NAME/htdocs
|
|
10150
|
+ fi
|
|
10151
|
+
|
|
10152
|
+ if [ ! -f /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/index.php ]; then
|
|
10153
|
+ cd $INSTALL_DIR
|
|
10154
|
+ git clone $HUBZILLA_REPO hubzilla
|
|
10155
|
+
|
|
10156
|
+ rm -rf /var/www/$HUBZILLA_DOMAIN_NAME/htdocs
|
|
10157
|
+ mv hubzilla /var/www/$HUBZILLA_DOMAIN_NAME/htdocs
|
|
10158
|
+ chown -R www-data:www-data /var/www/$HUBZILLA_DOMAIN_NAME/htdocs
|
|
10159
|
+ git clone $HUBZILLA_ADDONS_REPO /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/addon
|
|
10160
|
+ # some extra themes
|
|
10161
|
+ git clone https://github.com/DeadSuperHero/hubzilla-themes /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/hubzilla-themes1
|
|
10162
|
+ cp -r /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/hubzilla-themes1/* view/theme/
|
|
10163
|
+ fi
|
|
10164
|
+
|
|
10165
|
+ get_mariadb_hubzilla_admin_password
|
|
10166
|
+ if [ ! $HUBZILLA_ADMIN_PASSWORD ]; then
|
|
10167
|
+ HUBZILLA_ADMIN_PASSWORD="$(openssl rand -base64 32)"
|
|
10168
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10169
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10170
|
+ echo 'Hubzilla' >> /home/$MY_USERNAME/README
|
|
10171
|
+ echo '==========' >> /home/$MY_USERNAME/README
|
|
10172
|
+ echo "Your MariaDB Hubzilla admin password is: $HUBZILLA_ADMIN_PASSWORD" >> /home/$MY_USERNAME/README
|
|
10173
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10174
|
+ chown $MY_USERNAME:$MY_USERNAME /home/$MY_USERNAME/README
|
|
10175
|
+ chmod 600 /home/$MY_USERNAME/README
|
|
10176
|
+ fi
|
|
10177
|
+
|
|
10178
|
+ echo "create database hubzilla;
|
|
10179
|
+CREATE USER 'hubzillaadmin'@'localhost' IDENTIFIED BY '$HUBZILLA_ADMIN_PASSWORD';
|
|
10180
|
+GRANT ALL PRIVILEGES ON hubzilla.* TO 'hubzillaadmin'@'localhost';
|
|
10181
|
+quit" > $INSTALL_DIR/batch.sql
|
|
10182
|
+ chmod 600 $INSTALL_DIR/batch.sql
|
|
10183
|
+ mysql -u root --password="$MARIADB_PASSWORD" < $INSTALL_DIR/batch.sql
|
|
10184
|
+ shred -zu $INSTALL_DIR/batch.sql
|
|
10185
|
+
|
|
10186
|
+ if ! grep -q "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs" /etc/crontab; then
|
|
10187
|
+ echo "12,22,32,42,52 * * * * root cd /var/www/$HUBZILLA_DOMAIN_NAME/htdocs; /usr/bin/timeout 240 /usr/bin/php include/poller.php" >> /etc/crontab
|
|
10188
|
+ fi
|
|
10189
|
+
|
|
10190
|
+ # update the dynamic DNS
|
|
10191
|
+ CURRENT_DDNS_DOMAIN=$HUBZILLA_DOMAIN_NAME
|
|
10192
|
+ add_ddns_domain
|
|
10193
|
+
|
|
10194
|
+ echo 'server {' > /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10195
|
+ echo ' listen 80;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10196
|
+ echo " server_name $HUBZILLA_DOMAIN_NAME;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10197
|
+ echo " root /var/www/$HUBZILLA_DOMAIN_NAME/htdocs;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10198
|
+ echo ' access_log off;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10199
|
+ echo " error_log /var/log/nginx/$HUBZILLA_DOMAIN_NAME_error.log $WEBSERVER_LOG_LEVEL;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10200
|
+ echo ' limit_conn conn_limit_per_ip 10;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10201
|
+ echo ' limit_req zone=req_limit_per_ip burst=10 nodelay;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10202
|
+ echo ' index index.php;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10203
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10204
|
+ echo ' rewrite ^ https://$server_name$request_uri? permanent;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10205
|
+ echo '}' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10206
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10207
|
+ echo 'server {' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10208
|
+ echo ' listen 443 ssl;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10209
|
+ echo " root /var/www/$HUBZILLA_DOMAIN_NAME/htdocs;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10210
|
+ echo " server_name $HUBZILLA_DOMAIN_NAME;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10211
|
+ echo " error_log /var/log/nginx/$HUBZILLA_DOMAIN_NAME_error_ssl.log $WEBSERVER_LOG_LEVEL;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10212
|
+ echo ' index index.php;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10213
|
+ echo ' charset utf-8;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10214
|
+ echo ' client_max_body_size 20m;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10215
|
+ echo ' client_body_buffer_size 128k;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10216
|
+ echo ' access_log off;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10217
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10218
|
+ echo ' limit_conn conn_limit_per_ip 10;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10219
|
+ echo ' limit_req zone=req_limit_per_ip burst=10 nodelay;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10220
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10221
|
+ echo ' ssl on;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10222
|
+ echo " ssl_certificate /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.crt;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10223
|
+ echo " ssl_certificate_key /etc/ssl/private/$HUBZILLA_DOMAIN_NAME.key;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10224
|
+ echo " ssl_dhparam /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.dhparam;" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10225
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10226
|
+ echo ' ssl_session_timeout 5m;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10227
|
+ echo ' ssl_prefer_server_ciphers on;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10228
|
+ echo ' ssl_session_cache builtin:1000 shared:SSL:10m;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10229
|
+ echo " ssl_protocols $SSL_PROTOCOLS; # not possible to do exclusive" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10230
|
+ echo " ssl_ciphers '$SSL_CIPHERS';" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10231
|
+ echo ' add_header X-Frame-Options DENY;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10232
|
+ echo ' add_header X-Content-Type-Options nosniff;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10233
|
+ echo ' add_header Strict-Transport-Security max-age=15768000;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10234
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10235
|
+ echo ' # rewrite to front controller as default rule' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10236
|
+ echo ' location / {' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10237
|
+ echo ' rewrite ^/(.*) /index.php?q=$uri&$args last;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10238
|
+ echo ' }' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10239
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10240
|
+ echo " # make sure webfinger and other well known services aren't blocked" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10241
|
+ echo ' # by denying dot files and rewrite request to the front controller' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10242
|
+ echo ' location ^~ /.well-known/ {' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10243
|
+ echo ' allow all;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10244
|
+ echo ' }' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10245
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10246
|
+ echo ' # statically serve these file types when possible' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10247
|
+ echo ' # otherwise fall back to front controller' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10248
|
+ echo ' # allow browser to cache them' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10249
|
+ echo ' # added .htm for advanced source code editor library' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10250
|
+ echo ' location ~* \.(jpg|jpeg|gif|png|ico|css|js|htm|html|ttf|woff|svg)$ {' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10251
|
+ echo ' expires 30d;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10252
|
+ echo ' try_files $uri /index.php?q=$uri&$args;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10253
|
+ echo ' }' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10254
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10255
|
+ echo ' # block these file types' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10256
|
+ echo ' location ~* \.(tpl|md|tgz|log|out)$ {' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10257
|
+ echo ' deny all;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10258
|
+ echo ' }' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10259
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10260
|
+ echo ' # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10261
|
+ echo ' # or a unix socket' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10262
|
+ echo ' location ~* \.php$ {' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10263
|
+ echo ' # Zero-day exploit defense.' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10264
|
+ echo ' # http://forum.nginx.org/read.php?2,88845,page=3' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10265
|
+ echo " # Won't work properly (404 error) if the file is not stored on this" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10266
|
+ echo " # server, which is entirely possible with php-fpm/php-fcgi." >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10267
|
+ echo " # Comment the 'try_files' line out if you set up php-fpm/php-fcgi on" >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10268
|
+ echo " # another machine. And then cross your fingers that you won't get hacked." >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10269
|
+ echo ' try_files $uri $uri/ /index.php;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10270
|
+ echo ' # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10271
|
+ echo ' fastcgi_split_path_info ^(.+\.php)(/.+)$;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10272
|
+ echo ' # With php5-cgi alone:' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10273
|
+ echo ' # fastcgi_pass 127.0.0.1:9000;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10274
|
+ echo ' # With php5-fpm:' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10275
|
+ echo ' fastcgi_pass unix:/var/run/php5-fpm.sock;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10276
|
+ echo ' include fastcgi_params;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10277
|
+ echo ' fastcgi_index index.php;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10278
|
+ echo ' fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10279
|
+ echo ' fastcgi_read_timeout 300;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10280
|
+ echo ' }' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10281
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10282
|
+ echo ' # deny access to all dot files' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10283
|
+ echo ' location ~ /\. {' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10284
|
+ echo ' deny all;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10285
|
+ echo ' }' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10286
|
+ echo '' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10287
|
+ echo ' location ~ /\.ht {' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10288
|
+ echo ' deny all;' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10289
|
+ echo ' }' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10290
|
+ echo '}' >> /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME
|
|
10291
|
+
|
|
10292
|
+ configure_php
|
|
10293
|
+
|
|
10294
|
+ if [ ! -f /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.dhparam ]; then
|
|
10295
|
+ freedombone-addcert -h $HUBZILLA_DOMAIN_NAME --dhkey $DH_KEYLENGTH
|
|
10296
|
+ check_certificates $HUBZILLA_DOMAIN_NAME
|
|
10297
|
+ fi
|
|
10298
|
+
|
|
10299
|
+ if [ ! -d /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/view/tpl/smarty3 ]; then
|
|
10300
|
+ mkdir /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/view/tpl/smarty3
|
|
10301
|
+ fi
|
|
10302
|
+ if [ ! -d "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store" ]; then
|
|
10303
|
+ mkdir "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store"
|
|
10304
|
+ fi
|
|
10305
|
+ if [ ! -d "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store/[data]" ]; then
|
|
10306
|
+ mkdir "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store/[data]"
|
|
10307
|
+ fi
|
|
10308
|
+ if [ ! -d "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store/[data]/smarty3" ]; then
|
|
10309
|
+ mkdir "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store/[data]/smarty3"
|
|
10310
|
+ chmod 777 "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store/[data]/smarty3"
|
|
10311
|
+ fi
|
|
10312
|
+ chmod 777 /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/view/tpl
|
|
10313
|
+ chown -R www-data:www-data "/var/www/$HUBZILLA_DOMAIN_NAME/htdocs/store"
|
|
10314
|
+ chmod 777 /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/view/tpl/smarty3
|
|
10315
|
+
|
|
10316
|
+ # Ensure that the database gets backed up locally, if remote
|
|
10317
|
+ # backups are not being used
|
|
10318
|
+ backup_databases_script_header
|
|
10319
|
+ echo '' >> /usr/bin/backupdatabases
|
|
10320
|
+ echo '# Backup the Hubzilla database' >> /usr/bin/backupdatabases
|
|
10321
|
+ echo 'TEMPFILE=/root/hubzilla.sql' >> /usr/bin/backupdatabases
|
|
10322
|
+ echo 'DAILYFILE=/var/backups/hubzilla_daily.sql' >> /usr/bin/backupdatabases
|
|
10323
|
+ echo 'mysqldump --password="$MYSQL_PASSWORD" hubzilla > $TEMPFILE' >> /usr/bin/backupdatabases
|
|
10324
|
+ echo 'FILESIZE=$(stat -c%s $TEMPFILE)' >> /usr/bin/backupdatabases
|
|
10325
|
+ echo 'if [ "$FILESIZE" -lt "1024" ]; then' >> /usr/bin/backupdatabases
|
|
10326
|
+ echo ' if [ -f $DAILYFILE ]; then' >> /usr/bin/backupdatabases
|
|
10327
|
+ echo ' cp $DAILYFILE $TEMPFILE' >> /usr/bin/backupdatabases
|
|
10328
|
+ echo '' >> /usr/bin/backupdatabases
|
|
10329
|
+ echo ' # try to restore yesterdays database' >> /usr/bin/backupdatabases
|
|
10330
|
+ echo ' mysql -u root --password="$MYSQL_PASSWORD" hubzilla -o < $DAILYFILE' >> /usr/bin/backupdatabases
|
|
10331
|
+ echo '' >> /usr/bin/backupdatabases
|
|
10332
|
+ echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
|
10333
|
+ echo ' echo "Unable to create a backup of the Hubzilla database. Attempted to restore from yesterdays backup" | mail -s "Hubzilla backup" $EMAIL' >> /usr/bin/backupdatabases
|
|
10334
|
+ echo ' else' >> /usr/bin/backupdatabases
|
|
10335
|
+ echo ' # Send a warning email' >> /usr/bin/backupdatabases
|
|
10336
|
+ echo ' echo "Unable to create a backup of the Hubzilla database." | mail -s "Hubzilla backup" $EMAIL' >> /usr/bin/backupdatabases
|
|
10337
|
+ echo ' fi' >> /usr/bin/backupdatabases
|
|
10338
|
+ echo 'else' >> /usr/bin/backupdatabases
|
|
10339
|
+ echo ' chmod 600 $TEMPFILE' >> /usr/bin/backupdatabases
|
|
10340
|
+ echo ' mv $TEMPFILE $DAILYFILE' >> /usr/bin/backupdatabases
|
|
10341
|
+ echo '' >> /usr/bin/backupdatabases
|
|
10342
|
+ echo ' # Make the backup readable only by root' >> /usr/bin/backupdatabases
|
|
10343
|
+ echo ' chmod 600 $DAILYFILE' >> /usr/bin/backupdatabases
|
|
10344
|
+ echo 'fi' >> /usr/bin/backupdatabases
|
|
10345
|
+
|
|
10346
|
+ echo '' >> /etc/cron.weekly/backupdatabasesweekly
|
|
10347
|
+ echo '# Hubzilla' >> /etc/cron.weekly/backupdatabasesweekly
|
|
10348
|
+ echo 'if [ -f /var/backups/hubzilla_weekly.sql ]; then' >> /etc/cron.weekly/backupdatabasesweekly
|
|
10349
|
+ echo ' cp -f /var/backups/hubzilla_weekly.sql /var/backups/hubzilla_2weekly.sql' >> /etc/cron.weekly/backupdatabasesweekly
|
|
10350
|
+ echo 'fi' >> /etc/cron.weekly/backupdatabasesweekly
|
|
10351
|
+ echo 'if [ -f /var/backups/hubzilla_daily.sql ]; then' >> /etc/cron.weekly/backupdatabasesweekly
|
|
10352
|
+ echo ' cp -f /var/backups/hubzilla_daily.sql /var/backups/hubzilla_weekly.sql' >> /etc/cron.weekly/backupdatabasesweekly
|
|
10353
|
+ echo 'fi' >> /etc/cron.weekly/backupdatabasesweekly
|
|
10354
|
+
|
|
10355
|
+ echo '' >> /etc/cron.monthly/backupdatabasesmonthly
|
|
10356
|
+ echo '# Hubzilla' >> /etc/cron.monthly/backupdatabasesmonthly
|
|
10357
|
+ echo 'if [ -f /var/backups/hubzilla_monthly.sql ]; then' >> /etc/cron.monthly/backupdatabasesmonthly
|
|
10358
|
+ echo ' cp -f /var/backups/hubzilla_monthly.sql /var/backups/hubzilla_2monthly.sql' >> /etc/cron.monthly/backupdatabasesmonthly
|
|
10359
|
+ echo 'fi' >> /etc/cron.monthly/backupdatabasesmonthly
|
|
10360
|
+ echo 'if [ -f /var/backups/hubzilla_weekly.sql ]; then' >> /etc/cron.monthly/backupdatabasesmonthly
|
|
10361
|
+ echo ' cp -f /var/backups/hubzilla_weekly.sql /var/backups/hubzilla_monthly.sql' >> /etc/cron.monthly/backupdatabasesmonthly
|
|
10362
|
+ echo 'fi' >> /etc/cron.monthly/backupdatabasesmonthly
|
|
10363
|
+
|
|
10364
|
+ echo '/usr/bin/repairdatabase hubzilla' >> /etc/cron.hourly/repair
|
|
10365
|
+
|
|
10366
|
+ nginx_ensite $HUBZILLA_DOMAIN_NAME
|
|
10367
|
+ service php5-fpm restart
|
|
10368
|
+ service nginx restart
|
|
10369
|
+ service cron restart
|
|
10370
|
+
|
|
10371
|
+ # some post-install instructions for the user
|
|
10372
|
+ if ! grep -q "To set up your Hubzilla" /home/$MY_USERNAME/README; then
|
|
10373
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10374
|
+ echo "To set up your Hubzilla site go to" >> /home/$MY_USERNAME/README
|
|
10375
|
+ echo "https://$HUBZILLA_DOMAIN_NAME" >> /home/$MY_USERNAME/README
|
|
10376
|
+ echo 'You will need to have a non self-signed SSL certificate in order' >> /home/$MY_USERNAME/README
|
|
10377
|
+ echo "to use Hubzilla. Put the public certificate in /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.crt" >> /home/$MY_USERNAME/README
|
|
10378
|
+ echo "and the private certificate in /etc/ssl/private/$HUBZILLA_DOMAIN_NAME.key." >> /home/$MY_USERNAME/README
|
|
10379
|
+ echo 'If there is an intermediate certificate needed (such as with StartSSL) then' >> /home/$MY_USERNAME/README
|
|
10380
|
+ echo 'this will need to be concatenated onto the end of the crt file, like this:' >> /home/$MY_USERNAME/README
|
|
10381
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10382
|
+ echo " cat /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.crt /etc/ssl/chains/startssl-sub.class1.server.ca.pem > /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.bundle.crt" >> /home/$MY_USERNAME/README
|
|
10383
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10384
|
+ echo "Then change ssl_certificate to /etc/ssl/certs/$HUBZILLA_DOMAIN_NAME.bundle.crt" >> /home/$MY_USERNAME/README
|
|
10385
|
+ echo "within /etc/nginx/sites-available/$HUBZILLA_DOMAIN_NAME" >> /home/$MY_USERNAME/README
|
|
10386
|
+ echo '' >> /home/$MY_USERNAME/README
|
|
10387
|
+ chown $MY_USERNAME:$MY_USERNAME /home/$MY_USERNAME/README
|
|
10388
|
+ chmod 600 /home/$MY_USERNAME/README
|
|
10389
|
+ fi
|
|
10390
|
+
|
|
10391
|
+ echo 'install_hubzilla' >> $COMPLETION_FILE
|
|
10392
|
+}
|
|
10393
|
+
|
9862
|
10394
|
function script_for_attaching_usb_drive {
|
9863
|
10395
|
if grep -Fxq "script_for_attaching_usb_drive" $COMPLETION_FILE; then
|
9864
|
10396
|
return
|
|
@@ -10140,6 +10672,19 @@ function create_upgrade_script {
|
10140
|
10672
|
echo 'git pull' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
10141
|
10673
|
echo "chown -R www-data:www-data /var/www/$REDMATRIX_DOMAIN_NAME/htdocs" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
10142
|
10674
|
fi
|
|
10675
|
+ if grep -Fxq "install_hubzilla" $COMPLETION_FILE; then
|
|
10676
|
+ echo '' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10677
|
+ echo '# Hubzilla' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10678
|
+ echo "cd /var/www/$HUBZILLA_DOMAIN_NAME/htdocs" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10679
|
+ echo 'git stash' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10680
|
+ echo 'git stash drop' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10681
|
+ echo 'git pull' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10682
|
+ echo "cd /var/www/$HUBZILLA_DOMAIN_NAME/htdocs/addon" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10683
|
+ echo 'git stash' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10684
|
+ echo 'git stash drop' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10685
|
+ echo 'git pull' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10686
|
+ echo "chown -R www-data:www-data /var/www/$HUBZILLA_DOMAIN_NAME/htdocs" >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
10687
|
+ fi
|
10143
|
10688
|
if grep -Fxq "install_gnu_social" $COMPLETION_FILE; then
|
10144
|
10689
|
echo '' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
10145
|
10690
|
echo '# GNU Social' >> /etc/cron.weekly/$UPGRADE_SCRIPT_NAME
|
|
@@ -10714,6 +11259,7 @@ install_wiki
|
10714
|
11259
|
install_blog
|
10715
|
11260
|
install_gnu_social
|
10716
|
11261
|
install_redmatrix
|
|
11262
|
+#install_hubzilla
|
10717
|
11263
|
install_dlna_server
|
10718
|
11264
|
configure_firewall_for_dlna
|
10719
|
11265
|
install_mediagoblin
|