Comment puis-je configurer Cygwin pour se mettre à jour automatiquement?
Comment puis-je demander à Cygwin de télécharger un package sans avoir à passer par l'interface graphique
Comment puis-je configurer Cygwin pour se mettre à jour automatiquement?
Comment puis-je demander à Cygwin de télécharger un package sans avoir à passer par l'interface graphique
Réponses:
Cygwin: Unix :: Peaches: Trombone (c'était sur mon GRE;)
Compte tenu de la façon dont les changements Cygwin peuvent être dramatiques , je serais vraiment prudent de le faire sans mon consentement explicite. Si vous êtes audacieux, vous pouvez invoquer cron pour exécuter le script de mise à jour de votre choix.
Si vous recherchiez des documents mal documentés setup.exe --quiet-mode
pour une opération sans surveillance, la voici.
Source: cette page wiki
Le programme d'installation de Cygwin est conçu pour être interactif, mais il existe plusieurs façons de l'automatiser. Si vous déployez sur plusieurs systèmes, la meilleure façon consiste à exécuter une installation complète une seule fois, en enregistrant l'intégralité de l'arborescence des packages téléchargés. Ensuite, sur les systèmes cibles, exécutez setup.exe en tant que «installation locale» pointant vers votre arborescence de packages téléchargée. Vous pouvez le faire de manière non interactive avec les options de ligne de commande
setup.exe -q -L -l x:\cygwin-local\
, où se trouve votre arborescence de packages téléchargéex:\cygwin-local\
(voir la FAQ suivante pour une explication de ces options.)Pour d'autres options, recherchez dans les listes de diffusion des termes tels que configuration automatisée cygwin ou installation cygwin automatisée .
J'ai trouvé certains des endroits clés où cela est discuté:
Vous pouvez également envisager d'utiliser cygcheck
.
Aussi: je n'ai pas testé cela moi-même, mais il y a maintenant un projet appelé apt-cyg
qui semble fonctionner de manière similaire à apt-get de debian. Voici la page du projet
Voici un moyen simple que j'ai trouvé pour dupliquer une installation sur plusieurs systèmes avec des packages mis à jour au moment de l'installation:
#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
Maintenant, copiez simplement ce fichier sur la nouvelle machine dans C:\cygwin\etc\setup\installed.db
et exécutez le programme d'installation de Setup.exe. Les packages répertoriés doivent être automatiquement sélectionnés pour la mise à jour. Il peut être possible d'automatiser ce processus en utilisant les conseils que j'ai mentionnés ci-dessus, et ici .
Sources:
Voici une réponse du superutilisateur à propos d'une mise à jour sans assistance:
cd C:\cygwin
wget -N http://cygwin.com/setup.exe
setup.exe --no-desktop --no-shortcuts --no-startmenu --quiet-mode
Vous devez redémarrer une fois la mise à niveau terminée pour éviter que les applications cygwin se comportent mal en raison de la mise à niveau de cygwin1.dll
--no-desktop
Désactiver la création d'un raccourci sur le bureau
--no-shortcuts
Désactiver la création du bureau et du menu Démarrer
--no-startmenu
Désactiver la création du raccourci du menu Démarrer
--quiet-mode
Mode de configuration sans assistance