En gros, je veux "télécharger" en lots un fichier .deb et toutes ses dépendances en même temps sur une machine Windows 7 (sur laquelle je n'ai pas d'accès administrateur, c'est un ordinateur public.) J'ai vu beaucoup de correctifs basés sur Ubuntu qui besoin terminal et apt, je demande comment faire cela sur Windows. (Je ne sais pas si cette question convient, mais je n'ai trouvé nulle part ailleurs où elle pourrait aller.)
J'ai essayé Keryx et Sushi-huh d'essayer de récupérer les paquetages et leurs dépendances, mais ceux-ci nécessitent Python. Python ne peut pas être installé normalement sans l'autorisation de l'administrateur. (Remarque: je pense avoir déjà vu les programmes bundle python afin qu'ils puissent fonctionner sans l'installer dans c :, cette solution est-elle possible? Google ne résout pas le problème)
Si quelqu'un veut savoir, j'essaie de télécharger Krita et Blender pour Ubuntu 12.10/AMD64
J'ai été en mesure de télécharger manuellement des fichiers .deb uniques et des dépendances jusqu'à 38 paquets dépendants, mais ces 38 paquets dépendent ensuite d'autres paquets. Il est navrant de ne pas avoir un moyen de le faire automatiquement sous Windows.
* Modifier Désolé, j'ai oublié de préciser que mon ordinateur personnel sous Ubuntu 12.10 est actif et que l'ordinateur public que je télécharge est Windows 7.
Vous pouvez générer un fichier avec script de téléchargement avec synaptic, sélectionnez vos packages et cliquez sur "Fichier -> Générer un script de téléchargement de paquet", pour en savoir plus sur buntu/PackageDownloadScript , générez un fichier du type:
#!/bin/sh
wget -c http://ftp.usf.edu/pub/ubuntu/pool/universe/i/ibm-3270/3270-common_3.3.10ga4-2build2_AMD64.deb
remove #!/bin/sh
et wget -c
pour obtenir uniquement les URL, et avec un nouveau fichier que vous pouvez télécharger dans n'importe quel système d'exploitation, vous pouvez utiliser dans Windows 7 wget for windows
Je devais faire cela l'autre jour; d'abord, courez
$ apt-get install -y (yourpackage) --print-uris > dependencies
Vous n'avez pas besoin des privilèges Sudo
pour le faire, car rien n'est installé.
En utilisant votre éditeur de texte préféré, vous pouvez ensuite supprimer les premières lignes du fichier dependencies
qui ressemblent à ceci:
Lecture des listes de paquets ... Terminé Création d'un arbre de dépendance Lecture des informations d'état ... Terminé Les packages supplémentaires suivants seront installés: ncurses-term ssh-import-id Paquets suggérés: rssh molly-guard openssh-blacklist liste noire openssh-blacklist-extra monkeysphere Les nouveaux paquets suivants seront installés ncurses-term openssh-server ssh-import-id 0 mis à niveau, 3 nouvellement installés, 0 à supprimer et 26 non mis à niveau. Besoin de disposer de 771 ko d'archives. Après cette opération, 3 056 Ko d'espace disque supplémentaire seront utilisés.
puis utilisez sed
pour supprimer le contenu inutile qui ne vous laissera que les URL:
$ sed -i 's/ .*//' "dependencies"
et enfin utiliser wget
pour télécharger toutes ces dépendances
$ wget -i dependencies
J'ai utilisé apt-cache depends package
pour obtenir tous les paquets requis dans tous les cas si le sont déjà installé sur le système ou non. Donc cela fonctionnera toujours correctement.
Étant donné que la commande apt-cache fonctionne différemment, vous devez essayer cette commande sur votre système et l'adapter. apt-cache dépend de votre paquet
Sur un système anglais, vous obtenez:
$ apt-cache depends yourpackage
node
Depends: libax25
Depends: libc6
Sur un système allemand, vous obtenez: noeud
Hängt ab von: libax25
Hängt ab von: libc6
La version anglaise avec le terme:
"Depends:
"
Vous devez changer le terme "yourpackage
" par votre souhait deux fois dans cette commande, prenez-en soin!
$ Sudo apt-get --print-uris --yes -d --reinstall install yourpackage $(apt-cache depends yourpackage | grep " Depends:" | sed 's/ Depends://' | sed ':a;N;$!ba;s/\n//g') | grep ^\' | cut -d\' -f2 >downloads.list
Et la version allemande avec le terme:
"Hängt ab von:
"
Ce texte est utilisé deux fois dans cette commande, si vous voulez l’adapter à votre langue, prenez-en soin!
Vous devez changer le terme "yourpackage
" par votre souhait deux fois dans cette commande, prenez-en soin!
$ Sudo apt-get --print-uris --yes -d --reinstall install yourpackage $(apt-cache depends yourpackage | grep "Hängt ab von:" | sed 's/ Hängt ab von://' | sed ':a;N;$!ba;s/\n//g') | grep ^\' | cut -d\' -f2 >downloads.list
Vous obtenez la liste des liens dans downloads.list
Consultez la liste, allez dans votre dossier et lancez la liste:
$ cd yourpathToYourFolder
$ wget --input-file downloads.list
Tous vos paquets requis sont dans:
$ ls yourpathToYourFolder