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.
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.
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
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.