one more thing!

You will see .diff or .patch files in librewolf tarballs. i don't remember which, but it's one of those.

or .orig or something.

so like, when librewolf modifies foo.c, they copy the original to foo.c.orig or something.

then you see their modified foo.c

you could automatically scan the librewolf tarball for this. i do this when copying firefox obsd patching, in case i need to do a bit of surgery; so far, this has not been necessary as there are currently no files that both openbsd and librewolf touch.


Am 24.07.26 um 10:24 schrieb Leah Rowe:

the mentality is this:

* www/firefox is upstream for port purposes; adapt any changes there also applicable to librewolf

* keep www/librewolf version always in sync relative to firefox, using librewolf tarballs

* adapt any librewolf-specific changes in policy and mozconfig, cross referenced with www/firefox

in this way, we see:

the librewolf is identical to firefox, except that it uses the librewolf tarball. i make no more and no fewer changes than necessary. this way, it's as if i am Landry myself, if Landry were maintaining LibreWolf. I just perfectly parrot Landry's brain at all times, adapted for LibreWolf.

this mentality matches how LibreWolf itself tracks FireFox upstream. They rebase all their patches per FireFox release, thereby avoiding drift. my workflow in openbsd replicates this precisely, no more no less.


Am 24.07.26 um 10:14 schrieb Leah Rowe:

Oh, yeah dude, check the Makefile where it replaces mozconfig with the bsd one.

Yeah then just check diffs to upstream's mozconfig, versus previous versions. anything they change there can then be added to the bsd one.

careful mind, like, sometimes it adds stuff the bsd port already has, e.g. various autohell options.

yeah i got some shit to deal with. life shit. business shit. making some changes over coming months and i'm just not focusing on much technical work until its all sorted, ETA october. might be done late august or early to mid september tho.


i mean. as long as your updates compile and run you should be set. i literally do just that. monitor upstream mozconfig and policy changes. adapt obsd ff changes. and... bam.

then i build it, and after i run:

make update-plist

make update-patches

then i might build again, after the fact, but after that, i normally then just submit a patch. i still need to learn how to use cvs too (i normally use git openbsd github mirror)


just use my diff updates as reference and you'll see my flow. obsd ports system is whack, but i established a nice workflow there



Am 24.07.26 um 07:00 schrieb [email protected]:
På torsdag 23. juli 2026 kl. 21:05, skrev Leah Rowe <[email protected]>:

Honestly, I've already mostly dealt with my things. Got some other
things. I could probably come back like, today. But you seem to know
what you're doing. I'll leave you in charge for a while :)


Thanks, I try. Still learning from landry, henderson, et all, and from
your initial port and subsequent updates. Good luck with those things
and may you be caught up soon.

If you get a chance, could you look at the file/mozconfig-openbsd
though? That one is the part I am most uncertain about. No hurry.

Well wishes and see you on the flip side.

Am 23.07.26 um 19:52 schrieb [email protected]:
På torsdag 23. juli 2026 kl. 13:14, skrev Leah Rowe
<[email protected]>:

Thank you for taking charge of this for me.

I'll be back in October again to help again with maintaining this port.

I'll probably be back earlier than October, but I say October for
safety. I got a few things I'm dealing with that demand my undivided
attention for the next few months.
I am already compiling it on my own, so learning the ropes is alright.
No worries. Prior notice is appreciated. 👍

May you stay healthy too!


På torsdag 23. juli 2026 kl. 13:47, skrev [email protected]
<[email protected]>:

Le Thu, Jul 23, 2026 at 12:17:00PM +0100, Leah Rowe a écrit :
see other reply:

check the firefox port. i do changes pretty conservatively, only adapting firefox port changes, plus adaptations for librewolf-specific changes e.g.
policy changes, mozconfig (referencing upstream).

the firefox port does that CPU thread check and caps the limits based on the architecture it's being built on. openbsd doesn't cross compile, it always compiles on each host, and some of those architectures require limiting the number of threads due to memory usage, because the firefox port uses a lot
of memory when compiling it.
just to correct things here:

- that's not 'the port uses a lot of memory when compiling it' (albeit     that's also true) nor related to crosscompile - its 'lld takes gobs of
resources when linking libxul.so'
- there was an ugly 'NCPU !!= sysctl -n hw.ncpuonline' construct to get     the amount of cores available. ugly because its evaluated/executed
each time the makefile is read.
- depending on the value, it used it or capped it to 5
- lld upstream defaults to use all available cores, which was producing
    bad resource usage with many cores (eg >= 16) - cf
https://marc.info/?t=173106489200001&r=1&w=2
- our lld gained a local modification that caps it to 4. cf
https://github.com/openbsd/src/commit/e41c3d4bccf9b5cf584f1453e0a028fd066cd926 - i initially thought the capping happened only *IFF* -Wl,--threads was     used, but rereading the above commit, it doesnt seem to be the case.
I'll recheck in my next build.
- so in the end i think the -Wl,--threads bit should be dropped from
    LDFLAGS and come back to --ld-path=${WRKDIR}/bin/ld

hope it helps clarifying things..

i'll commit the final diff for lw 153.0-3 when its been properly tested.

Landry

I think I follow. I'll keep an eye on those possible changes. Thanks
for the explanation. I was wondering what the thread hack was about.

Here is near same patch. There were no check diff's from 153.0-1 to 153.0-3.

Been using it for a few minutes on sway. Double downloaded the tar, all
good.

No regressions that I can find. Happy hacking everyone! May you all stay
cool.

Forgot to mention testing, comments, concerns welcome.

Index: Makefile
===================================================================
RCS file: /cvs/ports/www/librewolf/Makefile,v
diff -u -p -u -p -r1.5 Makefile
--- Makefile    16 Jul 2026 15:19:32 -0000    1.5
+++ Makefile    23 Jul 2026 18:30:31 -0000
@@ -13,7 +13,7 @@ ONLY_FOR_ARCHS =    amd64 aarch64 riscv64
      # If upstream adds revision number -x, it will become plx in OpenBSD, e.g.    # librewolf-149.0.2-2 (upstream) becomes librewolf-149.0.2pl2 (patch level 2)
-MOZILLA_DIST_VERSION =    152.0.6-1
+MOZILLA_DIST_VERSION =    153.0-3
   MOZILLA_VERSION = ${MOZILLA_DIST_VERSION:C/-([0-9]+)$/pl\1/}
      MOZILLA_PROJECT =    librewolf
@@ -21,7 +21,7 @@ MOZILLA_CODENAME =    browser
   MAINTAINER =        Leah Rowe <[email protected]>
      HOMEPAGE =    https://librewolf.net/
-SO_VERSION =    1.0
+SO_VERSION =    2.0
   # Bump minor ver if shlibs deleted in components dir to avoid pkg_add -r issues    MOZILLA_LIBS =    mozavcodec mozavutil mozgtk mozinference mozwayland xul \
           clearkey gkcodecs lgpllibs mozsqlite3
@@ -43,12 +43,11 @@ MODPY_RUNDEP =    No
      COMPILER =    ports-clang
   MODCLANG_VERSION =    22
-USE_LLD =    ports
      # 63 requires node because why not #1483595
   BUILD_DEPENDS +=    lang/node
   # 63 requires cbindgen #1478813
-BUILD_DEPENDS +=    devel/cbindgen>=0.23.0
+BUILD_DEPENDS +=    devel/cbindgen>=0.29.4
   # wasi
   BUILD_DEPENDS += lang/wasi-sdk/compiler-rt>=22.1.5p1 \
               lang/wasi-sdk/libcxx>=21.1.5p1 \
@@ -60,7 +59,7 @@ BUILD_DEPENDS +=    devel/py-setuptools
   RUN_DEPENDS =        graphics/ffmpeg
      # uses pledge()
-WANTLIB += Xrandr Xtst
+WANTLIB += Xrandr Xtst freebl3
      CONFIGURE_STYLE =    simple
   CONFIGURE_SCRIPT =    ${MODPY_BIN} ${WRKSRC}/configure.py
@@ -71,13 +70,7 @@ CONFIGURE_ENV += CPPFLAGS="-fno-ret-prot
   .else
   CONFIGURE_ENV +=    CPPFLAGS=-Wno-backend-plugin
   .endif
-NCPU !!=        sysctl -n hw.ncpuonline
-.if ${NCPU} > 4
-CONFIGURE_ENV +=    LDFLAGS="-Wl,--threads=5 --ld-path=${WRKDIR}/bin/ld"
-.else
-CONFIGURE_ENV +=    LDFLAGS="-Wl,--threads=${MAKE_JOBS} \
-            --ld-path=${WRKDIR}/bin/ld"
-.endif
+CONFIGURE_ENV +=    LDFLAGS="-Wl,--threads=4 --ld-path=${WRKDIR}/bin/ld"
   # 2026497
   CONFIGURE_ENV += MACH_BUILD_PYTHON_NATIVE_PACKAGE_SOURCE=none
   Index: distinfo
===================================================================
RCS file: /cvs/ports/www/librewolf/distinfo,v
diff -u -p -u -p -r1.5 distinfo
--- distinfo    16 Jul 2026 15:19:32 -0000    1.5
+++ distinfo    23 Jul 2026 18:30:31 -0000
@@ -1,2 +1,2 @@
-SHA256 (librewolf/librewolf-152.0.6-1.source.tar.gz) = BBkwy3HutWW3Nv+ObQRDgTFGM7LDwrGatnS/Phn3+HA=
-SIZE (librewolf/librewolf-152.0.6-1.source.tar.gz) = 1156714022
+SHA256 (librewolf/librewolf-153.0-3.source.tar.gz) = SKziSh1q9sZeOmY0AuewrxVP9yBqt2++XAgxGnReOeM=
+SIZE (librewolf/librewolf-153.0-3.source.tar.gz) = 1161719988
Index: patches/patch-lw_policies_json
===================================================================
RCS file: /cvs/ports/www/librewolf/patches/patch-lw_policies_json,v
diff -u -p -u -p -r1.3 patch-lw_policies_json
--- patches/patch-lw_policies_json    20 Jun 2026 14:30:20 -0000    1.3
+++ patches/patch-lw_policies_json    23 Jul 2026 18:30:31 -0000
@@ -3,20 +3,14 @@ perhaps send these to librewolf upstream
   Index: lw/policies.json
   --- lw/policies.json.orig
   +++ lw/policies.json
-@@ -13,6 +13,16 @@
+@@ -35,6 +35,10 @@
            "DisableSetDesktopBackground": false,
-         "DisableDeveloperTools": false,
-         "NoDefaultBookmarks": true,
-+        "DontCheckDefaultBrowser": true,
+         "DisableTelemetry": true,
+         "DontCheckDefaultBrowser": true,
   + "GoToIntranetSiteForSingleWordEntryInAddressBar": true,
-+        "FirefoxHome": {
-+        "SponsoredStories": false,
-+            "SponsoredTopSites": false,
-+            "Stories": false
-+        },
   +        "GenerativeAI": {
   +            "Enabled": false
   +        },
-         "DefaultSerialGuardSetting": 3,
-         "WebsiteFilter": {
-             "Block": [
+         "EncryptedMediaExtensions": {
+             "Enabled": false
+         },
Index: patches/patch-toolkit_components_downloads_DownloadIntegration_sys_mjs
===================================================================
RCS file: /cvs/ports/www/librewolf/patches/patch-toolkit_components_downloads_DownloadIntegration_sys_mjs,v diff -u -p -u -p -r1.1.1.1 patch-toolkit_components_downloads_DownloadIntegration_sys_mjs --- patches/patch-toolkit_components_downloads_DownloadIntegration_sys_mjs 8 Jun 2026 16:14:42 -0000    1.1.1.1 +++ patches/patch-toolkit_components_downloads_DownloadIntegration_sys_mjs 23 Jul 2026 18:30:31 -0000
@@ -4,7 +4,7 @@ was previously in patch-toolkit_componen
   Index: toolkit/components/downloads/DownloadIntegration.sys.mjs
   --- toolkit/components/downloads/DownloadIntegration.sys.mjs.orig
   +++ toolkit/components/downloads/DownloadIntegration.sys.mjs
-@@ -1110,7 +1110,7 @@ export var DownloadIntegration = {
+@@ -1117,7 +1117,7 @@ export var DownloadIntegration = {
        // displayed in the user interface.
        let directoryPath = PathUtils.join(
          this._getDirectory(aName),
--
Company director, Minifree Ltd
Registered in England, No. 9361826 | VAT No. GB202190462
Registered Office: 19 Hilton Road, Canvey Island, Essex SS8 9QA, UK

--
Company director, Minifree Ltd
Registered in England, No. 9361826 | VAT No. GB202190462
Registered Office: 19 Hilton Road, Canvey Island, Essex SS8 9QA, UK

Attachment: OpenPGP_0x5C654067D383B1FF.asc
Description: OpenPGP public key

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature

Reply via email to