¿Hay alguna herramienta en el paquete Cygwin similar a apt-get
Debian o yum
redhat que me permita instalar componentes desde la línea de comandos?
command-line
cygwin
vy32
fuente
fuente
Respuestas:
No hay ninguna herramienta específicamente en el instalador 'setup.exe' que ofrezca la funcionalidad de apt-get. Sin embargo, hay un instalador de paquetes de línea de comandos para Cygwin que se puede descargar por separado, pero no es completamente estable y depende de soluciones alternativas.
apt-cyg: http://github.com/transcode-open/apt-cyg
Consulte la pestaña de problemas del proyecto para ver los problemas conocidos.
fuente
setup-x86.exe -q -P packagename1,packagename2
. No es tan elegante comoapt-get
o incluso,apt-cyg
pero funciona en la mayoría de los casos. Y también puede ejecutar esto desdecmd.exe
(después de cerrar Cygwin).La configuración de Cygwin acepta argumentos de línea de comandos para instalar paquetes desde la línea de comandos.
por ejemplo,
setup-x86.exe -q -P packagename1,packagename2
para instalar paquetes sin interacción GUI ('modo de instalación desatendida').(Tenga en cuenta que debe usar
setup-x86.exe
osetup-x86_64.exe
según corresponda).Consulte http://cygwin.com/packages/ para ver la lista de paquetes.
fuente
setup-x86_64 --packages="openssh,python"
Para un instalador más conveniente, puede usarlo
apt-cyg
como administrador de paquetes. Su sintaxis es similar aapt-get
, que es una ventaja. Para esto, siga los pasos anteriores y luego use Cygwin Bash para los siguientes pasosAhora que
apt-cyg
está instalado. Aquí hay algunos ejemplos de instalación de algunos paquetes.fuente
wget
y se descargaapt-cyg
sin problemas. ¿En qué punto aparece el 404?Existen algunos scripts, que pueden usarse como simples administradores de paquetes para Cygwin. Pero es importante saber que siempre serán bastante limitados , debido a ... ehm ... Windows.
Instalar o eliminar paquetes está bien, cada administrador de paquetes de Cygwin puede hacerlo. Pero la actualización es una molestia ya que Windows no le permite sobrescribir un ejecutable, que se está ejecutando actualmente. Por lo tanto, no puede actualizar, por ejemplo, Cygwin DLL o cualquier paquete que contenga el ejecutable actualmente en ejecución desde el propio Cygwin. También hay esta nota en la página de instalación de Cygwin :
La configuración de Cygwin usa el registro de Windows para sobrescribir los ejecutables que están en uso y este método requiere reiniciar Windows . Por lo tanto, es mejor cerrar todos los procesos de Cygwin antes de actualizar los paquetes , para que no tenga que reiniciar su computadora para aplicar los cambios. La instalación de un nuevo paquete debe ser completamente sin problemas. No creo que ninguno de los administradores de paquetes, excepto Cygwin's,
setup.exe
implemente algún método para sobrescribir archivos en uso, por lo que simplemente fallaría si no puede sobrescribirlos.Algunos gestores de paquetes para Cygwin:
apt-cyg
Actualización : el repositorio se deshabilitó recientemente debido a problemas de derechos de autor ( eliminación de DMCA ). Se ve como el propietario del repositorio emitió la DMCA en su propio repositorio y crea un nuevo proyecto llamado Sage (ver abajo).
El mejor para mi. Simplemente porque es uno de los más recientes. No usa Cygwin's
setup.exe
, sino que lo vuelve a implementar, lo quesetup.exe
hace. Funciona correctamente para ambas plataformas, x86 y x86_64 . Hay muchas horquillas con más o menos características adicionales. Por ejemplo, la bifurcación kou1okada es una de las versiones mejoradas , que es realmente genial.apt-cyg es solo un script de shell, no hay instalación. Simplemente descárguelo (o clone el repositorio), hágalo ejecutable y cópielo en algún lugar de la RUTA:
También hay un montón de tenedores con diferentes características.
sabio
Otro administrador de paquetes implementado como un script de shell. No lo intenté pero en realidad se ve bien.
Puede buscar paquetes en un repositorio, enumerar paquetes en una categoría, verificar dependencias, enumerar archivos de paquetes y más. Tiene características que otros gestores de paquetes no tienen.
cyg-apt
Tenedor de original abandonado
cyg-aptcon mejoras y correcciones de errores. Tiene muchas características y está implementado en Python. La instalación se realiza utilizandomake
.Cyg-get de Chocolatey
Si usó Chocolatey para instalar Cygwin, puede instalar el paquete cyg-get , que en realidad es un simple envoltorio alrededor de Cygwin
setup.exe
escrito en PowerShell.Cygwin's setup.exe
También tiene un modo de línea de comando . Además, le permite actualizar todos los paquetes instalados a la vez (como lo
apt-get upgrade
hace en Linux basado en Debian).Ejemplo de uso:
Puede crear un alias para un uso más fácil, por ejemplo:
alias cyg-get="/cygdrive/d/path/to/cygwin/setup-x86_64.exe -q -P"
Luego puede, por ejemplo, instalar el paquete Vim con:
cyg-get vim
fuente
sage
es una bifurcación deapt-cyg
sus contribuyentes más activos durante el último año o dos (Steven Penny). Parece que a principios de este año tuvo un desacuerdo con elapt-cyg
autor original (Stephen Jungels) y emitió el derribo de la DMCA cuando bifurcó el proyecto. Dado que Jungels (también conocido como Transcode) es verificablemente el autor original del proyecto, GitHub restauró el proyecto original poco después. Actualmente, ambos proyectos están disponibles, aunque el proyecto original no ha tenido nuevas actualizaciones de código desde la división. Es una situación desordenada, de verdad.Primero, descargue el instalador en: https://cygwin.com/setup-x86_64.exe (Windows 64bit), luego:
p.ej
fuente
Quería una solución similar a esto
apt-get --print-uris
, pero desafortunadamente apt-cyg no hace esto. La siguiente es una solución que me permitió descargar solo los paquetes que necesitaba, con sus dependencias, y copiarlos en el destino para la instalación. Aquí hay un script bash que analiza la salida deapt-cyg
en una lista de URI:Lo anterior imprimirá las rutas de los paquetes que deben descargarse, en relación con la raíz del espejo cygwin, omitiendo cualquier paquete que ya esté instalado. Para descargarlos, escribí el resultado en un archivo
cygwin-packages-list
y luego usé wget:El instalador se puede usar para instalar desde un directorio de caché local. Tenga en cuenta que para que esto funcione, necesitaba copiar
setup.ini
desde un caché de paquete cygwin anterior al directorio con los archivos descargados (de lo contrario, el instalador no sabe qué es qué).fuente
Antigua pregunta, pero aún relevante. Esto es lo que funcionó para mí hoy (26/06/16).
Del bash shell:
fuente
wget
ocurl
es probablemente una mejor herramienta para esto. (Y personalmente, lo instalaría en algún otro directorio en mi en$PATH
lugar de en/bin
.)La respuesta de Dawid Ferenczy es bastante completa, pero después de probar casi todas sus opciones, descubrí que el cyg-get de Chocolatey era el mejor (al menos, el único que podía poner a trabajar).
Quería instalar
wget
, los pasos fueron los siguientes:Luego:
fuente
Por lo general, antes de instalar un paquete, uno debe saber su nombre exacto:
fuente