I'm running GitKraken 8.2.1 on Fedora and after upgrading from Fedora 34 to 35 GitKraken wouldn't start anymore, showing when started on command line following error:
$ /usr/share/gitkraken/gitkraken
(node:71300) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(node:71300) [DEP0106] DeprecationWarning: crypto.createDecipher is deprecated.
(electron) 'allowRendererProcessReuse' is deprecated and will be removed.
state: unavailable
[71300:0128/121858.313660:FATAL:gpu_data_manager_impl_private.cc(442)] GPU process isn't usable. Goodbye.
Failed to generate minidump.[1] 71300 illegal hardware instruction (core dumped) /usr/share/gitkraken/gitkraken
I tried purging and reinstalling GitKraken, removing the complete local config ~/.gitkraken
, turned on logging to SILLY
but didn't get any further hints what's going on.
Interestingly I ran the same setup (Fedora 35 & GitKraken 8.2.1) on another machine which just works fine.
Finally I solved that issue. I found that GitKraken is based on EletronJS which has some auxAttributes for GPU.
These attributes can be altered via command line given that they are enabled via app.commandLine.appendSwitch
command in the gitkraken EletronJS application. All these additional EletronJS related parameters are hidden from the command line parameters documented via /usr/share/gitkraken/gitkraken -h
.
So the solution was for me to start GitKraken from command line using the ElectronJS attribute "InProcessGpu", which basically run the GPU process as a thread. To enable that feature simple start gitkraken wiht the attribute --in-process-gpu
, e.g.
/usr/share/gitkraken/gitkraken --in-process-gpu &
Btw. I also found another solution in the gitkraken forum that completely disables GPU usage by calling gitkraken --disable-gpu
. This approach didn't work out for me though.