Good evening! Below is a list of GSoC ideas for GNU Guix.
Guix people: you’re welcome to put your name as the mentor of one of the projects below, and to propose other ideas. Thanks! Ludo’. <h4>Supporting binary package distribution through GNUnet</h4> <p> GNU Guix provides a transparent binary/source deployment model. A server can claim: “hey, I have the binary for <tt>/nix/store/v9zic07iar8w90zcy398r745w78a7lqs-emacs-24.3</tt>!”, where the base32 string uniquely identifies a build process. If you trust that server to provide genuine binaries, then you can grab them instead of building Emacs locally. </p> <p> The “traditional model” has been to have a build farm build and serve binary packages. In that model, users trust the build farm to provide authentic binaries. </p> <p> The project aims to provide a <emph>practical</emph> decentralization distribution mechanism for binary packages, using <a href="/software/gnunet">GNUnet’s file sharing service</a>. In that model, users would be able to automatically share binaries they have built locally, and to install binaries built by other users. This is part of a broader goal of <emph>disintermediation</emph> among users, and between users and upstream software developers. </p> <p> Problems to be solved <a href="http://lists.gnu.org/archive/html/bug-guix/2013-03/msg00085.html">include</a> the authentication of binary packages, user privacy, and the development of a user interface that makes it trivial to contribute package build results. </p> <strong>Mentor</strong>: <a href="mailto:l...@gnu.org">Ludovic Courtès</a> <h4>Package management from Emacs</h4> <p> The goal of this project is to write a complete package management user interface for use in GNU Emacs. The UI would provide the same functionality as the <tt>guix package</tt> command, but using an interface similar to that of <tt>package.el</tt>. </p> <strong>Mentor</strong>: <a href="mailto:l...@gnu.org">Ludovic Courtès</a> <h4>Porting Guix to GNU/Hurd</h4> <p> GNU Guix currently supports building packages for GNU/Linux only. The goal of this project would be to allow it to cross-build and build packages for GNU/Hurd, and to provide a virtual machine image that boots into such a system. </p> <p> This would involve packaging Mach/Hurd/MiG/libc, adjusting allowing cross-compilation to GNU/Hurd, cross-compiling the “bootstrap binaries” for GNU/Hurd, and then working towards support for GNU/Hurd in the <code>(gnu system)</code> Guix modules. This last point would allow a VM image of the complete system to be built. </p> <strong>Mentor</strong>: <a href="mailto:l...@gnu.org">Ludovic Courtès</a>
pgp_AE3IGEpRY.pgp
Description: PGP signature