Build cross platform desktop apps with JavaScript, HTML, and CSS
https://github.com/electron/electron
Nodejs application: Build cross platform desktop apps with JavaScript, HTML, and CSS
- Developed at devel:languages:nodejs
- Sources inherited from project openSUSE:Factory
-
3
derived packages
- Download package
-
Checkout Package
osc -A https://api.opensuse.org checkout openSUSE:Slowroll:Base:1/nodejs-electron && cd $_
- Create Badge
Refresh
Refresh
Source Files
Revision 23 (latest revision is 137)
Dominique Leuenberger (dimstar_suse)
accepted
request 975759
from
Dominik Heidler (dheidler)
(revision 23)
Comments 16
Apps like signal-desktop are failing on execution with: /usr/lib64/electron/electron: symbol lookup error: /usr/lib64/electron/electron: undefined symbol: hb_subset_input_set_retain_gids
According to the discussion at https://aur.archlinux.org/packages/freetube/ which seems to be the same problem, this is due to the harfbuzz library removing some "legacy code" that includes that function: https://github.com/harfbuzz/harfbuzz/commit/d700646c33af53afcabe564e9943565d58e1192a
This also seems to break the build here atm.
I did see that. It's not the first time I've seen harfbuzz break everything in a package bulk build. What about updating this to latest stable or adding a new package for v16 so we can get apps working again?
builds for Fedora 39+ fails because of the new vulkan version on Fedora , you can found the full logs in https://copr.fedorainfracloud.org/coprs/sergiomb/electrons/package/nodejs-electron/
Any suggestion to fix the build ?
I don't see any builds failing here, and what you pasted is not a build error.
yeah, sorry, anyway full logs are here in builder-live.log.gz https://download.copr.fedorainfracloud.org/results/sergiomb/electrons/fedora-39-x86_64/06969127-nodejs-electron/builder-live.log.gz
ah ldd is disable and I had it enabled , I'm firing a new build
Following https://bugs.chromium.org/p/chromium/issues/detail?id=1374347 export LDFLAGS="${LDFLAGS} -Wl,--as-needed -fuse-ld=lld -Wl,--undefined-version" fixes the build for F39
on Rawhide we need to add:
BuildRequires: python3-setuptools
But now I got an error with zlib , we need bundle zlib according https://bugzilla.redhat.com/show_bug.cgi?id=2242271
You should not use lld, it does not work with GCC. Also zlib should never be bundled as it is part of electron's exported API.
May i know what are you trying to do? Electron builds fine on Fedora 39 here on OBS, on both x86_64 and aarch64: https://build.opensuse.org/package/live_build_log/devel:languages:nodejs/nodejs-electron/Fedora_39/x86_64
I'm building electron for Fedora in copr instead OBS for my personal use, maybe one day I will add it to Fedora . About lId, I was confused, I though lld replaces gold and gold linker was deprecated on Fedora (but neither one and other are true), I will check that. anyway build with lld makes bins 10% smaller . thank you
lld does not support LTO (which actually makes the binaries several dozen MB smaller when enabled). The builds here are done with the default GNU bfd linker and with LTO enabled (exactly according to packaging policy)
As for adding Electron to Fedora proper, that's tremendously unlikely due to upstream's extremely short API/ABI stability guarantees. (I have removed it from Leap for that very reason)
ah ok , now I also built electron with LTO . thank you
On Rawhide we need to add: BuildRequires: python3-setuptools to avoid distutils error.
With https://fedoraproject.org/wiki/Changes/MinizipNGTransition got an error with zlib , we need bundle zlib according https://bugzilla.redhat.com/show_bug.cgi?id=2242271
minizip
andz
are two different libraries even if they are built from the same “zlib” source tree. I repeat you do not want to bundlez
as it is exported by electron, meaning it would interpose the system copy which is loaded by basically everything.You may try bundling
minizip
(only) but you would need to do it manually — it has been stripped from this tarball.Personally, i would try to patch the offending file not to use this API — this is something that will need to get done eventually anyway.
we have https://fedoraproject.org/wiki/Changes/MinizipNGTransition and https://fedoraproject.org/wiki/Changes/ZlibNGTransition at same time
But zlib is not a problem. All the errors are from minizip.
Sorry , when I wrote bundle zlib , was want wrote bundle minizip quoting from https://bugzilla.redhat.com/show_bug.cgi?id=2242271 "Also, I can see chromium bundles minizip as well. Is our Fedora chromium package ready to switch to bundled minizip "