From: Leah Rowe Subject: Re: [update] www/librewolf 153.0-{1,3} (153.0-3 wip) To: yaydn@protonmail.com, "ports@openbsd.org" Date: Fri, 24 Jul 2026 10:24:24 +0100 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 yaydn@protonmail.com: >> På torsdag 23. juli 2026 kl. 21:05, skrev Leah Rowe : >> >>> 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 yaydn@protonmail.com: >>>> På torsdag 23. juli 2026 kl. 13:14, skrev Leah Rowe >>>> : >>>> >>>>> 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 landry@openbsd.org >>>> : >>>> >>>>> 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 >>>>       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