こんにちは、鶴谷です。

TOGAWA Satoshi <t...@puyo.org> さん>

> portupgradeで「ある時点より前にインストールされたportsを全て
> 再インストールする」という事はできるでしょうか?

     o   Rebuild and reinstall all that ports that were installed prior to the
         date 2001-09-20:

               portupgrade -f '<2001-09-20'

         You can also select packages by a date range.

だそうです。

そのほか、/var/db/pkg/*/+DESC がある時点よりも古いものを探してアップデート、
ということもできそうです。

ただし、パッケージでインストールしたものについては、うまくいきませんでした。
以前に同じような問題にあったときのメモでは、
---
そこで、pkgtools.confに、
AFTERINSTALL = {
        '*' => proc { |origin| 'echo ' + deorigin(origin) + ' >> /tmp/newpkg' },
}
のようなエントリを追加してみた。これで、portupgradeやportinstallで
インストールされたものは、すべて"/tmp/newpkg"に追加されていく。

こうしておいて、bashで

$  hold=""; for i in `cat /tmp/newpkg`; do hold=`echo -n $hold "-x" $i`; done; \
portupgrade `echo $hold` -af
としてアップデートを繰り返した。
---
とありました。


--- 
鶴谷直樹
turut...@scphys.kyoto-u.ac.jp

メールによる返信