Browse Source

More robust udate of prosody modules

Bob Mottram 8 years ago
parent
commit
3ec1ea9ec1
1 changed files with 17 additions and 8 deletions
  1. 17
    8
      src/freedombone-app-xmpp

+ 17
- 8
src/freedombone-app-xmpp View File

@@ -45,6 +45,7 @@ prosody_nightly=382
45 45
 prosody_nightly_hash='770f1a0466f2361184eebffac9f50c102ad842cd855190db6c7f42f2f09884f5'
46 46
 prosody_filename=prosody-${prosody_latest_version}-1nightly${prosody_nightly}
47 47
 prosody_nightly_url="https://prosody.im/nightly/${prosody_latest_version}/latest/${prosody_filename}.tar.gz"
48
+prosody_modules_repo='https://hg.prosody.im/prosody-modules/'
48 49
 
49 50
 LIBMESODE_REPO="https://github.com/boothj5/libmesode"
50 51
 LIBMESODE_COMMIT='e3db0e9bfba61b2d82193874343a94a88f910800'
@@ -289,16 +290,23 @@ function update_prosody_modules {
289 290
         return
290 291
     fi
291 292
 
293
+    hg clone $prosody_modules_repo /var/lib/prosody/prosody-modules-new
294
+    if [ -d /var/lib/prosody/prosody-modules-new ]; then
295
+        rm -rf /var/lib/prosody/prosody-modules
296
+        mv /var/lib/prosody/prosody-modules-new /var/lib/prosody/prosody-modules
297
+        chown -R prosody:prosody /var/lib/prosody/prosody-modules
298
+    fi
299
+
292 300
     cd /var/lib/prosody/prosody-modules
293 301
     hg pull
294 302
     hg update
295 303
 
296
-    # change to using profile rather than pep and vcard modules
297
-    if grep '"pep"' /etc/prosody/prosody.cfg.lua; then
298
-        if grep '"vcard"' /etc/prosody/prosody.cfg.lua; then
299
-            sed -i 's|"pep"|"profile"|g' /etc/prosody/prosody.cfg.lua
300
-            sed -i '/"vcard"/d' /etc/prosody/prosody.cfg.lua
301
-        fi
304
+    # change to using pep rather than profile modules
305
+    if grep '"profile"' /etc/prosody/prosody.cfg.lua; then
306
+        sed -i 's|"profile"|"pep"|g' /etc/prosody/prosody.cfg.lua
307
+    fi
308
+    if ! grep '"vcard"' /etc/prosody/prosody.cfg.lua; then
309
+        sed -i '/"pep"/a "vcard";' /etc/prosody/prosody.cfg.lua
302 310
     fi
303 311
 }
304 312
 
@@ -585,7 +593,8 @@ function xmpp_modules {
585 593
     echo '  "carbons_copies"; -- Message carbons' >> $filename
586 594
     echo '  "smacks"; -- Stream management' >> $filename
587 595
     echo '  "smacks_offline"; -- Stream management' >> $filename
588
-    echo '  "profile"; -- Personal Eventing Protocol (to support OMEMO)' >> $filename
596
+    echo '  "pep"; -- Personal Eventing Protocol (to support OMEMO)' >> $filename
597
+    echo '  "vcard"; -- Personal Eventing Protocol (to support OMEMO)' >> $filename
589 598
     echo '  "e2e_policy"; -- To support OMEMO' >> $filename
590 599
     echo '  "pep_vcard_avatar"; -- Personal Eventing Protocol (to support OMEMO)' >> $filename
591 600
     echo '  "blocklist"; -- Privacy lists' >> $filename
@@ -829,7 +838,7 @@ function install_xmpp_main {
829 838
 
830 839
     # obtain the prosody modules
831 840
     if [ ! -d /var/lib/prosody/prosody-modules ]; then
832
-        hg clone https://hg.prosody.im/prosody-modules/ /var/lib/prosody/prosody-modules
841
+        hg clone $prosody_modules_repo /var/lib/prosody/prosody-modules
833 842
     fi
834 843
     if [ ! -d /var/lib/prosody/prosody-modules/mod_onions ]; then
835 844
         echo $'mod_onions prosody module could not be found'