[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ls-R



文字鏡とかtexのpkgsrc作ってて常々思う事なんですが、

アプリケーションの動作やファイルのパスなんかを設定するのに
環境変数か設定ファイルが使われますが、
設定ファイルのファイル名と置く場所(ディレクトリは)だいたい固定されています。
TeXではパス設定のためにコマンド、mktexlsrでls-Rが作られますが
ls-Rは場所、ファイル名固定のworking fileで、
texmf以下のディレクトリに変更があると適宜変更されるものです。
そのため、tex関係のマクロ等のオプションのファイルを組み込む度に変更されるので
PLIST中に書かれる固定ファイルとしてはふさわしくないと思われます。

それでこういった、他のpackageを組み込む時に変更されるファイルはPLISTから外して
pkg_install、pkg_deleteの度にmktexlsrで再構築することはできないでしょうか?


以下ちょっと独り言
ls-R以外にもvflibのvfontcapやghostscriptのkconfig.ps等
他のpackageのインストールで設定項目が追加されて変更されます。
dependする方のpackageに設定ファイを用意してある場合には
package systemの方で判別してpkg_install、pkg_deinstallの時に
切り替えて使用するようにした方がスマートかなと思います。
(こうすればconflictも若干少なくなるかもしれません)
#環境変数で逃げる方法もありますが、
#環境変数は本来ユーザー環境での変更に対応するためのものなので
#package install後のdefault状態で環境変数に頼るのはいまいち美しくありません。

例えば
環境識別名:TEX
設定ファイル:ls-R
環境構築コマンド:mktexlsr
(環境構築コマンドが無い場合は${FILESDIR}に設定ファイルがあれば切り替えて使う。
  dependしているpackageが横に二つ以上ある場合は単なるコピーでは無理ですけど。)
などMakefile中で定義しておいて、環境構築が必要な場合はinstall packageを調べて
scriptを走らせて自動構築する。

大石@分子研