Latest dashboard (2.28.2) not installing - I think

I invoked the update but it seems to have not happened.

I saw it wrote stuff to a log file.
(It's big)

But this is the last bit:

3724 warn node-red-contrib-ui-led@0.3.3 requires a peer of node-red-dashboard@2.23.x but none is installed. You must install peer dependencies yourself.
3725 warn ts-lib-utils@2.2.0 requires a peer of typescript@2 || 3 but none is installed. You must install peer dependencies yourself.
3726 warn tsutils@3.17.1 requires a peer of typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta but none is installed. You must install peer dependencies yourself.
3727 warn type-coverage-core@2.4.1 requires a peer of typescript@2 || 3 but none is installed. You must install peer dependencies yourself.
3728 warn node-red-project@0.0.1 No repository field.
3729 warn node-red-project@0.0.1 No license field.
3730 verbose stack Error: serialport@6.2.2 install: `prebuild-install || node-gyp rebuild`
3730 verbose stack Exit status 1
3730 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
3730 verbose stack     at EventEmitter.emit (events.js:314:20)
3730 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
3730 verbose stack     at ChildProcess.emit (events.js:314:20)
3730 verbose stack     at maybeClose (internal/child_process.js:1022:16)
3730 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5)
3731 verbose pkgid serialport@6.2.2
3732 verbose cwd /home/pi/.node-red
3733 verbose Linux 5.10.17-v7+
3734 verbose argv "/usr/bin/node" "/usr/bin/npm" "install" "--no-audit" "--no-update-notifier" "--no-fund" "--save" "--save-prefix=~" "--production" "node-red-dashboard@2.28.2"
3735 verbose node v12.22.0
3736 verbose npm  v6.14.11
3737 error code ELIFECYCLE
3738 error errno 1
3739 error serialport@6.2.2 install: `prebuild-install || node-gyp rebuild`
3739 error Exit status 1
3740 error Failed at the serialport@6.2.2 install script.
3740 error This is probably not a problem with npm. There is likely additional logging output above.
3741 verbose exit [ 1, true ]

This serialport is really getting a mention throughout a lot of updates I am doing.

But that aside......

What's happening?

The log file is 322k in size. So I don't think it will fit here.

I could zip it if someone is feeling benevolent.
(If it will fit then) 48.9k

Thanks.

Run the install in a terminal. Go to your .node-red folder and run
npm install node-red-dashboard
and post the output here. I suspect the problem you are seeing is not actually related to the dashboard.

Done.

Alas it has kinda stalled.

Oh dear, it really has stalled.

If you are running on a pi other than a 4 it hasn't stalled until you have had several cups of coffee, and a run round the park.

Ok, thanks.

I'll take a chill pill.

You can run top in another terminal and I expect you will find it is running the C compiler.

Nah, I'm not going to poke the hornet's nest.

So I won't install it on my very early 2A RasPi or my Zero (w).

No reason not to. As Colin says, give it time. If you get stuck with the serial port upgrade as many people seem to, the last resort is to simply delete your node_modules folder and do npm install - all in your userDir folder of course (normally ~/.node-red). That will take time on an old Pi but it will properly rebuild everything. Just make sure that Node.js and apt installs are all up-to-date first.

Yeah, but I would prefer to leave well enough alone.

Alas it (that machine) is my DNS server so my internet access is not very good just now.
And as I ssh'ed into it from this machine, I can't turn off the ethernet and change the DNS and re-activate it.

I think that would not do the ssh link to the RasPi any good and therefore not help the dashboard being updated.

But things are slowly moving onward.

Well you should be able to SSH into it using its IP address (assuming you and it are both on the same network anyway. If not, maybe you have another device you can use as a jump-box? SSH into the other device and set up port forwarding over SSH). That won't be affected by any DNS changes other than maybe temporarily losing the ability to look up addresses on the Internet.

As the Pi is Linux based, you can easily change the network settings on the fly and then just reboot. Of course, there is always the danger you won't then be able to access it at all :grinning: Probably not a problem if you are local to it but a pain otherwise.

Yeah, but if I shut down this machine's ethernet port to re assign the DNS, the link would be killed - yes?

Then the command would...... crash (Fail?) and not complete.

(Dunno) Again: Not going to poke the hornet's nest.

Oh, but in the bigger picture: Progress is still being made. Nowhere complete, but moving.

You don't need to close the ethernet port to change DNS. So no.

Oh, and if you needed something to run even if you get disconnected, there are tools for that too. But I don't think you need that here.

(This machine) Ubuntu. I have been under the impression to make any changes the ethernet has to be shut down and brought back up.

Afterwards, not while making the changes. And it only takes a minute at worse.

Linux is designed to be able to do this kind of thing remotely. One of the things that makes it an excellent server platform.

Yes, so now: This machine is ssh to the RasPi, updating the dashboard.
That machine - raspi - is also the DNS for all my local network.

The pi (3B) is kinda busy.

The DNS was down for a while. It seems to be happier now.

If I wanted to change the DNS on this machine:
We've agreed (I believe) that for the change of the DNS to happen I have to shut down the ethernet port (on this machine) and bring it back up.

So what would happen to the SSH session to the RasPi?

When I get some more $$$ I may have to get another RasPi as a second DNS to avert this problem in the future.

You mean that you have

DEVICE -> ssh -> Pi

And you want to change the DNS settings on DEVICE? But don't want to drop the SSH session?

Not what I thought you were trying to do.

In that case, you will want to install TMUX (or at least SCREEN) on the Pi. This will let you be disconnected from the remote ssh connection but without losing your BASH session. So when your local device loses network connection for any reason, you can pick up the remote session where you left off.

(Don't worry. But thanks. So I was right - with what I have.)

Alas it is STILL going. :frowning:
(Not at you)

It's gonna be a late night for me it seems.

Hurray!

Done!

But this is the tail of what was spat to the console:

make: *** [serialport.target.mk:112: Release/obj.target/serialport/src/serialport.o] Error 1
make: Leaving directory '/home/pi/.node-red/node_modules/serialport/build'
gyp ERR! build error 
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:194:23)
gyp ERR! stack     at ChildProcess.emit (events.js:314:20)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:276:12)
gyp ERR! System Linux 5.10.17-v7+
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/pi/.node-red/node_modules/serialport
gyp ERR! node -v v12.22.0
gyp ERR! node-gyp -v v5.1.0
gyp ERR! not ok 
npm WARN node-red-contrib-ui-led@0.3.3 requires a peer of node-red-dashboard@2.23.x but none is installed. You must install peer dependencies yourself.
npm WARN ts-lib-utils@2.2.0 requires a peer of typescript@2 || 3 but none is installed. You must install peer dependencies yourself.
npm WARN tsutils@3.17.1 requires a peer of typescript@>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta but none is installed. You must install peer dependencies yourself.
npm WARN type-coverage-core@2.4.1 requires a peer of typescript@2 || 3 but none is installed. You must install peer dependencies yourself.
npm WARN node-red-project@0.0.1 No repository field.
npm WARN node-red-project@0.0.1 No license field.

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! serialport@6.2.2 install: `prebuild-install || node-gyp rebuild`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the serialport@6.2.2 install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/pi/.npm/_logs/2021-04-07T12_25_28_847Z-debug.log
pi@BedPi:~/.node-red $ 

It is the bit before that we need, I did say to post it all, I hope you haven't lost it. Are you using the serial port node? If not then uninstall it. It is that which is causing the problem, not the dashboard.

Sorry. With the size of it....

No, I don't use that node.

Here it is.

Ok, sorry. No. Can't attach .zip files.

332k? I don't think it will take it.

Open to options what I do now.
(Sorry, really got bad brain fail.)

How about this:
The file