Skip to content

Commit d770f60

Browse files
committed
zen-browser: new, 1.18.5~beta
1 parent e5b6266 commit d770f60

16 files changed

Lines changed: 665 additions & 0 deletions
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
abinfo "Installing icons ..."
2+
for i in 16 22 24 32 48 64 128 256 512 1024; do
3+
install -Dvm644 "$SRCDIR"/configs/branding/release/logo$i.png \
4+
"$PKGDIR"/usr/share/icons/hicolor/${i}x${i}/apps/zen.png
5+
done
6+
7+
abinfo "Symlinking dictionaries for spellchecking ..."
8+
rm -rfv "$PKGDIR"/usr/lib/zen/{dictionaries,hyphenation}
9+
ln -sv /usr/share/hunspell \
10+
"$PKGDIR"/usr/lib/zen/dictionaries
11+
ln -sv /usr/share/hyphen \
12+
"$PKGDIR"/usr/lib/zen/hyphenation
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
abinfo "Building zen-browser ..."
2+
export SURFER_PLATFORM="linux"
3+
export ZEN_RELEASE=1
4+
export ZEN_RELEASE_BRANCH="release"
5+
npm run build
6+
7+
abinfo "Installing zen-browser ..."
8+
DESTDIR="${PKGDIR}" "${SRCDIR}/engine/mach" install
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
PKGNAME=zen-browser
2+
PKGSEC=web
3+
PKGDES="A Firefox-based browser with the aim of improving your productivity"
4+
PKGDEP="gtk-3 startup-notification dbus-glib alsa-lib \
5+
desktop-file-utils hicolor-icon-theme libevent nss hunspell sqlite \
6+
networkmanager mozilla-common ffmpeg icu openh264"
7+
BUILDDEP="autoconf-2.13 rustc unzip llvm mercurial nodejs libnotify \
8+
xorg-server nasm yasm cbindgen llvm-runtime+wasi libvips"
9+
10+
ABTYPE=self
11+
USECLANG=1
12+
13+
# FIXME: STL code can only be used with -fno-exceptions
14+
AB_FLAGS_EXC=0
15+
16+
# Too heavy for your average 512M-RAM 2K0300
17+
FAIL_ARCH="(loongarch64_nosimd)"
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
AIzaSyBGpe01okUSW2GQDIgLovY23Mj1RKzzOOY
Lines changed: 110 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,110 @@
1+
// Use LANG environment variable to choose locale.
2+
pref("intl.locale.requested", "");
3+
4+
// Disable default browser checking.
5+
pref("browser.shell.checkDefaultBrowser", false);
6+
7+
// Don't disable our bundled extensions in the application directory.
8+
pref("extensions.autoDisableScopes", 11);
9+
pref("extensions.shownSelectionUI", true);
10+
11+
// Disable unified extensions button.
12+
pref("extensions.unifiedExtensions.enabled", false);
13+
14+
// Enable userChrome.css support.
15+
pref("toolkit.legacyUserProfileCustomizations.stylesheets", true);
16+
17+
// Let the system handle DPI scaling.
18+
pref("layout.css.devPixelsPerPx", -1);
19+
20+
// Disable "Awesome Bar" hand-off so search input in the new tab page
21+
// from the user would not jump to the address bar (which felt weird).
22+
pref("browser.newtabpage.activity-stream.improvesearch.handoffToAwesomebar", false);
23+
24+
// ... from Fedora ...
25+
26+
// Disable auto update.
27+
pref("app.update.auto", false);
28+
pref("app.update.enabled", false);
29+
pref("app.update.autoInstallEnabled", false);
30+
31+
// Enable smooth scrolling.
32+
pref("general.smoothScroll", true);
33+
34+
// Auto detect offline status.
35+
pref("offline.autoDetect", true);
36+
pref("network.manage-offline-status", true);
37+
38+
// Ask about which directory to download to.
39+
pref("browser.download.folderList", 1);
40+
41+
// Capture links opened from other applications, and open in a new tab.
42+
pref("browser.link.open_external", 3);
43+
44+
// Let XDG Desktop Portal handle file pickers.
45+
// This allows Firefox to use native file dialogs (such as KDE).
46+
pref("widget.use-xdg-desktop-portal.file-picker", 1);
47+
48+
// ... from Gentoo ...
49+
50+
// Use system defined typography colors.
51+
pref("browser.display.use_system_colors", true);
52+
53+
// Backspace defined to go back a page in session history.
54+
pref("browser.backspace_action", 0);
55+
56+
// Do not bother those who wouldn't want Firefox as default anyways.
57+
pref("browser.shell.checkDefaultBrowser", false);
58+
59+
// Always use system defined logical resolution for CSS DPI detection.
60+
pref("layout.css.dpi", 0);
61+
62+
// ... AOSC OS policies ...
63+
// Enable Hardware acceleration.
64+
pref("media.ffmpeg.vaapi.enabled", true);
65+
66+
// Disable Pocket by default.
67+
pref("browser.pocket.enabled", false);
68+
pref("extensions.pocket.enabled", false);
69+
pref("browser.newtabpage.activity-stream.section.highlights.includePocket", false);
70+
71+
// Disable (targeted) sponsored contents.
72+
pref("browser.newtabpage.activity-stream.showSponsored", false);
73+
pref("browser.newtabpage.activity-stream.disableSnippets", true);
74+
pref("browser.newtabpage.activity-stream.feeds.snippets", false);
75+
pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.addons", false);
76+
pref("browser.newtabpage.activity-stream.asrouter.userprefs.cfr.features", false);
77+
pref("browser.newtabpage.activity-stream.showSponsoredTopSites", false);
78+
pref("services.sync.prefs.sync.browser.newtabpage.activity-stream.showSponsored", false);
79+
pref("services.sync.prefs.sync.browser.newtabpage.activity-stream.showSponsoredTopSites", false);
80+
pref("browser.newtabpage.activity-stream.discoverystream.spocs.personalized", false);
81+
82+
// Disable Telemetry.
83+
pref("browser.newtabpage.activity-stream.feeds.telemetry", false);
84+
pref("browser.newtabpage.activity-stream.telemetry", false);
85+
pref("browser.newtabpage.activity-stream.telemetry.ut.events", false);
86+
pref("browser.ping-centre.telemetry", false);
87+
pref("devtools.onboarding.telemetry.logged", false);
88+
pref("security.certerrors.recordEventTelemetry", false);
89+
pref("security.identitypopup.recordEventElemetry", false);
90+
pref("toolkit.telemetry.archive.enabled", false);
91+
pref("toolkit.telemetry.bhrPing.enabled", false);
92+
pref("toolkit.telemetry.dap_enabled", false);
93+
pref("toolkit.telemetry.enabled", false);
94+
pref("toolkit.telemetry.firstShutdownPing.enabled", false);
95+
pref("toolkit.telemetry.hybridContent.enabled", false);
96+
pref("toolkit.telemetry.newProfilePing.enabled", false);
97+
pref("toolkit.telemetry.reportingpolicy.firstRun", false);
98+
pref("toolkit.telemetry.shutdownPingSender.enabled", false);
99+
pref("toolkit.telemetry.shutdownPingSender.enabledFirstSession",false);
100+
pref("toolkit.telemetry.unified", false);
101+
pref("toolkit.telemetry.updatePing.enabled", false);
102+
pref("security.identitypopup.recordEventTelemetry", false);
103+
pref("security.protectionspopup.recordEventTelemetry", false);
104+
pref("security.app_menu.recordEventTelemetry", false);
105+
pref("dom.security.unexpected_system_load_telemetry_enabled", false);
106+
pref("toolkit.telemetry.pioneer-new-studies-available", false);
107+
pref("datareporting.healthreport.uploadEnabled", false);
108+
109+
// Zen-specific preferences.
110+
pref("zen.updates.show-update-notification", false);
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
[Global]
2+
about=Zen Browser for AOSC OS
3+
4+
[Preferences]
5+
app.distributor=aosc
6+
app.distributor.channel=aosc
7+
app.partner.fedora=aosc
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
[Desktop Entry]
2+
Name=Zen Browser
3+
Exec=zen %u
4+
Icon=zen
5+
Type=Application
6+
MimeType=text/html;text/xml;application/xhtml+xml;x-scheme-handler/http;x-scheme-handler/https;application/x-xpinstall;application/pdf;application/json;
7+
StartupWMClass=zen
8+
Categories=Network;WebBrowser;
9+
StartupNotify=true
10+
Terminal=false
11+
X-MultipleArgs=false
12+
Keywords=Internet;WWW;Browser;Web;Explorer;
13+
Actions=new-window;new-private-window;profilemanager;
14+
15+
[Desktop Action new-window]
16+
Name=Open a New Window
17+
Name[zh_CN]=新建窗口
18+
Name[zh_TW]=開新視窗
19+
Exec=zen --new-window %u
20+
21+
[Desktop Action new-private-window]
22+
Name=Open a New Private Window
23+
Name[zh_CN]=新建隐私浏览窗口
24+
Name[zh_TW]=新增隱私視窗
25+
Exec=zen --private-window %u
26+
27+
[Desktop Action profilemanager]
28+
Name=Open the Profile Manager
29+
Name[zh_CN]=打开用户配置管理器
30+
Exec=zen --ProfileManager
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
From dc41dc3ef26b1918981ec60be6bb0a1a88c9dd92 Mon Sep 17 00:00:00 2001
2+
From: Jiangjin Wang <kaymw@aosc.io>
3+
Date: Mon, 2 Feb 2026 22:14:20 -0800
4+
Subject: [PATCH 1/7] AOSCOS: Disable LASX by default for libyuv
5+
6+
We are starting to have powerful mobile and embedded chips that
7+
lack LASX capabilities, namely 3B6000M and 2K3000.
8+
9+
Co-Authored-By: Xuan Chen <henry.chen@oss.cipunited.com>
10+
---
11+
src/media/libyuv/libyuv/libyuv-gyp.patch | 16 ++++++++++++++++
12+
1 file changed, 16 insertions(+)
13+
create mode 100644 src/media/libyuv/libyuv/libyuv-gyp.patch
14+
15+
diff --git a/src/media/libyuv/libyuv/libyuv-gyp.patch b/src/media/libyuv/libyuv/libyuv-gyp.patch
16+
new file mode 100644
17+
index 00000000..83d8e768
18+
--- /dev/null
19+
+++ b/src/media/libyuv/libyuv/libyuv-gyp.patch
20+
@@ -0,0 +1,16 @@
21+
+diff --git a/media/libyuv/libyuv/libyuv.gyp b/media/libyuv/libyuv/libyuv.gyp
22+
+index 57c9880f9b89c686b45f5f54ac2342926b9e18c1..09a5978c1b365e776840ccc2bb435b169101bb22 100644
23+
+--- a/media/libyuv/libyuv/libyuv.gyp
24+
++++ b/media/libyuv/libyuv/libyuv.gyp
25+
+@@ -26,6 +26,11 @@
26+
+ 'clang%': 0,
27+
+ # Link-Time Optimizations.
28+
+ 'use_lto%': 0,
29+
++ # Disable LASX on LoongArch by default (for 2K3000/3B6000M).
30+
++ "loong_lasx%": 0,
31+
++ # Enable LSX on LoongArch by default. Has no effect if loong_lasx is
32+
++ # enabled because LASX implies LSX according to the architecture specs.
33+
++ "loong_lsx%": 1,
34+
+ 'mips_msa%': 0, # Default to msa off.
35+
+ 'build_neon': 0,
36+
+ 'build_msa': 0,
37+
--
38+
2.52.0
39+
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
From 222892f3c9e5b07602436bf73442ff7b8516a78c Mon Sep 17 00:00:00 2001
2+
From: Jiangjin Wang <kaymw@aosc.io>
3+
Date: Mon, 2 Feb 2026 22:17:48 -0800
4+
Subject: [PATCH 2/7] Enable GLES on riscv64
5+
6+
Co-Authored-By: Han Gao <rabenda.cn@gmail.com>
7+
---
8+
src/toolkit/xre/glxtest/glxtest-cpp.patch | 13 +++++++++++++
9+
1 file changed, 13 insertions(+)
10+
create mode 100644 src/toolkit/xre/glxtest/glxtest-cpp.patch
11+
12+
diff --git a/src/toolkit/xre/glxtest/glxtest-cpp.patch b/src/toolkit/xre/glxtest/glxtest-cpp.patch
13+
new file mode 100644
14+
index 00000000..8c807d7c
15+
--- /dev/null
16+
+++ b/src/toolkit/xre/glxtest/glxtest-cpp.patch
17+
@@ -0,0 +1,13 @@
18+
+diff --git a/toolkit/xre/glxtest/glxtest.cpp b/toolkit/xre/glxtest/glxtest.cpp
19+
+index 58f5c7e4726ddfecc3036990178e897bd627b215..4bb3c777a76d857a6b73baf93ce0f5ce05b8340a 100644
20+
+--- a/toolkit/xre/glxtest/glxtest.cpp
21+
++++ b/toolkit/xre/glxtest/glxtest.cpp
22+
+@@ -437,7 +437,7 @@ static bool get_egl_gl_status(EGLDisplay dpy,
23+
+ PFNGLGETSTRING glGetString =
24+
+ cast<PFNGLGETSTRING>(eglGetProcAddress("glGetString"));
25+
+
26+
+-#if defined(__arm__) || defined(__aarch64__)
27+
++#if defined(__arm__) || defined(__aarch64__) || (defined(__riscv) && __riscv_xlen == 64)
28+
+ bool useGles = true;
29+
+ #else
30+
+ bool useGles = false;
31+
--
32+
2.52.0
33+
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
From d2169a84085c23bae1b55f571f4f4bca6853f028 Mon Sep 17 00:00:00 2001
2+
From: Jiangjin Wang <kaymw@aosc.io>
3+
Date: Mon, 2 Feb 2026 22:20:35 -0800
4+
Subject: [PATCH 3/7] Disable BROTLI_MODEL macro for some targets
5+
6+
PiperOrigin-RevId: 827486322
7+
Link: https://github.com/google/brotli/commit/e230f474b87134e8c6c85b630084c612057f253e
8+
Co-Authored-By: Evgenii Kliuchnikov <eustas@google.com>
9+
Signed-off-by: Rong "Mantle" Bao <webmaster@csmantle.top>
10+
---
11+
src/modules/brotli/common/platform-h.patch | 32 ++++++++++++++++++++++
12+
1 file changed, 32 insertions(+)
13+
create mode 100644 src/modules/brotli/common/platform-h.patch
14+
15+
diff --git a/src/modules/brotli/common/platform-h.patch b/src/modules/brotli/common/platform-h.patch
16+
new file mode 100644
17+
index 00000000..c4b09205
18+
--- /dev/null
19+
+++ b/src/modules/brotli/common/platform-h.patch
20+
@@ -0,0 +1,32 @@
21+
+diff --git a/modules/brotli/common/platform.h b/modules/brotli/common/platform.h
22+
+index b59f9b8091c29138def44fc455c5561ed84cecd6..e1254d5ca2d5a343bc4f0b8cdd2bb3337467da1f 100644
23+
+--- a/modules/brotli/common/platform.h
24+
++++ b/modules/brotli/common/platform.h
25+
+@@ -213,6 +213,10 @@ OR:
26+
+ #define BROTLI_TARGET_MIPS64
27+
+ #endif
28+
+
29+
++#if defined(__ia64__) || defined(_M_IA64)
30+
++#define BROTLI_TARGET_IA64
31+
++#endif
32+
++
33+
+ #if defined(BROTLI_TARGET_X64) || defined(BROTLI_TARGET_ARMV8_64) || \
34+
+ defined(BROTLI_TARGET_POWERPC64) || defined(BROTLI_TARGET_RISCV64) || \
35+
+ defined(BROTLI_TARGET_LOONGARCH64) || defined(BROTLI_TARGET_MIPS64)
36+
+@@ -665,13 +669,14 @@ BROTLI_UNUSED_FUNCTION void BrotliSuppressUnusedFunctions(void) {
37+
+ #undef BROTLI_TEST
38+
+ #endif
39+
+
40+
+-#if BROTLI_GNUC_HAS_ATTRIBUTE(model, 3, 0, 3)
41+
++#if !defined(BROTLI_MODEL) && BROTLI_GNUC_HAS_ATTRIBUTE(model, 3, 0, 3) && \
42+
++ !defined(BROTLI_TARGET_IA64) && !defined(BROTLI_TARGET_LOONGARCH64)
43+
+ #define BROTLI_MODEL(M) __attribute__((model(M)))
44+
+ #else
45+
+ #define BROTLI_MODEL(M) /* M */
46+
+ #endif
47+
+
48+
+-#if BROTLI_GNUC_HAS_ATTRIBUTE(cold, 4, 3, 0)
49+
++#if !defined(BROTLI_COLD) && BROTLI_GNUC_HAS_ATTRIBUTE(cold, 4, 3, 0)
50+
+ #define BROTLI_COLD __attribute__((cold))
51+
+ #else
52+
+ #define BROTLI_COLD /* cold */
53+
--
54+
2.52.0
55+

0 commit comments

Comments
 (0)