cyg-aptの使い方。
自分自身cyg-aptのすべての機能を把握しているわけではないですが、とりあえず2つ3つコマンドを覚えておけば普段使う分には困らないので、簡単に使い方など解説しようと思います。
準備
cyg-aptを動かすためには wget コマンド、python インタプリタが必要です。
あらかじめ setup.exe などからインストールしておきます。
また、インターネットへ接続するためにプロキシを経由する必要があるなら、以下のように環境変数を設定します。(サーバ名、ポートは環境に合わせて変更する必要があります)
設定例
export http_proxy=http://proxy.host.com:8080/
この環境変数はいろいろなコマンドで有効なので、.bashrcとかに書いておくといいと思います。
ダウンロード
以下のように、/usr/local/bin 配下に cyg-apt2 をダウンロードします。
cd /usr/local/bin wget http://github.com/snaka/cyg-apt/raw/master/cyg-apt2
ダウンロードしたファイルに実行権を与えます
chmod 700 cyg-apt2
ちなみに、いままでcyg-aptを使っていたこともあって、cyg-apt という名前で cyg-apt2 に対するシンボリックリンクを張っています。
環境によっては、スクリプト内の変数を変更する必要があるかもしれません。
それについては以下のエントリを参考にしてください。
setup-2.iniのダウンロード
setup.exeでは配布されているパッケージの一覧をsetup.ini(cygwin1.7からはsetup-2.ini)というテキストファイルで管理しているようです。
cyg-aptが動作するためには、最初にそのファイルを取得してあげる必要があります。
そのためには以下のコマンドを実行します。
cyg-apt setup
これで、ミラーサイトから/etc/setup ディレクトリに setup.ini がダウンロードされたはずです。
これで準備が完了しました。
パッケージを探す
ためしに git パッケージをインストールしてみます。
以下のように'search'コマンドで git 関連パッケージを探します。
$ cyg-apt search git cogito - Human-suitable Interface for Git git - Fast Version Control System - core files git-completion - Fast Version Control System - git bash completion git-gui - Fast Version Control System - git-gui viewer git-oodiff - Git diff filter for OpenDocument files git-svn - Fast Version Control System - git-svn conversions gitk - Fast Version Control System - gitk viewer stgit - Quilt functionality on top of git
上記のようにいくつかのパッケージが現れましたが、雰囲気的に
git - Fast Version Control System - core files
がgit本体のようなので、これをインストールすることにします。
パッケージをインストールする
以下のように'install'コマンドを使用することでパッケージのインストールは完了します。
$ cyg-apt install git warning: missing packages: libidn11 --2009-08-21 21:00:39-- http://ftp.jaist.ac.jp/pub/cygwin/release-2/libidn/libidn11/libidn11-1.9-1.tar.bz2 Resolving proxy.host.com... 1.2.3.45, 10.77.222.90, 10.0.8.2 Connecting to proxy.host.com|1.2.3.45|:8080... connected. Proxy request sent, awaiting response... 200 OK Length: 63975 (62K) [application/x-bzip2] Saving to: `libidn11-1.9-1.tar.bz2' 100%[=================================================>] 63,975 --.-K/s in 0s 2009-08-21 21:00:39 (130 MB/s) - `libidn11-1.9-1.tar.bz2' saved [63975/63975] /cygdrive/C/cygwin/var/cache/setup/http%3a%2f%2fftp.jaist.ac.jp%2fpub%2fcygwin/release-2/libidn/libidn11/libidn11-1.9-1.tar.bz2 f9fe1854e4cb8ad27eb1763e9f4baba9 libidn11-1.9-1.tar.bz2 f9fe1854e4cb8ad27eb1763e9f4baba9 libidn11-1.9-1.tar.bz2 installing libidn11 1.9-1 warning: please see after: etc/postinstall/done etc/postinstall/git.sh
最後のwarningが気になりますが、とりあえず今は無視しときます。
ちなみにインストールされたパッケージはのtarボールは/var/cache/setupディレクトリ以下に保存されます。
ダウンロードがうまくいかないなどトラブルが発生した場合はこのディレクトリ内を確認するといいと思います。
インストール済みのパッケージを確認する
インストールしたパッケージは'list'コマンドで確認できます。
$ cyg-apt list GConf2 2.14.0-2 ORBit2 2.14.0-1 _update-info-dir 827-1 (828-1) alternatives 1.3.30.c-10 aspell 0.60.5-1 aspell-en 6.0.0-1 atk 1.10.3-1 base-cygwin 2.0-1 base-files 3.8-4 base-passwd 3.1-1 bash 3.2.49-23 bc 1.6-2 (snip)
いらないパッケージを削除(アンインストール)する
パッケージの削除(アンインストール)は'remove'コマンドです。
$ cyg-apt remove gitk removing gitk 1.6.3.2-1 warning: /cygdrive/C/cygwin/usr/bin/gitk no such file
ですが、うーん、どうもremoveコマンドはちゃんと動かないみたいです。
あとで調べてみます。
とりあえず、'search'と'install'の2つのコマンドを覚えればがあれば cyg-aptは使えます。
簡単ですね。