瀏覽代碼

Include repos within the image

Bob Mottram 7 年之前
父節點
當前提交
67230ecaca

+ 10
- 2
src/freedombone-app-cryptpad 查看文件

191
         rm -rf $CRYPTPAD_DIR
191
         rm -rf $CRYPTPAD_DIR
192
     fi
192
     fi
193
 
193
 
194
-    function_check git_clone
195
-    git_clone $CRYPTPAD_REPO $CRYPTPAD_DIR
194
+    if [ -d /repos/cryptpad ]; then
195
+        mkdir $CRYPTPAD_DIR
196
+        cp -r -p /repos/cryptpad/* $CRYPTPAD_DIR
197
+        cd $CRYPTPAD_DIR
198
+        git pull
199
+    else
200
+        function_check git_clone
201
+        git_clone $CRYPTPAD_REPO $CRYPTPAD_DIR
202
+    fi
203
+
196
     if [ ! -d $CRYPTPAD_DIR ]; then
204
     if [ ! -d $CRYPTPAD_DIR ]; then
197
         echo $'Unable to clone cryptpad repo'
205
         echo $'Unable to clone cryptpad repo'
198
         exit 783251
206
         exit 783251

+ 11
- 2
src/freedombone-app-dokuwiki 查看文件

324
 
324
 
325
     if [ ! -f /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs/install.php ]; then
325
     if [ ! -f /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs/install.php ]; then
326
         cd /var/www/$DOKUWIKI_DOMAIN_NAME
326
         cd /var/www/$DOKUWIKI_DOMAIN_NAME
327
-        function_check git_clone
328
-        git_clone $DOKUWIKI_REPO /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs
327
+
328
+        if [ -d /repos/dokuwiki ]; then
329
+            mkdir /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs
330
+            cp -r -p /repos/dokuwiki/* /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs
331
+            cd /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs
332
+            git pull
333
+        else
334
+            function_check git_clone
335
+            git_clone $DOKUWIKI_REPO /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs
336
+        fi
337
+
329
         cd /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs
338
         cd /var/www/$DOKUWIKI_DOMAIN_NAME/htdocs
330
         git checkout $DOKUWIKI_COMMIT -b $DOKUWIKI_COMMIT
339
         git checkout $DOKUWIKI_COMMIT -b $DOKUWIKI_COMMIT
331
         set_completion_param "dokuwiki commit" "$DOKUWIKI_COMMIT"
340
         set_completion_param "dokuwiki commit" "$DOKUWIKI_COMMIT"

+ 11
- 2
src/freedombone-app-etherpad 查看文件

487
         mkdir /var/www/$ETHERPAD_DOMAIN_NAME
487
         mkdir /var/www/$ETHERPAD_DOMAIN_NAME
488
     fi
488
     fi
489
     if [ ! -d /var/www/$ETHERPAD_DOMAIN_NAME/htdocs ]; then
489
     if [ ! -d /var/www/$ETHERPAD_DOMAIN_NAME/htdocs ]; then
490
-        function_check git_clone
491
-        git_clone $ETHERPAD_REPO /var/www/$ETHERPAD_DOMAIN_NAME/htdocs
490
+
491
+        if [ -d /repos/etherpad ]; then
492
+            mkdir /var/www/$ETHERPAD_DOMAIN_NAME/htdocs
493
+            cp -r -p /repos/etherpad/* /var/www/$ETHERPAD_DOMAIN_NAME/htdocs
494
+            cd /var/www/$ETHERPAD_DOMAIN_NAME/htdocs
495
+            git pull
496
+        else
497
+            function_check git_clone
498
+            git_clone $ETHERPAD_REPO /var/www/$ETHERPAD_DOMAIN_NAME/htdocs
499
+        fi
500
+
492
         if [ ! -d /var/www/$ETHERPAD_DOMAIN_NAME/htdocs ]; then
501
         if [ ! -d /var/www/$ETHERPAD_DOMAIN_NAME/htdocs ]; then
493
             echo $'Unable to clone etherpad repo'
502
             echo $'Unable to clone etherpad repo'
494
             exit 56382
503
             exit 56382

+ 11
- 2
src/freedombone-app-friendica 查看文件

345
 
345
 
346
     if [ ! -f $FRIENDICA_PATH/index.php ]; then
346
     if [ ! -f $FRIENDICA_PATH/index.php ]; then
347
         cd $INSTALL_DIR
347
         cd $INSTALL_DIR
348
-        function_check git_clone
349
-        git_clone $FRIENDICA_REPO friendica
348
+
349
+        if [ -d /repos/friendica ]; then
350
+            mkdir friendica
351
+            cp -r -p /repos/friendica/* friendica
352
+            cd friendica
353
+            git pull
354
+        else
355
+            function_check git_clone
356
+            git_clone $FRIENDICA_REPO friendica
357
+        fi
358
+
350
         git checkout $FRIENDICA_COMMIT -b $FRIENDICA_COMMIT
359
         git checkout $FRIENDICA_COMMIT -b $FRIENDICA_COMMIT
351
         set_completion_param "friendica commit" "$FRIENDICA_COMMIT"
360
         set_completion_param "friendica commit" "$FRIENDICA_COMMIT"
352
 
361
 

+ 33
- 6
src/freedombone-app-gnusocial 查看文件

551
         mkdir /var/www/$GNUSOCIAL_DOMAIN_NAME
551
         mkdir /var/www/$GNUSOCIAL_DOMAIN_NAME
552
     fi
552
     fi
553
     if [ ! -d /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs ]; then
553
     if [ ! -d /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs ]; then
554
-        function_check git_clone
555
-        git_clone $GNUSOCIAL_REPO /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs
554
+
555
+        if [ -d /repos/gnusocial ]; then
556
+            mkdir /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs
557
+            cp -r -p /repos/gnusocial/* /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs
558
+            cd /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs
559
+            git pull
560
+        else
561
+            function_check git_clone
562
+            git_clone $GNUSOCIAL_REPO /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs
563
+        fi
564
+
556
         if [ ! -d /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs ]; then
565
         if [ ! -d /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs ]; then
557
             echo $'Unable to clone gnusocial repo'
566
             echo $'Unable to clone gnusocial repo'
558
             exit 87525
567
             exit 87525
809
     fi
818
     fi
810
 
819
 
811
     cd /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs/local/plugins
820
     cd /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs/local/plugins
812
-    function_check git_clone
813
-    git_clone $SHARINGS_REPO Sharings
821
+
822
+    if [ -d /repos/sharings ]; then
823
+        mkdir Sharings
824
+        cp -r -p /repos/sharings/* Sharings
825
+        cd Sharings
826
+        git pull
827
+    else
828
+        function_check git_clone
829
+        git_clone $SHARINGS_REPO Sharings
830
+    fi
831
+
814
     if [ ! -d /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs/local/plugins/Sharings ]; then
832
     if [ ! -d /var/www/$GNUSOCIAL_DOMAIN_NAME/htdocs/local/plugins/Sharings ]; then
815
         echo $'Unable to clone gnusocial sharings plugin'
833
         echo $'Unable to clone gnusocial sharings plugin'
816
         exit 36738
834
         exit 36738
926
     fi
944
     fi
927
 
945
 
928
     cd $GNUSOCIAL_PATH/local/plugins
946
     cd $GNUSOCIAL_PATH/local/plugins
929
-    function_check git_clone
930
-    git_clone $GNUSOCIAL_MARKDOWN_REPO Markdown
947
+
948
+    if [ -d /repos/gnusocial-markdown ]; then
949
+        mkdir Markdown
950
+        cp -r -p /repos/gnusocial-markdown/* Markdown
951
+        cd Markdown
952
+        git pull
953
+    else
954
+        function_check git_clone
955
+        git_clone $GNUSOCIAL_MARKDOWN_REPO Markdown
956
+    fi
957
+
931
     cd $GNUSOCIAL_PATH/local/plugins/Markdown
958
     cd $GNUSOCIAL_PATH/local/plugins/Markdown
932
     git checkout $GNUSOCIAL_MARKDOWN_COMMIT -b $GNUSOCIAL_MARKDOWN_COMMIT
959
     git checkout $GNUSOCIAL_MARKDOWN_COMMIT -b $GNUSOCIAL_MARKDOWN_COMMIT
933
 
960
 

+ 10
- 1
src/freedombone-app-htmly 查看文件

579
     fi
579
     fi
580
 
580
 
581
     cd /var/www/$HTMLY_DOMAIN_NAME
581
     cd /var/www/$HTMLY_DOMAIN_NAME
582
-    git_clone $HTMLY_REPO htdocs
582
+
583
+    if [ -d /repos/htmly ]; then
584
+        mkdir htdocs
585
+        cp -r -p /repos/htmly/* htdocs
586
+        cd htdocs
587
+        git pull
588
+    else
589
+        git_clone $HTMLY_REPO htdocs
590
+    fi
591
+
583
     cd htdocs
592
     cd htdocs
584
     git checkout $HTMLY_COMMIT -b $HTMLY_COMMIT
593
     git checkout $HTMLY_COMMIT -b $HTMLY_COMMIT
585
     set_completion_param "htmly commit" "$HTMLY_COMMIT"
594
     set_completion_param "htmly commit" "$HTMLY_COMMIT"

+ 22
- 5
src/freedombone-app-hubzilla 查看文件

337
 
337
 
338
     if [ ! -f $HUBZILLA_PATH/index.php ]; then
338
     if [ ! -f $HUBZILLA_PATH/index.php ]; then
339
         cd $INSTALL_DIR
339
         cd $INSTALL_DIR
340
-        function_check git_clone
341
-        git_clone $HUBZILLA_REPO hubzilla
340
+
341
+        if [ -d /repos/hubzilla ]; then
342
+            mkdir hubzilla
343
+            cp -r -p /repos/hubzilla/* hubzilla
344
+            cd hubzilla
345
+            git pull
346
+        else
347
+            function_check git_clone
348
+            git_clone $HUBZILLA_REPO hubzilla
349
+        fi
350
+
342
         git checkout $HUBZILLA_COMMIT -b $HUBZILLA_COMMIT
351
         git checkout $HUBZILLA_COMMIT -b $HUBZILLA_COMMIT
343
         set_completion_param "hubzilla commit" "$HUBZILLA_COMMIT"
352
         set_completion_param "hubzilla commit" "$HUBZILLA_COMMIT"
344
 
353
 
345
         rm -rf $HUBZILLA_PATH
354
         rm -rf $HUBZILLA_PATH
346
         mv hubzilla $HUBZILLA_PATH
355
         mv hubzilla $HUBZILLA_PATH
347
 
356
 
348
-        git_clone $HUBZILLA_ADDONS_REPO $HUBZILLA_PATH/addon
357
+        if [ -d /repos/hubzilla-addons ]; then
358
+            mkdir $HUBZILLA_PATH/addon
359
+            cp -r -p /repos/hubzilla-addons/* $HUBZILLA_PATH/addon
360
+            cd $HUBZILLA_PATH/addon
361
+            git pull
362
+        else
363
+            git_clone $HUBZILLA_ADDONS_REPO $HUBZILLA_PATH/addon
364
+        fi
365
+
349
         cd $HUBZILLA_PATH/addon
366
         cd $HUBZILLA_PATH/addon
350
         git checkout $HUBZILLA_ADDONS_COMMIT -b $HUBZILLA_ADDONS_COMMIT
367
         git checkout $HUBZILLA_ADDONS_COMMIT -b $HUBZILLA_ADDONS_COMMIT
351
         set_completion_param "hubzilla addons commit" "$HUBZILLA_ADDONS_COMMIT"
368
         set_completion_param "hubzilla addons commit" "$HUBZILLA_ADDONS_COMMIT"
352
 
369
 
353
         # some extra themes
370
         # some extra themes
354
-        git_clone $HUBZILLA_THEMES_REPO $HUBZILLA_PATH/redmatrix-themes1
355
-        cp -r $HUBZILLA_PATH/redmatrix-themes1/* $HUBZILLA_PATH/view/theme/
371
+        #git_clone $HUBZILLA_THEMES_REPO $HUBZILLA_PATH/redmatrix-themes1
372
+        #cp -r $HUBZILLA_PATH/redmatrix-themes1/* $HUBZILLA_PATH/view/theme/
356
 
373
 
357
         chown -R www-data:www-data $HUBZILLA_PATH
374
         chown -R www-data:www-data $HUBZILLA_PATH
358
     fi
375
     fi

+ 11
- 2
src/freedombone-app-koel 查看文件

487
         mkdir /var/www/$KOEL_DOMAIN_NAME
487
         mkdir /var/www/$KOEL_DOMAIN_NAME
488
     fi
488
     fi
489
     if [ ! -d /var/www/$KOEL_DOMAIN_NAME/htdocs ]; then
489
     if [ ! -d /var/www/$KOEL_DOMAIN_NAME/htdocs ]; then
490
-        function_check git_clone
491
-        git_clone $KOEL_REPO /var/www/$KOEL_DOMAIN_NAME/htdocs
490
+
491
+        if [ -d /repos/koel ]; then
492
+            mkdir /var/www/$KOEL_DOMAIN_NAME/htdocs
493
+            cp -r -p /repos/koel/* /var/www/$KOEL_DOMAIN_NAME/htdocs
494
+            cd /var/www/$KOEL_DOMAIN_NAME/htdocs
495
+            git pull
496
+        else
497
+            function_check git_clone
498
+            git_clone $KOEL_REPO /var/www/$KOEL_DOMAIN_NAME/htdocs
499
+        fi
500
+
492
         if [ ! -d /var/www/$KOEL_DOMAIN_NAME/htdocs ]; then
501
         if [ ! -d /var/www/$KOEL_DOMAIN_NAME/htdocs ]; then
493
             echo $'Unable to clone koel repo'
502
             echo $'Unable to clone koel repo'
494
             exit 365735
503
             exit 365735

+ 9
- 1
src/freedombone-app-librevault 查看文件

250
 
250
 
251
     set_completion_param "Protobuf commit" "$PROTOBUF_COMMIT"
251
     set_completion_param "Protobuf commit" "$PROTOBUF_COMMIT"
252
 
252
 
253
-    git_clone $LIBREVAULT_REPO $INSTALL_DIR/librevault
253
+    if [ -d /repos/librevault ]; then
254
+        mkdir $INSTALL_DIR/librevault
255
+        cp -r -p /repos/librevault/* $INSTALL_DIR/librevault
256
+        cd $INSTALL_DIR/librevault
257
+        git pull
258
+    else
259
+        git_clone $LIBREVAULT_REPO $INSTALL_DIR/librevault
260
+    fi
261
+
254
     cd $INSTALL_DIR/librevault
262
     cd $INSTALL_DIR/librevault
255
     git checkout $LIBREVAULT_COMMIT -b $LIBREVAULT_COMMIT
263
     git checkout $LIBREVAULT_COMMIT -b $LIBREVAULT_COMMIT
256
     git submodule update --init --recursive
264
     git submodule update --init --recursive

+ 10
- 1
src/freedombone-app-lychee 查看文件

369
     fi
369
     fi
370
 
370
 
371
     cd /var/www/$LYCHEE_DOMAIN_NAME
371
     cd /var/www/$LYCHEE_DOMAIN_NAME
372
-    git_clone $LYCHEE_REPO htdocs
372
+
373
+    if [ -d /repos/lychee ]; then
374
+        mkdir htdocs
375
+        cp -r -p /repos/lychee/* htdocs
376
+        cd htdocs
377
+        git pull
378
+    else
379
+        git_clone $LYCHEE_REPO htdocs
380
+    fi
381
+
373
     cd htdocs
382
     cd htdocs
374
     git checkout $LYCHEE_COMMIT -b $LYCHEE_COMMIT
383
     git checkout $LYCHEE_COMMIT -b $LYCHEE_COMMIT
375
     set_completion_param "lychee commit" "$LYCHEE_COMMIT"
384
     set_completion_param "lychee commit" "$LYCHEE_COMMIT"

+ 10
- 1
src/freedombone-app-mailpile 查看文件

272
     if [ -d /var/www/$MAILPILE_DOMAIN_NAME/mail ]; then
272
     if [ -d /var/www/$MAILPILE_DOMAIN_NAME/mail ]; then
273
         rm -rf /var/www/$MAILPILE_DOMAIN_NAME/mail
273
         rm -rf /var/www/$MAILPILE_DOMAIN_NAME/mail
274
     fi
274
     fi
275
-    git_clone $MAILPILE_REPO mail
275
+
276
+    if [ -d /repos/mailpile ]; then
277
+        mkdir mail
278
+        cp -r -p /repos/mailpile/* mail
279
+        cd mail
280
+        git pull
281
+    else
282
+        git_clone $MAILPILE_REPO mail
283
+    fi
284
+
276
     cd mail
285
     cd mail
277
     git checkout $MAILPILE_COMMIT -b $MAILPILE_COMMIT
286
     git checkout $MAILPILE_COMMIT -b $MAILPILE_COMMIT
278
     set_completion_param "mailpile commit" "$MAILPILE_COMMIT"
287
     set_completion_param "mailpile commit" "$MAILPILE_COMMIT"

+ 11
- 2
src/freedombone-app-matrix 查看文件

506
 
506
 
507
 function install_home_server {
507
 function install_home_server {
508
     if [ ! -d /etc/matrix ]; then
508
     if [ ! -d /etc/matrix ]; then
509
-        function_check git_clone
510
-        git_clone $MATRIX_REPO /etc/matrix
509
+
510
+        if [ -d /repos/matrix ]; then
511
+            mkdir /etc/matrix
512
+            cp -r -p /repos/matrix/* /etc/matrix
513
+            cd /etc/matrix
514
+            git pull
515
+        else
516
+            function_check git_clone
517
+            git_clone $MATRIX_REPO /etc/matrix
518
+        fi
519
+
511
         if [ ! -d /etc/matrix ]; then
520
         if [ ! -d /etc/matrix ]; then
512
             echo $'Unable to clone matrix repo'
521
             echo $'Unable to clone matrix repo'
513
             exit 6724683
522
             exit 6724683

+ 11
- 1
src/freedombone-app-mediagoblin 查看文件

281
     chown -hR mediagoblin:www-data $MEDIAGOBLIN_BASE_DIR
281
     chown -hR mediagoblin:www-data $MEDIAGOBLIN_BASE_DIR
282
     chown -hR mediagoblin:www-data /var/lib/mediagoblin
282
     chown -hR mediagoblin:www-data /var/lib/mediagoblin
283
     chmod -R g+wx /var/lib/mediagoblin
283
     chmod -R g+wx /var/lib/mediagoblin
284
-    su -c "cd $MEDIAGOBLIN_BASE_DIR && git clone $MEDIAGOBLIN_REPO $MEDIAGOBLIN_BASE_DIR/mediagoblin" - mediagoblin
284
+
285
+    if [ -d /repos/mediagoblin ]; then
286
+        mkdir -p $MEDIAGOBLIN_BASE_DIR/mediagoblin
287
+        cp -r -p /repos/mediagoblin/* $MEDIAGOBLIN_BASE_DIR/mediagoblin
288
+        cd $MEDIAGOBLIN_BASE_DIR/mediagoblin
289
+        git pull
290
+        chown -R mediagoblin:mediagoblin $MEDIAGOBLIN_BASE_DIR/mediagoblin
291
+    else
292
+        su -c "cd $MEDIAGOBLIN_BASE_DIR && git clone $MEDIAGOBLIN_REPO $MEDIAGOBLIN_BASE_DIR/mediagoblin" - mediagoblin
293
+    fi
294
+
285
     su -c "cd $MEDIAGOBLIN_BASE_DIR/mediagoblin && git checkout $MEDIAGOBLIN_COMMIT -b $MEDIAGOBLIN_COMMIT" - mediagoblin
295
     su -c "cd $MEDIAGOBLIN_BASE_DIR/mediagoblin && git checkout $MEDIAGOBLIN_COMMIT -b $MEDIAGOBLIN_COMMIT" - mediagoblin
286
     su -c "cd $MEDIAGOBLIN_BASE_DIR/mediagoblin && git submodule sync" - mediagoblin
296
     su -c "cd $MEDIAGOBLIN_BASE_DIR/mediagoblin && git submodule sync" - mediagoblin
287
     su -c "cd $MEDIAGOBLIN_BASE_DIR/mediagoblin && git submodule update --force --init --recursive" - mediagoblin
297
     su -c "cd $MEDIAGOBLIN_BASE_DIR/mediagoblin && git submodule update --force --init --recursive" - mediagoblin

+ 11
- 2
src/freedombone-app-movim 查看文件

332
         mkdir /var/www/$MOVIM_DOMAIN_NAME
332
         mkdir /var/www/$MOVIM_DOMAIN_NAME
333
     fi
333
     fi
334
     if [ ! -d /var/www/$MOVIM_DOMAIN_NAME/htdocs ]; then
334
     if [ ! -d /var/www/$MOVIM_DOMAIN_NAME/htdocs ]; then
335
-        function_check git_clone
336
-        git_clone $MOVIM_REPO /var/www/$MOVIM_DOMAIN_NAME/htdocs
335
+
336
+        if [ -d /repos/movim ]; then
337
+            mkdir /var/www/$MOVIM_DOMAIN_NAME/htdocs
338
+            cp -r -p /repos/movim/* /var/www/$MOVIM_DOMAIN_NAME/htdocs
339
+            cd /var/www/$MOVIM_DOMAIN_NAME/htdocs
340
+            git pull
341
+        else
342
+            function_check git_clone
343
+            git_clone $MOVIM_REPO /var/www/$MOVIM_DOMAIN_NAME/htdocs
344
+        fi
345
+
337
         if [ ! -d /var/www/$MOVIM_DOMAIN_NAME/htdocs ]; then
346
         if [ ! -d /var/www/$MOVIM_DOMAIN_NAME/htdocs ]; then
338
             echo $'Unable to clone movim repo'
347
             echo $'Unable to clone movim repo'
339
             exit 76285
348
             exit 76285

+ 11
- 2
src/freedombone-app-nextcloud 查看文件

416
         mkdir /var/www/$NEXTCLOUD_DOMAIN_NAME
416
         mkdir /var/www/$NEXTCLOUD_DOMAIN_NAME
417
     fi
417
     fi
418
     if [ ! -d /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs ]; then
418
     if [ ! -d /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs ]; then
419
-        function_check git_clone
420
-        git_clone $NEXTCLOUD_REPO /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
419
+
420
+        if [ -d /repos/nextcloud ]; then
421
+            mkdir /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
422
+            cp -r -p /repos/nextcloud/* /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
423
+            cd /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
424
+            git pull
425
+        else
426
+            function_check git_clone
427
+            git_clone $NEXTCLOUD_REPO /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs
428
+        fi
429
+
421
         if [ ! -d /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs ]; then
430
         if [ ! -d /var/www/$NEXTCLOUD_DOMAIN_NAME/htdocs ]; then
422
             echo $'Unable to clone nextcloud repo'
431
             echo $'Unable to clone nextcloud repo'
423
             exit 87525
432
             exit 87525

+ 10
- 1
src/freedombone-app-pihole 查看文件

375
 
375
 
376
     if [ ! -d $INSTALL_DIR/pihole ]; then
376
     if [ ! -d $INSTALL_DIR/pihole ]; then
377
         cd $INSTALL_DIR
377
         cd $INSTALL_DIR
378
-        git_clone $PIHOLE_REPO pihole
378
+
379
+        if [ -d /repos/pihole ]; then
380
+            mkdir pihole
381
+            cp -r -p /repos/pihole/* pihole
382
+            cd pihole
383
+            git pull
384
+        else
385
+            git_clone $PIHOLE_REPO pihole
386
+        fi
387
+
379
         if [ ! -d $INSTALL_DIR/pihole ]; then
388
         if [ ! -d $INSTALL_DIR/pihole ]; then
380
             exit 523925
389
             exit 523925
381
         fi
390
         fi

+ 11
- 2
src/freedombone-app-postactiv 查看文件

548
         mkdir /var/www/$POSTACTIV_DOMAIN_NAME
548
         mkdir /var/www/$POSTACTIV_DOMAIN_NAME
549
     fi
549
     fi
550
     if [ ! -d /var/www/$POSTACTIV_DOMAIN_NAME/htdocs ]; then
550
     if [ ! -d /var/www/$POSTACTIV_DOMAIN_NAME/htdocs ]; then
551
-        function_check git_clone
552
-        git_clone $POSTACTIV_REPO /var/www/$POSTACTIV_DOMAIN_NAME/htdocs
551
+
552
+        if [ -d /repos/postactiv ]; then
553
+            mkdir /var/www/$POSTACTIV_DOMAIN_NAME/htdocs
554
+            cp -r -p /repos/postactiv/* /var/www/$POSTACTIV_DOMAIN_NAME/htdocs
555
+            cd /var/www/$POSTACTIV_DOMAIN_NAME/htdocs
556
+            git pull
557
+        else
558
+            function_check git_clone
559
+            git_clone $POSTACTIV_REPO /var/www/$POSTACTIV_DOMAIN_NAME/htdocs
560
+        fi
561
+
553
         if [ ! -d /var/www/$POSTACTIV_DOMAIN_NAME/htdocs ]; then
562
         if [ ! -d /var/www/$POSTACTIV_DOMAIN_NAME/htdocs ]; then
554
             echo $'Unable to clone postactiv repo'
563
             echo $'Unable to clone postactiv repo'
555
             exit 87525
564
             exit 87525

+ 28
- 3
src/freedombone-app-profanity 查看文件

198
     apt-get -yq install libotr5-dev libgpgme11-dev python-dev libreadline-dev
198
     apt-get -yq install libotr5-dev libgpgme11-dev python-dev libreadline-dev
199
 
199
 
200
     # dependency for profanity not available in debian
200
     # dependency for profanity not available in debian
201
-    git_clone $LIBMESODE_REPO $INSTALL_DIR/libmesode
201
+    if [ -d /repos/libmesode ]; then
202
+        mkdir $INSTALL_DIR/libmesode
203
+        cp -r -p /repos/libmesode/* $INSTALL_DIR/libmesode
204
+        cd $INSTALL_DIR/libmesode
205
+        git pull
206
+    else
207
+        git_clone $LIBMESODE_REPO $INSTALL_DIR/libmesode
208
+    fi
209
+
202
     cd $INSTALL_DIR/libmesode
210
     cd $INSTALL_DIR/libmesode
203
     git checkout $LIBMESODE_COMMIT -b $LIBMESODE_COMMIT
211
     git checkout $LIBMESODE_COMMIT -b $LIBMESODE_COMMIT
204
     ./bootstrap.sh
212
     ./bootstrap.sh
208
     cp /usr/local/lib/libmesode* /usr/lib
216
     cp /usr/local/lib/libmesode* /usr/lib
209
 
217
 
210
     # build profanity
218
     # build profanity
211
-    git_clone $PROFANITY_REPO $INSTALL_DIR/profanity
219
+    if [ -d /repos/profanity ]; then
220
+        mkdir $INSTALL_DIR/profanity
221
+        cp -r -p /repos/profanity/* $INSTALL_DIR/profanity
222
+        cd $INSTALL_DIR/profanity
223
+        git pull
224
+    else
225
+        git_clone $PROFANITY_REPO $INSTALL_DIR/profanity
226
+    fi
227
+
212
     cd $INSTALL_DIR/profanity
228
     cd $INSTALL_DIR/profanity
213
     git checkout $PROFANITY_COMMIT -b $PROFANITY_COMMIT
229
     git checkout $PROFANITY_COMMIT -b $PROFANITY_COMMIT
214
     ./bootstrap.sh
230
     ./bootstrap.sh
223
 
239
 
224
     # install the omemo plugin
240
     # install the omemo plugin
225
     apt-get -yq install python-pip python-setuptools clang libffi-dev libssl-dev python-dev
241
     apt-get -yq install python-pip python-setuptools clang libffi-dev libssl-dev python-dev
226
-    git_clone $PROFANITY_OMEMO_PLUGIN_REPO $INSTALL_DIR/profanity-omemo-plugin
242
+
243
+    if [ -d /repos/profanity-omemo ]; then
244
+        mkdir $INSTALL_DIR/profanity-omemo-plugin
245
+        cp -r -p /repos/profanity-omemo/* $INSTALL_DIR/profanity-omemo-plugin
246
+        cd $INSTALL_DIR/profanity-omemo-plugin
247
+        git pull
248
+    else
249
+        git_clone $PROFANITY_OMEMO_PLUGIN_REPO $INSTALL_DIR/profanity-omemo-plugin
250
+    fi
251
+
227
     cd $INSTALL_DIR/profanity-omemo-plugin
252
     cd $INSTALL_DIR/profanity-omemo-plugin
228
     git checkout $PROFANITY_OMEMO_PLUGIN_COMMIT -b $PROFANITY_OMEMO_PLUGIN_COMMIT
253
     git checkout $PROFANITY_OMEMO_PLUGIN_COMMIT -b $PROFANITY_OMEMO_PLUGIN_COMMIT
229
     if [ ! -f $INSTALL_DIR/profanity-omemo-plugin/deploy/prof_omemo_plugin.py ]; then
254
     if [ ! -f $INSTALL_DIR/profanity-omemo-plugin/deploy/prof_omemo_plugin.py ]; then

+ 22
- 4
src/freedombone-app-rss 查看文件

321
         mkdir /etc/share
321
         mkdir /etc/share
322
     fi
322
     fi
323
     cd /etc/share
323
     cd /etc/share
324
-    function_check git_clone
325
-    git_clone $RSS_READER_REPO tt-rss
324
+
325
+    if [ -d /repos/rss ]; then
326
+        mkdir tt-rss
327
+        cp -r -p /repos/rss/* tt-rss
328
+        cd tt-rss
329
+        git pull
330
+    else
331
+        function_check git_clone
332
+        git_clone $RSS_READER_REPO tt-rss
333
+    fi
334
+
326
     if [ ! -d $RSS_READER_PATH ]; then
335
     if [ ! -d $RSS_READER_PATH ]; then
327
         echo $'Could not clone RSS reader repo'
336
         echo $'Could not clone RSS reader repo'
328
         exit 52925
337
         exit 52925
596
     fi
605
     fi
597
 
606
 
598
     cd /etc/share
607
     cd /etc/share
599
-    function_check git_clone
600
-    git_clone $RSS_MOBILE_READER_REPO ttrss-mobile
608
+
609
+    if [ -d /repos/rss-mobile ]; then
610
+        mkdir ttrss-mobile
611
+        cp -r -p /repos/rss-mobile/* ttrss-mobile
612
+        cd ttrss-mobile
613
+        git pull
614
+    else
615
+        function_check git_clone
616
+        git_clone $RSS_MOBILE_READER_REPO ttrss-mobile
617
+    fi
618
+
601
     if [ ! -d $RSS_MOBILE_READER_PATH ]; then
619
     if [ ! -d $RSS_MOBILE_READER_PATH ]; then
602
         echo $'Could not clone RSS mobile reader repo'
620
         echo $'Could not clone RSS mobile reader repo'
603
         exit 24816
621
         exit 24816

+ 11
- 2
src/freedombone-app-searx 查看文件

878
 
878
 
879
     # clone the repo
879
     # clone the repo
880
     cd $SEARX_PATH
880
     cd $SEARX_PATH
881
-    function_check git_clone
882
-    git_clone $SEARX_REPO searx
881
+
882
+    if [ -d /repos/searx ]; then
883
+        mkdir searx
884
+        cp -r -p /repos/searx/* searx
885
+        cd searx
886
+        git pull
887
+    else
888
+        function_check git_clone
889
+        git_clone $SEARX_REPO searx
890
+    fi
891
+
883
     git checkout $SEARX_COMMIT -b $SEARX_COMMIT
892
     git checkout $SEARX_COMMIT -b $SEARX_COMMIT
884
     set_completion_param "searx commit" "$SEARX_COMMIT"
893
     set_completion_param "searx commit" "$SEARX_COMMIT"
885
 
894
 

+ 47
- 8
src/freedombone-app-tox 查看文件

127
 
127
 
128
     mesh_install_ffmpeg
128
     mesh_install_ffmpeg
129
 
129
 
130
-    git clone $QTOX_REPO ${rootdir}$INSTALL_DIR/qtox
130
+    if [ -d /repos/qtox ]; then
131
+        mkdir ${rootdir}$INSTALL_DIR/qtox
132
+        cp -r -p /repos/qtox/* ${rootdir}$INSTALL_DIR/qtox
133
+        cd ${rootdir}$INSTALL_DIR/qtox
134
+        git pull
135
+    else
136
+        git clone $QTOX_REPO ${rootdir}$INSTALL_DIR/qtox
137
+    fi
138
+
131
     if [ ! -d ${rootdir}$INSTALL_DIR/qtox ]; then
139
     if [ ! -d ${rootdir}$INSTALL_DIR/qtox ]; then
132
         exit 72428
140
         exit 72428
133
     fi
141
     fi
323
 
331
 
324
     # install a command to obtain the Tox ID
332
     # install a command to obtain the Tox ID
325
     cd $INSTALL_DIR
333
     cd $INSTALL_DIR
326
-    function_check git_clone
327
-    git_clone $TOXID_REPO $INSTALL_DIR/toxid
334
+
335
+    if [ -d /repos/toxid ]; then
336
+        mkdir $INSTALL_DIR/toxid
337
+        cp -r -p /repos/toxid/* $INSTALL_DIR/toxid
338
+        cd $INSTALL_DIR/toxid
339
+        git pull
340
+    else
341
+        function_check git_clone
342
+        git_clone $TOXID_REPO $INSTALL_DIR/toxid
343
+    fi
344
+
328
     if [ ! -d $INSTALL_DIR/toxid ]; then
345
     if [ ! -d $INSTALL_DIR/toxid ]; then
329
         exit 63921
346
         exit 63921
330
     fi
347
     fi
457
         mkdir -p ${rootdir}${INSTALL_DIR}
474
         mkdir -p ${rootdir}${INSTALL_DIR}
458
     fi
475
     fi
459
     if [ ! -d ${rootdir}${INSTALL_DIR}/toxcore ]; then
476
     if [ ! -d ${rootdir}${INSTALL_DIR}/toxcore ]; then
460
-        git clone ${TOXCORE_REPO} ${rootdir}${INSTALL_DIR}/toxcore
461
-        if [ ! "$?" = "0" ]; then
462
-            exit 429252
477
+        if [ -d /repos/toxcore ]; then
478
+            mkdir ${rootdir}${INSTALL_DIR}/toxcore
479
+            cp -r -p /repos/toxcore/* ${rootdir}${INSTALL_DIR}/toxcore
480
+            cd ${rootdir}${INSTALL_DIR}/toxcore
481
+            git pull
482
+        else
483
+            git clone ${TOXCORE_REPO} ${rootdir}${INSTALL_DIR}/toxcore
484
+            if [ ! "$?" = "0" ]; then
485
+                exit 429252
486
+            fi
463
         fi
487
         fi
464
     fi
488
     fi
465
     cd ${rootdir}$INSTALL_DIR/toxcore
489
     cd ${rootdir}$INSTALL_DIR/toxcore
580
         mkdir -p ${rootdir}${INSTALL_DIR}
604
         mkdir -p ${rootdir}${INSTALL_DIR}
581
     fi
605
     fi
582
 
606
 
583
-    git clone ${TOXID_REPO} ${rootdir}${INSTALL_DIR}/toxid
607
+    if [ -d /repos/toxid ]; then
608
+        mkdir ${rootdir}${INSTALL_DIR}/toxid
609
+        cp -r -p /repos/toxid/* ${rootdir}${INSTALL_DIR}/toxid
610
+        cd ${rootdir}${INSTALL_DIR}/toxid
611
+        git pull
612
+    else
613
+        git clone ${TOXID_REPO} ${rootdir}${INSTALL_DIR}/toxid
614
+    fi
615
+
584
     if [ ! -d ${rootdir}${INSTALL_DIR}/toxid ]; then
616
     if [ ! -d ${rootdir}${INSTALL_DIR}/toxid ]; then
585
         echo $'Unable to clone toxid repo'
617
         echo $'Unable to clone toxid repo'
586
         exit 768352
618
         exit 768352
647
     TEMP_SCRIPT=/tmp/$TEMP_SCRIPT_NAME
679
     TEMP_SCRIPT=/tmp/$TEMP_SCRIPT_NAME
648
     echo '#!/bin/bash' > $TEMP_SCRIPT
680
     echo '#!/bin/bash' > $TEMP_SCRIPT
649
     echo "mkdir -p $INSTALL_DIR" >> $TEMP_SCRIPT
681
     echo "mkdir -p $INSTALL_DIR" >> $TEMP_SCRIPT
650
-    echo "git clone $TOXIC_REPO $INSTALL_DIR/toxic" >> $TEMP_SCRIPT
682
+    echo 'if [ -d /repos/toxic ]; then' >> $TEMP_SCRIPT
683
+    echo "    mkdir $INSTALL_DIR/toxic" >> $TEMP_SCRIPT
684
+    echo "    cp -r -p /repos/toxic/* $INSTALL_DIR/toxic" >> $TEMP_SCRIPT
685
+    echo "    cd $INSTALL_DIR/toxic" >> $TEMP_SCRIPT
686
+    echo '    git pull' >> $TEMP_SCRIPT
687
+    echo 'else' >> $TEMP_SCRIPT
688
+    echo "    git clone $TOXIC_REPO $INSTALL_DIR/toxic" >> $TEMP_SCRIPT
689
+    echo 'fi'
651
     echo "cd $INSTALL_DIR/toxic" >> $TEMP_SCRIPT
690
     echo "cd $INSTALL_DIR/toxic" >> $TEMP_SCRIPT
652
     echo "git checkout $TOXIC_COMMIT -b $TOXIC_COMMIT" >> $TEMP_SCRIPT
691
     echo "git checkout $TOXIC_COMMIT -b $TOXIC_COMMIT" >> $TEMP_SCRIPT
653
     echo 'make' >> $TEMP_SCRIPT
692
     echo 'make' >> $TEMP_SCRIPT

+ 10
- 1
src/freedombone-app-turtl 查看文件

596
 
596
 
597
     # install turtl API
597
     # install turtl API
598
     cd $TURTL_BASE_DIR/
598
     cd $TURTL_BASE_DIR/
599
-    git clone $TURTL_REPO $TURTL_BASE_DIR/api
599
+
600
+    if [ -d /repos/turtl ]; then
601
+        mkdir $TURTL_BASE_DIR/api
602
+        cp -r -p /repos/turtl/* $TURTL_BASE_DIR/api
603
+        cd $TURTL_BASE_DIR/api
604
+        git pull
605
+    else
606
+        git clone $TURTL_REPO $TURTL_BASE_DIR/api
607
+    fi
608
+
600
     cd $TURTL_BASE_DIR/api
609
     cd $TURTL_BASE_DIR/api
601
     git checkout $TURTL_COMMIT -b $TURTL_COMMIT
610
     git checkout $TURTL_COMMIT -b $TURTL_COMMIT
602
     set_completion_param "turtl commit" "$TURTL_COMMIT"
611
     set_completion_param "turtl commit" "$TURTL_COMMIT"

+ 0
- 9
src/freedombone-app-xmpp 查看文件

50
 prosody_modules_filename='prosody-modules-20170514.tar.gz'
50
 prosody_modules_filename='prosody-modules-20170514.tar.gz'
51
 prosody_modules_hash='ef404c203317cc0de6da7aaec4f21765a57f630adfbf082cf2dd92b881c15f86'
51
 prosody_modules_hash='ef404c203317cc0de6da7aaec4f21765a57f630adfbf082cf2dd92b881c15f86'
52
 
52
 
53
-LIBMESODE_REPO="https://github.com/boothj5/libmesode"
54
-LIBMESODE_COMMIT='e3db0e9bfba61b2d82193874343a94a88f910800'
55
-
56
-PROFANITY_REPO="https://github.com/boothj5/profanity"
57
-PROFANITY_COMMIT='2fafaec8a7dc9bc01ee894d83214590598b32914'
58
-
59
-PROFANITY_OMEMO_PLUGIN_REPO="https://github.com/ReneVolution/profanity-omemo-plugin"
60
-PROFANITY_OMEMO_PLUGIN_COMMIT='3ec8ec173656bed9761b740b086123e07c749548'
61
-
62
 xmpp_variables=(ONION_ONLY
53
 xmpp_variables=(ONION_ONLY
63
                 INSTALLED_WITHIN_DOCKER
54
                 INSTALLED_WITHIN_DOCKER
64
                 XMPP_CIPHERS
55
                 XMPP_CIPHERS

+ 10
- 1
src/freedombone-app-zeronet 查看文件

432
     chroot "$rootdir" pip install msgpack-python --upgrade
432
     chroot "$rootdir" pip install msgpack-python --upgrade
433
 
433
 
434
     chroot "$rootdir" useradd -d $MESH_INSTALL_DIR/zeronet/ -s /bin/false zeronet
434
     chroot "$rootdir" useradd -d $MESH_INSTALL_DIR/zeronet/ -s /bin/false zeronet
435
-    git clone $ZERONET_REPO $rootdir$MESH_INSTALL_DIR/zeronet
435
+
436
+    if [ -d /repos/zeronet ]; then
437
+        mkdir $rootdir$MESH_INSTALL_DIR/zeronet
438
+        cp -r -p /repos/zeronet/* $rootdir$MESH_INSTALL_DIR/zeronet
439
+        cd $rootdir$MESH_INSTALL_DIR/zeronet
440
+        git pull
441
+    else
442
+        git clone $ZERONET_REPO $rootdir$MESH_INSTALL_DIR/zeronet
443
+    fi
444
+
436
     if [ ! -d $rootdir$MESH_INSTALL_DIR/zeronet ]; then
445
     if [ ! -d $rootdir$MESH_INSTALL_DIR/zeronet ]; then
437
         echo 'WARNING: Unable to clone zeronet'
446
         echo 'WARNING: Unable to clone zeronet'
438
         return
447
         return

+ 41
- 0
src/freedombone-image-customise 查看文件

1221
     fi
1221
     fi
1222
 }
1222
 }
1223
 
1223
 
1224
+function image_preinstall_repos {
1225
+    if [ ! -d $rootdir/repos ]; then
1226
+        mkdir $rootdir/repos
1227
+    fi
1228
+    git clone $CRYPTPAD_REPO $rootdir/repos/cryptpad
1229
+    git clone $DOKUWIKI_REPO $rootdir/repos/dokuwiki
1230
+    git clone $ETHERPAD_REPO $rootdir/repos/etherpad
1231
+    git clone $FRIENDICA_REPO $rootdir/repos/friendica
1232
+    git clone $GNUSOCIAL_REPO $rootdir/repos/gnusocial
1233
+    git clone $GNUSOCIAL_MARKDOWN_REPO $rootdir/repos/gnusocial-markdown
1234
+    git clone $QVITTER_THEME_REPO $rootdir/repos/qvitter
1235
+    git clone $PLEROMA_REPO $rootdir/repos/pleroma
1236
+    git clone $POSTACTIV_REPO $rootdir/repos/postactiv
1237
+    git clone $SHARINGS_REPO $rootdir/repos/sharings
1238
+    git clone $HTMLY_REPO $rootdir/repos/htmly
1239
+    git clone $HUBZILLA_REPO $rootdir/repos/hubzilla
1240
+    git clone $HUBZILLA_ADDONS_REPO $rootdir/repos/hubzilla-addons
1241
+    git clone $KOEL_REPO $rootdir/repos/koel
1242
+    #git clone $LIBREVAULT_REPO $rootdir/repos/librevault
1243
+    git clone $LYCHEE_REPO $rootdir/repos/lychee
1244
+    git clone $MAILPILE_REPO $rootdir/repos/mailpile
1245
+    git clone $MATRIX_REPO $rootdir/repos/matrix
1246
+    git clone $MEDIAGOBLIN_REPO $rootdir/repos/mediagoblin
1247
+    #git clone $MOVIM_REPO $rootdir/repos/movim
1248
+    git clone $NEXTCLOUD_REPO $rootdir/repos/nextcloud
1249
+    git clone $PIHOLE_REPO $rootdir/repos/pihole
1250
+    git clone $PROFANITY_REPO $rootdir/repos/profanity
1251
+    git clone $LIBMESODE_REPO $rootdir/repos/libmesode
1252
+    git clone $PROFANITY_OMEMO_PLUGIN_REPO $rootdir/repos/profanity-omemo
1253
+    git clone $RSS_READER_REPO $rootdir/repos/rss
1254
+    git clone $RSS_MOBILE_READER_REPO $rootdir/repos/rss-mobile
1255
+    git clone $SEARX_REPO $rootdir/repos/searx
1256
+    git clone $TOXCORE_REPO $rootdir/repos/toxcore
1257
+    git clone $TOXID_REPO $rootdir/repos/toxid
1258
+    git clone $TOXIC_REPO $rootdir/repos/toxic
1259
+    git clone $QTOX_REPO $rootdir/repos/qtox
1260
+    git clone $TURTL_REPO $rootdir/repos/turtl
1261
+    #git clone $ZERONET_REPO $rootdir/repos/zeronet
1262
+}
1263
+
1224
 ##############################################################################
1264
 ##############################################################################
1225
 
1265
 
1226
 
1266
 
1401
 image_setup_utils
1441
 image_setup_utils
1402
 image_install_inadyn
1442
 image_install_inadyn
1403
 image_install_nodejs
1443
 image_install_nodejs
1444
+image_preinstall_repos
1404
 
1445
 
1405
 # remove downloaded packages
1446
 # remove downloaded packages
1406
 chroot $rootdir apt-get -y autoremove
1447
 chroot $rootdir apt-get -y autoremove

+ 22
- 4
src/freedombone-utils-gnusocialtools 查看文件

211
     fi
211
     fi
212
 
212
 
213
     cd /var/www/${domain_name}/htdocs/local/plugins
213
     cd /var/www/${domain_name}/htdocs/local/plugins
214
-    function_check git_clone
215
-    git_clone $QVITTER_THEME_REPO Qvitter
214
+
215
+    if [ -d /repos/qvitter ]; then
216
+        mkdir Qvitter
217
+        cp -r -p /repos/qvitter/* Qvitter
218
+        cd Qvitter
219
+        git pull
220
+    else
221
+        function_check git_clone
222
+        git_clone $QVITTER_THEME_REPO Qvitter
223
+    fi
224
+
216
     cd /var/www/${domain_name}/htdocs/local/plugins/Qvitter
225
     cd /var/www/${domain_name}/htdocs/local/plugins/Qvitter
217
     git checkout $QVITTER_THEME_COMMIT -b $QVITTER_THEME_COMMIT
226
     git checkout $QVITTER_THEME_COMMIT -b $QVITTER_THEME_COMMIT
218
 
227
 
332
     title="$4"
341
     title="$4"
333
 
342
 
334
     if [ ! -d $INSTALL_DIR/pleroma ]; then
343
     if [ ! -d $INSTALL_DIR/pleroma ]; then
335
-        function_check git_clone
336
-        git_clone $PLEROMA_REPO $INSTALL_DIR/pleroma
344
+
345
+        if [ -d /repos/pleroma ]; then
346
+            mkdir -p $INSTALL_DIR/pleroma
347
+            cp -r -p /repos/pleroma/* $INSTALL_DIR/pleroma
348
+            cd $INSTALL_DIR/pleroma
349
+            git pull
350
+        else
351
+            function_check git_clone
352
+            git_clone $PLEROMA_REPO $INSTALL_DIR/pleroma
353
+        fi
354
+
337
         if [ ! -d $INSTALL_DIR/pleroma ]; then
355
         if [ ! -d $INSTALL_DIR/pleroma ]; then
338
             echo $'Unable to clone pleroma repo'
356
             echo $'Unable to clone pleroma repo'
339
             exit 682252
357
             exit 682252