cygwinの必要なパッケージをコマンドラインで一括インストール
今まではcygwinをインストールしたディレクトリを全部SugarSyncで同期して使ってたんだけど、
よくわからないままに色々入れてたら700MBぐらいあったので整理整頓することにしました。
どうするか?
既にインストールされてるcygwinのファイルを整理するのはめんどくさかったの新規インストールをすることにしたのはいいけど、何せパッケージ選択がめんどくさい。めんどくさいっていうか手動でやると必ず忘れてしまうので自動化したい。
そこでコマンドラインインストールの登場です!
インストール方法
setup-x86.exe --quiet-mode -P util-linux,curl,wget,openssh,rsync,zip,tree -s ftp://ftp.iij.ad.jp/pub/cygwin/ --root %USERPROFILE%\cyg --local-package-dir %USERPROFILE%\cyg
これでホームディレクトリ直下の C:\Users\ironsand\cyg
とかにインストールされる。
やめたパッケージ
gcc
とか入れてcygwinでコンパイルして色々してると毎回ドツボにハマるので、もうそういうのはVirtualBox上のUbuntuですることにする。
ruby
やpython
はWindowsのネイティブパッケージを使う。結局なんだかんだでそれが一番安定してる気がするので。
git
もcygwin
用のパス名周りのエラーが鬱陶しくなることがちょくちょくあったのでChocolatey
使ってcinst git
でインストールする方法に変更。
注意点
何故か 64bit バージョンは動きませんでした。理由はわかりませんが、こういう関係のソフトは32bit版のほうが今はまだ安定してる気がするし大量にメモリ使うこともないので気にしないことにします。
ssh
だとssh
コマンドはインストールされないのでopenssh
を指定しましょう。
インストール後に/etc/passwd
のホームディレクトリ設定を/home/username
からcygdrive/c/Users/username
とWindowsのホームフォルダに変更しておくとssh
とかのコマンドの時に設定ファイルを自動的に読みに行ってくれるので便利。便利というかしないとちゃんと動かない。
あと環境変数にset HOME=%USERPROFILE%
もどこかに仕込んでたほうが良いかも。
Util-Linux
何故かカレンダー表示のcal
コマンドが見つからなかったので探してみたら、cal
のみのインストールはないらしい。
とりあえずutil-linux
が良さそうなんでこれを使う事にした。
tree
Windows由来のコマンドなのにWindowsのtree
コマンドは階層指定もできない残念仕様なのでcygwin
のを入れました。tree -L 2
とかで階層指定できる。便利!