Read the statement by Michael Teeuw here.
Electron Crashing after update to 2.21.0 with PM2
-
@pattanner92 how did you upgrade? manual or use my automated scripts?
which os is this?
show outout of
uname -a lsb_release -a
-
@pattanner92 also add
export ELECTRON_DISABLE_GPU=1
to the installers/mm.sh before the
npm start lineor wherever the mm comes from (in the pm2 logs output)
my setup script use the mm.sh in the installers folder -
@sdetweil
Output of first command is:Linux raspberrypi 5.10.103-v7+ #1529 SMP Tue Mar 8 12:21:37 GMT 2022 armv7l GNU/Linux
Output of second command is:
No LSB modules are available. Distributor ID: Raspbian Description: Raspbian GNU/Linux 10 (buster) Release: 10 Codename: buster
I did so a manual upgrade. Though I typically do that without running into too many issues.
-
@sdetweil
Still seems to crash. This is how I have configured my pm2 start script:cd ~/MagicMirror export ELECTRON_DISABLE_GPU=1 DISPLAY=:0 npm start
-
@pattanner92 sorry two more
node -v
npm-vu are running on 32 bit buster, which is ok
on some armv7l device, pi3, 4, or pi0w2 -
@sdetweil
node v16.16.0
npm v8.11.0I am running on a Raspberry Pi B3+
-
@pattanner92 can u try running my upgrade script with force instead of apply
-
@sdetweil
EDIT: I was digging while cleaning up pm2 so it didn’t display my old script. I noticed that themm.sh
script in~/MagicMirror/installers
was indeed missingexport ELECTRON_DISABLE_GPU=1
. Adding that back to the script seems to keep it stable. Still wondering if this is an Electron version issue.No dice. Here are the errors I am seeing in the logs - I pulled only the errors to see if I caught them all. Here is what I am seeing at the exit event:
0|mm | [25978:1009/112505.776458:ERROR:zygote_communication_linux.cc(275)] Failed to send GetTerminationStatus message to zygote 0|mm | [25978:1009/112505.812741:ERROR:zygote_communication_linux.cc(275)] Failed to send GetTerminationStatus message to zygote 0|mm | [25978:1009/112505.848727:ERROR:network_service_instance_impl.cc(470)] Network service crashed, restarting service. 0|mm | [25978:1009/112505.880738:ERROR:gpu_process_host.cc(968)] GPU process launch failed: error_code=1002 0|mm | [25978:1009/112505.897587:ERROR:gpu_process_host.cc(968)] GPU process launch failed: error_code=1002 0|mm | [25978:1009/112505.917812:ERROR:gpu_process_host.cc(968)] GPU process launch failed: error_code=1002 0|mm | [25978:1009/112505.942511:ERROR:gpu_process_host.cc(968)] GPU process launch failed: error_code=1002 0|mm | [25978:1009/112505.959337:ERROR:gpu_process_host.cc(968)] GPU process launch failed: error_code=1002
And later in the restart process I saw these errors:
0|mm | [09.10.2022 11:25.36.393] [ERROR] 0|mm | (node:26362) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead. 0|mm | (Use `electron --trace-deprecation ...` to show where the warning was created)
I did go in and check for the line
export ELECTRON_DISABLE_GPU=1
in the startup scriptmm.sh
and it is there. I did have two startup scripts (one that was created before your script was a a thing) and made sure it was there in both as I wasn’t sure which pm2 was using. The original is out in the home folder - I made a backup and then ran your pm2 setup script. While it seemed to reconfigure pm2 to use the script in~/MagicMirror/installers
it still crashes. Figured I would try that in case something was walking over itself.Could this be an Electron version issue?
-
@pattanner92 the buffer thing is a warning, but not our code. nothing we can do
the gpu errors are concerning, because u have gpu use turned off.
do u know what driver is being used in /boot/config.txt, like this
dtoverlay=vc4-fkms-v3d