Package Details: zen-browser 1.20.2b-2

Git Clone URL: https://aur.archlinux.org/zen-browser.git (read-only, click to copy)
Package Base: zen-browser
Description: Firefox-based web browser built from upstream release source snapshot
Upstream URL: https://zen-browser.app
Licenses: MPL-2.0
Conflicts: zen-browser-bin
Submitter: everyx
Maintainer: noureddinex
Last Packager: noureddinex
Votes: 44
Popularity: 2.01
First Submitted: 2024-11-19 05:44 (UTC)
Last Updated: 2026-06-06 08:54 (UTC)

Sources (4)

Pinned Comments

gerliczkowalczuk commented on 2026-04-10 15:04 (UTC)

Package update: zen-browser | build system overhaul

We have reworked the zen-browser package to move away from the previous unstable live-build approach to a deterministic source snapshot build.

Major changes
  • Switched from live build (git + pnpm + surfer + submodules + l10n clone) to a fixed upstream source snapshot:
  • zen.source.tar.zst
  • Removed dependencies on:
  • VCS sources (git+https://...)
  • SKIP checksums for remote sources
  • pnpm install
  • live cloning of firefox-l10n
  • helper script setffver.sh
  • Restored full standard build phases:
  • prepare()
  • build()
  • package()
  • The build now performs a proper ./mach build with PGO instead of unpacking prebuilt binaries
  • Dependencies and makedepends were aligned with the current Firefox package in Arch
Patches

Added three Arch-specific compatibility patches:

  • 0002-Patch-glsl-optimizer-to-build-with-glibc-2.43.patch
  • 0003-Bug-2016618-Fix-Linux-sandbox-build-breakage-on-glib.patch
  • 0004-Use-wasm32-wasip1-target.patch
Packaging improvements
  • Unified launcher setup:
  • wrapper in /usr/bin/zen-browser
  • symlink /usr/bin/zen
  • desktop entry now launches zen-browser instead of /usr/lib/...
  • Added/maintained Arch-specific configuration files:
  • vendor.js
  • distribution.ini
  • policies.json (with self-update disabled)
  • Upstream updater is removed from the payload in all variants
Package relationships
  • Added conflict rules:
  • zen-browser conflicts with zen-browser-bin
  • zen-browser-bin conflicts with zen-browser and provides ("zen-browser=$pkgver")
Repository structure
  • Kept a separate zen-browser-bin directory for the binary repack variant
  • Added publish-zen-browser-aur.sh helper script:
  • regenerates .SRCINFO
  • clones ssh://aur@aur.archlinux.org/zen-browser.git
  • copies only valid source package files
  • removes legacy/binary artifacts from the AUR clone
Removed legacy components

The following files and patches were dropped from the AUR workflow:

  • 0001-bootstrap-without-vcs.firefox.patch
  • 0001-fix-desktop.zen.patch
  • 0003-do-not-disable-system-extensions.zen.patch
  • 0004-fix-package-json.zen.patch
  • 0005-source-firefox-language-packs.patch
  • setffver.sh
Validation
  • bash -n PKGBUILD passed
  • bash -n zen-browser-bin/PKGBUILD passed
  • makepkg --verifysource passed for zen-browser sources

Latest Comments

1 2 3 4 5 6 Next › Last »

noureddinex commented on 2026-06-07 00:20 (UTC)

aur/zen-browser wasn't possible to get built it before I took over, that can be verified by resetting back to commits that time, I try to fix it in my free time but the package gets changed from version to version, if anyone have some suggestion or contribution to make, I'd love to pull any viable patches.

artist commented on 2026-06-06 23:27 (UTC)

Since NourEddineX took over this package it has not been even possible once to build it. It's time it gets orphaned so somebody who actually cares and has the skill to maintain it takes over.

macestra commented on 2026-06-04 20:56 (UTC)

I am not sure if this is the same issue that ParisD is facing, but the package build keeps failing and exiting with exit status 4.

As far as I can tell it is because its failing to build glslopt v0.1.12.

Here is the first error message:

1:11.57 E error: failed to run custom build command for glslopt v0.1.12 1:11.57 E note: To improve backtraces for build dependencies, set the CARGO_PROFILE_RELEASE_BUILD_OVERRIDE_DEBUG=true environment variable to enable debug information generation. 1:11.57 E Caused by: 1:11.57 E process didn't exit successfully: /home/aces/.cache/yay/zen-browser/src/zen-source/obj/release/build/glslopt-dc354bbab778ec64/build-script-build (exit status: 1)

The compiling then shoes a lot of error messages, then exits with this: 2:04.17 E make[4]: *** [/home/aces/.cache/yay/zen-browser/src/zen-source/config/makefiles/rust.mk:525: force-cargo-library-build] Error 101 2:04.18 E make[3]: *** [/home/aces/.cache/yay/zen-browser/src/zen-source/config/recurse.mk:72: toolkit/library/rust/target-objects] Error 2 2:04.18 E make[3]: *** Waiting for unfinished jobs.... 2:10.91 W 1 warning generated. 2:12.89 W 3 warnings generated. 2:17.20 W 3 warnings generated. 2:20.35 W 3 warnings generated. 2:20.62 W 1 warning generated. 2:54.25 E make[2]: *** [/home/aces/.cache/yay/zen-browser/src/zen-source/config/recurse.mk:34: compile] Error 2 2:54.25 E make[1]: *** [/home/aces/.cache/yay/zen-browser/src/zen-source/config/rules.mk:357: default] Error 2 2:54.25 E make: *** [client.mk:58: build] Error 2 2:54.35 W 41 compiler warnings present. ==> ERROR: A failure occurred in build(). Aborting... -> error making: zen-browser-exit status 4 -> Failed to install the following packages. Manual intervention is required: zen-browser - exit status 4

ParisD commented on 2026-06-01 14:50 (UTC) (edited on 2026-06-01 14:56 (UTC) by ParisD)

@noureddinex every time i try to compile this it fails. :< like this :

[quote]Compiling malloc_size_of v0.0.1 (/home/Paris/AUR_Packages/zen-browser/src/zen-source/servo/components/malloc_size_of) 2:03.61 Compiling glsl-to-cxx v0.1.0 (/home/Paris/AUR_Packages/zen-browser/src/zen-source/gfx/wr/glsl-to-cxx) 2:04.24 Compiling jexl-eval v0.4.0 2:05.59 Compiling sync-guid v0.1.0 (/home/Paris/AUR_Packages/zen-browser/src/zen-source/third_party/application-services/components/support/guid) 2:05.74 Compiling debugid v0.8.0 2:05.99 Compiling payload-support v0.1.0 (/home/Paris/AUR_Packages/zen-browser/src/zen-source/third_party/application-services/components/support/payload) 2:06.10 Compiling firefox-versioning v0.1.0 (/home/Paris/AUR_Packages/zen-browser/src/zen-source/third_party/application-services/components/support/firefox-versioning) 2:06.19 Compiling enumset_derive v0.8.1 2:06.34 Compiling fluent-pseudo v0.3.3 2:06.48 Compiling peek-poke-derive v0.3.0 (/home/Paris/AUR_Packages/zen-browser/src/zen-source/gfx/wr/peek-poke/peek-poke-derive) 2:07.32 Compiling smart-default v0.7.1 2:07.62 Compiling ref-cast-impl v1.0.24 2:07.90 Compiling wgpu-hal v28.0.0 (https://github.com/gfx-rs/wgpu?rev=cdc5ca5ed9e4fe6f4d5f8464e488c3c103d4ce54#cdc5ca5e) 2:07.96 W warning: glslopt@0.1.12: In file included from src/compiler/glsl/glcpp/glcpp-parse.y:32: 2:07.96 W warning: glslopt@0.1.12: In file included from glsl-optimizer/src/mesa/main/mtypes.h:39: 2:07.96 W warning: glslopt@0.1.12: In file included from glsl-optimizer/include/c11/threads.h:66: 2:07.97 W warning: glslopt@0.1.12: glsl-optimizer/include/c11/threads_posix.h:54:9: warning: 'ONCE_FLAG_INIT' macro redefined [-Wmacro-redefined] 2:07.97 W warning: glslopt@0.1.12: 54 | #define ONCE_FLAG_INIT PTHREAD_ONCE_INIT 2:07.97 W warning: glslopt@0.1.12: | ^ 2:07.98 W warning: glslopt@0.1.12: /usr/include/bits/types/once_flag.h:25:9: note: previous definition is here 2:07.98 W warning: glslopt@0.1.12: 25 | #define ONCE_FLAG_INIT __ONCE_FLAG_INIT 2:07.98 W warning: glslopt@0.1.12: | ^ 2:07.99 W warning: glslopt@0.1.12: In file included from src/compiler/glsl/glcpp/glcpp-parse.y:32: 2:07.99 W warning: glslopt@0.1.12: In file included from glsl-optimizer/src/mesa/main/mtypes.h:39: 2:07.99 W warning: glslopt@0.1.12: In file included from glsl-optimizer/include/c11/threads.h:66: 2:08.00 W warning: glslopt@0.1.12: glsl-optimizer/include/c11/threads_posix.h:69:25: error: typedef redefinition with different types ('pthread_once_t' (aka 'int') vs '__once_flag') 2:08.00 W warning: glslopt@0.1.12: 69 | typedef pthread_once_t once_flag; 2:08.01 W warning: glslopt@0.1.12: | ^ 2:08.01 W warning: glslopt@0.1.12: /usr/include/bits/types/once_flag.h:24:21: note: previous definition is here 2:08.01 W warning: glslopt@0.1.12: 24 | typedef __once_flag once_flag; 2:08.01 W warning: glslopt@0.1.12: | ^ 2:08.02 W warning: glslopt@0.1.12: In file included from src/compiler/glsl/glcpp/glcpp-parse.y:32: 2:08.02 W warning: glslopt@0.1.12: In file included from glsl-optimizer/src/mesa/main/mtypes.h:39: 2:08.02 W warning: glslopt@0.1.12: In file included from glsl-optimizer/include/c11/threads.h:66: 2:08.03 W warning: glslopt@0.1.12: glsl-optimizer/include/c11/threads_posix.h:94:1: error: static declaration of 'call_once' follows non-static declaration 2:08.03 W warning: glslopt@0.1.12: 94 | call_once(once_flag flag, void (func)(void)) 2:08.04 W warning: glslopt@0.1.12: | ^ 2:08.04 W warning: glslopt@0.1.12: /usr/include/stdlib.h:1195:13: note: previous declaration is here 2:08.04 W warning: glslopt@0.1.12: 1195 | extern void call_once (once_flag __flag, void (__func)(void)); 2:08.05 W warning: glslopt@0.1.12: | ^ 2:08.05 W warning: glslopt@0.1.12: In file included from src/compiler/glsl/glcpp/glcpp-parse.y:32: 2:08.05 W warning: glslopt@0.1.12: In file included from glsl-optimizer/src/mesa/main/mtypes.h:39: 2:08.06 W warning: glslopt@0.1.12: In file included from glsl-optimizer/include/c11/threads.h:66: 2:08.06 W warning: glslopt@0.1.12: glsl-optimizer/include/c11/threads_posix.h:96:18: error: incompatible pointer types passing 'once_flag ' (aka '__once_flag ') to parameter of type 'pthread_once_t ' (aka 'int ') [-Wincompatible-pointer-types] 2:08.07 W warning: glslopt@0.1.12: 96 | pthread_once(flag, func); 2:08.07 W warning: glslopt@0.1.12: | ^~ 2:08.07 W warning: glslopt@0.1.12: /usr/include/pthread.h:509:42: note: passing argument to parameter '__once_control' here

[/quote]

noureddinex commented on 2026-06-01 06:18 (UTC)

please elaborate @ParisD

ParisD commented on 2026-06-01 05:57 (UTC)

this package is broken. :<

margathon commented on 2026-05-17 00:28 (UTC)

is it common to have packages marked as out of date after such a short period of time? It was the first time I ever noticed a message about it in my paru update summary so it was a little concerning... then when I look closer, I've been receiving updates consistently and my package is less than two days old. What a useless and annoying flag, and a tone deaf flagger

utanerime commented on 2026-05-07 06:07 (UTC)

The package fails to prepare while running file patching.

patching file supply-chain/config.toml
The next patch would create the file security/sandbox/chromium-shim/patches/54_fix_build_on_glibc_2_43.patch,
which already exists!  Skipping patch.
1 out of 1 hunk ignored
patching file security/sandbox/chromium/sandbox/linux/system_headers/linux_seccomp.h
Reversed (or previously applied) patch detected!  Skipping patch.
1 out of 1 hunk ignored -- saving rejects to file security/sandbox/chromium/sandbox/linux/system_headers/linux_seccomp.h.rej
==> ERROR: A failure occurred in prepare().
    Aborting...

gerliczkowalczuk commented on 2026-04-26 18:09 (UTC)

Fixing after aur downtime

gerliczkowalczuk commented on 2026-04-25 07:58 (UTC)

@UnaTried today I will send the update.