|
@@ -120,6 +120,12 @@ function remove_zeronet {
|
120
|
120
|
if ! grep -Fxq "install_zeronet" $COMPLETION_FILE; then
|
121
|
121
|
return
|
122
|
122
|
fi
|
|
123
|
+ if [ -f /etc/systemd/system/mesh-sync.service ]; then
|
|
124
|
+ systemctl stop mesh-sync
|
|
125
|
+ systemctl disable mesh-sync
|
|
126
|
+ rm -f /etc/systemd/system/mesh-sync.service
|
|
127
|
+ systemctl daemon-reload
|
|
128
|
+ fi
|
123
|
129
|
iptables -D INPUT -i $WIFI_INTERFACE -p udp --dport $ZERONET_PORT -j ACCEPT
|
124
|
130
|
iptables -D INPUT -i $WIFI_INTERFACE -p tcp --dport $ZERONET_PORT -j ACCEPT
|
125
|
131
|
iptables -D INPUT -i $WIFI_INTERFACE -p udp --dport $TRACKER_PORT -j ACCEPT
|
|
@@ -555,7 +561,34 @@ function mesh_zeronet {
|
555
|
561
|
chroot "$rootdir" chown -R tracker:tracker $MESH_INSTALL_DIR/tracker
|
556
|
562
|
|
557
|
563
|
# publish regularly
|
558
|
|
- echo "*/1 * * * * root /usr/local/bin/zeronetavahi > /dev/null" >> $rootdir/etc/crontab
|
|
564
|
+ MESH_SYNC_COMMAND=$rootdir/usr/bin/mesh-sync
|
|
565
|
+ echo '#!/bin/bash' > $MESH_SYNC_COMMAND
|
|
566
|
+ echo 'while true' >> $MESH_SYNC_COMMAND
|
|
567
|
+ echo 'do' >> $MESH_SYNC_COMMAND
|
|
568
|
+ echo ' /usr/bin/timeout 20 /usr/local/bin/toxavahi' >> $MESH_SYNC_COMMAND
|
|
569
|
+ echo ' /usr/bin/timeout 20 /usr/local/bin/zeronetavahi' >> $MESH_SYNC_COMMAND
|
|
570
|
+ echo ' sleep 5' >> $MESH_SYNC_COMMAND
|
|
571
|
+ echo 'done' >> $MESH_SYNC_COMMAND
|
|
572
|
+ chmod +x $MESH_SYNC_COMMAND
|
|
573
|
+
|
|
574
|
+ if [ ! -f $rootdir/etc/systemd/system/mesh-sync.service ]; then
|
|
575
|
+ MESH_SYNC_FILENAME=$rootdir/etc/systemd/system/mesh-sync.service
|
|
576
|
+ echo '[Unit]' > $MESH_SYNC_FILENAME
|
|
577
|
+ echo 'Description=mesh-sync - Service publications over avahi' >> $MESH_SYNC_FILENAME
|
|
578
|
+ echo 'After=network.target' >> $MESH_SYNC_FILENAME
|
|
579
|
+ echo '' >> $MESH_SYNC_FILENAME
|
|
580
|
+ echo '[Service]' >> $MESH_SYNC_FILENAME
|
|
581
|
+ echo 'User=root' >> $MESH_SYNC_FILENAME
|
|
582
|
+ echo 'ExecStart=/usr/bin/mesh-sync' >> $MESH_SYNC_FILENAME
|
|
583
|
+ echo 'Restart=on-failure' >> $MESH_SYNC_FILENAME
|
|
584
|
+ echo 'SuccessExitStatus=3 4' >> $MESH_SYNC_FILENAME
|
|
585
|
+ echo 'RestartForceExitStatus=3 4' >> $MESH_SYNC_FILENAME
|
|
586
|
+ echo '' >> $MESH_SYNC_FILENAME
|
|
587
|
+ echo '[Install]' >> $MESH_SYNC_FILENAME
|
|
588
|
+ echo 'WantedBy=multi-user.target' >> $MESH_SYNC_FILENAME
|
|
589
|
+
|
|
590
|
+ chroot "$rootdir" systemctl enable mesh-sync.service
|
|
591
|
+ fi
|
559
|
592
|
|
560
|
593
|
chroot "$rootdir" systemctl enable tracker.service
|
561
|
594
|
chroot "$rootdir" systemctl enable zeronet.service
|