Compare commits

...

18 Commits

Author SHA1 Message Date
74c1fdf519 odd bug...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 05:02:29 +03:00
a6f5094152 almost done with nextcloud -- need testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 04:44:23 +03:00
8d9df935b3 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 04:30:34 +03:00
7dda3a28e7 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 04:15:19 +03:00
dfccbb0819 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 04:01:44 +03:00
5bf2dfa893 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 03:58:37 +03:00
9c2fe378f7 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 03:11:55 +03:00
50885e50bc testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 02:53:18 +03:00
03bbfdf821 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 02:40:38 +03:00
0a8ca779ef testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 02:26:47 +03:00
cf76f419ab testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 01:56:44 +03:00
d889b76b72 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 01:53:34 +03:00
5bb1359676 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 01:46:13 +03:00
b77b5944d8 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 01:30:39 +03:00
5454a5ab2b testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 01:27:22 +03:00
29c236c134 testing...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 01:12:13 +03:00
526e9f4ab7 notes...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 00:28:42 +03:00
49d4560ddf docs...
Signed-off-by: Alex A. Naanou <alex.nanou@gmail.com>
2024-01-08 00:03:09 +03:00
6 changed files with 74 additions and 22 deletions

View File

@ -18,7 +18,7 @@ ECHO_PREFIX="### "
if [ -z $DRY_RUN ] ; then
! [ $QUIET ] \
&& echo "${ECHO_PREFIX}$@"
$@
"$@"
else
echo $@
fi
@ -186,19 +186,52 @@ xread(){
xreadpass(){
local PASS1
local PASS2
for attempt in 1 2 3 ; do
read -sep "password (Enter to skip): " PASS1
echo
if [ $PASS1 ] ; then
if [ -z $PASS1 ] ; then
return
fi
read -sep "retype password: " PASS2
echo
if [[ $PASS1 != $PASS2 ]] ; then
echo "ERR: passwords do not match."
return 1
continue
fi
eval ''$1'='${PASS1}''
fi
return
done
return 1
}
# Wait for /etc/inithooks.conf to be generated then cleared
#
# tklWaitForSetup
#
# for tkl inithooks doc see:
# https://www.turnkeylinux.org/docs/inithooks
tklWaitForSetup(){
printf "# TKL setup, this may take a while"
if [ -z $DRY_RUN ] ; then
while ! $(lxc-attach $ID -- test -e /etc/inithooks.conf) ; do
printf '.'
sleep ${TIMEOUT:=5}
done
printf '+'
sleep ${TIMEOUT:=5}
while ! [[ $(lxc-attach $ID -- cat /etc/inithooks.conf | wc -c) < 2 ]] ; do
printf '.'
sleep ${TIMEOUT:=5}
done
else
printf '.+..'
fi
printf 'ready.\n'
sleep ${TIMEOUT:=5}
}
#
# readConfig
#
@ -292,6 +325,10 @@ buildAssets(){
local ASSETS_DIR=$2
ASSETS_DIR=${ASSETS_DIR:=assets}
if ! [ -e $TEMPLATE_DIR ] ; then
return
fi
local TEMPLATES=($(find "$TEMPLATE_DIR" -type f))
for file in "${TEMPLATES[@]}" ; do
file=${file#${TEMPLATE_DIR}}

View File

@ -51,6 +51,7 @@ OPTS_STAGE_1="\
--storage local-lvm \
--rootfs local-lvm:$DRIVE \
--unprivileged 1 \
--features nesting=1 \
${PCT_EXTRA} \
"

View File

@ -39,7 +39,7 @@ readVars
#----------------------------------------------------------------------
# XXX cores...
# NOTE: TKL gui will not function correctly without nesting enabled...
OPTS_STAGE_1="\
--hostname $CTHOSTNAME \
--cores $CORES \
@ -49,11 +49,11 @@ OPTS_STAGE_1="\
--storage local-lvm \
--rootfs local-lvm:$DRIVE \
--unprivileged 1 \
--features nesting=1 \
${PCT_EXTRA} \
"
OPTS_STAGE_2="\
--startup order=90,up=10 \
--onboot 1 \
"
@ -68,18 +68,27 @@ getLatestTemplate '.*-turnkey-nextcloud' TEMPLATE
pctCreate $ID "$TEMPLATE" "$OPTS_STAGE_1" "$PASS"
sleep ${TIMEOUT:=5}
#echo "# Starting TKL Setup (this may take a few minutes to start)..."
#@ lxc-attach $ID -- bash --login -i
##@ lxc-attach $ID -- /usr/sbin/trunkey-init
#
#echo "# Updating config..."
## XXX update /var/www/nextcloud/config/config.php
## - trusted_domains
## - trusted_proxies
#@ lxc-attach $ID -- \
# sed \
# -e 's/^\(\s*\)\('\''trusted_domains\)/\1'\''trusted_proxies'\'' =>\n\1array (\n\1\1'${GATE_LAN_IP}'\/32\n\1)\n\1\2/' \
# -i /var/www/nextcloud/config/config.php
tklWaitForSetup
# XXX this breaks the rest of this script...
echo "# Starting TKL UI..."
@ lxc-attach $ID -- bash -c 'HUB_APIKEY=SKIP SEC_UPDATES=SKIP /usr/sbin/turnkey-init'
sleep 5
echo "# Updating config..."
# add gate IP to trusted_proxies...
@ lxc-attach $ID -- bash -c "\
sed -i \
-e \"/trusted_domains/i\\ 'trusted_proxies' =>\\n array (\\n '${GATE_LAN_IP/\/*}\\/32',\\n ),\" \
/var/www/nextcloud/config/config.php"
# add self IP to trusted_domains -- enable setup from local network...
IP=${DRY_RUN:=$(lxc-attach $ID -- hostname -I)}
@ lxc-attach $ID -- bash -c "\
sed -z -i \
-e \"s/\\(trusted_domains[^)]*\\)/\\1 2 => '${IP/ *}',\\n /\" \
/var/www/nextcloud/config/config.php"
echo "# Copying assets..."
@ pct-push-r $ID ./assets /
@ -89,6 +98,10 @@ echo "# Disabling fail2ban..."
@ lxc-attach $ID systemctl stop fail2ban
@ lxc-attach $ID systemctl disable fail2ban
echo "# Updating system..."
@ lxc-attach $ID apt update
@ lxc-attach $ID apt upgrade
echo "# Post config..."
pctSet $ID "${OPTS_STAGE_2}" $REBOOT

View File

@ -50,6 +50,7 @@ OPTS_STAGE_1="\
--storage local-lvm \
--rootfs local-lvm:$DRIVE \
--unprivileged 1 \
--features nesting=1 \
${PCT_EXTRA} \
"

View File

@ -50,11 +50,11 @@ OPTS_STAGE_1="\
--storage local-lvm \
--rootfs local-lvm:$DRIVE \
--unprivileged 1 \
--features nesting=1 \
${PCT_EXTRA} \
"
OPTS_STAGE_2="\
--startup order=90,up=10 \
--onboot 1 \
"

View File

@ -49,11 +49,11 @@ OPTS_STAGE_1="\
--storage local-lvm \
--rootfs local-lvm:$DRIVE \
--unprivileged 1 \
--features nesting=1 \
${PCT_EXTRA} \
"
OPTS_STAGE_2="\
--startup order=90,up=10 \
--onboot 1 \
"