From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mathieu Lirzin Subject: [GSoC] Rewrite Hydra to be more integrated with Guix. Date: Thu, 17 Mar 2016 22:38:45 +0100 Message-ID: <87bn6c944a.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:55505) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1agfey-0002v4-5C for guix-devel@gnu.org; Thu, 17 Mar 2016 17:40:49 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1agfeu-0004TN-Pd for guix-devel@gnu.org; Thu, 17 Mar 2016 17:40:47 -0400 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:42592) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1agfeu-0004TJ-M0 for guix-devel@gnu.org; Thu, 17 Mar 2016 17:40:44 -0400 Received: from mek33-4-82-236-46-88.fbx.proxad.net ([82.236.46.88]:48254 helo=godel) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1agfeu-0005dI-1q for guix-devel@gnu.org; Thu, 17 Mar 2016 17:40:44 -0400 List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org To: guix-devel Hello fellow Guix Hackers, Being currently a student which is due to make an internship, I intend to turn this boring administrative injunction into an opportunity to contribute to Guix by applying to Google Summer of Code which is considered as an internship by University of Bordeaux standards. Hydra is a Nix-based continuous build system which is used by Guix to compile packages on different platforms and to distribute packages substitutes. With time, nix-daemon and guix-daemon are evolving differently. Hydra being heavily dependent on nix-daemon, Guix is not able to use its newest versions. Moreover there are some software related performance issues (among others) in the current Guix infrastructure that are unlikely to be solved considering the foreignness of Hydra Perl implementation to Guix hackers. In that context, I am willing to work on implementing a continous build system similar to Hydra in Guile. This GSoC will not likely succeed in implementing every features Hydra is currently providing. The objective is rather to create the basis which will then allow further developpements to overcomes the present difficulties. To achieve this the following milestones (suggested by Ludo) will be followed: - Implementing a simple loop pulling Guix Git repository and building every packages. =20=20=20 - Adding a =E2=80=9Cjob=E2=80=9D abstraction to be able to build different = Git branches. - Adding support for a database to keep track of the build results with their associated commit, derivation and output. - Adding a API over HTTP to get the build results remotely (ideally through an Emacs interface). - Adding support for configuring and launching jobs remotely. Everyone is welcome to provide its input in order to improve the roadmap or commenting on the global picture. I have added an entry for this project in the GSoC idea list: https://libreplanet.org/wiki/Group:Guix/GSoC-2016#Rewrite_Hydra_to_be_mor= e_integrated_with_Guix --=20 Mathieu Lirzin