Siguiente: Verificación de canales, Anterior: Uso de un canal de Guix personalizado, Subir: Canales [Índice general][Índice]
La salida de guix pull --list-generations
previa muestra
precisamente qué revisiones se usaron para construir esta instancia de
Guix. Por tanto podemos replicarla, digamos, en otra máquina, proporcionando
una especificaciones de canales en ~/.config/guix/channels.scm que
está “clavada” en estas revisiones:
;; Despliega unas revisiones específicas de mis canales de interés. (list (channel (name 'guix) (url "https://git.savannah.gnu.org/git/guix.git") (commit "d894ab8e9bfabcefa6c49d9ba2e834dd5a73a300")) (channel (name 'paquetes-personalizados) (url "https://example.org/paquetes-personalizados.git") (branch "dd3df5e2c8818760a8fc0bd699e55d3b69fef2bb")))
La orden guix describe --format=channels
puede incluso generar
esta lista de canales directamente (véase Invocación de guix describe). El
archivo resultante puede usarse con la opción -C de guix pull
(véase Invocación de guix pull) o guix time-machine
(véase Invocación de guix time-machine).
En este punto las dos máquinas ejecutan exactamente el mismo Guix,
con acceso a exactamente los mismos paquetes. La salida de
guix build gimp
en una máquina debe ser exactamente la misma, bit
a bit, que la salida de la misma orden en la otra máquina. Esto también
significa que ambas máquinas tienen acceso a todo el código fuente de Guix
y, transitivamente, a todo el código fuente de cada paquete que define.
Esto le proporciona superpoderes, lo que le permite seguir la pista de la procedencia de los artefactos binarios con un grano muy fino, y reproducir entornos de software a su voluntad—un tipo de capacidad de “meta-reproducibilidad”, si lo desea. Véase Inferiores, para otro modo de tomar ventaja de estos superpoderes.