Gerenciamento de pacotes Cygwin


16

No cygwin, como faço para:

  • Listar todos os pacotes instalados
  • Listar arquivos pertencentes a um pacote
  • Informar a qual pacote um arquivo pertence
  • Instale um novo pacote
  • Desinstalar um pacote
  • Obter informações sobre um pacote instalado (deps, versão etc.)
cygwin 

Respostas:


23

Listar todos os pacotes instalados

cygcheck --check-setup --dump-only
  • sem --dump-onlyo comando, levará alguns minutos para ser concluído, pois testará todos os pacotes. Você deverá ver um OK para cada pacote se estiver tudo bem;)

Listar arquivos pertencentes a um pacote

Para o pacote, bashfaça:

cygcheck --list-package bash
  • funciona apenas para pacotes instalados

Diga a qual pacote um arquivo pertence:

Para arquivo /usr/bin/bash.exe

cygcheck --find-package /usr/bin/bash.exe
  • funciona apenas para pacotes instalados

Instale um novo pacote

Considerando que você já executa a GUI de instalação e possui espelho (s) válido (s), diretório de pacotes local e outras opções definidas, você pode executar para instalar abook:

/path/to/setup-1.7.exe --quiet-mode --download --local-install --packages abook
  • ele também atualizará automaticamente todos os seus pacotes instalados para a versão mais recente disponível
  • você também pode selecionar o espelho e outras opções na linha de comando, consulte /path/to/setup-1.7.exe --help
  • Conheço a nova versão do cygwin 1.7 (versão beta, mas bastante estável) que atualmente usa a instalação 2.649 suporta essas opções, mas não testei na versão 1.6

Desinstalar um pacote

Até onde eu sei, apenas a GUI suporta esta opção.

Obter informações sobre um pacote instalado (deps, versão etc.)

A versão é listada em conjunto para cada pacote na listagem (primeiro item). Os deps são realmente difíceis de encontrar: quando a instalação é executada, ela cria no diretório local do pacote uma entrada para cada espelho. Lá você pode encontrar a lista de todos os pacotes disponíveis nesse espelho (setup.ini para a versão 1.6 e setup-2.ini para a versão 1.7) com o nome do pacote precedido por a @e deps precedidos por requires:. Se, por qualquer motivo, o espelho que você estiver usando estiver desatualizado, a instalação exibirá uma mensagem de aviso ao baixar informações.


Pelo menos a partir da versão 2.8, existe a opção -x --remove-packages, também para remover pacotes através da linha de comando.
Howler

O @ Howler apt-cyg removefunciona, mas primeiro você precisa da ferramenta, consulte a resposta de @ kevin.
user3123159

apt-cyg install packagepara instalação.
user3123159

3

Execute o setup.exe. Ele fornecerá uma GUI com caixas de seleção para vários pacotes.


5
Na IMO, esta é a principal falha dos cygwins. Precisamos de um gerenciador de pacotes real!
31413 Joseph Kern

11
Vi alguns posts na maillist. Alguém está trabalhando em um equivalente adequado para o cygwin. Pode aparecer como parte de 1.7
Zoredache

@ Joseph: isso parece muito legal. Obrigado por nos informar.
Born to Ride

O gerenciador de pacotes real não é possível, pois não é possível substituir arquivos em uso no Windows. Você deve fechar o Cygwin antes de fazer a atualização e, em seguida, usar o gerenciador de pacotes externo (setup.exe do Cygwin). O gerenciador de pacotes mais completo é o apt-cyg , eu não acho, haverá algo melhor.
Dawid Ferenczy Rogožan

3

Eu achei o apt-cyg útil para instalação de pacotes de linha de comando sem atualizar todos os meus outros pacotes, mas ele não faz tudo o que você precisa fazer.


Não há equivalente a apt show, apt policyou apt searchem ubuntu.
user3123159


0

Permitam-me apresentar-lhe as Perguntas frequentes sobre o Cygwin

  • Lista instalada
  • Como eu desinstalo pacotes individuais
  • Como eu desinstalo pacotes individuais
  • Obter informações sobre um pacote instalado

Execute a instalação do Cygwin

  • Listar arquivos pertencentes a um pacote
  • Informar a qual pacote um arquivo pertence

Pesquise em http://cygwin.com/packages/


0

Agora é possível desinstalar pacotes também:

/path/to/setup.exe -x yourpackagename
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.