Próximo: Invocando guix archive
, Anterior: Inferiores, Acima: Gerenciamento de pacote [Conteúdo][Índice]
guix describe
Frequentemente você pode querer responder perguntas como: “Qual revisão do
Guix estou usando?” ou “Quais canais estou usando?” Essas são informações
úteis em muitas situações: se você quiser replicar um ambiente em uma
máquina ou conta de usuário diferente, se quiser relatar um bug ou
determinar qual alteração nos canais que você está usando o causou, ou se
quiser registrar o estado do seu sistema para fins de reprodutibilidade. O
comando guix describe
responde a essas perguntas.
Quando executado a partir de um guix
obtido com guix
pull
, guix describe
exibe o(s) canal(ais) dos quais foi criado,
incluindo a URL do repositório e os IDs de confirmação (veja Canais):
$ guix describe Geração 10 03 set 2018 17:32:44 (atual) guix e0fa68c URL do repositório: https://git.savannah.gnu.org/git/guix.git ramo: master commit: e0fa68c7718fffd33d81af415279d6ddb518f727
Se você estiver familiarizado com o sistema de controle de versão do Git,
isso é similar em espírito a git describe
; a saída também é
similar à de guix pull --list-generations
, mas limitada à geração
atual (veja a opção
--list-generations). Como o ID de commit do Git mostrado acima se
refere inequivocamente a um snapshot do Guix, essa informação é tudo o que é
preciso para descrever a revisão do Guix que você está usando e também para
replicá-la.
Para facilitar a replicação do Guix, guix describe
também pode ser
solicitado a retornar uma lista de canais em vez da descrição legível acima:
$ guix describe -f channels (list (channel (name 'guix) (url "https://git.savannah.gnu.org/git/guix.git") (commit "e0fa68c7718fffd33d81af415279d6ddb518f727") (introduction (make-channel-introduction "9edb3f66fd807b096b48283debdcddccfea34bad" (openpgp-fingerprint "BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA")))))
Você pode salvar isso em um arquivo e alimentá-lo com guix pull -C
em alguma outra máquina ou em um momento posterior, o que instanciará
esta revisão exata do Guix (veja a opção
-C). A partir daí, já que você consegue implementar a mesma
revisão do Guix, você pode muito bem replicar um ambiente de software
completo. Humildemente achamos isso incrível, e esperamos que você
goste também!
Os detalhes das opções suportadas por guix describe
são os
seguintes:
--format=formato
-f formato
Produza saída no formato especificado, um dos seguintes:
human
produzir resultados legíveis por humanos;
channels
produz uma lista de especificações de canal que podem ser passadas para
guix pull -C
ou instaladas como ~/.config/guix/channels.scm
(veja Invocando guix pull
);
channels-sans-intro
como channels
, mas omita o campo introduction
; use-o para
produzir uma especificação de canal adequada para a versão 1.1.0 do Guix ou
anterior — o campo introduction
tem a ver com autenticação de canal
(veja Autenticação de canal) e não é suportado por essas
versões mais antigas;
json
¶produzir uma lista de especificações de canal no formato JSON;
recutils
produzir uma lista de especificações de canais no formato Recutils.
--list-formats
Exibir formatos disponíveis para a opção --format.
--profile=perfil
-p perfil
Exibir informações sobre perfil.
Próximo: Invocando guix archive
, Anterior: Inferiores, Acima: Gerenciamento de pacote [Conteúdo][Índice]