¿Cómo puedo configurar Cygwin para que se actualice automáticamente?
¿Cómo puedo hacer que Cygwin descargue un paquete sin tener que pasar por la interfaz gráfica de usuario?
¿Cómo puedo configurar Cygwin para que se actualice automáticamente?
¿Cómo puedo hacer que Cygwin descargue un paquete sin tener que pasar por la interfaz gráfica de usuario?
Respuestas:
Cygwin: Unix :: Melocotones: Trombón (que estaba en mi GRE;)
Dado lo dramáticos que pueden ser los cambios de Cygwin , sería muy cuidadoso de hacerlo sin mi consentimiento explícito. Si eres atrevido, puedes invocar cron para ejecutar cualquier script de actualización que elijas.
Si estaba buscando setup.exe --quiet-mode
una operación desatendida mal documentada , ahí está.
Fuente: Esta página Wiki
El programa de instalación de Cygwin está diseñado para ser interactivo, pero hay algunas formas diferentes de automatizarlo. Si está implementando en múltiples sistemas, la mejor manera es ejecutar una instalación completa una vez, guardando todo el árbol de paquetes descargado. Luego, en los sistemas de destino, ejecute setup.exe como una "Instalación local" apuntada a su árbol de paquetes descargado. Puede hacerlo de forma no interactiva con las opciones de línea de comandos
setup.exe -q -L -l x:\cygwin-local\
, donde se encuentra el árbol de paquetes descargadox:\cygwin-local\
(consulte las siguientes preguntas frecuentes para obtener una explicación de esas opciones).Para otras opciones, busque en las listas de correo con términos como configuración automatizada de cygwin o instalación automatizada de cygwin .
He encontrado algunos de los lugares clave donde se discute esto:
Es posible que desee considerar el uso cygcheck
también.
Además: no lo he probado yo mismo, pero ahora hay un proyecto llamado apt-cyg
que parece funcionar de manera similar al apt-get de Debian. Aquí está la página del proyecto.
Aquí hay una manera fácil que he encontrado para duplicar una instalación en múltiples sistemas con paquetes actualizados al momento de la instalación:
#Save some copies of the /etc/setup/installed.db file
cp /etc/setup/installed.db ~/installed.db.bak
cp /etc/setup/installed.db ~/installed.db
#Create a sed script to zero version numbers
cat > ~/zero-version-nums.sed<<-'EOM'
s/-[0-9]\+\.[0-9]\+\.[0-9]\+\.[0-9a-zA-Z]\+-[0-9]\+\.tar/-0.0.0.0-0.tar/
s/-[0-9]\+\.[0-9]\+-[0-9]\.[0-9a-zA-Z]\+\.tar/-0.0-0.0.tar/
s/-[0-9]\+\.[0-9]\+\.[0-9a-zA-Z]\+-[0-9]\+\.tar/-0.0.0-0.tar/
s/-[0-9]\+\.[_+0-9a-zA-Z]\+-[0-9]\+\.tar/-0.0-0.tar/
s/-[0-9a-zA-Z]\+-[0-9]\+\.tar/-0-0.tar/
s/-[0-9]\+\.tar/-0.tar/
EOM
# Change all version numbers to 0 (run sed script)
sed -i -f ~/zero-version-nums.sed ~/installed.db
Ahora simplemente copie este archivo en la nueva máquina C:\cygwin\etc\setup\installed.db
y ejecute el instalador Setup.exe. Los paquetes enumerados deben seleccionarse automáticamente para su actualización. Es posible automatizar este proceso utilizando los consejos que mencioné anteriormente, y aquí .
Fuentes:
Aquí hay una respuesta del superusuario sobre hacer una actualización desatendida:
cd C:\cygwin
wget -N http://cygwin.com/setup.exe
setup.exe --no-desktop --no-shortcuts --no-startmenu --quiet-mode
Debe reiniciar después de que se complete la actualización para evitar que las aplicaciones de cygwin se comporten mal debido a cygwin1.dll actualizado
--no-desktop
Deshabilitar la creación de acceso directo de escritorio
--no-shortcuts
Desactiva la creación de escritorio y menú de inicio
--no-startmenu
Deshabilitar la creación del acceso directo del menú de inicio
--quiet-mode
Modo de instalación desatendida