Skip to content

Improve build (contribute) documentation: Suggestions, Questions & PR #93

@pkolyvas

Description

@pkolyvas

I was attempting to build zen to test a patch/fix I wanted to submit to the project. I was initially unable to get Zen built on MacOS, with different issues on Apple Silicon and Intel based macs running the latest stable OS release.

I noticed that the contribute documentation is a little inaccurate for mac & Linux builds. It also doesn't address the core problem I encountered building Zen, which I think might hit a number of folks.

To that end, I've made an update to the contribute page of the documentation and, if you're amenable to it, I'd like to work my way to a PR. Otherwise, if you're open to PRs, I can simply start one with what I've got and we we can work our way through it there.

Updated Doc

You can see my updated version of the doc here: https://github.com/zen-browser/docs/blob/083a8b18a3d436c62b97c755ce5e303037432d01/content/contribute/desktop.md

Highlights

  • Specify a compatible Python version. While I created a venv for the install (which I think all contributors should be advised to do), Python 3.13 was no bueno. I had to use Python 3.11 to get it to work reliably. I haven't tested with 3.12.
  • Same goes for Node; a target version or target minimum (or maximum) version would be nice. I used 22 LTS for this project, using NVM.
  • Note that MozillaBuild is only needed for Windows builds.

Ephemera

A personal opinion here, but I liked that you didn't bother with explaining how to install the required tools. I think that's a good low-bar for most potential contributors.

I do think versions are critical though—and I've even added a step to set up virtual environments for both in my suggestion. However, that would add NVM as an additional requirement.

Update: I noticed this page was a near duplicate with even less info: https://docs.zen-browser.app/building - perhaps I can help consolidate as well.

Metadata

Metadata

Assignees

Labels

documentationImprovements or additions to documentation

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions