Merge branch 'stretch' of https://github.com/bashrc/freedombone
This commit is contained in:
commit
8dd130839e
|
@ -110,7 +110,7 @@ function install_interactive_akaunting {
|
||||||
while [ ! $AKAUNTING_DETAILS_COMPLETE ]
|
while [ ! $AKAUNTING_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ $DDNS_PROVIDER == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"Akaunting Configuration" \
|
--title $"Akaunting Configuration" \
|
||||||
--form $"\\nPlease enter your Akaunting details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 14 65 2 \
|
--form $"\\nPlease enter your Akaunting details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 14 65 2 \
|
||||||
|
@ -142,7 +142,7 @@ function install_interactive_akaunting {
|
||||||
AKAUNTING_DOMAIN_NAME=
|
AKAUNTING_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ $DDNS_PROVIDER == *"freedns"* ]]; then
|
||||||
AKAUNTING_CODE=$(sed -n 2p < "$data")
|
AKAUNTING_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$AKAUNTING_CODE"
|
validate_freedns_code "$AKAUNTING_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -112,7 +112,7 @@ function install_interactive_gnusocial {
|
||||||
while [ ! $GNUSOCIAL_DETAILS_COMPLETE ]
|
while [ ! $GNUSOCIAL_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ $DDNS_PROVIDER == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"GNU Social Configuration" \
|
--title $"GNU Social Configuration" \
|
||||||
--form $"\\nPlease enter your GNU Social details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 16 65 4 \
|
--form $"\\nPlease enter your GNU Social details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 16 65 4 \
|
||||||
|
@ -156,7 +156,7 @@ function install_interactive_gnusocial {
|
||||||
GNUSOCIAL_DOMAIN_NAME=
|
GNUSOCIAL_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ $DDNS_PROVIDER == *"freedns"* ]]; then
|
||||||
GNUSOCIAL_CODE=$(sed -n 4p < "$data")
|
GNUSOCIAL_CODE=$(sed -n 4p < "$data")
|
||||||
validate_freedns_code "$GNUSOCIAL_CODE"
|
validate_freedns_code "$GNUSOCIAL_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -91,7 +91,7 @@ function install_interactive_kanboard {
|
||||||
while [ ! $KANBOARD_DETAILS_COMPLETE ]
|
while [ ! $KANBOARD_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ $DDNS_PROVIDER == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"KanBoard Configuration" \
|
--title $"KanBoard Configuration" \
|
||||||
--form $"\\nPlease enter your KanBoard details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt." 13 55 2 \
|
--form $"\\nPlease enter your KanBoard details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt." 13 55 2 \
|
||||||
|
@ -123,7 +123,7 @@ function install_interactive_kanboard {
|
||||||
KANBOARD_DOMAIN_NAME=
|
KANBOARD_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
KANBOARD_CODE=$(sed -n 2p < "$data")
|
KANBOARD_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$KANBOARD_CODE"
|
validate_freedns_code "$KANBOARD_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -90,7 +90,7 @@ function install_interactive_koel {
|
||||||
while [ ! $KOEL_DETAILS_COMPLETE ]
|
while [ ! $KOEL_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"Koel Configuration" \
|
--title $"Koel Configuration" \
|
||||||
--form $"\\nPlease enter your Koel details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 16 65 3 \
|
--form $"\\nPlease enter your Koel details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 16 65 3 \
|
||||||
|
@ -122,7 +122,7 @@ function install_interactive_koel {
|
||||||
KOEL_DOMAIN_NAME=
|
KOEL_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
KOEL_CODE=$(sed -n 2p < "$data")
|
KOEL_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$KOEL_CODE"
|
validate_freedns_code "$KOEL_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -79,7 +79,7 @@ function install_interactive_movim {
|
||||||
while [ ! $MOVIM_DETAILS_COMPLETE ]
|
while [ ! $MOVIM_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"Movim Configuration" \
|
--title $"Movim Configuration" \
|
||||||
--form $"\\nPlease enter your Movim details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 12 65 2 \
|
--form $"\\nPlease enter your Movim details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 12 65 2 \
|
||||||
|
@ -106,7 +106,7 @@ function install_interactive_movim {
|
||||||
MOVIM_DOMAIN_NAME=
|
MOVIM_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
MOVIM_CODE=$(sed -n 2p < "$data")
|
MOVIM_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$MOVIM_CODE"
|
validate_freedns_code "$MOVIM_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -90,7 +90,7 @@ function install_interactive_nextcloud {
|
||||||
while [ ! $NEXTCLOUD_DETAILS_COMPLETE ]
|
while [ ! $NEXTCLOUD_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"NextCloud Configuration" \
|
--title $"NextCloud Configuration" \
|
||||||
--form $"\\nPlease enter your NextCloud details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 13 65 3 \
|
--form $"\\nPlease enter your NextCloud details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 13 65 3 \
|
||||||
|
@ -119,7 +119,7 @@ function install_interactive_nextcloud {
|
||||||
NEXTCLOUD_DOMAIN_NAME=
|
NEXTCLOUD_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
NEXTCLOUD_CODE=$(sed -n 2p < "$data")
|
NEXTCLOUD_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$NEXTCLOUD_CODE"
|
validate_freedns_code "$NEXTCLOUD_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -380,7 +380,7 @@ function install_interactive_pelican {
|
||||||
while [ ! $PELICAN_DETAILS_COMPLETE ]
|
while [ ! $PELICAN_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"Pelican Blog Configuration" \
|
--title $"Pelican Blog Configuration" \
|
||||||
--form $"\\nPlease enter your blog details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 14 65 2 \
|
--form $"\\nPlease enter your blog details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 14 65 2 \
|
||||||
|
@ -412,7 +412,7 @@ function install_interactive_pelican {
|
||||||
PELICAN_DOMAIN_NAME=
|
PELICAN_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
PELICAN_BLOG_CODE=$(sed -n 2p < "$data")
|
PELICAN_BLOG_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$PELICAN_BLOG_CODE"
|
validate_freedns_code "$PELICAN_BLOG_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -335,7 +335,7 @@ function install_interactive_pleroma {
|
||||||
while [ ! $PLEROMA_DETAILS_COMPLETE ]
|
while [ ! $PLEROMA_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"Pleroma Configuration" \
|
--title $"Pleroma Configuration" \
|
||||||
--form $"\\nPlease enter your Pleroma details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 16 65 4 \
|
--form $"\\nPlease enter your Pleroma details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 16 65 4 \
|
||||||
|
@ -379,7 +379,7 @@ function install_interactive_pleroma {
|
||||||
PLEROMA_DOMAIN_NAME=
|
PLEROMA_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
PLEROMA_CODE=$(sed -n 4p < "$data")
|
PLEROMA_CODE=$(sed -n 4p < "$data")
|
||||||
validate_freedns_code "$PLEROMA_CODE"
|
validate_freedns_code "$PLEROMA_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -118,7 +118,7 @@ function install_interactive_postactiv {
|
||||||
while [ ! $POSTACTIV_DETAILS_COMPLETE ]
|
while [ ! $POSTACTIV_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"PostActiv Configuration" \
|
--title $"PostActiv Configuration" \
|
||||||
--form $"\\nPlease enter your PostActiv details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 16 65 4 \
|
--form $"\\nPlease enter your PostActiv details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 16 65 4 \
|
||||||
|
@ -162,7 +162,7 @@ function install_interactive_postactiv {
|
||||||
POSTACTIV_DOMAIN_NAME=
|
POSTACTIV_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
POSTACTIV_CODE=$(sed -n 4p < "$data")
|
POSTACTIV_CODE=$(sed -n 4p < "$data")
|
||||||
validate_freedns_code "$POSTACTIV_CODE"
|
validate_freedns_code "$POSTACTIV_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -89,7 +89,7 @@ function install_interactive_privatebin {
|
||||||
while [ ! $PRIVATEBIN_DETAILS_COMPLETE ]
|
while [ ! $PRIVATEBIN_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"PrivateBin Configuration" \
|
--title $"PrivateBin Configuration" \
|
||||||
--form $"\\nPlease enter your PrivateBin details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 14 65 2 \
|
--form $"\\nPlease enter your PrivateBin details. The background image URL can be left blank.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 14 65 2 \
|
||||||
|
@ -121,7 +121,7 @@ function install_interactive_privatebin {
|
||||||
PRIVATEBIN_DOMAIN_NAME=
|
PRIVATEBIN_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
PRIVATEBIN_CODE=$(sed -n 2p < "$data")
|
PRIVATEBIN_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$PRIVATEBIN_CODE"
|
validate_freedns_code "$PRIVATEBIN_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -76,7 +76,7 @@ function install_interactive_riot {
|
||||||
while [ ! $RIOT_DETAILS_COMPLETE ]
|
while [ ! $RIOT_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"Riot Web user interface for Matrix" \
|
--title $"Riot Web user interface for Matrix" \
|
||||||
--form $"\\nPlease enter your details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 13 65 3 \
|
--form $"\\nPlease enter your details.\\n\\nIMPORTANT: This should be a domain name which is supported by Let's Encrypt:" 13 65 3 \
|
||||||
|
@ -105,7 +105,7 @@ function install_interactive_riot {
|
||||||
RIOT_DOMAIN_NAME=
|
RIOT_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
RIOT_CODE=$(sed -n 2p < "$data")
|
RIOT_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$RIOT_CODE"
|
validate_freedns_code "$RIOT_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -184,7 +184,7 @@ function choose_social_instance_domain_name {
|
||||||
while [ ! $DEFAULT_DOMAIN_DETAILS_COMPLETE ]
|
while [ ! $DEFAULT_DOMAIN_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ "$DDNS_PROVIDER" == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"Instance domain" \
|
--title $"Instance domain" \
|
||||||
--form $"\\nEnter your instance domain name and its FreeDNS code:" 11 55 3 \
|
--form $"\\nEnter your instance domain name and its FreeDNS code:" 11 55 3 \
|
||||||
|
@ -247,7 +247,7 @@ function choose_default_domain_name {
|
||||||
while [ ! $DEFAULT_DOMAIN_DETAILS_COMPLETE ]
|
while [ ! $DEFAULT_DOMAIN_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ "$DDNS_PROVIDER" == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title $"Your main domain name on FreeDNS" \
|
--title $"Your main domain name on FreeDNS" \
|
||||||
--form $"\nWhich domain name should your email/XMPP/IRC/Mumble be associated with?" 13 55 5 \
|
--form $"\nWhich domain name should your email/XMPP/IRC/Mumble be associated with?" 13 55 5 \
|
||||||
|
|
|
@ -80,32 +80,32 @@ function dynamic_dns_setup {
|
||||||
fi
|
fi
|
||||||
|
|
||||||
case $selection in
|
case $selection in
|
||||||
1) DDNS_PROVIDER="default@freedns.afraid.org";;
|
1) DDNS_PROVIDER="freedns";;
|
||||||
2) DDNS_PROVIDER="default@www.dyn.com";;
|
2) DDNS_PROVIDER="dyn";;
|
||||||
3) DDNS_PROVIDER="default@www.zoneedit.com";;
|
3) DDNS_PROVIDER="zoneedit.com";;
|
||||||
4) DDNS_PROVIDER="default@www.no-ip.com";;
|
4) DDNS_PROVIDER="no-ip.com";;
|
||||||
5) DDNS_PROVIDER="default@www.easydns.com";;
|
5) DDNS_PROVIDER="easydns.com";;
|
||||||
6) DDNS_PROVIDER="default@www.dnsomatic.com";;
|
6) DDNS_PROVIDER="dnsomatic.com";;
|
||||||
7) DDNS_PROVIDER="default@dns.he.net";;
|
7) DDNS_PROVIDER="dns.he.net";;
|
||||||
8) DDNS_PROVIDER="default@www.tunnelbroker.net";;
|
8) DDNS_PROVIDER="tunnelbroker.net";;
|
||||||
9) DDNS_PROVIDER="default@www.sitelutions.com";;
|
9) DDNS_PROVIDER="sitelutions.com";;
|
||||||
10) DDNS_PROVIDER="default@www.dnsexit.com";;
|
10) DDNS_PROVIDER="dnsexit.com";;
|
||||||
11) DDNS_PROVIDER="default@www.changeip.com";;
|
11) DDNS_PROVIDER="changeip.com";;
|
||||||
12) DDNS_PROVIDER="default@www.zerigo.com";;
|
12) DDNS_PROVIDER="zerigo.com";;
|
||||||
13) DDNS_PROVIDER="default@www.dhis.org";;
|
13) DDNS_PROVIDER="dhis.org";;
|
||||||
14) DDNS_PROVIDER="default@nsupdate.info";;
|
14) DDNS_PROVIDER="nsupdate.info";;
|
||||||
15) DDNS_PROVIDER="default@www.loopia.com";;
|
15) DDNS_PROVIDER="loopia.com";;
|
||||||
16) DDNS_PROVIDER="default@www.namecheap.com";;
|
16) DDNS_PROVIDER="namecheap.com";;
|
||||||
17) DDNS_PROVIDER="default@www.ovh.com";;
|
17) DDNS_PROVIDER="ovh.com";;
|
||||||
18) DDNS_PROVIDER="default@www.dtdns.com";;
|
18) DDNS_PROVIDER="dtdns.com";;
|
||||||
19) DDNS_PROVIDER="default@giradns.com";;
|
19) DDNS_PROVIDER="giradns.com";;
|
||||||
20) DDNS_PROVIDER="default@www.duiadns.net";;
|
20) DDNS_PROVIDER="duiadns.net";;
|
||||||
21) DDNS_PROVIDER="default@ddnss.de";;
|
21) DDNS_PROVIDER="ddnss.de";;
|
||||||
22) DDNS_PROVIDER="default@dynv6.com";;
|
22) DDNS_PROVIDER="dynv6.com";;
|
||||||
23) DDNS_PROVIDER="default@ipv4.dynv6.com";;
|
23) DDNS_PROVIDER="ipv4.dynv6.com";;
|
||||||
24) DDNS_PROVIDER="default@spdyn.de";;
|
24) DDNS_PROVIDER="spdyn.de";;
|
||||||
25) DDNS_PROVIDER="default@freemyip.com";;
|
25) DDNS_PROVIDER="freemyip.com";;
|
||||||
26) DDNS_PROVIDER="default@www.cloudxns.net";;
|
26) DDNS_PROVIDER="cloudxns.net";;
|
||||||
esac
|
esac
|
||||||
save_configuration_values
|
save_configuration_values
|
||||||
|
|
||||||
|
|
|
@ -1661,6 +1661,7 @@ image_install_inadyn() {
|
||||||
mkdir -p "$rootdir/root/build"
|
mkdir -p "$rootdir/root/build"
|
||||||
fi
|
fi
|
||||||
chroot "$rootdir" apt-get -yq install build-essential curl libgnutls28-dev automake1.11 libconfuse-dev
|
chroot "$rootdir" apt-get -yq install build-essential curl libgnutls28-dev automake1.11 libconfuse-dev
|
||||||
|
chroot "$rootdir" apt-get -yq install gnutls-dev libconfuse-dev pkg-config
|
||||||
|
|
||||||
if [ -d /repos/inadyn ]; then
|
if [ -d /repos/inadyn ]; then
|
||||||
mkdir "$rootdir/root/build/inadyn"
|
mkdir "$rootdir/root/build/inadyn"
|
||||||
|
@ -1681,34 +1682,36 @@ image_install_inadyn() {
|
||||||
cd "$rootdir/root/build/inadyn" || exit 24682464628
|
cd "$rootdir/root/build/inadyn" || exit 24682464628
|
||||||
{ echo '#!/bin/bash';
|
{ echo '#!/bin/bash';
|
||||||
echo 'cd ~/build/inadyn';
|
echo 'cd ~/build/inadyn';
|
||||||
echo '#./autogen.sh';
|
echo './autogen.sh';
|
||||||
echo './configure';
|
echo './configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-openssl';
|
||||||
echo 'USE_OPENSSL=1 make';
|
echo 'make -j5';
|
||||||
echo 'make install'; } > "$rootdir/root/build/build_inadyn.sh"
|
echo 'make install-strip'; } > "$rootdir/root/build/build_inadyn.sh"
|
||||||
chmod +x "$rootdir/root/build/build_inadyn.sh"
|
chmod +x "$rootdir/root/build/build_inadyn.sh"
|
||||||
chroot "$rootdir" /root/build/build_inadyn.sh
|
chroot "$rootdir" /root/build/build_inadyn.sh
|
||||||
if [ ! -f "$rootdir/usr/local/sbin/inadyn" ]; then
|
if [ ! -f "$rootdir/usr/sbin/inadyn" ]; then
|
||||||
echo 'Failed to build inadyn'
|
echo 'Failed to build inadyn'
|
||||||
exit 6209356
|
exit 6209356
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# create a configuration file
|
# create a configuration file
|
||||||
{ echo 'background';
|
{ echo 'period = 300';
|
||||||
echo 'verbose 1';
|
echo ''; } > "$rootdir/etc/inadyn.conf"
|
||||||
echo 'period 300';
|
|
||||||
echo 'startup-delay 60';
|
|
||||||
echo 'cache-dir /run/inadyn';
|
|
||||||
echo 'logfile /dev/null'; } > "$rootdir/etc/inadyn.conf"
|
|
||||||
chmod 600 "$rootdir/etc/inadyn.conf"
|
chmod 600 "$rootdir/etc/inadyn.conf"
|
||||||
|
|
||||||
{ echo '[Unit]';
|
{ echo '[Unit]';
|
||||||
echo 'Description=inadyn (DynDNS updater)';
|
echo 'Description=Internet Dynamic DNS Client';
|
||||||
echo 'After=network.target';
|
echo 'Documentation=man:inadyn';
|
||||||
|
echo 'Documentation=man:inadyn.conf';
|
||||||
|
echo 'Documentation=https://github.com/troglobit/inadyn';
|
||||||
|
echo 'ConditionPathExists=/etc/inadyn.conf';
|
||||||
|
echo 'After=network-online.target';
|
||||||
|
echo 'Requires=network-online.target';
|
||||||
echo '';
|
echo '';
|
||||||
echo '[Service]';
|
echo '[Service]';
|
||||||
echo 'ExecStart=/usr/local/sbin/inadyn --config /etc/inadyn.conf';
|
echo 'Type=simple';
|
||||||
echo 'Restart=always';
|
echo "ExecStart=/usr/sbin/inadyn -C -n -s --loglevel=err --config ${INADYN_CONFIG_FILE}";
|
||||||
echo 'Type=forking';
|
echo 'Restart=on-failure';
|
||||||
|
echo 'RestartSec=10';
|
||||||
echo '';
|
echo '';
|
||||||
echo '[Install]';
|
echo '[Install]';
|
||||||
echo 'WantedBy=multi-user.target'; } > "$rootdir/etc/systemd/system/inadyn.service"
|
echo 'WantedBy=multi-user.target'; } > "$rootdir/etc/systemd/system/inadyn.service"
|
||||||
|
|
|
@ -95,6 +95,7 @@ if [ -d "$PROJECT_DIR" ]; then
|
||||||
fi
|
fi
|
||||||
|
|
||||||
#rebuild_exim_with_socks
|
#rebuild_exim_with_socks
|
||||||
|
install_dynamicdns
|
||||||
torrc_migrate
|
torrc_migrate
|
||||||
nodejs_upgrade
|
nodejs_upgrade
|
||||||
apt-get -yq -t stretch-backports install certbot
|
apt-get -yq -t stretch-backports install certbot
|
||||||
|
|
|
@ -35,12 +35,13 @@ NAMESERVER5='85.25.251.254'
|
||||||
NAMESERVER6='2.141.58.13'
|
NAMESERVER6='2.141.58.13'
|
||||||
|
|
||||||
# parameters used when adding a new domain
|
# parameters used when adding a new domain
|
||||||
DDNS_PROVIDER="default@freedns.afraid.org"
|
DDNS_PROVIDER="freedns"
|
||||||
DDNS_USERNAME=
|
DDNS_USERNAME=
|
||||||
DDNS_PASSWORD=
|
DDNS_PASSWORD=
|
||||||
|
|
||||||
INADYN_REPO="https://github.com/bashrc/inadyn"
|
INADYN_REPO="https://github.com/troglobit/inadyn"
|
||||||
INADYN_COMMIT='fadbe17f520d337dfb8d69ee4bf1fcaa23fce0d6'
|
INADYN_COMMIT='3fe26d2235ddda9047cf33e8ed1453bcc3bbbf19'
|
||||||
|
INADYN_CONFIG_FILE=/etc/inadyn.conf
|
||||||
|
|
||||||
# web site used to obtain the external IP address of the system
|
# web site used to obtain the external IP address of the system
|
||||||
GET_IP_ADDRESS_URL="checkip.two-dns.de"
|
GET_IP_ADDRESS_URL="checkip.two-dns.de"
|
||||||
|
@ -95,7 +96,7 @@ EXTERNAL_IP_SERVICES=( \
|
||||||
'http://httpbin.org/ip')
|
'http://httpbin.org/ip')
|
||||||
|
|
||||||
function update_inadyn_config {
|
function update_inadyn_config {
|
||||||
if [ ! -f /etc/inadyn.conf ]; then
|
if [ ! -f "${INADYN_CONFIG_FILE}" ]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
@ -103,43 +104,58 @@ function update_inadyn_config {
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! grep -q "$DDNS_PROVIDER" /etc/inadyn.conf; then
|
if ! grep -q "$DDNS_PROVIDER" "${INADYN_CONFIG_FILE}"; then
|
||||||
|
if grep -q "{" "${INADYN_CONFIG_FILE}"; then
|
||||||
|
sed -i "s|provider .*|provider $DDNS_PROVIDER {|g" "${INADYN_CONFIG_FILE}"
|
||||||
|
sed -i "s|username .*|username = $DDNS_USERNAME|g" "${INADYN_CONFIG_FILE}"
|
||||||
|
sed -i "s|password .*|password = $DDNS_PASSWORD|g" "${INADYN_CONFIG_FILE}"
|
||||||
|
sed -i "s|checkip-server .*|checkip-server = $GET_IP_ADDRESS_URL|g" "${INADYN_CONFIG_FILE}"
|
||||||
|
else
|
||||||
|
# Old inadyn config file format
|
||||||
# store any previous aliases
|
# store any previous aliases
|
||||||
grep 'alias ' /etc/inadyn.conf > /tmp/inadyn_aliases
|
grep 'alias ' "${INADYN_CONFIG_FILE}" > /tmp/inadyn_aliases
|
||||||
|
|
||||||
# remove entry for any previous ddns
|
# remove entry for any previous ddns
|
||||||
sed -i '/system /,$d' /etc/inadyn.conf
|
sed -i '/system /,$d' "${INADYN_CONFIG_FILE}"
|
||||||
|
|
||||||
# add the new provider
|
# add the new provider
|
||||||
{ echo '';
|
{ echo '';
|
||||||
echo "system $DDNS_PROVIDER";
|
echo "system $DDNS_PROVIDER";
|
||||||
echo ' ssl';
|
echo ' ssl';
|
||||||
echo " checkip-url $GET_IP_ADDRESS_URL /"; } >> /etc/inadyn.conf
|
echo " checkip-url $GET_IP_ADDRESS_URL /"; } >> "${INADYN_CONFIG_FILE}"
|
||||||
if [ "$DDNS_USERNAME" ]; then
|
if [ "$DDNS_USERNAME" ]; then
|
||||||
echo " username $DDNS_USERNAME" >> /etc/inadyn.conf
|
echo " username $DDNS_USERNAME" >> "${INADYN_CONFIG_FILE}"
|
||||||
fi
|
fi
|
||||||
if [ "$DDNS_PASSWORD" ]; then
|
if [ "$DDNS_PASSWORD" ]; then
|
||||||
echo " password $DDNS_PASSWORD" >> /etc/inadyn.conf
|
echo " password $DDNS_PASSWORD" >> "${INADYN_CONFIG_FILE}"
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -f /tmp/inadyn_aliases ]; then
|
if [ -f /tmp/inadyn_aliases ]; then
|
||||||
cat /tmp/inadyn_aliases >> /etc/inadyn.conf
|
cat /tmp/inadyn_aliases >> "${INADYN_CONFIG_FILE}"
|
||||||
rm /tmp/inadyn_aliases
|
rm /tmp/inadyn_aliases
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
|
if grep -q "{" "${INADYN_CONFIG_FILE}"; then
|
||||||
|
sed -i "s|username .*|username = $DDNS_USERNAME|g" "${INADYN_CONFIG_FILE}"
|
||||||
|
sed -i "s|password .*|password = $DDNS_PASSWORD|g" "${INADYN_CONFIG_FILE}"
|
||||||
|
sed -i "s|checkip-server .*|checkip-server = $GET_IP_ADDRESS_URL|g" "${INADYN_CONFIG_FILE}"
|
||||||
|
else
|
||||||
|
# Old inadyn config file format
|
||||||
# change username/password for an existing provider
|
# change username/password for an existing provider
|
||||||
if [ "$DDNS_USERNAME" ]; then
|
if [ "$DDNS_USERNAME" ]; then
|
||||||
if grep -q " username " /etc/inadyn.conf; then
|
if grep -q " username " "${INADYN_CONFIG_FILE}"; then
|
||||||
sed -i "s| username .*| username $DDNS_USERNAME|g" /etc/inadyn.conf
|
sed -i "s| username .*| username $DDNS_USERNAME|g" "${INADYN_CONFIG_FILE}"
|
||||||
else
|
else
|
||||||
echo " username $DDNS_USERNAME" >> /etc/inadyn.conf
|
echo " username $DDNS_USERNAME" >> "${INADYN_CONFIG_FILE}"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
if [ "$DDNS_PASSWORD" ]; then
|
if [ "$DDNS_PASSWORD" ]; then
|
||||||
if grep -q " password " /etc/inadyn.conf; then
|
if grep -q " password " "${INADYN_CONFIG_FILE}"; then
|
||||||
sed -i "s| password .*| password $DDNS_PASSWORD|g" /etc/inadyn.conf
|
sed -i "s| password .*| password $DDNS_PASSWORD|g" "${INADYN_CONFIG_FILE}"
|
||||||
else
|
else
|
||||||
echo " password $DDNS_PASSWORD" >> /etc/inadyn.conf
|
echo " password $DDNS_PASSWORD" >> "${INADYN_CONFIG_FILE}"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
@ -197,29 +213,30 @@ function add_ddns_domain {
|
||||||
if [[ "$DDNS_PROVIDER" == 'none' ]]; then
|
if [[ "$DDNS_PROVIDER" == 'none' ]]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
if [ ! -f /etc/inadyn.conf ]; then
|
if [ ! -f "${INADYN_CONFIG_FILE}" ]; then
|
||||||
echo $'Unable to find inadyn configuration file /etc/inadyn.conf'
|
echo $'Unable to find inadyn configuration file "${INADYN_CONFIG_FILE}"'
|
||||||
exit 5745
|
exit 5745
|
||||||
fi
|
fi
|
||||||
if ! grep -q "$DDNS_PROVIDER" /etc/inadyn.conf; then
|
if ! grep -q "$DDNS_PROVIDER" "${INADYN_CONFIG_FILE}"; then
|
||||||
{ echo '';
|
read_config_param DEFAULT_DOMAIN_NAME
|
||||||
echo "system $DDNS_PROVIDER";
|
{ echo 'period = 300';
|
||||||
echo ' ssl';
|
echo '';
|
||||||
echo " checkip-url $GET_IP_ADDRESS_URL /"; } >> /etc/inadyn.conf
|
echo "provider $DDNS_PROVIDER {";
|
||||||
if [ $DDNS_USERNAME ]; then
|
echo " ssl = true";
|
||||||
echo " username $DDNS_USERNAME" >> /etc/inadyn.conf
|
echo " username = $DDNS_USERNAME";
|
||||||
fi
|
echo " password = $DDNS_PASSWORD";
|
||||||
if [ $DDNS_PASSWORD ]; then
|
echo " hostname = $DEFAULT_DOMAIN_NAME";
|
||||||
echo " password $DDNS_PASSWORD" >> /etc/inadyn.conf
|
echo '}'; } > "${INADYN_CONFIG_FILE}"
|
||||||
fi
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if ! grep -q "$CURRENT_DDNS_DOMAIN" /etc/inadyn.conf; then
|
if ! grep -q "$CURRENT_DDNS_DOMAIN" "${INADYN_CONFIG_FILE}"; then
|
||||||
echo " alias $CURRENT_DDNS_DOMAIN" >> /etc/inadyn.conf
|
DDNS_HOSTNAMES=$(grep 'hostname ' "${INADYN_CONFIG_FILE}"| awk -F '{' '{print $2}' | sed 's| }||g')
|
||||||
|
sed -i "s|hostname .*|hostname = {${DDNS_HOSTNAMES}, ${CURRENT_DDNS_DOMAIN} }|g" "${INADYN_CONFIG_FILE}"
|
||||||
fi
|
fi
|
||||||
chmod 600 /etc/inadyn.conf
|
chmod 600 "${INADYN_CONFIG_FILE}"
|
||||||
systemctl restart inadyn
|
|
||||||
systemctl daemon-reload
|
systemctl daemon-reload
|
||||||
|
systemctl restart inadyn
|
||||||
}
|
}
|
||||||
|
|
||||||
function remove_ddns_domain {
|
function remove_ddns_domain {
|
||||||
|
@ -234,16 +251,19 @@ function remove_ddns_domain {
|
||||||
if [[ "$DDNS_PROVIDER" == 'none' ]]; then
|
if [[ "$DDNS_PROVIDER" == 'none' ]]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
if [ ! -f /etc/inadyn.conf ]; then
|
if [ ! -f "${INADYN_CONFIG_FILE}" ]; then
|
||||||
echo $'Unable to find inadyn configuration file /etc/inadyn.conf'
|
echo $'Unable to find inadyn configuration file "${INADYN_CONFIG_FILE}"'
|
||||||
exit 5745
|
exit 5745
|
||||||
fi
|
fi
|
||||||
if grep -q "$CURRENT_DDNS_DOMAIN" /etc/inadyn.conf; then
|
#if grep -q "$CURRENT_DDNS_DOMAIN" "${INADYN_CONFIG_FILE}"; then
|
||||||
systemctl stop inadyn
|
# systemctl stop inadyn
|
||||||
sed -i "/alias $CURRENT_DDNS_DOMAIN/d" /etc/inadyn.conf
|
# sed -i "s|, ${CURRENT_DDNS_DOMAIN}||g" "${INADYN_CONFIG_FILE}"
|
||||||
systemctl start inadyn
|
# if grep -q "$CURRENT_DDNS_DOMAIN" "${INADYN_CONFIG_FILE}"; then
|
||||||
systemctl daemon-reload
|
# sed -i "s|${CURRENT_DDNS_DOMAIN}||g" "${INADYN_CONFIG_FILE}"
|
||||||
fi
|
# fi
|
||||||
|
# systemctl daemon-reload
|
||||||
|
# systemctl start inadyn
|
||||||
|
#fi
|
||||||
}
|
}
|
||||||
|
|
||||||
function configure_dns {
|
function configure_dns {
|
||||||
|
|
|
@ -126,7 +126,7 @@ function interactive_site_details {
|
||||||
while [ ! $SITE_DETAILS_COMPLETE ]
|
while [ ! $SITE_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ $DDNS_PROVIDER == "freedns" ]]; then
|
||||||
dialog --backtitle "$SITE_BACKTITLE" \
|
dialog --backtitle "$SITE_BACKTITLE" \
|
||||||
--title "$SITE_CONFIG_TITLE" \
|
--title "$SITE_CONFIG_TITLE" \
|
||||||
--form "$SITE_FORM_TEXT" 14 55 3 \
|
--form "$SITE_FORM_TEXT" 14 55 3 \
|
||||||
|
@ -155,7 +155,7 @@ function interactive_site_details {
|
||||||
SITE_DOMAIN_NAME=
|
SITE_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ "$DDNS_PROVIDER" == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
SITE_CODE=$(sed -n 2p < "$data")
|
SITE_CODE=$(sed -n 2p < "$data")
|
||||||
validate_freedns_code "$SITE_CODE"
|
validate_freedns_code "$SITE_CODE"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
@ -193,7 +193,7 @@ function interactive_site_details_with_title {
|
||||||
while [ ! $SITE_DETAILS_COMPLETE ]
|
while [ ! $SITE_DETAILS_COMPLETE ]
|
||||||
do
|
do
|
||||||
data=$(mktemp 2>/dev/null)
|
data=$(mktemp 2>/dev/null)
|
||||||
if [[ $DDNS_PROVIDER == "default@freedns.afraid.org" ]]; then
|
if [[ $DDNS_PROVIDER == *"freedns"* ]]; then
|
||||||
dialog --backtitle $"Freedombone Configuration" \
|
dialog --backtitle $"Freedombone Configuration" \
|
||||||
--title "$SITE_BACKTITLE" \
|
--title "$SITE_BACKTITLE" \
|
||||||
--form "$SITE_FORM_TEXT" 14 55 4 \
|
--form "$SITE_FORM_TEXT" 14 55 4 \
|
||||||
|
@ -225,7 +225,7 @@ function interactive_site_details_with_title {
|
||||||
SITE_DOMAIN_NAME=
|
SITE_DOMAIN_NAME=
|
||||||
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
dialog --title $"Domain name validation" --msgbox "$TEST_DOMAIN_NAME" 15 50
|
||||||
else
|
else
|
||||||
if [[ "$DDNS_PROVIDER" == "default@freedns.afraid.org" ]]; then
|
if [[ "$DDNS_PROVIDER" == *"freedns"* ]]; then
|
||||||
SITE_CODE=$(sed -n 3p < "$data")
|
SITE_CODE=$(sed -n 3p < "$data")
|
||||||
validate_freedns_code "${SITE_CODE}"
|
validate_freedns_code "${SITE_CODE}"
|
||||||
if [ ! "$VALID_CODE" ]; then
|
if [ ! "$VALID_CODE" ]; then
|
||||||
|
|
|
@ -430,25 +430,92 @@ function install_web_server_access_control {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function upgrade_inadyn_config {
|
||||||
|
if [ ! -f "${INADYN_CONFIG_FILE}" ]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ ! -f /usr/sbin/inadyn ]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
if grep -q "{" "${INADYN_CONFIG_FILE}"; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
read_config_param DDNS_PROVIDER
|
||||||
|
read_config_param DDNS_USERNAME
|
||||||
|
read_config_param DDNS_PASSWORD
|
||||||
|
read_config_param DEFAULT_DOMAIN_NAME
|
||||||
|
|
||||||
|
grep "alias " "${INADYN_CONFIG_FILE}" | sed 's| alias ||g' > ~/.inadyn_existing_sites
|
||||||
|
DDNS_HOSTNAMES=
|
||||||
|
while read -r host; do
|
||||||
|
if [ "$DDNS_HOSTNAMES" ]; then
|
||||||
|
DDNS_HOSTNAMES="$DDNS_HOSTNAMES, $host"
|
||||||
|
else
|
||||||
|
DDNS_HOSTNAMES="$host"
|
||||||
|
fi
|
||||||
|
done <~/.inadyn_existing_sites
|
||||||
|
|
||||||
|
if [ ! "$DDNS_HOSTNAMES" ]; then
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [[ "$DDNS_PROVIDER" == "default@freedns.afraid.org" ]]; then
|
||||||
|
DDNS_PROVIDER='freedns'
|
||||||
|
write_config_param DDNS_PROVIDER "$DDNS_PROVIDER"
|
||||||
|
fi
|
||||||
|
|
||||||
|
{ echo 'period = 300';
|
||||||
|
echo '';
|
||||||
|
echo "provider $DDNS_PROVIDER {";
|
||||||
|
echo " ssl = true";
|
||||||
|
echo " username = $DDNS_USERNAME";
|
||||||
|
echo " password = $DDNS_PASSWORD";
|
||||||
|
echo ' wildcard = true';
|
||||||
|
echo " hostname = $DEFAULT_DOMAIN_NAME";
|
||||||
|
echo '}'; } > "${INADYN_CONFIG_FILE}"
|
||||||
|
}
|
||||||
|
|
||||||
function install_dynamicdns {
|
function install_dynamicdns {
|
||||||
if [[ $SYSTEM_TYPE == "mesh"* ]]; then
|
if [[ $SYSTEM_TYPE == "mesh"* ]]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [[ $ONION_ONLY != "no" ]]; then
|
if [[ $ONION_ONLY != "no" ]]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
if grep -q "INADYN_REPO" "$CONFIGURATION_FILE"; then
|
||||||
|
sed -i '/INADYN_REPO/d' "$CONFIGURATION_FILE"
|
||||||
|
fi
|
||||||
|
if grep -q "INADYN_COMMIT" "$CONFIGURATION_FILE"; then
|
||||||
|
sed -i '/INADYN_COMMIT/d' "$CONFIGURATION_FILE"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f /usr/local/sbin/inadyn ]; then
|
||||||
|
if grep -q "inadyn commit" "$COMPLETION_FILE"; then
|
||||||
|
sed -i '/inadyn commit/d' "$COMPLETION_FILE"
|
||||||
|
fi
|
||||||
|
else
|
||||||
CURR_INADYN_COMMIT=$(get_completion_param "inadyn commit")
|
CURR_INADYN_COMMIT=$(get_completion_param "inadyn commit")
|
||||||
if [[ "${CURR_INADYN_COMMIT}" == "${INADYN_COMMIT}" ]]; then
|
if [[ "${CURR_INADYN_COMMIT}" == "${INADYN_COMMIT}" ]]; then
|
||||||
return
|
return
|
||||||
fi
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ -f /usr/local/sbin/inadyn ]; then
|
||||||
|
if [ -d "$INSTALL_DIR/inadyn" ]; then
|
||||||
|
rm -rf "$INSTALL_DIR/inadyn"
|
||||||
|
fi
|
||||||
|
if [ -d /repos/inadyn ]; then
|
||||||
|
rm -rf /repos/inadyn
|
||||||
|
fi
|
||||||
|
else
|
||||||
# update to the next commit
|
# update to the next commit
|
||||||
function_check set_repo_commit
|
function_check set_repo_commit
|
||||||
set_repo_commit "$INSTALL_DIR/inadyn" "inadyn commit" "$INADYN_COMMIT" "$INADYN_REPO"
|
set_repo_commit "$INSTALL_DIR/inadyn" "inadyn commit" "$INADYN_COMMIT" "$INADYN_REPO"
|
||||||
|
|
||||||
if [[ $(is_completed "${FUNCNAME[0]}") == "1" ]]; then
|
|
||||||
return
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Here we compile from source because the current package
|
# Here we compile from source because the current package
|
||||||
|
@ -458,6 +525,8 @@ function install_dynamicdns {
|
||||||
# https version 1.99.8
|
# https version 1.99.8
|
||||||
|
|
||||||
apt-get -yq install build-essential curl libgnutls28-dev automake1.11
|
apt-get -yq install build-essential curl libgnutls28-dev automake1.11
|
||||||
|
apt-get -yq install gnutls-dev libconfuse-dev pkg-config
|
||||||
|
|
||||||
if [ ! -d "$INSTALL_DIR/inadyn" ]; then
|
if [ ! -d "$INSTALL_DIR/inadyn" ]; then
|
||||||
if [ -d /repos/inadyn ]; then
|
if [ -d /repos/inadyn ]; then
|
||||||
mkdir "$INSTALL_DIR/inadyn"
|
mkdir "$INSTALL_DIR/inadyn"
|
||||||
|
@ -477,49 +546,51 @@ function install_dynamicdns {
|
||||||
git checkout "$INADYN_COMMIT" -b "$INADYN_COMMIT"
|
git checkout "$INADYN_COMMIT" -b "$INADYN_COMMIT"
|
||||||
set_completion_param "inadyn commit" "$INADYN_COMMIT"
|
set_completion_param "inadyn commit" "$INADYN_COMMIT"
|
||||||
|
|
||||||
#./autogen.sh
|
./autogen.sh
|
||||||
if ! ./configure; then
|
|
||||||
|
if ! ./configure --prefix=/usr --sysconfdir=/etc --localstatedir=/var --enable-openssl; then
|
||||||
exit 74890
|
exit 74890
|
||||||
fi
|
fi
|
||||||
if ! USE_OPENSSL=1 make; then
|
if ! make -j5; then
|
||||||
exit 74858
|
exit 74858
|
||||||
fi
|
fi
|
||||||
if ! make install; then
|
if ! make install-strip; then
|
||||||
exit 3785
|
exit 3785
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# create an unprivileged user
|
|
||||||
#chmod 600 /etc/shadow
|
|
||||||
#chmod 600 /etc/gshadow
|
|
||||||
#useradd -r -s /bin/false debian-inadyn
|
|
||||||
#chmod 0000 /etc/shadow
|
|
||||||
#chmod 0000 /etc/gshadow
|
|
||||||
|
|
||||||
# create a configuration file
|
# create a configuration file
|
||||||
{ echo 'background';
|
if [ ! -f "${INADYN_CONFIG_FILE}" ]; then
|
||||||
echo 'verbose 1';
|
{ echo 'period = 300';
|
||||||
echo 'period 300';
|
echo ''; } > "${INADYN_CONFIG_FILE}"
|
||||||
echo 'startup-delay 60';
|
fi
|
||||||
echo 'cache-dir /run/inadyn';
|
chmod 600 "${INADYN_CONFIG_FILE}"
|
||||||
echo 'logfile /dev/null'; } > /etc/inadyn.conf
|
|
||||||
chmod 600 /etc/inadyn.conf
|
|
||||||
|
|
||||||
{ echo '[Unit]';
|
{ echo '[Unit]';
|
||||||
echo 'Description=inadyn (DynDNS updater)';
|
echo 'Description=Internet Dynamic DNS Client';
|
||||||
echo 'After=network.target';
|
echo 'Documentation=man:inadyn';
|
||||||
|
echo 'Documentation=man:inadyn.conf';
|
||||||
|
echo 'Documentation=https://github.com/troglobit/inadyn';
|
||||||
|
echo 'ConditionPathExists=/etc/inadyn.conf';
|
||||||
|
echo 'After=network-online.target';
|
||||||
|
echo 'Requires=network-online.target';
|
||||||
echo '';
|
echo '';
|
||||||
echo '[Service]';
|
echo '[Service]';
|
||||||
echo 'ExecStart=/usr/local/sbin/inadyn --config /etc/inadyn.conf';
|
echo 'Type=simple';
|
||||||
echo 'Restart=always';
|
echo "ExecStart=/usr/sbin/inadyn -C -n -s --loglevel=err --config ${INADYN_CONFIG_FILE}";
|
||||||
echo 'Type=forking';
|
echo 'Restart=on-failure';
|
||||||
|
echo 'RestartSec=10';
|
||||||
echo '';
|
echo '';
|
||||||
echo '[Install]';
|
echo '[Install]';
|
||||||
echo 'WantedBy=multi-user.target'; } > /etc/systemd/system/inadyn.service
|
echo 'WantedBy=multi-user.target'; } > /etc/systemd/system/inadyn.service
|
||||||
|
systemctl daemon-reload
|
||||||
systemctl enable inadyn
|
systemctl enable inadyn
|
||||||
systemctl start inadyn
|
systemctl start inadyn
|
||||||
systemctl daemon-reload
|
|
||||||
|
|
||||||
mark_completed "${FUNCNAME[0]}"
|
# Remove old version of inadyn
|
||||||
|
if [ -f /usr/local/sbin/inadyn ]; then
|
||||||
|
rm /usr/local/sbin/inadyn
|
||||||
|
upgrade_inadyn_config
|
||||||
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
function update_default_search_engine {
|
function update_default_search_engine {
|
||||||
|
|
Loading…
Reference in New Issue