BSD Ports

devel/electron39 39.3.0_3 MidnightBSD

Build cross-platform desktop apps with JavaScript, HTML, and CSS

System
MidnightBSD
Repository
mports
Maintainer
[email protected]
Last update
Commit
a05b377b53
License
bsd3, lgpl2.1, mit, MPL11
Categories
devel

Description

Build cross platform desktop apps with JavaScript, HTML, and CSS.

It's easier than you think.

If you can build a website, you can build a desktop app. Electron is a framework for creating native applications with web technologies like JavaScript, HTML, and CSS. It takes care of the hard parts so you can focus on the core of your application.

Install

Binary package:

mport install electron${ELECTRON_VER:C/\..*//}

From mports:

cd /usr/mports/devel/electron39 && make install clean

To depend on this port in another port's Makefile:

RUN_DEPENDS=	electron${ELECTRON_VER:C/\..*//}>0:devel/electron39

Dependencies

As this port's Makefile names them.

Build 7

Library 27

Runtime 1

Test 2

Fetch 1

Patch 2

Build dependencies 35
Run dependencies 27

No port depends on this one.

Configuration

Options name: devel_electron

OptionDefaultDescription
ALSAon
CODECSonCompile and enable patented codecs like H.264
CUPSon
DEBUGoff
DISToffBuild distribution zip files
DRIVERoffInstall chromedriver
HEIMDALoffHeimdal Kerberos (security/heimdal)
HEIMDAL_BASEoffHeimdal Kerberos (base)
KERBEROSon
LTOoff
MIToffMIT Kerberos (security/krb5)
PIPEWIREonScreen capture via PipeWire
PULSEAUDIOon
SNDIOon
USES
bison compiler:c++17-lang cpe display:test gettext-tools gl gmake gnome iconv:wchar_t jpeg localbase:ldflags ninja nodejs:build pkgconfig python:build,test qt:5 shebangfix tar:xz xorg
Service scripts
none

Files

pkg-plist 376
  • bin/electron
  • share/electron${ELECTRON_VER:C/\..*//}/LICENSE
  • share/electron${ELECTRON_VER:C/\..*//}/LICENSES.chromium.html
  • share/electron${ELECTRON_VER:C/\..*//}/chrome_100_percent.pak
  • share/electron${ELECTRON_VER:C/\..*//}/chrome_200_percent.pak
  • share/electron${ELECTRON_VER:C/\..*//}/chromedriver
  • share/electron${ELECTRON_VER:C/\..*//}/electron
  • share/electron${ELECTRON_VER:C/\..*//}/gen/electron/buildflags/buildflags.h
  • share/electron${ELECTRON_VER:C/\..*//}/gen/v8/embedded.S
  • share/electron${ELECTRON_VER:C/\..*//}/libEGL.so
  • share/electron${ELECTRON_VER:C/\..*//}/libGLESv2.so
  • share/electron${ELECTRON_VER:C/\..*//}/libffmpeg.so
  • share/electron${ELECTRON_VER:C/\..*//}/libvk_swiftshader.so
  • share/electron${ELECTRON_VER:C/\..*//}/libvulkan.so
  • share/electron${ELECTRON_VER:C/\..*//}/locales/af.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/af_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/af_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/af_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/am.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/am_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/am_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/am_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/ar.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/ar_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/ar_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/ar_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/bg.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/bg_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/bg_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/bg_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/bn.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/bn_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/bn_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/bn_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/ca.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/ca_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/ca_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/ca_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/cs.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/cs_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/cs_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/cs_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/da.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/da_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/da_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/da_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/de.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/de_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/de_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/de_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/el.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/el_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/el_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/el_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/en-GB.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/en-GB_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/en-GB_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/en-GB_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/en-US.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/en-US_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/en-US_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/en-US_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/es-419.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/es-419_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/es-419_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/es-419_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/es.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/es_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/es_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/es_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/et.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/et_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/et_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/et_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fa.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fa_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fa_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fa_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fi.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fi_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fi_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fi_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fil.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fil_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fil_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fil_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fr.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fr_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fr_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/fr_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/gu.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/gu_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/gu_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/gu_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/he.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/he_FEMININE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/he_MASCULINE.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/he_NEUTER.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/hi.pak
  • share/electron${ELECTRON_VER:C/\..*//}/locales/hi_FEMININE.pak

The first 100 are listed.

distinfo 13
FileSizeSHA256
electron/chromium-142.0.7444.265.tar.xz.02e+0954ca3cf92f6a207a4e1b46fe016da7d515097f999b5e53ba4201adc906ae383e
electron/chromium-142.0.7444.265.tar.xz.12e+09289722408b81d862eb63f98cf47516308add8e18f5d62d2455c98942a2ebface
electron/chromium-142.0.7444.265.tar.xz.22.2765076e+08fcce594020d7120080cd9b4a6af385983c8980dfdd3f72405b31b11fad41ffd5
electron/pulseaudio-16.1.tar.gz2.763111e+06027266c62f2a84422ac45fa721a649508f0f1628fb1fd9242315ac54ce2d7c92
electron/yarn-4.12.0.tgz1.059585e+06c60829c8dbf2263e6c6be34c15ebb2830f67a267de4b7d646f4043680fe47a66
electron/electron39-39.3.0-node-modules.tar.xz5.9815804e+07d6807d9aa0650ecccdb7fc89b1bdca4fb3bbc45e70a02e5353ead188e91208a2
electron/electron-electron-v39.3.0_GH0.tar.gz1.699076e+07ec1ff70789e0f323b586df0d5104e20b5c127b96281aa04a67bf91b86d288e58
electron/nodejs-node-v22.22.1_GH0.tar.gz1.29747267e+084d9ebbac6ba3f9610fdd5449274794a3b32305b33ca6f2fd476ac139024015c6
electron/nodejs-nan-e14bdcd1f72d62bca1d541b66da43130384ec213_GH0.tar.gz18064602edf8d5b3fef9af94d8a1355da60564a57e7f2c99cb422bce042400607ed2eb
electron/Squirrel-Squirrel.Mac-0e5d146ba13101a1302d59ea6e6e0b3cace4ae38_GH0.tar.gz2.112918e+06f4ebb40a8d85dbb7ef02aa0571b2f8e22182c6d73b6992484a53c90047779d01
electron/ReactiveCocoa-ReactiveObjC-74ab5baccc6f7202c8ac69a8d1e152c29dc1ea76_GH0.tar.gz1.136238e+0688e65f116c7a06fccedb43970fba63080a57a4e5dc29147d2cdfe1ee58dd0546
electron/Mantle-Mantle-78d3966b3c331292ea29ec38661b25df0a245948_GH0.tar.gz62962a365df6d83e0be3cc000b70bd39734d80c28f0d9983ebe44698337a2ca464bb1
electron/EngFlow-reclient-configs-955335c30a752e9ef7bff375baab5e0819b6c00d_GH0.tar.gz13014c148f76220fc41a89ffeaf370c2cc175577be184688b12aa6fec5f8ac6c714c4
Master sites 2
  • https://github.com/tagattie/FreeBSD-Electron/releases/download/v39.3.0/:chromium
  • https://freedesktop.org/software/pulseaudio/releases/:pulseaudio

Commit history 6

DateCommitCreditsLog message
a05b377b53 Lucas Holt *: bump PORTREVISION for the textproc/libxml2 2.15 shared library change (#848)
`textproc/libxml2` 2.15 changed SONAME from `libxml2.so.2` to `libxml2.so.16` **and** removed ELF symbol versioning entirely — the new library defines no `LIBXML2_*` versions at all. Consumers built against the old library were never rebuilt, so they still record a dependency on `libxml2.so.2` plus version requirements nothing can satisfy, and fail at load time: ``` ld-elf.so.1: /usr/local/lib/libxml2.so.2: version LIBXML2_2.4.30 required by /usr/local/lib/libevdocument3.so.4 not defined ``` ### Scope `Tools/scripts/bump_revision.pl -f -l textproc/libxml2` — **436 Makefiles**: 323 revisions incremented, 113 gained a `PORTREVISION` line. The diff touches nothing but `PORTREVISION` lines (verified: `git diff -U0` shows no other changed line), and spot-checked ports still …
ef300c07de Lucas Holt devel/electron39: fix the staging path in the option install targets
The option helper targets (post-install-DOCS-on and friends) are entries in _FAKE_SEQ and run in the main make, not in the sub-make that fake-post-install starts with FAKE_SETUP. There PREFIX is not stage-prefixed and STAGEDIR is empty, so ${STAGEDIR}${DOCSDIR} resolved to the live /usr/local: the build wrote outside the stage directory and the file was then reported missing, e.g. install ... README.rst /usr/local/share/doc/py312-webcolors /usr/local/share/doc/py312-webcolors/README.rst not installed. Fake failed. Use ${FAKE_DESTDIR} in these targets, as x11-wm/icewm already does. AI-Assisted-by: Claude Opus 5 (1M context) <[email protected]> Signed-off-by: Lucas Holt <[email protected]>
e6a949708c dependabot[bot] build(deps): bump ip-address from 10.1.1 to 10.3.1 in /devel/electron39/files/packagejsons (#681)
Bumps [ip-address](https://github.com/beaugunderson/ip-address) from 10.1.1 to 10.3.1. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/beaugunderson/ip-address/releases">ip-address's releases</a>.</em></p> <blockquote> <h2>v10.3.1</h2> <p><strong>Full Changelog</strong>: <a href="https://github.com/beaugunderson/ip-address/compare/v10.3.0...v10.3.1">https://github.com/beaugunderson/ip-address/compare/v10.3.0...v10.3.1</a></p> <h2>v10.3.0</h2> <p><strong>Full Changelog</strong>: <a href="https://github.com/beaugunderson/ip-address/compare/v10.2.2...v10.3.0">https://github.com/beaugunderson/ip-address/compare/v10.2.2...v10.3.0</a></p> <h2>v10.2.2</h2> <p><strong>Full Changelog</strong>: <a …
b8b0e3361e dependabot[bot] build(deps): bump fast-uri from 3.0.1 to 3.1.4 in /devel/electron39/files/packagejsons (#676)
Bumps [fast-uri](https://github.com/fastify/fast-uri) from 3.0.1 to 3.1.4. <details> <summary>Release notes</summary> <p><em>Sourced from <a href="https://github.com/fastify/fast-uri/releases">fast-uri's releases</a>.</em></p> <blockquote> <h2>v3.1.4</h2> <h2>⚠️ Security Release</h2> <p>Fix for <a href="https://github.com/fastify/fast-uri/security/advisories/GHSA-v2hh-gcrm-f6hx">https://github.com/fastify/fast-uri/security/advisories/GHSA-v2hh-gcrm-f6hx</a></p> <p><strong>Full Changelog</strong>: <a href="https://github.com/fastify/fast-uri/compare/v3.1.3...v3.1.4">https://github.com/fastify/fast-uri/compare/v3.1.3...v3.1.4</a></p> <h2>v3.1.3</h2> <h2>⚠️ Security Release</h2> <ul> <li>Fixes: <a …
8ebae684ae dependabot[bot] build(deps): bump linkify-it from 5.0.0 to 5.0.2 in /devel/electron39/files/packagejsons (#648)
Bumps [linkify-it](https://github.com/markdown-it/linkify-it) from 5.0.0 to 5.0.2. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/markdown-it/linkify-it/blob/master/CHANGELOG.md">linkify-it's changelog</a>.</em></p> <blockquote> <h2>5.0.2 / 2026-07-02</h2> <ul> <li>Fixed DoS in <code>mailto:</code> links (restrict user name to 64 chars).</li> <li>Restricted user/pass part length in links.</li> </ul> <h2>5.0.1 / 2026-05-23</h2> <ul> <li>Fixed DoS in fuzzy links/emails search.</li> <li>Reworked search logic - check each pattern separate, use <code>g</code> regexes instead of slice.</li> <li>Removed internal cache - useless overcomplication.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a …

The latest 5 of 6 in the history this site was built from.