Support for amnesia
This commit is contained in:
parent
1e626eb44d
commit
3f01621a23
|
@ -2016,7 +2016,7 @@ function show_result {
|
|||
echo ''
|
||||
}
|
||||
|
||||
function read_configuration {
|
||||
function read_config {
|
||||
if [ ! $CONFIGURATION_FILE ]; then
|
||||
CONFIGURATION_FILE='freedombone.cfg'
|
||||
fi
|
||||
|
@ -2191,7 +2191,7 @@ function read_configuration {
|
|||
fi
|
||||
}
|
||||
|
||||
read_configuration
|
||||
read_config
|
||||
interactive_config
|
||||
show_result
|
||||
exit 0
|
||||
|
|
|
@ -75,9 +75,6 @@ function change_avahi_name {
|
|||
echo "New avahi name for this peer is P$PEER_ID"
|
||||
toilet "mesh-$PEER_ID"
|
||||
echo $"avahi name changed to P${PEER_ID}.local" >> $INSTALL_LOG
|
||||
if [ -f $MESH_INSTALL_COMPLETED ]; then
|
||||
systemctl restart avahi-daemon
|
||||
fi
|
||||
}
|
||||
|
||||
function regenerate_ssh_host_keys {
|
||||
|
@ -89,10 +86,6 @@ function regenerate_ssh_host_keys {
|
|||
awk '$5 > 2000' /etc/ssh/moduli > ~/moduli
|
||||
mv ~/moduli /etc/ssh/moduli
|
||||
echo $'ssh small moduli removed' >> $INSTALL_LOG
|
||||
|
||||
if [ -f $MESH_INSTALL_COMPLETED ]; then
|
||||
systemctl restart ssh
|
||||
fi
|
||||
}
|
||||
|
||||
function configure_zeronet {
|
||||
|
@ -528,21 +521,29 @@ function enable_batman_daemon {
|
|||
|
||||
function mesh_amnesic {
|
||||
if [ ! -f $MESH_AMNESIC ]; then
|
||||
if [ -f /etc/systemd/system/amnesic.service ]; then
|
||||
systemctl disable amnesic
|
||||
fi
|
||||
return
|
||||
fi
|
||||
|
||||
echo '#!/bin/bash' > /usr/bin/amnesic
|
||||
echo '' >> /usr/bin/amnesic
|
||||
echo 'MY_USERNAME=$1' >> /usr/bin/amnesic
|
||||
echo -n "${PROJECT_NAME}-image-mesh " >> /usr/bin/amnesic
|
||||
echo '$MY_USERNAME amnesic' >> /usr/bin/amnesic
|
||||
echo '' >> /usr/bin/amnesic
|
||||
echo 'exit 0' >> /usr/bin/amnesic
|
||||
chmod +x /usr/bin/amnesic
|
||||
|
||||
if [ ! -f /etc/systemd/system/amnesic.service ]; then
|
||||
echo '[Unit]' > /etc/systemd/system/amnesic.service
|
||||
echo 'Description=Amnesic Mesh' >> /etc/systemd/system/amnesic.service
|
||||
echo '' >> /etc/systemd/system/amnesic.service
|
||||
echo '[Service]' >> /etc/systemd/system/amnesic.service
|
||||
echo 'User=root' >> /etc/systemd/system/amnesic.service
|
||||
echo 'Group=root' >> /etc/systemd/system/amnesic.service
|
||||
echo 'Type=oneshot' >> /etc/systemd/system/amnesic.service
|
||||
echo 'RemainAfterExit=true' >> /etc/systemd/system/amnesic.service
|
||||
echo 'ExecStart=/bin/true' >> /etc/systemd/system/amnesic.service
|
||||
echo 'ExecStop=TODO' >> /etc/systemd/system/amnesic.service
|
||||
echo 'ExecStop=/usr/bin/amnesic' >> /etc/systemd/system/amnesic.service
|
||||
echo '' >> /etc/systemd/system/amnesic.service
|
||||
echo '[Install]' >> /etc/systemd/system/amnesic.service
|
||||
echo 'WantedBy=multi-user.target' >> /etc/systemd/system/amnesic.service
|
||||
|
@ -553,12 +554,31 @@ function mesh_amnesic {
|
|||
systemctl start amnesic
|
||||
}
|
||||
|
||||
function mesh_restart_daemons {
|
||||
systemctl restart avahi-daemon
|
||||
systemctl restart ssh
|
||||
systemctl restart tox-bootstrapd
|
||||
systemctl restart zeronet
|
||||
echo $'Daemons restarted' >> $INSTALL_LOG
|
||||
}
|
||||
|
||||
# whether to reset the identity
|
||||
set_new_identity=
|
||||
if [ $2 ]; then
|
||||
if [[ "$2" == $"new"* ]]; then
|
||||
if [ ! -f $MESH_INSTALL_SETUP ]; then
|
||||
touch $MESH_INSTALL_SETUP
|
||||
fi
|
||||
set_new_identity=1
|
||||
fi
|
||||
if [[ "$2" == $"amnesic"* ]]; then
|
||||
if [ ! -f $MESH_AMNESIC ]; then
|
||||
touch $MESH_AMNESIC
|
||||
fi
|
||||
if [ ! -f $MESH_INSTALL_SETUP ]; then
|
||||
touch $MESH_INSTALL_SETUP
|
||||
fi
|
||||
set_new_identity=1
|
||||
fi
|
||||
fi
|
||||
|
||||
|
@ -567,8 +587,10 @@ if [ -f $MESH_INSTALL_SETUP ]; then
|
|||
MY_USERNAME=$1
|
||||
fi
|
||||
|
||||
# sleep in order to allow other daemons to start up
|
||||
sleep 15
|
||||
if [ ! $set_new_identity ]; then
|
||||
# sleep in order to allow other daemons to start up
|
||||
sleep 15
|
||||
fi
|
||||
|
||||
# clear the install log
|
||||
if [ -f $INSTALL_LOG ]; then
|
||||
|
@ -589,11 +611,16 @@ if [ -f $MESH_INSTALL_SETUP ]; then
|
|||
disable_screen_lock
|
||||
mesh_amnesic
|
||||
|
||||
rm $MESH_INSTALL_SETUP
|
||||
systemctl disable mesh-setup.service
|
||||
touch $MESH_INSTALL_COMPLETED
|
||||
echo $'Mesh node setup complete. Rebooting...' >> $INSTALL_LOG
|
||||
reboot
|
||||
if [ ! -f $MESH_AMNESIC ]; then
|
||||
rm $MESH_INSTALL_SETUP
|
||||
systemctl disable mesh-setup.service
|
||||
fi
|
||||
|
||||
mesh_restart_daemons
|
||||
if [ ! -f $MESH_INSTALL_COMPLETED ]; then
|
||||
echo $'Mesh node setup complete' >> $INSTALL_LOG
|
||||
touch $MESH_INSTALL_COMPLETED
|
||||
fi
|
||||
fi
|
||||
|
||||
exit 0
|
||||
|
|
Loading…
Reference in New Issue