dev-util/electron (pf4public)

Search

Install

Install this package:

emerge -a dev-util/electron

If the package is masked, you can unmask it using the autounmask tool or standard emerge options:

autounmask dev-util/electron

Or alternatively:

emerge --autounmask-write -a dev-util/electron

Package Information

Description:
Electron is a cross platform application development framework based on web technologies based on Chromium
Homepage:
https://electronjs.org/
License:
Apache-2.0 Apache-2.0-with-LLVM-exceptions BSD BSD-2 Base64 Boost-1.0 CC-BY-3.0 CC-BY-4.0 Clear-BSD FFT2D FTL IJG ISC LGPL-2 LGPL-2.1 MIT MPL-1.1 MPL-2.0 Ms-PL PSF-2 SGI-B-2.0 SSLeay SunSoft Unicode-3.0 Unicode-DFS-2015 Unlicense UoI-NCSA ZLIB libtiff openssl

Versions

Version EAPI Keywords Slot
42.0.1 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
42.0.0 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
41.5.1 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
41.5.0 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
40.9.3 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
40.10.0 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
39.8.9 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
39.8.10 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)

Metadata

Description

Maintainers

Upstream

Raw Metadata XML
<pkgmetadata>
	<maintainer type="person">
		<email>PF4Public@users.noreply.github.com</email>
	</maintainer>
	<longdescription>
		Electron is a cross platform application development framework based on web technologies based on Chromium
	</longdescription>
	<use>
		<flag name="bluetooth">Enable Bluetooth. Disabling bluetooth does break WebAuthn. Could also break something else. Improved patch is welcome.</flag>
		<flag name="bundled-toolchain">Download and use the upstream binary toolchain(s) to build Chromium</flag>
		<flag name="clang">Use Clang compiler instead of GCC</flag>
		<flag name="debug">Enable DCHECK feature with severity configurable at runtime. Mostly intended for debugging and development, NOT RECOMMENDED for general use.</flag>
		<flag name="dev-dependencies">Keep Electron's devDependencies. This makes them available in node_modules. For example "asar" utility is one of them.</flag>
		<flag name="ffmpeg-chromium">(binpkg only) Use Chromium FFmpeg fork (<pkg>media-video/ffmpeg-chromium</pkg>) rather than mainline FFmpeg (<pkg>media-video/ffmpeg</pkg>)</flag>
		<flag name="gtk4">Build with GTK4 headers</flag>
		<flag name="hangouts">Enable support for Google Hangouts features such as screen sharing</flag>
		<flag name="hevc">Enable HEVC decoding support. Should work with system-ffmpeg, but might require additional patching for the built-in one.</flag>
		<flag name="js-type-check">Enable JavaScript type-checking for Chrome's web technology-based UI. Requires Java.</flag>
		<flag name="libcxx">Use bundled C++ Standard Library (libc++)</flag>
		<flag name="nvidia">Use libXNVCtrl library from <pkg>x11-drivers/nvidia-drivers</pkg> instead of the bundled one</flag>
		<flag name="optimize-thinlto">Whether to enable ThinLTO optimizations. Turning ThinLTO optimizations on can substantially increase link time and binary size, but they generally also make binaries a fair bit faster.</flag>
		<flag name="optimize-webui">Optimize parts of Chromium's UI written with web technologies (HTML/CSS/JS) for runtime performance purposes. This does more work at compile time for speed benefits at runtime.</flag>
		<flag name="pax-kernel">Allow building on a PaX-enabled kernel</flag>
		<flag name="pgo">Enable PGO. Requires bundled binary profile data in sources tree. Often requires masked/testing llvm.</flag>
		<flag name="pic">Disable optimized assembly code that is not PIC friendly</flag>
		<flag name="proprietary-codecs">Enable codecs for patent-encumbered audio and video formats</flag>
		<flag name="screencast">Enable support for remote desktop and screen cast using <pkg>media-video/pipewire</pkg></flag>
		<flag name="suid">Build the SUID sandbox, which is only needed on CONFIG_USER_NS=n kernels</flag>
		<flag name="system-abseil-cpp">Use the system <pkg>dev-cpp/abseil-cpp</pkg> instead of the bundled one</flag>
		<flag name="system-av1">Use the system <pkg>media-libs/libaom</pkg> and <pkg>media-libs/dav1d</pkg> instead of the bundled ones</flag>
		<flag name="system-brotli">Use the system <pkg>app-arch/brotli</pkg> instead of the bundled one</flag>
		<flag name="system-crc32c">Use the system <pkg>dev-libs/crc32c</pkg> instead of the bundled one</flag>
		<flag name="system-double-conversion">Use the system <pkg>dev-libs/double-conversion</pkg> instead of the bundled one</flag>
		<flag name="system-ffmpeg">Use the system <pkg>media-video/ffmpeg</pkg> instead of the bundled one</flag>
		<flag name="system-harfbuzz">Use the system <pkg>media-libs/harfbuzz</pkg> instead of the bundled one</flag>
		<flag name="system-icu">Use the system <pkg>dev-libs/icu</pkg> instead of the bundled one</flag>
		<flag name="system-jsoncpp">Use the system <pkg>dev-libs/jsoncpp</pkg> instead of the bundled one</flag>
		<flag name="system-libevent">Use the system <pkg>dev-libs/libevent</pkg> instead of the bundled one</flag>
		<flag name="system-libusb">Use the system <pkg>dev-libs/libusb</pkg> instead of the bundled one</flag>
		<flag name="system-libvpx">Use the system <pkg>media-libs/libvpx</pkg> instead of the bundled one</flag>
		<flag name="system-openh264">Use the system <pkg>media-libs/openh264</pkg> instead of the bundled one. If disabled, it will restrict USE=bindist.</flag>
		<flag name="system-openjpeg">Use the system-wide <pkg>media-libs/openjpeg</pkg> instead of the bundled one. OpenJPEG use are exclusively for Chromium's PDF viewer.</flag>
		<flag name="system-png">Use system libpng instead of the bundled one</flag>
		<flag name="system-re2">Use the system-wide <pkg>dev-libs/re2</pkg> instead of the bundled one</flag>
		<flag name="system-snappy">Use the system-wide <pkg>app-arch/snappy</pkg> instead of the bundled one</flag>
		<flag name="system-woff2">Use the system <pkg>media-libs/woff2</pkg> instead of the bundled one</flag>
		<flag name="system-zstd">Use the system <pkg>app-arch/zstd</pkg> instead of the bundled one</flag>
		<flag name="thinlto">Build with ThinLTO support. LTO (Link Time Optimization) achieves better runtime performance through whole-program analysis and cross-module optimization (highly recommended).</flag>
		<flag name="ungoogled">Apply ungoogled-chromium modifications to chromium sources (electron sources are not modified be it better or worse). Might break electron apps or electron itself!</flag>
	</use>
	<upstream>
		<doc>https://www.electronjs.org/docs</doc>
		<bugs-to>https://github.com/electron/electron/issues</bugs-to>
		<remote-id type="github">electron/electron</remote-id>
	</upstream>
</pkgmetadata>

Lint Warnings

USE Flags

Manage flags for this package: euse -i <flag> -p dev-util/electron | euse -E <flag> -p dev-util/electron | euse -D <flag> -p dev-util/electron

Flag Description 42.0.1 42.0.0 41.5.1 41.5.0 40.9.3 40.10.0 39.8.9 39.8.10
X ⚠️
bindist ⚠️
bluetooth Enable Bluetooth. Disabling bluetooth does break WebAuthn. Could also break something else. Improved patch is welcome.
bundled-toolchain Download and use the upstream binary toolchain(s) to build Chromium
clang Use Clang compiler instead of GCC
cpu_flags_arm_neon ⚠️
cpu_flags_ppc_vsx3 ⚠️
cups ⚠️
custom-cflags ⚠️
debug Enable DCHECK feature with severity configurable at runtime. Mostly intended for debugging and development, NOT RECOMMENDED for general use.
dev-dependencies Keep Electron's devDependencies. This makes them available in node_modules. For example "asar" utility is one of them.
ffmpeg-chromium (binpkg only) Use Chromium FFmpeg fork (<pkg>media-video/ffmpeg-chromium</pkg>) rather than mainline FFmpeg (<pkg>media-video/ffmpeg</pkg>)
gtk4 Build with GTK4 headers
hangouts Enable support for Google Hangouts features such as screen sharing
kerberos ⚠️
libcxx Use bundled C++ Standard Library (libc++)
nvidia Use libXNVCtrl library from <pkg>x11-drivers/nvidia-drivers</pkg> instead of the bundled one
optimize-thinlto Whether to enable ThinLTO optimizations. Turning ThinLTO optimizations on can substantially increase link time and binary size, but they generally also make binaries a fair bit faster.
optimize-webui Optimize parts of Chromium's UI written with web technologies (HTML/CSS/JS) for runtime performance purposes. This does more work at compile time for speed benefits at runtime.
pax-kernel Allow building on a PaX-enabled kernel
pgo Enable PGO. Requires bundled binary profile data in sources tree. Often requires masked/testing llvm.
proprietary-codecs Enable codecs for patent-encumbered audio and video formats
pulseaudio ⚠️
screencast Enable support for remote desktop and screen cast using <pkg>media-video/pipewire</pkg>
selinux ⚠️
system- ⚠️
thinlto Build with ThinLTO support. LTO (Link Time Optimization) achieves better runtime performance through whole-program analysis and cross-module optimization (highly recommended).
ungoogled Apply ungoogled-chromium modifications to chromium sources (electron sources are not modified be it better or worse). Might break electron apps or electron itself!
vaapi ⚠️
wayland ⚠️

Files

Manifest

Type File Size Versions
DIST chromium-142.0.7444.175-lite.tar.xz 1711108684 bytes 39.8.9, 39.8.10
DIST chromium-144.0.7559.134-lite.tar.xz 1292576952 bytes 40.9.3, 40.10.0
DIST chromium-146.0.7680.179-lite.tar.xz 1476941696 bytes 41.5.1, 41.5.0
DIST chromium-148.0.7778.96-linux.tar.xz 1592992076 bytes 42.0.1, 42.0.0
DIST chromium-clang-llvmorg-23-init-5669-g8a0be0bc-4.tar.xz 68803796 bytes 42.0.1, 42.0.0
DIST chromium-openpower-a85b64f07b.tar.bz2 2940 bytes 42.0.1, 42.0.0
DIST chromium-openpower-c0eeb291f9.tar.bz2 433105 bytes 41.5.1, 41.5.0, 40.9.3, 40.10.0, 39.8.9, 39.8.10
DIST chromium-patches-142.tar.bz2 10524 bytes 39.8.9, 39.8.10
DIST chromium-patches-148-3.tar.bz2 20088 bytes 42.0.1, 42.0.0
DIST chromium-patches-copium-fe1caafa06.tar.gz 15572 bytes 42.0.1, 42.0.0
DIST electron-39.8.10.tar.gz 17308163 bytes 39.8.10
DIST electron-39.8.9.tar.gz 17271747 bytes 39.8.9
DIST electron-40.10.0.tar.gz 17327416 bytes 40.10.0
DIST electron-40.9.3.tar.gz 17331287 bytes 40.9.3
DIST electron-41.5.0.tar.gz 18801379 bytes 41.5.0
DIST electron-41.5.1.tar.gz 18794873 bytes 41.5.1
DIST electron-42.0.0.tar.gz 18768122 bytes 42.0.0
DIST electron-42.0.1.tar.gz 18771581 bytes 42.0.1
DIST node-v22.22.1.tar.xz 51271588 bytes 39.8.9, 39.8.10
DIST node-v24.14.1.tar.xz 54102840 bytes 40.9.3
DIST node-v24.15.0.tar.xz 54197668 bytes 42.0.1, 42.0.0, 41.5.1, 41.5.0, 40.10.0
DIST rollup-wasm-node-4.57.1.tgz 792515 bytes 42.0.1, 42.0.0
Unmatched Entries
Type File Size
DIST chromium-069d424e41f42c6f4a4551334eafc7cfaed6e880.patch 1597 bytes
DIST chromium-3abf0048fc862a2db04031466be5f45a70c77a6d.patch 20070 bytes
DIST chromium-acb47d9a6b56c4889a2ed4216e9968cfc740086c.patch 4513 bytes
DIST chromium-bd9e1afdde061d4870cf69de39b04caac26960f2.patch 1354 bytes
DIST chromium-rust-toolchain-6f54d591c3-7-llvmorg-23-init-5669-g8a0be0bc.tar.xz 271641712 bytes
DIST ungoogled-chromium-142.0.7444.175-1.tar.gz 650884 bytes
DIST ungoogled-chromium-144.0.7559.132-1.tar.gz 656922 bytes
DIST ungoogled-chromium-146.0.7680.177-1.tar.gz 668979 bytes
DIST ungoogled-chromium-148.0.7778.96-1.tar.gz 660740 bytes