|
@@ -64,6 +64,12 @@ MY_USERNAME=$2
|
64
|
64
|
FREEDNS_SUBDOMAIN_CODE=$3
|
65
|
65
|
SYSTEM_TYPE=$4
|
66
|
66
|
|
|
67
|
+VARIANT_WRITER="writer"
|
|
68
|
+VARIANT_CLOUD="cloud"
|
|
69
|
+VARIANT_CHAT="chat"
|
|
70
|
+VARIANT_MAILBOX="mailbox"
|
|
71
|
+VARIANT_SOCIAL="social"
|
|
72
|
+
|
67
|
73
|
SSH_PORT=2222
|
68
|
74
|
KERNEL_VERSION="v3.15.10-bone7"
|
69
|
75
|
USE_HWRNG="yes"
|
|
@@ -186,7 +192,7 @@ function change_login_message {
|
186
|
192
|
echo "| | (.-' (.-' ( | ( )| | | | )( )| | (.-' " >> /etc/motd
|
187
|
193
|
echo "' ' --' --' -' - -' ' ' -' -' -' ' - --'" >> /etc/motd
|
188
|
194
|
|
189
|
|
- if [[ $SYSTEM_TYPE == "cloud" ]]; then
|
|
195
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" ]]; then
|
190
|
196
|
echo ' .--.. . ' >> /etc/motd
|
191
|
197
|
echo ' : | | ' >> /etc/motd
|
192
|
198
|
echo ' | | .-. . . .-.| ' >> /etc/motd
|
|
@@ -194,7 +200,7 @@ function change_login_message {
|
194
|
200
|
echo " --' - -' -- - -' -" >> /etc/motd
|
195
|
201
|
fi
|
196
|
202
|
|
197
|
|
- if [[ $SYSTEM_TYPE == "chat" ]]; then
|
|
203
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CHAT" ]]; then
|
198
|
204
|
echo ' .--.. . ' >> /etc/motd
|
199
|
205
|
echo ' : | _|_ ' >> /etc/motd
|
200
|
206
|
echo ' | |--. .-. | ' >> /etc/motd
|
|
@@ -202,7 +208,7 @@ function change_login_message {
|
202
|
208
|
echo " --'' - -' - -' " >> /etc/motd
|
203
|
209
|
fi
|
204
|
210
|
|
205
|
|
- if [[ $SYSTEM_TYPE == "social" ]]; then
|
|
211
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
206
|
212
|
echo ' .-. . ' >> /etc/motd
|
207
|
213
|
echo ' ( ) o | ' >> /etc/motd
|
208
|
214
|
echo ' -. .-. .-. . .-. | ' >> /etc/motd
|
|
@@ -210,7 +216,7 @@ function change_login_message {
|
210
|
216
|
echo " -' -' -'-' - -' - - " >> /etc/motd
|
211
|
217
|
fi
|
212
|
218
|
|
213
|
|
- if [[ $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "mailbox" ]]; then
|
|
219
|
+ if [[ $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" ]]; then
|
214
|
220
|
echo ' . . . . ' >> /etc/motd
|
215
|
221
|
echo ' |\ /| o | | ' >> /etc/motd
|
216
|
222
|
echo ' | \/ | .-. . | |.-. .-.-. ,- ' >> /etc/motd
|
|
@@ -236,7 +242,7 @@ function search_for_attached_usb_drive {
|
236
|
242
|
mkdir /media/usb
|
237
|
243
|
mount $USB_DRIVE /media/usb
|
238
|
244
|
fi
|
239
|
|
- if ! [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
245
|
+ if ! [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
240
|
246
|
if [ -d /media/usb/Maildir ]; then
|
241
|
247
|
echo 'Maildir found on USB drive'
|
242
|
248
|
IMPORT_MAILDIR=/media/usb/Maildir
|
|
@@ -805,7 +811,7 @@ function configure_firewall_for_git {
|
805
|
811
|
}
|
806
|
812
|
|
807
|
813
|
function configure_firewall_for_email {
|
808
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
814
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
809
|
815
|
return
|
810
|
816
|
fi
|
811
|
817
|
if grep -Fxq "configure_firewall_for_email" $COMPLETION_FILE; then
|
|
@@ -888,7 +894,7 @@ function script_to_make_self_signed_certificates {
|
888
|
894
|
}
|
889
|
895
|
|
890
|
896
|
function configure_email {
|
891
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
897
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
892
|
898
|
return
|
893
|
899
|
fi
|
894
|
900
|
if grep -Fxq "configure_email" $COMPLETION_FILE; then
|
|
@@ -975,7 +981,7 @@ function configure_email {
|
975
|
981
|
|
976
|
982
|
function spam_filtering {
|
977
|
983
|
# NOTE: spamassassin installation currently doesn't work, sa-compile fails with a make error 23/09/2014
|
978
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
984
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
979
|
985
|
return
|
980
|
986
|
fi
|
981
|
987
|
if grep -Fxq "spam_filtering" $COMPLETION_FILE; then
|
|
@@ -1074,7 +1080,7 @@ function spam_filtering {
|
1074
|
1080
|
}
|
1075
|
1081
|
|
1076
|
1082
|
function configure_imap {
|
1077
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1083
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1078
|
1084
|
return
|
1079
|
1085
|
fi
|
1080
|
1086
|
if grep -Fxq "configure_imap" $COMPLETION_FILE; then
|
|
@@ -1102,7 +1108,7 @@ function configure_imap {
|
1102
|
1108
|
}
|
1103
|
1109
|
|
1104
|
1110
|
function configure_gpg {
|
1105
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1111
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1106
|
1112
|
return
|
1107
|
1113
|
fi
|
1108
|
1114
|
if grep -Fxq "configure_gpg" $COMPLETION_FILE; then
|
|
@@ -1163,7 +1169,7 @@ function configure_gpg {
|
1163
|
1169
|
}
|
1164
|
1170
|
|
1165
|
1171
|
function email_client {
|
1166
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1172
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1167
|
1173
|
return
|
1168
|
1174
|
fi
|
1169
|
1175
|
if grep -Fxq "email_client" $COMPLETION_FILE; then
|
|
@@ -1269,7 +1275,7 @@ function email_client {
|
1269
|
1275
|
}
|
1270
|
1276
|
|
1271
|
1277
|
function folders_for_mailing_lists {
|
1272
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1278
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1273
|
1279
|
return
|
1274
|
1280
|
fi
|
1275
|
1281
|
if grep -Fxq "folders_for_mailing_lists" $COMPLETION_FILE; then
|
|
@@ -1318,7 +1324,7 @@ function folders_for_mailing_lists {
|
1318
|
1324
|
}
|
1319
|
1325
|
|
1320
|
1326
|
function folders_for_email_addresses {
|
1321
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1327
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1322
|
1328
|
return
|
1323
|
1329
|
fi
|
1324
|
1330
|
if grep -Fxq "folders_for_email_addresses" $COMPLETION_FILE; then
|
|
@@ -1385,7 +1391,7 @@ function dynamic_dns_freedns {
|
1385
|
1391
|
}
|
1386
|
1392
|
|
1387
|
1393
|
function create_private_mailing_list {
|
1388
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1394
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1389
|
1395
|
return
|
1390
|
1396
|
fi
|
1391
|
1397
|
# This installation doesn't work, results in ruby errors
|
|
@@ -1446,12 +1452,12 @@ function create_private_mailing_list {
|
1446
|
1452
|
}
|
1447
|
1453
|
|
1448
|
1454
|
function import_email {
|
1449
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1455
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1450
|
1456
|
return
|
1451
|
1457
|
fi
|
1452
|
1458
|
EMAIL_COMPLETE_MSG=' *** Freedombone mailbox installation is complete ***'
|
1453
|
1459
|
if grep -Fxq "import_email" $COMPLETION_FILE; then
|
1454
|
|
- if [[ $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "mailbox" ]]; then
|
|
1460
|
+ if [[ $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" ]]; then
|
1455
|
1461
|
echo $EMAIL_COMPLETE_MSG
|
1456
|
1462
|
if [ -d /media/usb ]; then
|
1457
|
1463
|
umount /media/usb
|
|
@@ -1473,7 +1479,7 @@ function import_email {
|
1473
|
1479
|
fi
|
1474
|
1480
|
fi
|
1475
|
1481
|
echo 'import_email' >> $COMPLETION_FILE
|
1476
|
|
- if [[ $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "mailbox" ]]; then
|
|
1482
|
+ if [[ $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" ]]; then
|
1477
|
1483
|
apt-get -y --force-yes autoremove
|
1478
|
1484
|
# unmount any attached usb drive
|
1479
|
1485
|
echo ''
|
|
@@ -1489,7 +1495,7 @@ function import_email {
|
1489
|
1495
|
}
|
1490
|
1496
|
|
1491
|
1497
|
function install_web_server {
|
1492
|
|
- if [[ $SYSTEM_TYPE == "chat" ]]; then
|
|
1498
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CHAT" ]]; then
|
1493
|
1499
|
return
|
1494
|
1500
|
fi
|
1495
|
1501
|
if grep -Fxq "install_web_server" $COMPLETION_FILE; then
|
|
@@ -1524,13 +1530,13 @@ function configure_php {
|
1524
|
1530
|
}
|
1525
|
1531
|
|
1526
|
1532
|
function install_owncloud {
|
1527
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "mailbox" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1533
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1528
|
1534
|
return
|
1529
|
1535
|
fi
|
1530
|
1536
|
OWNCLOUD_COMPLETION_MSG1=" *** Freedombone $SYSTEM_TYPE is now installed ***"
|
1531
|
1537
|
OWNCLOUD_COMPLETION_MSG2="Open $OWNCLOUD_DOMAIN_NAME in a web browser to complete the setup"
|
1532
|
1538
|
if grep -Fxq "install_owncloud" $COMPLETION_FILE; then
|
1533
|
|
- if [[ $SYSTEM_TYPE == "cloud" ]]; then
|
|
1539
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" ]]; then
|
1534
|
1540
|
# unmount any attached usb drive
|
1535
|
1541
|
if [ -d /media/usb ]; then
|
1536
|
1542
|
umount /media/usb
|
|
@@ -1544,14 +1550,14 @@ function install_owncloud {
|
1544
|
1550
|
return
|
1545
|
1551
|
fi
|
1546
|
1552
|
# if this is exclusively a cloud setup
|
1547
|
|
- if [[ $SYSTEM_TYPE == "cloud" ]]; then
|
|
1553
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" ]]; then
|
1548
|
1554
|
OWNCLOUD_DOMAIN_NAME=$DOMAIN_NAME
|
1549
|
1555
|
OWNCLOUD_FREEDNS_SUBDOMAIN_CODE=$FREEDNS_SUBDOMAIN_CODE
|
1550
|
1556
|
fi
|
1551
|
1557
|
if [ ! $OWNCLOUD_DOMAIN_NAME ]; then
|
1552
|
1558
|
return
|
1553
|
1559
|
fi
|
1554
|
|
- if ! [[ $SYSTEM_TYPE == "cloud" ]]; then
|
|
1560
|
+ if ! [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" ]]; then
|
1555
|
1561
|
if [ ! $SYSTEM_TYPE ]; then
|
1556
|
1562
|
return
|
1557
|
1563
|
fi
|
|
@@ -1696,7 +1702,7 @@ function install_owncloud {
|
1696
|
1702
|
|
1697
|
1703
|
echo 'install_owncloud' >> $COMPLETION_FILE
|
1698
|
1704
|
|
1699
|
|
- if [[ $SYSTEM_TYPE == "cloud" ]]; then
|
|
1705
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" ]]; then
|
1700
|
1706
|
# unmount any attached usb drive
|
1701
|
1707
|
if [ -d /media/usb ]; then
|
1702
|
1708
|
umount /media/usb
|
|
@@ -1710,7 +1716,7 @@ function install_owncloud {
|
1710
|
1716
|
}
|
1711
|
1717
|
|
1712
|
1718
|
function install_xmpp {
|
1713
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "mailbox" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "social" ]]; then
|
|
1719
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1714
|
1720
|
return
|
1715
|
1721
|
fi
|
1716
|
1722
|
if grep -Fxq "install_xmpp" $COMPLETION_FILE; then
|
|
@@ -1779,7 +1785,7 @@ function install_xmpp {
|
1779
|
1785
|
}
|
1780
|
1786
|
|
1781
|
1787
|
function install_irc_server {
|
1782
|
|
- if [[ $SYSTEM_TYPE == "writer" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "mailbox" || $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "social" ]]; then
|
|
1788
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1783
|
1789
|
return
|
1784
|
1790
|
fi
|
1785
|
1791
|
if grep -Fxq "install_irc_server" $COMPLETION_FILE; then
|
|
@@ -1822,21 +1828,21 @@ function install_irc_server {
|
1822
|
1828
|
}
|
1823
|
1829
|
|
1824
|
1830
|
function install_wiki {
|
1825
|
|
- if [[ $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "mailbox" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
1831
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
1826
|
1832
|
return
|
1827
|
1833
|
fi
|
1828
|
1834
|
if grep -Fxq "install_wiki" $COMPLETION_FILE; then
|
1829
|
1835
|
return
|
1830
|
1836
|
fi
|
1831
|
1837
|
# if this is exclusively a writer setup
|
1832
|
|
- if [[ $SYSTEM_TYPE == "writer" ]]; then
|
|
1838
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_WRITER" ]]; then
|
1833
|
1839
|
WIKI_DOMAIN_NAME=$DOMAIN_NAME
|
1834
|
1840
|
WIKI_FREEDNS_SUBDOMAIN_CODE=$FREEDNS_SUBDOMAIN_CODE
|
1835
|
1841
|
fi
|
1836
|
1842
|
if [ ! $WIKI_DOMAIN_NAME ]; then
|
1837
|
1843
|
return
|
1838
|
1844
|
fi
|
1839
|
|
- if ! [[ $SYSTEM_TYPE == "writer" ]]; then
|
|
1845
|
+ if ! [[ $SYSTEM_TYPE == "$VARIANT_WRITER" ]]; then
|
1840
|
1846
|
if [ ! $SYSTEM_TYPE ]; then
|
1841
|
1847
|
return
|
1842
|
1848
|
fi
|
|
@@ -2013,7 +2019,7 @@ function install_wiki {
|
2013
|
2019
|
}
|
2014
|
2020
|
|
2015
|
2021
|
function install_blog {
|
2016
|
|
- if [[ $SYSTEM_TYPE == "cloud" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "mailbox" || $SYSTEM_TYPE == "chat" || $SYSTEM_TYPE == "social" ]]; then
|
|
2022
|
+ if [[ $SYSTEM_TYPE == "$VARIANT_CLOUD" || $SYSTEM_TYPE == "email" || $SYSTEM_TYPE == "$VARIANT_MAILBOX" || $SYSTEM_TYPE == "$VARIANT_CHAT" || $SYSTEM_TYPE == "$VARIANT_SOCIAL" ]]; then
|
2017
|
2023
|
return
|
2018
|
2024
|
fi
|
2019
|
2025
|
if grep -Fxq "install_blog" $COMPLETION_FILE; then
|