Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Nice to see some hands being waved about the matter. I've long been confused why large open source projects aren't, by default, providing a virtual system that is capable of building the project with close to no configuration. There is some discussion on the linked bug 885777 (and links out from there) about why current builds are not idempotent on a given system, and building a Vagrantfile to setup a build environment.

Even ignoring the verifiable build aspect, which I think is important, having an easy to start with environment to use as a launching pad, and more importantly, example build environment, would ease new developers into the process of making a commit. A little more than a year ago, I started toying around with the idea of commiting to Mozilla late one night when bored. I went through the process of getting dependencies installed (build-dep wasn't enough as it didn't provide the necessary version of autoconf), and even passing a ./configuration, the build failed and I gave up. I would have likely powered through if I already had a bug fix to commit, but as mentioned I was just idling playing around with the idea while bored.



Firefox's build system is complex, but things are gradually getting easier for newbies. For example, if you're on Linux or Mac there's now a script (see https://developer.mozilla.org/en-US/docs/Simple_Firefox_buil...) that installs all the required dependencies. And |mach|, the (relatively) new build driver program helps. And better build defaults means you can get away without using a mozconfig file, at least to begin with.

As for the build error, I understand that's frustrating. Asking on the #introduction channel on IRC would be a good way to make progress (https://wiki.mozilla.org/IRC). That's a channel with lots of informed people and they're generally very friendly.

In fact, the very first time I built Firefox I had various build problems, and the people on Mozilla's IRC channels quickly helped me identify that it was actually faulty RAM -- I was building on a brand new machine -- at fault!




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: