This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Updates to plugins failing
#1
Hey all,

When updating plugins, I get a failed notification, and it reverts to the last version. Does anyone else see this issue? I'm running OP3 on an RP4. Looking at the forums on various sites, it may have something to do with the node_modules folder. 

Anyone got any troubleshooting ideas? Could it be permissions, perhaps?

Many thanks

Matt
Vessel: Helen Mary R - Bowman 57 - UK Sail Training - Installing Raspberry Pi Nav System 
Reply
#2
https://github.com/SignalK/signalk-serve...-Questions
Reply
#3
Thanks for the link. Looking through it, it looks like I need to delete the plugins from $HOME/.signalk/node_modules and reboot the server.

When I've tried this previously, I still get the same issue when there is a new update to a plugin. Surely I don't need to delete the contents of the folder on every update?

I'm trying to track down the root cause of the plugins' inability to be updated from the GUI - this happens with every update of a plugin.
Vessel: Helen Mary R - Bowman 57 - UK Sail Training - Installing Raspberry Pi Nav System 
Reply
#4
What does server log show when an update is failing?
Reply
#5
Took me a while to get back to the boat and remember to save the output.

This is a segment from the server log:

Jul 06 17:34:27 stderr: npm ERR! code ENOTEMPTY npm ERR! syscall rename
Jul 06 17:34:27 stderr: npm ERR! path /home/pi/.signalk/node_modules/asynckit npm ERR! dest /home/pi/.signalk/node_modules/.asynckit-TsXKFJe2 npm ERR! errno -39
Jul 06 17:34:27 stderr: npm ERR! ENOTEMPTY: directory not empty, rename '/home/pi/.signalk/node_modules/asynckit' -> '/home/pi/.signalk/node_modules/.asynckit-TsXKFJe2'
Jul 06 17:34:27 stderr:
Jul 06 17:34:27 stderr: npm
Jul 06 17:34:27 stderr:
Jul 06 17:34:27 stderr: ERR!
Jul 06 17:34:27 stderr: A complete log of this run can be found in: /home/pi/.npm/_logs/2024-07-06T16_34_13_474Z-debug-0.log
Jul 06 17:34:33 stderr: npm
Jul 06 17:34:33 stderr: ERR!
Jul 06 17:34:33 stderr: code ENOTEMPTY
Jul 06 17:34:33 stderr: npm ERR! syscall rename
Jul 06 17:34:33 stderr: npm
Jul 06 17:34:33 stderr: ERR!
Jul 06 17:34:33 stderr: path /home/pi/.signalk/node_modules/asynckit npm
Jul 06 17:34:33 stderr: ERR! dest /home/pi/.signalk/node_modules/.asynckit-TsXKFJe2
Jul 06 17:34:33 stderr: npm ERR! errno -39
Jul 06 17:34:33 stderr: npm ERR! ENOTEMPTY: directory not empty, rename '/home/pi/.signalk/node_modules/asynckit' -> '/home/pi/.signalk/node_modules/.asynckit-TsXKFJe2'
Jul 06 17:34:33 stderr:
Jul 06 17:34:33 stderr: npm ERR! A complete log of this run can be found in: /home/pi/.npm/_logs/2024-07-06T16_34_29_644Z-debug-0.log
Jul 06 17:34:39 stderr: npm
Jul 06 17:34:39 stderr: ERR! code ENOTEMPTY npm ERR! syscall rename npm ERR! path /home/pi/.signalk/node_modules/asynckit npm ERR! dest /home/pi/.signalk/node_modules/.asynckit-TsXKFJe2 npm ERR! errno -39 npm ERR! ENOTEMPTY: directory not empty, rename '/home/pi/.signalk/node_modules/asynckit' -> '/home/pi/.signalk/node_modules/.asynckit-TsXKFJe2' npm ERR! A complete log of this run can be found in: /home/pi/.npm/_logs/2024-07-06T16_34_35_303Z-debug-0.log

And this is the content from the log itself:


0 verbose cli /usr/bin/node /usr/bin/npm
1 info using npm@9.6.7
2 info using node@v18.17.1
3 timing npm:load:whichnode Completed in 9ms
4 timing config:load:defaults Completed in 12ms
5 timing config:load:file:/usr/lib/node_modules/npm/npmrc Completed in 3ms
6 timing config:load:builtin Completed in 5ms
7 timing config:load:cli Completed in 15ms
8 timing config:load:env Completed in 2ms
9 timing config:load:file:/home/pi/.signalk/.npmrc Completed in 7ms
10 timing config:load:project Completed in 22ms
11 timing config:load:file:/home/pi/.npmrc Completed in 1ms
12 timing config:load:user Completed in 2ms
13 timing config:load:file:/usr/etc/npmrc Completed in 1ms
14 timing config:load:global Completed in 2ms
15 timing config:loadConfusedetEnvs Completed in 6ms
16 timing config:load Completed in 69ms
17 timing npm:load:configload Completed in 69ms
18 timing npm:load:mkdirpcache Completed in 2ms
19 timing npm:load:mkdirplogs Completed in 2ms
20 verbose title npm install @mxtommy/kip@2.12.0
21 verbose argv "--save" "install" "@mxtommy/kip@2.12.0"
22 timing npm:loadConfusedetTitle Completed in 7ms
23 timing config:load:flatten Completed in 16ms
24 timing npm:load:display Completed in 20ms
25 verbose logfile logs-max:10 dir:/home/pi/.npm/_logs/2024-07-06T16_34_47_396Z-
26 verbose logfile /home/pi/.npm/_logs/2024-07-06T16_34_47_396Z-debug-0.log
27 timing npm:load:logFile Completed in 57ms
28 timing npm:load:timers Completed in 1ms
29 timing npm:load:configScope Completed in 0ms
30 timing npm:load Completed in 171ms
31 timing arborist:ctor Completed in 5ms
32 silly logfile start cleaning logs, removing 1 files
33 timing idealTree:init Completed in 80ms
34 timing idealTree:userRequests Completed in 20ms
35 silly idealTree buildDeps
36 silly fetch manifest @mxtommy/kip@2.12.0
37 silly logfile done cleaning log files
38 verbose shrinkwrap failed to load node_modules/.package-lock.json out of date, updated: node_modules
39 http fetch GET 200 https://registry.npmjs.org/@mxtommy%2fkip 149ms (cache hit)
40 silly fetch manifest @signalk/course-provider@^1.0.1
41 http fetch GET 200 https://registry.npmjs.org/@signalk%2fcourse-provider 123ms (cache hit)
42 silly fetch manifest @signalk/freeboard-sk@^2.6.1
43 http fetch GET 200 https://registry.npmjs.org/@signalk%2ffreeboard-sk 21ms (cache hit)
44 silly fetch manifest @signalk/resources-provider@^1.1.2
45 http fetch GET 200 https://registry.npmjs.org/@signalk%2fre...s-provider 18ms (cache hit)
46 silly fetch manifest @signalk/signalk-to-nmea0183@^1.11.0
47 http fetch GET 200 https://registry.npmjs.org/@signalk%2fsi...o-nmea0183 29ms (cache hit)
48 silly fetch manifest signalk-to-nmea2000@^2.17.1
49 http fetch GET 200 https://registry.npmjs.org/signalk-to-nmea2000 29ms (cache hit)
50 silly fetch manifest signalk-victron-ble@^0.0.6
51 http fetch GET 200 https://registry.npmjs.org/signalk-victron-ble 21ms (cache hit)
52 silly fetch manifest signalk-webhook-publisher@^0.2.3
53 http fetch GET 200 https://registry.npmjs.org/signalk-webhook-publisher 20ms (cache hit)
54 silly placeDep ROOT @mxtommy/kip@2.12.0 OK for: signalk-server-config@0.0.1 want: 2.12.0
55 silly placeDep ROOT @signalk/course-provider@1.0.3 OK for: signalk-server-config@0.0.1 want: ^1.0.1
56 silly fetch manifest rxjs@^7.5.2
57 silly placeDep ROOT @signalk/freeboard-sk@2.9.0 OK for: signalk-server-config@0.0.1 want: ^2.6.1
58 silly fetch manifest @signalk/server-api@^2.3.0
59 silly fetch manifest socket.io-client@^4.6.0
60 silly fetch manifest tslib@^2.0.0
61 silly placeDep ROOT @signalk/resources-provider@1.1.2 OK for: signalk-server-config@0.0.1 want: ^1.1.2
62 silly fetch manifest geojson-validation@^0.2.0
63 silly fetch manifest geolib@^3.3.3
64 silly fetch manifest ngeohash@^0.6.3
65 silly placeDep ROOT @signalk/signalk-to-nmea0183@1.11.0 OK for: signalk-server-config@0.0.1 want: ^1.11.0
66 silly fetch manifest baconjs@^0.7.88
67 silly placeDep ROOT signalk-to-nmea2000@2.17.1 OK for: signalk-server-config@0.0.1 want: ^2.17.1
68 silly fetch manifest lodash@^4.17.4
69 silly placeDep ROOT signalk-victron-ble@0.0.6 OK for: signalk-server-config@0.0.1 want: ^0.0.6
70 silly placeDep ROOT signalk-webhook-publisher@0.2.3 OK for: signalk-server-config@0.0.1 want: ^0.2.3
71 silly fetch manifest axios@^1.4.0
72 http fetch GET 200 https://registry.npmjs.org/rxjs 240ms (cache hit)
73 http fetch GET 200 https://registry.npmjs.org/@signalk%2fserver-api 259ms (cache hit)
74 http fetch GET 200 https://registry.npmjs.org/socket.io-client 258ms (cache hit)
75 http fetch GET 200 https://registry.npmjs.org/tslib 287ms (cache hit)
76 http fetch GET 200 https://registry.npmjs.org/geojson-validation 279ms (cache hit)
77 http fetch GET 200 https://registry.npmjs.org/geolib 279ms (cache hit)
78 http fetch GET 200 https://registry.npmjs.org/ngeohash 279ms (cache hit)
79 http fetch GET 200 https://registry.npmjs.org/baconjs 275ms (cache hit)
80 http fetch GET 200 https://registry.npmjs.org/lodash 283ms (cache hit)
81 http fetch GET 200 https://registry.npmjs.org/axios 271ms (cache hit)
82 timing idealTree:#root Completed in 963ms
83 timing idealTree:node_modules/@mxtommy/kip Completed in 0ms
84 silly placeDep ROOT rxjs@7.8.1 OK for: @signalk/course-provider@1.0.3 want: ^7.5.2
85 silly fetch manifest tslib@^2.1.0
86 timing idealTree:node_modules/@signalk/course-provider Completed in 15ms
87 silly fetch manifest baconjs@^1.0.1
88 silly placeDep ROOT @signalk/server-api@2.4.0 OK for: @signalk/freeboard-sk@2.9.0 want: ^2.3.0
89 silly placeDep ROOT baconjs@1.0.1 OK for: @signalk/server-api@2.4.0 want: ^1.0.1
90 silly placeDep ROOT socket.io-client@4.7.5 OK for: @signalk/freeboard-sk@2.9.0 want: ^4.6.0
91 silly fetch manifest @socket.io/component-emitter@~3.1.0
92 silly fetch manifest debug@~4.3.2
93 silly fetch manifest engine.io-client@~6.5.2
94 silly fetch manifest socket.io-parser@~4.2.4
95 silly placeDep ROOT tslib@2.6.3 OK for: @signalk/freeboard-sk@2.9.0 want: ^2.0.0
96 http fetch GET 200 https://registry.npmjs.org/@socket.io%2f...nt-emitter 71ms (cache hit)
97 http fetch GET 200 https://registry.npmjs.org/debug 70ms (cache hit)
98 http fetch GET 200 https://registry.npmjs.org/engine.io-client 74ms (cache hit)
99 http fetch GET 200 https://registry.npmjs.org/socket.io-parser 86ms (cache hit)
100 timing idealTree:node_modules/@signalk/freeboard-sk Completed in 171ms
101 silly placeDep ROOT geojson-validation@0.2.1 OK for: @signalk/resources-provider@1.1.2 want: ^0.2.0
102 silly placeDep ROOT geolib@3.3.4 OK for: @signalk/resources-provider@1.1.2 want: ^3.3.3
103 silly placeDep ROOT ngeohash@0.6.3 OK for: @signalk/resources-provider@1.1.2 want: ^0.6.3
104 timing idealTree:node_modules/@signalk/resources-provider Completed in 34ms
105 timing idealTree:node_modules/@signalk/server-api Completed in 0ms
106 silly placeDep node_modules/@signalk/signalk-to-nmea0183 baconjs@0.7.95 OK for: @signalk/signalk-to-nmea0183@1.11.0 want: ^0.7.88
107 timing idealTree:node_modules/@signalk/signalk-to-nmea0183 Completed in 19ms
108 timing idealTree:node_modules/baconjs Completed in 0ms
109 timing idealTree:node_modules/geojson-validation Completed in 0ms
110 timing idealTree:node_modules/geolib Completed in 0ms
111 timing idealTree:node_modules/ngeohash Completed in 0ms
112 timing idealTree:node_modules/rxjs Completed in 0ms
113 silly placeDep node_modules/signalk-to-nmea2000 baconjs@0.7.95 OK for: signalk-to-nmea2000@2.17.1 want: ^0.7.88
114 silly placeDep ROOT lodash@4.17.21 OK for: signalk-to-nmea2000@2.17.1 want: ^4.17.4
115 timing idealTree:node_modules/signalk-to-nmea2000 Completed in 38ms
116 timing idealTree:node_modules/lodash Completed in 0ms
117 timing idealTree:node_modules/signalk-victron-ble Completed in 0ms
118 silly placeDep ROOT axios@1.7.2 OK for: signalk-webhook-publisher@0.2.3 want: ^1.4.0
119 silly fetch manifest follow-redirects@^1.15.6
120 silly fetch manifest form-data@^4.0.0
121 silly fetch manifest proxy-from-env@^1.1.0
122 http fetch GET 200 https://registry.npmjs.org/follow-redirects 45ms (cache hit)
123 http fetch GET 200 https://registry.npmjs.org/form-data 45ms (cache hit)
124 http fetch GET 200 https://registry.npmjs.org/proxy-from-env 44ms (cache hit)
125 timing idealTree:node_modules/signalk-webhook-publisher Completed in 71ms
126 silly placeDep ROOT follow-redirects@1.15.6 OK for: axios@1.7.2 want: ^1.15.6
127 silly placeDep ROOT form-data@4.0.0 OK for: axios@1.7.2 want: ^4.0.0
128 silly fetch manifest asynckit@^0.4.0
129 silly fetch manifest combined-stream@^1.0.8
130 silly fetch manifest mime-types@^2.1.12
131 silly placeDep ROOT proxy-from-env@1.1.0 OK for: axios@1.7.2 want: ^1.1.0
132 http fetch GET 200 https://registry.npmjs.org/asynckit 77ms (cache hit)
133 http fetch GET 200 https://registry.npmjs.org/combined-stream 78ms (cache hit)
134 http fetch GET 200 https://registry.npmjs.org/mime-types 77ms (cache hit)
135 timing idealTree:node_modules/axios Completed in 111ms
136 timing idealTree:node_modules/follow-redirects Completed in 0ms
137 silly placeDep ROOT asynckit@0.4.0 OK for: form-data@4.0.0 want: ^0.4.0
138 silly placeDep ROOT combined-stream@1.0.8 OK for: form-data@4.0.0 want: ^1.0.8
139 silly fetch manifest delayed-stream@~1.0.0
140 silly placeDep ROOT mime-types@2.1.35 OK for: form-data@4.0.0 want: ^2.1.12
141 silly fetch manifest mime-db@1.52.0
142 http fetch GET 200 https://registry.npmjs.org/delayed-stream 39ms (cache hit)
143 http fetch GET 200 https://registry.npmjs.org/mime-db 28ms (cache hit)
144 timing idealTree:node_modules/form-data Completed in 74ms
145 timing idealTree:node_modules/asynckit Completed in 0ms
146 silly placeDep ROOT delayed-stream@1.0.0 OK for: combined-stream@1.0.8 want: ~1.0.0
147 timing idealTree:node_modules/combined-stream Completed in 10ms
148 timing idealTree:node_modules/delayed-stream Completed in 0ms
149 silly placeDep ROOT mime-db@1.52.0 OK for: mime-types@2.1.35 want: 1.52.0
150 timing idealTree:node_modules/mime-types Completed in 8ms
151 timing idealTree:node_modules/mime-db Completed in 0ms
152 timing idealTree:node_modules/proxy-from-env Completed in 0ms
153 silly placeDep ROOT @socket.io/component-emitter@3.1.2 OK for: socket.io-client@4.7.5 want: ~3.1.0
154 silly placeDep ROOT debug@4.3.5 OK for: socket.io-client@4.7.5 want: ~4.3.2
155 silly fetch manifest ms@2.1.2
156 silly placeDep ROOT engine.io-client@6.5.4 OK for: socket.io-client@4.7.5 want: ~6.5.2
157 silly fetch manifest ws@~8.17.1
158 silly fetch manifest engine.io-parser@~5.2.1
159 silly fetch manifest xmlhttprequest-ssl@~2.0.0
160 silly placeDep ROOT socket.io-parser@4.2.4 OK for: socket.io-client@4.7.5 want: ~4.2.4
161 http fetch GET 200 https://registry.npmjs.org/ms 80ms (cache hit)
162 http fetch GET 200 https://registry.npmjs.org/ws 70ms (cache hit)
163 http fetch GET 200 https://registry.npmjs.org/engine.io-parser 81ms (cache hit)
164 http fetch GET 200 https://registry.npmjs.org/xmlhttprequest-ssl 81ms (cache hit)
165 timing idealTree:node_modules/socket.io-client Completed in 156ms
166 timing idealTree:node_modules/@socket.io/component-emitter Completed in 0ms
167 silly placeDep ROOT ms@2.1.2 OK for: debug@4.3.5 want: 2.1.2
168 timing idealTree:node_modules/debug Completed in 8ms
169 silly fetch manifest bufferutil@^4.0.1
170 http fetch GET 200 https://registry.npmjs.org/bufferutil 15ms (cache hit)
171 silly fetch manifest utf-8-validate@>=5.0.2
172 http fetch GET 200 https://registry.npmjs.org/utf-8-validate 16ms (cache hit)
173 silly placeDep ROOT engine.io-parser@5.2.2 OK for: engine.io-client@6.5.4 want: ~5.2.1
174 silly placeDep ROOT ws@8.17.1 OK for: engine.io-client@6.5.4 want: ~8.17.1
175 silly placeDep ROOT xmlhttprequest-ssl@2.0.0 OK for: engine.io-client@6.5.4 want: ~2.0.0
176 timing idealTree:node_modules/engine.io-client Completed in 85ms
177 timing idealTree:node_modules/engine.io-parser Completed in 1ms
178 timing idealTree:node_modules/ms Completed in 0ms
179 timing idealTree:node_modules/socket.io-parser Completed in 0ms
180 timing idealTree:node_modules/tslib Completed in 0ms
181 timing idealTree:node_modules/ws Completed in 0ms
182 timing idealTree:node_modules/xmlhttprequest-ssl Completed in 0ms
183 timing idealTree:node_modules/@signalk/signalk-to-nmea0183/node_modules/baconjs Completed in 0ms
184 timing idealTree:node_modules/signalk-to-nmea2000/node_modules/baconjs Completed in 0ms
185 timing idealTree:buildDeps Completed in 1796ms
186 timing idealTree:fixDepFlags Completed in 3ms
187 timing idealTree Completed in 1915ms
188 timing reify:loadTrees Completed in 1920ms
189 timing reify:diffTrees Completed in 17ms
190 silly reify mark retired [ '/home/pi/.signalk/node_modules/asynckit' ]
191 silly reify mark retired [ '/home/pi/.signalk/node_modules/axios' ]
192 silly reify mark retired [ '/home/pi/.signalk/node_modules/baconjs' ]
193 silly reify mark retired [ '/home/pi/.signalk/node_modules/combined-stream' ]
194 silly reify mark retired [ '/home/pi/.signalk/node_modules/debug' ]
195 silly reify mark retired [ '/home/pi/.signalk/node_modules/delayed-stream' ]
196 silly reify mark retired [ '/home/pi/.signalk/node_modules/engine.io-client' ]
197 silly reify mark retired [ '/home/pi/.signalk/node_modules/engine.io-parser' ]
198 silly reify mark retired [ '/home/pi/.signalk/node_modules/follow-redirects' ]
199 silly reify mark retired [ '/home/pi/.signalk/node_modules/form-data' ]
200 silly reify mark retired [
200 silly reify '/home/pi/.signalk/node_modules/geojson-validation',
200 silly reify '/home/pi/.signalk/node_modules/.bin/gjv'
200 silly reify ]
201 silly reify mark retired [ '/home/pi/.signalk/node_modules/geolib' ]
202 silly reify mark retired [ '/home/pi/.signalk/node_modules/mime-db' ]
203 silly reify mark retired [ '/home/pi/.signalk/node_modules/mime-types' ]
204 silly reify mark retired [ '/home/pi/.signalk/node_modules/ms' ]
205 silly reify mark retired [ '/home/pi/.signalk/node_modules/msp-webhook' ]
206 silly reify mark retired [ '/home/pi/.signalk/node_modules/ngeohash' ]
207 silly reify mark retired [ '/home/pi/.signalk/node_modules/proxy-from-env' ]
208 silly reify mark retired [ '/home/pi/.signalk/node_modules/rxjs' ]
209 silly reify mark retired [ '/home/pi/.signalk/node_modules/signalk-to-nmea2000' ]
210 silly reify mark retired [ '/home/pi/.signalk/node_modules/signalk-victron-ble' ]
211 silly reify mark retired [ '/home/pi/.signalk/node_modules/signalk-webhook-publisher' ]
212 silly reify mark retired [ '/home/pi/.signalk/node_modules/socket.io-client' ]
213 silly reify mark retired [ '/home/pi/.signalk/node_modules/socket.io-parser' ]
214 silly reify mark retired [ '/home/pi/.signalk/node_modules/tslib' ]
215 silly reify mark retired [ '/home/pi/.signalk/node_modules/ws' ]
216 silly reify mark retired [ '/home/pi/.signalk/node_modules/xmlhttprequest-ssl' ]
217 silly reify mark retired [ '/home/pi/.signalk/node_modules/@mxtommy/kip' ]
218 silly reify mark retired [ '/home/pi/.signalk/node_modules/@signalk/course-provider' ]
219 silly reify mark retired [ '/home/pi/.signalk/node_modules/@signalk/freeboard-sk' ]
220 silly reify mark retired [ '/home/pi/.signalk/node_modules/@signalk/resources-provider' ]
221 silly reify mark retired [ '/home/pi/.signalk/node_modules/@signalk/server-api' ]
222 silly reify mark retired [ '/home/pi/.signalk/node_modules/@signalk/signalk-to-nmea0183' ]
223 silly reify mark retired [ '/home/pi/.signalk/node_modules/@socket.io/component-emitter' ]
224 silly reify moves {
224 silly reify '/home/pi/.signalk/node_modules/asynckit': '/home/pi/.signalk/node_modules/.asynckit-TsXKFJe2',
224 silly reify '/home/pi/.signalk/node_modules/axios': '/home/pi/.signalk/node_modules/.axios-3zR41HHB',
224 silly reify '/home/pi/.signalk/node_modules/baconjs': '/home/pi/.signalk/node_modules/.baconjs-7gLjYXP9',
224 silly reify '/home/pi/.signalk/node_modules/combined-stream': '/home/pi/.signalk/node_modules/.combined-stream-szPpqJFg',
224 silly reify '/home/pi/.signalk/node_modules/debug': '/home/pi/.signalk/node_modules/.debug-omGdeWKz',
224 silly reify '/home/pi/.signalk/node_modules/delayed-stream': '/home/pi/.signalk/node_modules/.delayed-stream-gHWP5yu0',
224 silly reify '/home/pi/.signalk/node_modules/engine.io-client': '/home/pi/.signalk/node_modules/.engine.io-client-SucIPfVb',
224 silly reify '/home/pi/.signalk/node_modules/engine.io-parser': '/home/pi/.signalk/node_modules/.engine.io-parser-cIDf2kbr',
224 silly reify '/home/pi/.signalk/node_modules/follow-redirects': '/home/pi/.signalk/node_modules/.follow-redirects-IcdXDKWA',
224 silly reify '/home/pi/.signalk/node_modules/form-data': '/home/pi/.signalk/node_modules/.form-data-vLslb6PQ',
224 silly reify '/home/pi/.signalk/node_modules/geojson-validation': '/home/pi/.signalk/node_modules/.geojson-validation-qTE8MIuM',
224 silly reify '/home/pi/.signalk/node_modules/.bin/gjv': '/home/pi/.signalk/node_modules/.bin/.gjv-eVKNXru4',
224 silly reify '/home/pi/.signalk/node_modules/geolib': '/home/pi/.signalk/node_modules/.geolib-LVaTfhUi',
224 silly reify '/home/pi/.signalk/node_modules/mime-db': '/home/pi/.signalk/node_modules/.mime-db-QogjnHMn',
224 silly reify '/home/pi/.signalk/node_modules/mime-types': '/home/pi/.signalk/node_modules/.mime-types-EGLwPu6h',
224 silly reify '/home/pi/.signalk/node_modules/ms': '/home/pi/.signalk/node_modules/.ms-iYAnGzRS',
224 silly reify '/home/pi/.signalk/node_modules/msp-webhook': '/home/pi/.signalk/node_modules/.msp-webhook-E6CDRLBy',
224 silly reify '/home/pi/.signalk/node_modules/ngeohash': '/home/pi/.signalk/node_modules/.ngeohash-q0N83VSY',
224 silly reify '/home/pi/.signalk/node_modules/proxy-from-env': '/home/pi/.signalk/node_modules/.proxy-from-env-4BbXlWA9',
224 silly reify '/home/pi/.signalk/node_modules/rxjs': '/home/pi/.signalk/node_modules/.rxjs-6tLXIcYe',
224 silly reify '/home/pi/.signalk/node_modules/signalk-to-nmea2000': '/home/pi/.signalk/node_modules/.signalk-to-nmea2000-Lw9yGuyE',
224 silly reify '/home/pi/.signalk/node_modules/signalk-victron-ble': '/home/pi/.signalk/node_modules/.signalk-victron-ble-ZKtxYZOv',
224 silly reify '/home/pi/.signalk/node_modules/signalk-webhook-publisher': '/home/pi/.signalk/node_modules/.signalk-webhook-publisher-2mk2HhQG',
224 silly reify '/home/pi/.signalk/node_modules/socket.io-client': '/home/pi/.signalk/node_modules/.socket.io-client-5zj04aZy',
224 silly reify '/home/pi/.signalk/node_modules/socket.io-parser': '/home/pi/.signalk/node_modules/.socket.io-parser-Q53Y2dAo',
224 silly reify '/home/pi/.signalk/node_modules/tslib': '/home/pi/.signalk/node_modules/.tslib-Pf6VpW60',
224 silly reify '/home/pi/.signalk/node_modules/ws': '/home/pi/.signalk/node_modules/.ws-6axIgrCD',
224 silly reify '/home/pi/.signalk/node_modules/xmlhttprequest-ssl': '/home/pi/.signalk/node_modules/.xmlhttprequest-ssl-iGcf1B17',
224 silly reify '/home/pi/.signalk/node_modules/@mxtommy/kip': '/home/pi/.signalk/node_modules/@mxtommy/.kip-9cfUryQt',
224 silly reify '/home/pi/.signalk/node_modules/@signalk/course-provider': '/home/pi/.signalk/node_modules/@signalk/.course-provider-UFsYABqh',
224 silly reify '/home/pi/.signalk/node_modules/@signalk/freeboard-sk': '/home/pi/.signalk/node_modules/@signalk/.freeboard-sk-YkaBlCLg',
224 silly reify '/home/pi/.signalk/node_modules/@signalk/resources-provider': '/home/pi/.signalk/node_modules/@signalk/.resources-provider-ZC7ufarp',
224 silly reify '/home/pi/.signalk/node_modules/@signalk/server-api': '/home/pi/.signalk/node_modules/@signalk/.server-api-pDtAYwsN',
224 silly reify '/home/pi/.signalk/node_modules/@signalk/signalk-to-nmea0183': '/home/pi/.signalk/node_modules/@signalk/.signalk-to-nmea0183-5losMoG8',
224 silly reify '/home/pi/.signalk/node_modules/@socket.io/component-emitter': '/home/pi/.signalk/node_modules/@socket.io/.component-emitter-ObmWMcnf'
224 silly reify }
225 timing reify:rollback:retireShallow Completed in 25ms
226 timing command:install Completed in 2132ms
227 verbose stack Error: ENOTEMPTY: directory not empty, rename '/home/pi/.signalk/node_modules/asynckit' -> '/home/pi/.signalk/node_modules/.asynckit-TsXKFJe2'
228 verbose cwd /home/pi/.signalk
229 verbose Linux 6.1.21-v8+
230 verbose node v18.17.1
231 verbose npm v9.6.7
232 error code ENOTEMPTY
233 error syscall rename
234 error path /home/pi/.signalk/node_modules/asynckit
235 error dest /home/pi/.signalk/node_modules/.asynckit-TsXKFJe2
236 error errno -39
237 error ENOTEMPTY: directory not empty, rename '/home/pi/.signalk/node_modules/asynckit' -> '/home/pi/.signalk/node_modules/.asynckit-TsXKFJe2'


Am I right in thinking that SignalK is falling over because the directory isn't empty? I would assume an update just overwrites the old files, or is it supposed to delete then re-install? Maybe this is a permissions thing? I'm not used to the Pi eco-system so a little lost how to troubleshoot.
Vessel: Helen Mary R - Bowman 57 - UK Sail Training - Installing Raspberry Pi Nav System 
Reply
#6
(2024-07-15, 03:22 PM)captmatto Wrote: Am I right in thinking that SignalK is falling over because the directory isn't empty? I would assume an update just overwrites the old files, or is it supposed to delete then re-install? Maybe this is a permissions thing? I'm not used to the Pi eco-system so a little lost how to troubleshoot.

Think it's npm that's getting confused, one way round is in a terminal type "sudo pcmanfm"
this will open the file manager with do anything privileges so pays to be very careful Smile 

Then delete to folders which are  no empty like >

directory not empty, rename '/home/pi/.signalk/node_modules/asynckit' -> '/home/pi/.signalk/node_modules/.asynckit-TsXKFJe2
Reply
#7
Hey thanks, that's helpful.

Do you think I might have to do this every time? When I've tried this previously, I get the update but still get the same issue when there is a new update later down the road.

I'm hoping to find the root cause so that I don't need to delete the contents of the folder after every update.

Will do some googling around NPM and see if I can understand how it works
Vessel: Helen Mary R - Bowman 57 - UK Sail Training - Installing Raspberry Pi Nav System 
Reply
#8
(2024-07-15, 04:16 PM)captmatto Wrote: Hey thanks, that's helpful.

Do you think I might have to do this every time? When I've tried this previously, I get the update but still get the same issue when there is a new update later down the road.

I'm hoping to find the root cause so that I don't need to delete the contents of the folder after every update.

Will do some googling around NPM and see if I can understand how it works

Not sure why it does what it does, only happened a few times on mine, not for a while so I haven't bothered to dig.
Reply
#9
So I tried yesterday to remove all the folders from node modules as suggested, but this also breaks the update. The update fails because the folder is not present. :-(

No going round and round in a loop
Vessel: Helen Mary R - Bowman 57 - UK Sail Training - Installing Raspberry Pi Nav System 
Reply
#10
Did you check the permissions of these folders?

Have you tried OP4?
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)