Cygwinを自動更新するように設定するにはどうすればよいですか?
GUIを介さずにCygwinにパッケージをダウンロードさせるにはどうすればよいですか?
Cygwinを自動更新するように設定するにはどうすればよいですか?
GUIを介さずにCygwinにパッケージをダウンロードさせるにはどうすればよいですか?
回答:
ソース:このWikiページ
Cygwin Setupプログラムは対話型になるように設計されていますが、自動化する方法はいくつかあります。複数のシステムに展開する場合は、ダウンロードしたパッケージツリー全体を保存して、フルインストールを1回実行するのが最善の方法です。次に、ターゲットシステムで、ダウンロードしたパッケージツリーを指す「ローカルインストール」としてsetup.exeを実行します。
setup.exe -q -L -l x:\cygwin-local\
ダウンロードしたパッケージツリーがあるコマンドラインオプションを使用して、これを非対話的に実行できますx:\cygwin-local\
(これらのオプションの説明については、次のFAQを参照してください)。他のオプションについては、cygwin自動セットアップや自動cygwin installなどの用語でメーリングリストを検索してください。
これについて議論する重要な場所をいくつか見つけました。
あなたもcygcheck
同様に使用を検討することができます。
また、私自身はこれをテストしていませんがapt-cyg
、debianのapt-getと同様の方法で動作するように見えるプロジェクトがあります。こちらがプロジェクトページです
インストール時に更新されたパッケージを使用して、インストールを複数のシステムに複製する簡単な方法を以下に示します。
#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
次に、このファイルをで新しいマシンにコピーしC:\cygwin\etc\setup\installed.db
、Setup.exeインストーラーを実行します。リストされたパッケージは、更新のために自動的に選択されるはずです。上記およびここで説明したヒントを使用して、このプロセスを自動化できる場合があります。
ソース:
以下は、無人アップデートの実行に関するスーパーユーザーからの回答です。
cd C:\cygwin
wget -N http://cygwin.com/setup.exe
setup.exe --no-desktop --no-shortcuts --no-startmenu --quiet-mode
cygwin1.dllのアップグレードによるcygwinアプリの誤動作を防ぐため、アップグレードの完了後に再起動する必要があります。
--no-desktop
デスクトップショートカットの作成を無効にする
--no-shortcuts
デスクトップとスタートメニューの作成を無効にする
--no-startmenu
スタートメニューのショートカットの作成を無効にする
--quiet-mode
無人セットアップモード