hydra-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Emacs on Hydra


From: Rob Vermaas
Subject: Re: Emacs on Hydra
Date: Fri, 29 Apr 2011 17:56:33 +0200

Hi Christian,

would the Hydra instance at hydra.nixos.org have capacity to run a continuous build for Emacs trunk (and perhaps other branches such as emacs-23)?

yes, we have capacity to run continuous build for the emacs trunk, and probably even the branches, but first let's focus on getting trunk builds set up.
 
If so, how would I go about writing a recipe that checks out Emacs from bzr?  Are there any example recipes that pull source from a bzr repository?

I have taken the liberty to make an initial start _expression_ which is available here: https://svn.nixos.org/repos/nix/hydra-config/gnu/trunk/emacs/release.nix . Note that this might not be the easiest _expression_ to grasp for a newcomer to nix, I advise you to read the nix manual to get the basics covered.

I have used a function gnu-job.nix that abstract over the structure of the jobset for GNU builds. A GNU jobset typically consists of a few jobs:

The 'tarball' job, which gets the source tree as input, and is usually just a 'make dist' after some autoconf/-make or bootstrap script

The 'build' job, which gets the result of the tarball job as input, together with system identifier, this job basically does a normal make, make check, make install.

The 'coverage' job, which is like the build job, only difference is that it generates a code coverage report with gcov.

It can also have a cross-build job for Hurd however I have not enabled this.

Note that I am talking about 'inputs'. The inputs are the arguments of the functions that describe a jobset. The inputs (or arguments) for the jobset are not declared in these _expression_, we define them in the web interface of Hydra. E.g. the _expression_ does not really 'know' where to get the source code from (bazaar in this case).

The result of this _expression_ can be seen at: http://hydra.nixos.org/jobset/gnu/emacs-trunk

The darwin builds fail atm, maybe you know more of this? And the coverage build doesn't seem to produce a lot of information, do you ever run code coverage reports, and if so how?

Also, what's the best way to test such a recipe?  Should I install hydra locally, or is there a way to upload recipes to hydra.nixos.org for testing?
 
The only thing you should typically need to test the _expression_ is nix. I typically set up the build _expression_ so that all the arguments have default values that point to local source tree etc, so only a 'nix-build -A <jobname> release.nix -K' is necessary to run the build. (run with -K to keep the build directory if the build fails).

Btw, all the GNU continuous job files are at: https://svn.nixos.org/repos/nix/hydra-config/gnu/trunk/

greetings,
Rob


--
Rob Vermaas

[email] address@hidden

reply via email to

[Prev in Thread] Current Thread [Next in Thread]