Browse Source

Revert to using cron for mesh sync

Avoids endless loops
Bob Mottram 8 years ago
parent
commit
1e67bee0fb
No account linked to committer's email
2 changed files with 566 additions and 620 deletions
  1. 4
    31
      src/freedombone-app-tox
  2. 562
    589
      src/freedombone-app-zeronet

+ 4
- 31
src/freedombone-app-tox View File

@@ -216,12 +216,6 @@ function remove_tox_avahi {
216 216
     make uninstall
217 217
     rm -rf $INSTALL_DIR/toxid
218 218
     sed -i '/tox_avahi/d' $COMPLETION_FILE
219
-    if [ -f /etc/systemd/system/mesh-sync.service ]; then
220
-        systemctl stop mesh-sync
221
-        systemctl disable mesh-sync
222
-        rm -f /etc/systemd/system/mesh-sync.service
223
-        systemctl daemon-reload
224
-    fi
225 219
 }
226 220
 
227 221
 function remove_tox_client {
@@ -587,33 +581,12 @@ EOF
587 581
 
588 582
     MESH_SYNC_COMMAND=$rootdir/usr/bin/mesh-sync
589 583
     echo '#!/bin/bash' > $MESH_SYNC_COMMAND
590
-    echo 'while true' >> $MESH_SYNC_COMMAND
591
-    echo 'do' >> $MESH_SYNC_COMMAND
592
-    echo '    /usr/local/bin/toxavahi 2> /dev/null' >> $MESH_SYNC_COMMAND
593
-    echo '    sleep 10' >> $MESH_SYNC_COMMAND
594
-    echo '    /usr/local/bin/zeronetavahi 2> /dev/null' >> $MESH_SYNC_COMMAND
595
-    echo '    sleep 10' >> $MESH_SYNC_COMMAND
596
-    echo 'done' >> $MESH_SYNC_COMMAND
584
+    echo '/usr/local/bin/toxavahi 2> /dev/null' >> $MESH_SYNC_COMMAND
585
+    echo '/usr/local/bin/zeronetavahi 2> /dev/null' >> $MESH_SYNC_COMMAND
597 586
     chmod +x $MESH_SYNC_COMMAND
598 587
 
599
-    if [ ! -f $rootdir/etc/systemd/system/mesh-sync.service ]; then
600
-        MESH_SYNC_FILENAME=$rootdir/etc/systemd/system/mesh-sync.service
601
-        echo '[Unit]' > $MESH_SYNC_FILENAME
602
-        echo 'Description=mesh-sync - Service publications over avahi' >> $MESH_SYNC_FILENAME
603
-        echo 'After=network.target' >> $MESH_SYNC_FILENAME
604
-        echo '' >> $MESH_SYNC_FILENAME
605
-        echo '[Service]' >> $MESH_SYNC_FILENAME
606
-        echo 'User=root' >> $MESH_SYNC_FILENAME
607
-        echo 'ExecStart=/usr/bin/mesh-sync' >> $MESH_SYNC_FILENAME
608
-        echo 'Restart=on-failure' >> $MESH_SYNC_FILENAME
609
-        echo 'SuccessExitStatus=3 4' >> $MESH_SYNC_FILENAME
610
-        echo 'RestartForceExitStatus=3 4' >> $MESH_SYNC_FILENAME
611
-        echo '' >> $MESH_SYNC_FILENAME
612
-        echo '[Install]' >> $MESH_SYNC_FILENAME
613
-        echo 'WantedBy=multi-user.target' >> $MESH_SYNC_FILENAME
614
-
615
-        chroot "$rootdir" systemctl enable mesh-sync.service
616
-    fi
588
+    cron_add_mins 1 "$MESH_SYNC_COMMAND"
589
+    cron_add_mins 1 "( sleep 30 ; $MESH_SYNC_COMMAND )"
617 590
 }
618 591
 
619 592
 function mesh_tox_client {

+ 562
- 589
src/freedombone-app-zeronet
File diff suppressed because it is too large
View File