Skip to content

zen-browser: init at 1.19.1b#363992

Draft
Eveeifyeve wants to merge 1 commit intoNixOS:masterfrom
Eveeifyeve:zen-browser
Draft

zen-browser: init at 1.19.1b#363992
Eveeifyeve wants to merge 1 commit intoNixOS:masterfrom
Eveeifyeve:zen-browser

Conversation

@Eveeifyeve
Copy link
Member

@Eveeifyeve Eveeifyeve commented Dec 10, 2024

https://zen-browser.app/

NOTE: This package takes quite a lot of resources to build. It took me an hour maybe two on my machine (3200g), This is not a package you want to compile yourself if you can avoid it.

If anyone wants to be added as a maintainer to this package, please leave a comment and I will add you.

Followup from PR #347222 that got reverted because of this comment: #347222 (comment) I want to make sure this pr is okay to go on nixpkgs the right way instead of reverting.

Closes #327982

Tracking:

  • Zen browser to keep a stable with security vulenabilitys & Approval from @winterqt, @emilazy & @mweinelt read more about it here as I am not going to repeat myself anymore.
  • Add one active committer from nixpkgs
  • Use buildMozillaMach
  • Patch all of the git usages.
  • Figure out a nix-community nixpkgs fork so zen-browser can build on their hydra and people can use the fork.

If wanting to talk please talk in here if you want to contribute or preferably the matrix nix Mozilla chat.

I will not be accepting comments that aren't contributing to this pr directly and will be marked off-topic by moderation it is wasting time on contributors who want to work on this pr.

This work is semi-sponsored by DigitalBrewStudios.

Things done

  • Built on platform(s)
    • x86_64-linux
    • aarch64-linux
    • x86_64-darwin
    • aarch64-darwin
  • For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)
    • sandbox = relaxed
    • sandbox = true
  • Tested, as applicable:
  • Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
  • Tested basic functionality of all binary files (usually in ./result/bin/)
  • 25.05 Release Notes (or backporting 24.11 and 25.05 Release notes)
    • (Package updates) Added a release notes entry if the change is major or breaking
    • (Module updates) Added a release notes entry if the change is significant
    • (Module addition) Added a release notes entry if adding a new NixOS module
  • Fits CONTRIBUTING.md.

Add a 👍 reaction to pull requests you find important.

@Eveeifyeve Eveeifyeve self-assigned this Dec 10, 2024
@Eveeifyeve
Copy link
Member Author

I will need to fix the update script to update surfer and firefox.

@winterqt
Copy link
Member

winterqt commented Dec 10, 2024

I want to make sure this pr is okay to go on nixpkgs the right way instead of reverting.

The PR had not only had technical issues, but project management issues inherent to upstream as well. As such, drafting until a consensus amongst committees/security/buildMozillaMach folks can be reached.

@winterqt winterqt marked this pull request as draft December 10, 2024 17:46
@Eveeifyeve

This comment was marked as spam.

@github-actions github-actions bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. labels Dec 10, 2024
@Eveeifyeve

This comment was marked as outdated.

@Eveeifyeve

This comment was marked as off-topic.

@Eveeifyeve

This comment was marked as outdated.

Copy link
Member

@winterqt winterqt Dec 10, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking at Surfer's code, it seems to be quite simple just to patch out the Git usages, even being able to contribute most (if not all) of these fixes upstream. Can we try that?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah I could look at doing that.

Copy link
Member

@Pandapip1 Pandapip1 Dec 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There are a lot of git uses though: https://github.com/search?q=repo%3Azen-browser%2Fsurfer+%27git%27&type=code

I have NodeJS experience and could sumit a patch to use isomorphic-git instead to remove the git dependency if that would be helpful. Never mind, it doesn't support some git commands that are needed.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I've just worked on two patches that patch the addon one and the changeset in build. But I am having a bit of trouble of patching the git patch one as that uses the patches from zen browser and applies it directly to the engine.

Copy link
Member Author

@Eveeifyeve Eveeifyeve Dec 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Unless a. use IFD which is against nixpkgs or b. include every patch in diretory. it turns out that this is not IFD if it was it would ofborg would eval error + gh actions.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is still the case with updated code I am looking into solutions.

Copy link
Member Author

@Eveeifyeve Eveeifyeve Sep 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And I am actually encouraging for people to add their work to my branch and to spit this up into seperate prs in my branch so this can get merged with the more work.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@winterqt I do want to patch this however are you sure on what patches it applies to the source?

@ofborg ofborg bot added the 8.has: package (new) This PR adds a new package label Dec 11, 2024
@ofborg ofborg bot requested review from Titaniumtown and matthewpi December 11, 2024 13:29
@ofborg ofborg bot added the 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. label Dec 11, 2024
@Eveeifyeve

This comment was marked as off-topic.

@winterqt
Copy link
Member

winterqt commented Dec 14, 2024

You would need to provide an example of a library in question, the error you run into, and why you think it's needed on Darwin.

@Pandapip1
Copy link
Member

Working on darwin support, but a lot of libraries used that are linux based, is there an easier route of finding out what is using a linux thing directly.

You could run readelf -d </path/to/binary>

@Eveeifyeve

This comment was marked as outdated.

@Eveeifyeve Eveeifyeve changed the title zen-browser: init at 1.0.2-b.0 zen-browser: init at 1.0.2-b.3 Dec 20, 2024
@github-actions github-actions bot removed the 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. label Dec 20, 2024
@Eveeifyeve Eveeifyeve force-pushed the zen-browser branch 2 times, most recently from 72a2d56 to 8f31186 Compare December 20, 2024 05:07
@ofborg ofborg bot added the 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. label Dec 20, 2024
@github-actions github-actions bot removed the 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. label Dec 24, 2024
@Eveeifyeve Eveeifyeve changed the title zen-browser: init at 1.0.2-b.3 zen-browser: init at 1.0.2-b.4 Dec 24, 2024
@DADA30000
Copy link

why pgo is disabled?

Working on this again! I can't seem to find a way where I can apply patches directly from source zenbrowser and surfer. Does any zen maintainer in a comment can tell me the steps that surfer goes through, because in order to get this out it needs to not rely on surfer?
CC @mr-cheffy

maybe like just run find that finds .patch files and executes patch in engine dir for each of them?

It's not just the .patch it has turned out more complicated.

ah, yeah, I can see, there are also prefs and other stuff

@Eveeifyeve
Copy link
Member Author

Eveeifyeve commented Mar 6, 2026

Sorry I have been inactive on this pr, I will be trying to get surfer issues that are mentioned in the comments here. Just reverted my source patching so this is at least working state. I will update this to latest in a sec. Updated.

I am rethinking this a different way, to not over-complicate things while being a FOD (eg. patch all the git usages for now just to get this out).

I know it has been a year, pr's like these take a long time, I am working my absolute best to get this out now thanks to a couple pr's out of the way, please be more patient.

why pgo is disabled?

Does zen-browser even have support for pgo?

@Eveeifyeve Eveeifyeve changed the title zen-browser: init at 1.12.5b zen-browser: init at 1.19.1b Mar 6, 2026
@Eveeifyeve Eveeifyeve force-pushed the zen-browser branch 3 times, most recently from d3fdac8 to 0edb990 Compare March 8, 2026 12:29
@nixpkgs-ci nixpkgs-ci bot added the 6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS label Mar 8, 2026
@Eveeifyeve Eveeifyeve force-pushed the zen-browser branch 2 times, most recently from 2ffa548 to 74dbe2c Compare March 8, 2026 13:04
@nixpkgs-ci nixpkgs-ci bot added 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux. and removed 8.has: package (new) This PR adds a new package 10.rebuild-linux: 1-10 This PR causes between 1 and 10 packages to rebuild on Linux. 10.rebuild-darwin: 1-10 This PR causes between 1 and 10 packages to rebuild on Darwin. 10.rebuild-darwin: 1 This PR causes 1 package to rebuild on Darwin. 10.rebuild-linux: 1 This PR causes 1 package to rebuild on Linux. labels Mar 8, 2026
pname = "surfer-patched";
version = "0-unstable-2026-01-25";

src = fetchFromGitHub {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does the update script update this?

Copy link
Member Author

@Eveeifyeve Eveeifyeve Mar 10, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No, I have to change this. I just haven't had time. Also thank you for the reviews they are tiny nitpicks, I would like to remind of this guideline in the readme: https://github.com/NixOS/nixpkgs/blob/master/CONTRIBUTING.md#a-reviewer-requested-a-bunch-of-insubstantial-changes to avoid getting into trouble. I will get around to responding to your nitpicks on the weekend, as I have school.

UPDATE: I have responded to all of those nitpicks sept for the update script since I had spear time from school, I will do the update script this weekend since I have co-curricular activity's (school and non-school) and school.

Copy link
Member Author

@Eveeifyeve Eveeifyeve Mar 15, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

UPDATE: I didn't quite get my head around to fixing this (I have, but I haven't), But I am still working on this.

@Eveeifyeve Eveeifyeve force-pushed the zen-browser branch 2 times, most recently from abd4b1c to 7592220 Compare March 15, 2026 03:41
Co-authored-by: Matthew Penner <me@matthewp.io>
Co-authored-by: Ruby Iris Juric <ruby@srxl.me>
Co-authored-by: Yiyu Zhou <yiyuzhou19@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

6.topic: nixos Issues or PRs affecting NixOS modules, or package usability issues specific to NixOS 10.rebuild-darwin: 0 This PR does not cause any packages to rebuild on Darwin. 10.rebuild-linux: 0 This PR does not cause any packages to rebuild on Linux.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Package request: Zen Browser