On Thu, Sep 07, 2023 at 11:35:12AM +0200, Caspar Schutijser wrote: > Hi ports@, > > Below is a diff that makes Tor Browser work on aarch64. Tested on > aarch64 and amd64. > > Comments or OKs?
Ping. New diff (rebased on recent changes by landry@) below. > If you're interested in the details you can read on; otherwise, just > skip the part below and go right to the diff. > > A user previously proposed this already, but I assumed that > Tor Browser was carrying some local patches for NSPR and thus we needed > the version of NSPR bundled with Tor Browser. However, that turns out > not to be the case: > > $ git clone https://gitlab.torproject.org/tpo/applications/tor-browser.git > $ cd tor-browser > $ git diff FIREFOX_102_15_0esr_BUILD1..tor-browser-102.15.0esr-12.5-1-build2 > nsprpub/ > > I checked for a few older releases as well, and I didn't see any patches > there either. So we don't need the bundled NSPR there. Which is great > because the bundled NSPR does not compile on aarch64, even with the > patches from devel/nspr integrated. > > Note that we can't do the same for e.g. NSS, because if you run this > you'll see that Tor Browser does indeed have some patches for NSS: > $ git diff FIREFOX_102_15_0esr_BUILD1..tor-browser-102.15.0esr-12.5-1-build2 > security/nss > > Caspar Index: meta/tor-browser/Makefile =================================================================== RCS file: /cvs/ports/meta/tor-browser/Makefile,v retrieving revision 1.73 diff -u -p -r1.73 Makefile --- meta/tor-browser/Makefile 6 Sep 2023 09:42:28 -0000 1.73 +++ meta/tor-browser/Makefile 13 Sep 2023 15:58:15 -0000 @@ -3,7 +3,7 @@ COMMENT= Tor Browser meta package MAINTAINER= Caspar Schutijser <[email protected]> PKGNAME= tor-browser-12.5.3 -ONLY_FOR_ARCHS = amd64 +ONLY_FOR_ARCHS = aarch64 amd64 RUN_DEPENDS= www/tor-browser/browser>=12.5.3 \ www/tor-browser/noscript>=11.4.26 \ Index: www/tor-browser/Makefile.inc =================================================================== RCS file: /cvs/ports/www/tor-browser/Makefile.inc,v retrieving revision 1.70 diff -u -p -r1.70 Makefile.inc --- www/tor-browser/Makefile.inc 6 Sep 2023 09:42:28 -0000 1.70 +++ www/tor-browser/Makefile.inc 13 Sep 2023 15:58:15 -0000 @@ -7,7 +7,7 @@ TB_VERSION = 12.5.3 TB_PREFIX = tb # keep meta/tor-browser in sync -ONLY_FOR_ARCHS ?= amd64 +ONLY_FOR_ARCHS ?= aarch64 amd64 SUBST_VARS += BROWSER_NAME TB_VERSION Index: www/tor-browser/browser/Makefile =================================================================== RCS file: /cvs/ports/www/tor-browser/browser/Makefile,v retrieving revision 1.117 diff -u -p -r1.117 Makefile --- www/tor-browser/browser/Makefile 13 Sep 2023 06:15:48 -0000 1.117 +++ www/tor-browser/browser/Makefile 13 Sep 2023 15:58:15 -0000 @@ -7,7 +7,7 @@ COMMENT = modified version of Firefox E MOZILLA_VERSION = ${TB_VERSION} MOZILLA_PROJECT = ${BROWSER_NAME} MOZILLA_CODENAME = browser -REVISION = 0 +REVISION = 1 EXTRACT_SUFX = .tar.xz @@ -23,7 +23,7 @@ SO_VERSION = 8.0 MOZILLA_LIBS = xul clearkey lgpllibs mozavcodec mozavutil mozgtk MOZILLA_LIBS += freebl3 nss3 nssckbi MOZILLA_LIBS += nssutil3 smime3 softokn3 ssl3 -MOZILLA_LIBS += nspr4 mozsqlite3 plc4 plds4 ipcclientcerts +MOZILLA_LIBS += mozsqlite3 ipcclientcerts # mozilla public license for the browser PERMIT_PACKAGE= Yes @@ -37,8 +37,7 @@ MODPY_RUNDEP = No COMPILER = ports-clang -# tor-browser needs built-in nss, sqlite -MOZILLA_USE_BUNDLED_NSPR = Yes +# tor-browser needs built-in nss MOZILLA_USE_BUNDLED_NSS = Yes # 63 requires node because why not #1483595 BUILD_DEPENDS += lang/node Index: www/tor-browser/browser/pkg/PLIST =================================================================== RCS file: /cvs/ports/www/tor-browser/browser/pkg/PLIST,v retrieving revision 1.18 diff -u -p -r1.18 PLIST --- www/tor-browser/browser/pkg/PLIST 6 Sep 2023 09:42:29 -0000 1.18 +++ www/tor-browser/browser/pkg/PLIST 13 Sep 2023 15:58:15 -0000 @@ -203,12 +203,9 @@ lib/${BROWSER_NAME}/fonts/TwemojiMozilla @lib lib/${BROWSER_NAME}/libmozavutil.so.${LIBmozavutil_VERSION} @lib lib/${BROWSER_NAME}/libmozgtk.so.${LIBmozgtk_VERSION} @lib lib/${BROWSER_NAME}/libmozsqlite3.so.${LIBmozsqlite3_VERSION} -@lib lib/${BROWSER_NAME}/libnspr4.so.${LIBnspr4_VERSION} @lib lib/${BROWSER_NAME}/libnss3.so.${LIBnss3_VERSION} @lib lib/${BROWSER_NAME}/libnssckbi.so.${LIBnssckbi_VERSION} @lib lib/${BROWSER_NAME}/libnssutil3.so.${LIBnssutil3_VERSION} -@lib lib/${BROWSER_NAME}/libplc4.so.${LIBplc4_VERSION} -@lib lib/${BROWSER_NAME}/libplds4.so.${LIBplds4_VERSION} @lib lib/${BROWSER_NAME}/libsmime3.so.${LIBsmime3_VERSION} @lib lib/${BROWSER_NAME}/libsoftokn3.so.${LIBsoftokn3_VERSION} @lib lib/${BROWSER_NAME}/libssl3.so.${LIBssl3_VERSION}
