dev-util/electron (pf4public)

Search

Install

Install this package:

emerge -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
44.5.1 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
44.5.0 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
43.7.7 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
43.7.6 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="gclient">Fetch the Chromium sources with gclient (<pkg>dev-util/depot-tools</pkg>) instead of the tarball. The git mirror cache is kept in ${DISTDIR}/gclient-src (configurable via GCLIENT_STORE_DIR).</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 44.5.1 44.5.0 43.7.7 43.7.6
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 ✓ ✓ ✓ ✓
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>) ✓ ✓ ✓ ✓
gclient Fetch the Chromium sources with gclient (<pkg>dev-util/depot-tools</pkg>) instead of the tarball. The git mirror cache is kept in ${DISTDIR}/gclient-src (configurable via GCLIENT_STORE_DIR). ✓ ✓ ✗ ✗
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-150.0.7871.186-lite.tar.xz 1668536212 bytes 43.7.7, 43.7.6
DIST chromium-152.0.7977.82-lite.tar.xz 1774798136 bytes 44.5.1, 44.5.0
DIST chromium-clang-llvmorg-23-init-10931-g20b6ec66-11.tar.xz 69635068 bytes 43.7.7, 43.7.6
DIST chromium-clang-llvmorg-23-init-19482-g53d18800-1.tar.xz 59093892 bytes 44.5.1, 44.5.0
DIST chromium-openpower-7aae8a84e3.tar.bz2 441026 bytes 44.5.1, 44.5.0
DIST chromium-openpower-a85b64f07b.tar.bz2 387899 bytes 43.7.7, 43.7.6
DIST chromium-patches-150-1.tar.bz2 23403 bytes 43.7.7, 43.7.6
DIST chromium-patches-152.tar.bz2 22963 bytes 44.5.1, 44.5.0
DIST chromium-patches-copium-3c7e56fb45.tar.gz 13304 bytes 44.5.1, 44.5.0
DIST chromium-patches-copium-b00f26bb5e.tar.gz 15099 bytes 43.7.7, 43.7.6
DIST electron-43.7.6.tar.gz 20444636 bytes 43.7.6
DIST electron-43.7.7.tar.gz 20539196 bytes 43.7.7
DIST electron-44.5.0.tar.gz 20189957 bytes 44.5.0
DIST electron-44.5.1.tar.gz 20284163 bytes 44.5.1
DIST node-v24.21.0.tar.xz 57357488 bytes 44.5.1, 44.5.0, 43.7.7, 43.7.6
DIST rollup-wasm-node-4.57.1.tgz 792515 bytes 44.5.1, 44.5.0, 43.7.7, 43.7.6
Unmatched Entries
Type File Size
DIST chromium-cf94ed446320d35c8613ed9b3ffb6e6a61bfcb5f.patch 9972 bytes
DIST chromium-rust-toolchain-4c4205163a-5-llvmorg-23-init-10931-g20b6ec66.tar.xz 274476304 bytes
DIST chromium-rust-toolchain-b998449636-2-llvmorg-23-init-19482-g53d18800.tar.xz 274790504 bytes
DIST devtools-frontend-c72c7b0971e3e31974b0adea0dac42278e22e3b0.patch 7155 bytes
DIST ungoogled-chromium-150.0.7871.186-1.tar.gz 669698 bytes
DIST ungoogled-chromium-152.0.7977.82-1.tar.gz 670285 bytes