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
42.3.0 8 amd64 ~arm64 ~ppc64 ~x86 $(ver_cut 1)/$(ver_cut 2-)
42.2.0 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.3.0 42.2.0
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>)
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-148.0.7778.180-lite.tar.xz 1591971560 bytes 42.3.0
DIST chromium-148.0.7778.96-lite.tar.xz 1593085264 bytes 42.2.0
DIST chromium-clang-llvmorg-23-init-5669-g8a0be0bc-4.tar.xz 68803796 bytes 42.3.0, 42.2.0
DIST chromium-openpower-a85b64f07b.tar.bz2 2940 bytes 42.3.0, 42.2.0
DIST chromium-patches-148-3.tar.bz2 20088 bytes 42.3.0, 42.2.0
DIST chromium-patches-copium-fe1caafa06.tar.gz 15572 bytes 42.3.0, 42.2.0
DIST electron-42.2.0.tar.gz 18787426 bytes 42.2.0
DIST electron-42.3.0.tar.gz 18782866 bytes 42.3.0
DIST node-v24.15.0.tar.xz 54197668 bytes 42.3.0, 42.2.0
DIST rollup-wasm-node-4.57.1.tgz 792515 bytes 42.3.0, 42.2.0
Unmatched Entries
Type File Size
DIST chromium-rust-toolchain-6f54d591c3-7-llvmorg-23-init-5669-g8a0be0bc.tar.xz 271641712 bytes
DIST ungoogled-chromium-148.0.7778.178-1.tar.gz 661720 bytes
DIST ungoogled-chromium-148.0.7778.96-1.tar.gz 660740 bytes