portupgrade

portupgrade のメモ。


ports を導入してソフトウェアを導入する場合、通常だったらカウントディレクトリで make 等をする。
この際 portinstall を用いれば、ログ取りや面倒なコマンドを打たなくても済む。
また portupgrade は既に導入しているものと仮定する。


まずはログ取りの設定から。

$ mkdir /var/log/ports
$ vi /usr/local/etc/pkgtools.conf
   PORTUPGRADE_ARGS = ENV['PORTUPGRADE'] || \
         '-v -D -L /var/log/ports/'


次に portinstall でソフトウェアを導入する際、オプションなどを自動で設定する。

$ vi /usr/local/etc/pkgtools.conf
  MAKE_ARGS = {
	'*' => 'WITHOUT_X11=yes WITHOUT_IPV6=yes',
	'converters/php4-mbstring' => 'BATCH=yes',
	'databases/mysql50-server' => 'WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_OPENSSL=yes',
	'devel/gettext' => 'BATCH=yes',
  	'devel/subversion' => 'WITH_MOD_DAV_SVN=yes WITHOUT_BDB=yes',
	'graphics/php4-gd' => 'BATCH=yes',
	'lang/php5' => 'WITH_APACHE=yes WITH_MULTIBYTE=yes WITH_REDIRECT=yes WITH_DISCARD=yes BATCH=yes',
	'lang/php5-extensions' => 'WITH_MBSTRING=yes WITH_GD=yes WITH_IMAGICK=yes WITH_MYSQL=yes BATCH=yes',
	'lang/python' => 'BATCH=yes',
	'print/ghostscript-gnu-nox11' => 'BATCH=yes',
	'textproc/libxml2' => 'BATCH=yes',
	'www/apache22' => 'WITH_SUEXEC=yes SUEXEC_DOCROOT=/home',
  }

動作してくれた?
改行コードがアレっぽかった。


もう面倒だから導入するソフトウェア決めてパッチとシェルスクリプト作ろうかな。
そしたらインストールし直すのも楽だし。