guix:accueil

Guix

  1. Figer les canaux :
    guix describe -f channels > guix-channels.scm
  2. Lancer la machine à voyager dans le temps de Guix :
    guix time-machine --channels=guix-channels.scm -- shell ma_commande
guix pull --url=https://codeberg.org/guix/guix-mirror.git

Utiliser le paramètre -L ou la variable environnement GUIX_PACKAGE_PATH.

On peut modifier le thème utilisé de cette façon :

function guix_env()
{
    if [ -n "$GUIX_ENVIRONMENT" ]
    then
        echo '[guix]'
    fi
}
 
# ...
 
PROMPT='...$(guix_env)'
git clone https://git.savannah.gnu.org/git/guix.git
cd guix
guix shell git -D guix --pure
./bootstrap
./configure --localstatedir=/var
make
./pre-inst-env guix describe

Ne pas faire de guix pull, sinon il récupère la version indiquée dans le $HOME, qui est probablement antérieure à celle dans le dépôt Git.

Récupérer un patch

Vu sur IRC, apparemment on peut faire :

curl https://issues.guix.gnu.org/issue/<id>/patch-set -q -o - | git am
wget -qO- https://issues.guix.gnu.org/issue/$1/patch-set $2 | git am --patch-format mbox -3
./pre-inst-env guix refresh $paquet
./pre-inst-env guix refresh $paquet -u
./pre-inst-env guix build $paquet

Si on est courageux, il est possible de connaître la liste des dépendances inverses du paquet mis à jour, pour essayer de les construire également :

./pre-inst-env guix refresh -l $paquet

Envoyer un patch

Sur Debian, il faut installer le paquet git-email.

git config --local include.path ../etc/git/gitconfig
git commit
git format-patch --base=origin/master -1
git send-email --to=guix-patches@gnu.org 0001-*.patch

Il faut auparavant avoir ajouté dans le .git/config la configuration SMTP pour envoyer le mail:

[sendemail]
        smtpEncryption = tls
        smtpServer = smtp.server.com
        smtpUser = user
        smtpServerPort = 587 # port à utiliser même si un autre est configuré dans Thunderbird

Reviewer des patchs

Manipuler des rapports de bugs

guix build --check --no-grafts hello

On peut remplacer partout une expression par

(pk 'unlabel (expression))

Il est aussi possible de demander une évaluation des paquets, sans vraiment construire :

guix build -L . $paquet -n

On peut obtenir la dérivation avec

guix build -L . $paquet -n -d

et parcourir les fichiers builder qu'elle référence pour savoir quelles sont les commandes de compilation utilisées.

Pour afficher les fichiers de dérivations correctement formattés, on peut utiliser https://gitlab.com/zimoun/guix-drv ou

guix shell emacs guile emacs-geiser emacs-geiser-guile emacs-guix -- emacs /gnu/store/.....drv

On peut ensuite faire ↵ Entrée quand le curseur est sur un chemin de fichier pour ouvrir ce fichier.

  • guix/accueil.txt
  • Dernière modification : 2025/09/05 17:12
  • de phsw