Часто на форумах возникает вопрос об обновлении Debian-машины без сети (или с сетью, ограниченной по траффику). Самый правильный способ - это через apt-get. Однако что делать, если на машине, подключенной к сети, стоит вражий Windows? Ответ прост. Использовать APT for Windows! Встречайте! Качать тут: http://ccfit.nsu.ru/~dubrov/apt-win32.tar.bz2
Использование:
1. Распаковать архив 2. Положить файл /var/lib/dpkg/status с Debian-а в подкаталог apt-win32/storage 3. Настроить apt.conf и sources.list 4. Далее как обычно, например, apt-get update && apt-get dist-upgrade. 5. Скачанные файлы складываются в apt-win32/storage/var/archives.
Скачанные файлы можно переместить в /var/cache/apt/archives, сделать apt-get update (т.е какая-то сеть все-таки должная быть), затем повторить теже операции, что и на Windows машине. Если вам повезло, и в дистрибутив не были закачаны новые пакеты, пакеты возьмутся из кеша и скачиваться ничего не будет.
Второй варинт. Положить их куда-нибудь и использовать dpkg-scanpackages (apt-get install dpkg-dev && man dpkg-scanpackages) для создания локального репозитория.
Насчет Cygwin-а. Не знаю, запустится ли вообще без него, судя по всему должен (cygwin1.dll прилагается). Если cygwin уже стоит, cygwin1.dll нужно удалить (или взять от установленного Cygwin-а).
Известные проблемы:
1. apt-get update всегда (или не всегда?) качает файлы заново (т.е без докачки). 2. В sources.list не должно быть источников с ':'. Т.е если используется http другой порт (кроме 80) указать нельзя. Это связано с тем, что apt создает файлы с именами производными от источника, а как известно в Windows файлы не могут содержать ':'.
В остальном вроде работает, конфиг прилагается.
Знатокам C++ и слабонервным патч не смотреть. Сделан по принципу 'абы как', чтоб работало.
Для сборки нужно:
1. Наложить патч на оригинальный APT от Debian-а (я использовал версию 0.5.28.1, можно взять тут http://ftp.debian.org/debian/pool/main/a/apt/apt_0.5.28.1.tar.gz или через apt-get source apt) 1. удалить configure 2. make (configure пересоздастся, попробует собраться, обломается на линковке) 3. ./configure --disable-nls 4. make (на этот раз все должно собраться без проблем).
P.S. Опцию Architecture в apt.conf нужно поменять на "i386" или вообще удалить.