Suivant: , Monter: Contribuer   [Table des matières][Index]


14.1 Construire depuis Git

Si vous souhaitez travailler sur Guix lui-même, il est recommandé d’utiliser la dernière version du dépôt Git :

git clone https://git.savannah.gnu.org/git/guix.git

How do you ensure that you obtained a genuine copy of the repository? Guix itself provides a tool to authenticate your checkout, but you must first make sure this tool is genuine in order to “bootstrap” the trust chain. To do that, run:

git verify-commit `git log --format=%H build-aux/git-authenticate.scm`

The output must look something like:

gpg: Signature made Fri 27 Dec 2019 01:27:41 PM CET
gpg:                using RSA key 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
…
gpg: Signature made Fri 27 Dec 2019 01:25:22 PM CET
gpg:                using RSA key 3CE464558A84FDC69DB40CFB090B11993D9AEBB5
…

... meaning that changes to this file are all signed with key 3CE464558A84FDC69DB40CFB090B11993D9AEBB5 (you may need to fetch this key from a key server, if you have not done it yet).

From there on, you can authenticate all the commits included in your checkout by running:

make authenticate

The first run takes a couple of minutes, but subsequent runs are faster.

Remarque : You are advised to run make authenticate after every git pull invocation. This ensures you keep receiving valid changes to the repository

La manière la plus simple de configurer un environnement de développement pour Guix est, bien sûr, d’utiliser Guix ! La commande suivante démarre un nouveau shell où toutes les dépendances et les variables d’environnements appropriées sont configurés pour travailler sur Guix :

guix environment guix --pure

Voir Invoquer guix environment, for more information on that command.

If you are unable to use Guix when building Guix from a checkout, the following are the required packages in addition to those mentioned in the installation instructions (voir Prérequis).

On Guix, extra dependencies can be added by instead running guix environment with --ad-hoc:

guix environment guix --pure --ad-hoc help2man git strace

Lancez ./bootstrap pour générer l’infrastructure du système de construction avec Autoconf et Automake. Si vous avez une erreur comme :

configure.ac:46: error: possibly undefined macro: PKG_CHECK_MODULES

cela signifie probablement qu’Autoconf n’a pas pu trouver pkg.m4 qui est fournit par pkg-config. Assurez-vous que pkg.m4 est disponible. C’est aussi vrai pour l’ensemble de macros de guile.m4 fournies par Guile. Par exemple, si vous avez installé Automake dans /usr/local, il ne cherchera pas les fichiers .m4 dans /usr/share. Dans ce case vous devez invoquer la commande suivante :

export ACLOCAL_PATH=/usr/share/aclocal

Voir Macro Search Path dans The GNU Automake Manual, pour plus d’information.

Then, run ./configure as usual. Make sure to pass --localstatedir=directory where directory is the localstatedir value used by your current installation (voir Le dépôt, for information about this). We recommend to use the value /var.

Finalement, vous devez invoquer make check pour lancer les tests (voir Lancer la suite de tests). Si quelque chose échoue, jetez un œil aux instructions d’installation (voir Installation) ou envoyez un message à la liste guix-devel@gnu.org.


Suivant: , Monter: Contribuer   [Table des matières][Index]