Kaynağa Gözat

Local install of datserver

Bob Mottram 7 yıl önce
ebeveyn
işleme
c998564b70
1 değiştirilmiş dosya ile 16 ekleme ve 41 silme
  1. 16
    41
      src/freedombone-app-datserver

+ 16
- 41
src/freedombone-app-datserver Dosyayı Görüntüle

124
 }
124
 }
125
 
125
 
126
 function upgrade_datserver {
126
 function upgrade_datserver {
127
-    CURR_DATSERVER_DAT_VERSION=$(get_completion_param "datserver version")
128
-    if [[ "$CURR_DATSERVER_DAT_VERSION" != "$DATSERVER_DAT_VERSION" ]]; then
129
-
130
-        if npm update -g dat@$DATSERVER_DAT_VERSION; then
131
-            set_completion_param "datserver version" "$DATSERVER_DAT_VERSION"
132
-        fi
133
-        chown -R datserver:datserver "$DATSERVER_DIRECTORY"
134
-    fi
135
-
136
     CURR_DATSERVER_HYPERCORED_VERSION=$(get_completion_param "datserver hypercored version")
127
     CURR_DATSERVER_HYPERCORED_VERSION=$(get_completion_param "datserver hypercored version")
137
     if [[ "$CURR_DATSERVER_HYPERCORED_VERSION" != "$DATSERVER_HYPERCORED_VERSION" ]]; then
128
     if [[ "$CURR_DATSERVER_HYPERCORED_VERSION" != "$DATSERVER_HYPERCORED_VERSION" ]]; then
138
-
139
-        if npm update -g hypercored@$DATSERVER_HYPERCORED_VERSION; then
129
+        cd $DATSERVER_DIRECTORY || exit 254274
130
+        if npm update hypercored@$DATSERVER_HYPERCORED_VERSION; then
140
             set_completion_param "datserver hypercored version" "$DATSERVER_HYPERCORED_VERSION"
131
             set_completion_param "datserver hypercored version" "$DATSERVER_HYPERCORED_VERSION"
141
         fi
132
         fi
142
         chown -R datserver:datserver "$DATSERVER_DIRECTORY"
133
         chown -R datserver:datserver "$DATSERVER_DIRECTORY"
134
+        systemctl restart datserver
143
     fi
135
     fi
144
 }
136
 }
145
 
137
 
217
         rm /etc/systemd/system/datserver.service
209
         rm /etc/systemd/system/datserver.service
218
     fi
210
     fi
219
     userdel -r datserver
211
     userdel -r datserver
220
-    npm uninstall -g dat
221
-    npm uninstall -g hypercored
222
-    npm uninstall -g lil-pids
223
 
212
 
224
     remove_nodejs datserver
213
     remove_nodejs datserver
225
 
214
 
226
-    remove_onion_service datserver "${DATSERVER_ONION_PORT}"
227
-    if grep -q "datserver" /etc/crontab; then
228
-        sed -i "/datserver/d" /etc/crontab
229
-    fi
230
     if [ -d $DATSERVER_DIRECTORY ]; then
215
     if [ -d $DATSERVER_DIRECTORY ]; then
231
         rm -rf $DATSERVER_DIRECTORY
216
         rm -rf $DATSERVER_DIRECTORY
232
     fi
217
     fi
218
+
233
     remove_app datserver
219
     remove_app datserver
234
     remove_completion_param install_datserver
220
     remove_completion_param install_datserver
235
     sed -i '/datserver/d' "$COMPLETION_FILE"
221
     sed -i '/datserver/d' "$COMPLETION_FILE"
240
 
226
 
241
     install_nodejs datserver
227
     install_nodejs datserver
242
 
228
 
243
-    if ! npm install -g lil-pids@2.6.1; then
244
-        echo $'unable to install lil-pids'
245
-        exit 8456721
246
-    fi
247
-    if [ ! -f /root/.npm-global/bin/lil-pids ]; then
248
-        echo $'lil-pids was not installed'
249
-        exit 5628747
250
-    fi
251
-
252
-    if ! npm install -g dat@$DATSERVER_DAT_VERSION; then
253
-        exit 2468736
254
-    fi
255
-    if [ ! -f /root/.npm-global/bin/dat ]; then
256
-        echo $'dat was not installed'
257
-        exit 156835
229
+    if [ -d $DATSERVER_DIRECTORY ]; then
230
+        rm -rf $DATSERVER_DIRECTORY
258
     fi
231
     fi
232
+    mkdir $DATSERVER_DIRECTORY
233
+    cd $DATSERVER_DIRECTORY || exit 3658356
259
 
234
 
260
-    if ! npm install -g hypercored@$DATSERVER_HYPERCORED_VERSION; then
235
+    if ! npm install hypercored@$DATSERVER_HYPERCORED_VERSION; then
261
         echo $'hypercored was not installed'
236
         echo $'hypercored was not installed'
262
         exit 4635439
237
         exit 4635439
263
     fi
238
     fi
264
 
239
 
240
+    { echo '#!/bin/bash';
241
+      echo 'cd /etc/datserver';
242
+      echo './node_modules/.bin/hypercored'; } > /usr/bin/run_datserver
243
+    chmod +x /usr/bin/run_datserver
244
+
265
     set_completion_param "datserver version" "$DATSERVER_DAT_VERSION"
245
     set_completion_param "datserver version" "$DATSERVER_DAT_VERSION"
266
     set_completion_param "datserver hypercored version" "$DATSERVER_HYPERCORED_VERSION"
246
     set_completion_param "datserver hypercored version" "$DATSERVER_HYPERCORED_VERSION"
267
 
247
 
268
-    if [ -d $DATSERVER_DIRECTORY ]; then
269
-        rm -rf $DATSERVER_DIRECTORY
270
-    fi
271
-    mkdir $DATSERVER_DIRECTORY
272
-    useradd -c "datserver system account" -d "$DATSERVER_DIRECTORY" -m -r -g datserver datserver
248
+    adduser --system --home="$DATSERVER_DIRECTORY" --group datserver
273
     if [ ! -d $DATSERVER_DIRECTORY ]; then
249
     if [ ! -d $DATSERVER_DIRECTORY ]; then
274
         echo $'dat directory was not created'
250
         echo $'dat directory was not created'
275
         exit 9568356
251
         exit 9568356
276
     fi
252
     fi
277
 
253
 
278
-    echo "/root/.npm-global/bin/hypercored --cwd $DATSERVER_DIRECTORY" > $DATSERVER_DIRECTORY/services
279
     chown -R datserver:datserver "$DATSERVER_DIRECTORY"
254
     chown -R datserver:datserver "$DATSERVER_DIRECTORY"
280
 
255
 
281
     { echo '[Unit]';
256
     { echo '[Unit]';
284
       echo '[Service]';
259
       echo '[Service]';
285
       echo 'User=datserver';
260
       echo 'User=datserver';
286
       echo 'Group=datserver';
261
       echo 'Group=datserver';
287
-      echo "ExecStart=/root/.npm-global/bin/lil-pids $DATSERVER_DIRECTORY/services $DATSERVER_DIRECTORY/pids";
262
+      echo "ExecStart=/usr/bin/run_datserver";
288
       echo 'Restart=always';
263
       echo 'Restart=always';
289
       echo "WorkingDirectory=$DATSERVER_DIRECTORY";
264
       echo "WorkingDirectory=$DATSERVER_DIRECTORY";
290
       echo 'StandardError=syslog';
265
       echo 'StandardError=syslog';