apt-get для Cygwin? - PullRequest
       12

apt-get для Cygwin?

122 голосов
/ 17 марта 2012

Существует ли какая-нибудь apt-get -подобная программа для использования с Cygwin?

Я уже пробовал cyg-apt, но при попытке получить эту ошибку:

cyg-apt: downloading: http://cygwin.mirrors.pair.com/setup-2.bz2
cyg-apt: downloading: http://cygwin.mirrors.pair.com/setup-2.ini
cyg-apt: bad URL http://cygwin.mirrors.pair.com/setup-2.ini, exiting.

Ответы [ 7 ]

129 голосов
/ 28 марта 2012

Лучшее, что я когда-либо использовал:

менеджер пакетов apt-cyg

89 голосов
/ 08 октября 2013

Вы можете сделать это, используя Cygwin's setup.exe из командной строки Windows.Пример:

cd C:\cygwin64
setup-x86_64 -q -P wget,tar,qawk,bzip2,subversion,vim

Для более удобной установки вам может понадобиться менеджер пакетов apt-cyg .Его синтаксис похож на apt-get, что является плюсом.Для этого выполните описанные выше шаги, а затем используйте Cygwin Bash для следующих шагов:

wget rawgit.com/transcode-open/apt-cyg/master/apt-cyg
install apt-cyg /bin

Теперь, когда apt-cyg установлено.Вот несколько примеров установки некоторых пакетов:

apt-cyg install nano
apt-cyg install git
apt-cyg install ca-certificates
25 голосов
/ 18 апреля 2014

Обновление: вы можете прочитать более сложный ответ , который содержит больше методов и информации.

Существует пара сценариев, которые можно использовать какпростые менеджеры пакетов.Но, насколько мне известно, ни один из них не позволяет обновлять пакеты, потому что это непростая задача в Windows, поскольку невозможно перезаписать используемые файлы.Поэтому сначала нужно закрыть все экземпляры Cygwin, а затем использовать собственный setup.exe Cygwin (который сам выполняет обновление с помощью метода «заменить после перезагрузки», когда используются файлы).


apt-cyg

Лучший для меня.Просто потому, что это один из самых последних.Он работает правильно для обеих платформ - x86 и x86_64.Существует много вилок с некоторыми дополнительными функциями.Например, kou1okada fork является одной из улучшенных версий.


setup.exe Cygwin

Он также имеет режим командной строки .Более того, он позволяет обновлять все установленные пакеты одновременно.

setup.exe-x86_64.exe -q --packages=bash,vim

Пример использования:

setup.exe-x86_64.exe -q --packages="bash,vim"

Вы можете создать псевдоним для более простого использования, например:

alias cyg-get="/cygdrive/d/path/to/cygwin/setup-x86_64.exe -q -P"

Затем вы можете, например, установить пакет Vim с:

cyg-get vim

16 голосов
/ 17 апреля 2014

вы всегда можете сделать псевдоним bash для установки файлов * .exe в $ home / .bashrc

cygwin 32bit

alias cyg-get="/cygdrive/c/cygwin/setup-x86.exe -q -P"

cygwin 64bit

alias cyg-get="/cygdrive/c/cygwin64/setup-x86_64.exe -q -P"

теперь вы можете устанавливать пакеты с

cyg-get <package>
6 голосов
/ 18 марта 2012

Нет. Единственный официально поддерживаемый инструмент для загрузки и обновления пакетов Cygwin - это файл setup.exe, который вы использовали для первоначальной установки , хотя его можно вызывать с помощью аргументов командной строки, чтобы помочь процессу.

С той же страницы:

Основная причина отсутствия более полнофункционального менеджера пакетов заключается в том, что такой программе потребуется полный доступ ко всем функциям Cygwin POSIX. Это, однако, трудно обеспечить в среде без Cygwin, такой как существует при первой установке. Кроме того, Windows не позволяет легко перезаписывать используемые исполняемые файлы, поэтому установка новой версии DLL-библиотеки Cygwin, когда менеджер пакетов использует DLL-библиотеку, является проблематичной.

5 голосов
/ 20 декабря 2016

Это заставило меня работать:

curl https://raw.githubusercontent.com/transcode-open/apt-cyg/master/apt-cyg > \
apt-cyg && install apt-cyg /bin
0 голосов
/ 23 июля 2016

Вы можете использовать Chocolatey для установки cyg-get, а затем установить пакеты с ним.

Например:

choco install cyg-get

Тогда:

cyg-get install my-package
...