Thanks for all your responses.

* Ottavio Caruso ([email protected]) wrote:
> Never done it myself, but have you considered this:
> 
> pkg_info -Q PKGPATH -a > pkgs_i_want_to_have
> 
> pkg_info -a | sed 's/ .*//' | tail -r | while read p ; do pkg_delete $p ; done
> 
> cat pkgs_i_want_to_have | (while read pp ; do cd /usr/pkgsrc/$pp ;
> make && make install ; done)
I have seen it. But I thought there was a simpler way i.e. a single command.
I was wrong. There is no straight way.

* Eric Haszlakiewicz ([email protected]) wrote:
> That won't do quite what you want because it'll mark *all* packages as ones 
> that you explicitly asked to be installed, which tends to lead to a lot of 
> unnecessary work figuring out why you're getting conflict between old and new 
> versions or renamed packages that other packages depend on.  
> Pkgsrc keeps track of which ones you pkg_add'ed (or make install'd) vs what 
> just happened to get installed as a dependency and if you stick to just 
> trying to (re)install the former things go much smoother.
> I don't remember offhand how to get that list, but I think it was not quite 
> as obvious as it should be, so you might need to look around a bit for the 
> right commands.
I compared the output from pkg_info -Q PKGPATH -a and /var/db/pkg.
The contents are different. But I don't know that much.

* Greg Troxel ([email protected]) wrote:
> Another approach, which will have a period of possible trouble and then
> be ok is to mark all packages as needing rebuild and then running
> pkg_rolling-replace.
> 
> cd /var/db/pkg
> pkg_admin set rebuild=YES *
> cd /usr/pkgsrc
> pkg_rolling-replace -uvk < /dev/null > RR.000 2>&1
Probably, that is the answer I'm looking for.
I shall look into it. Though, it is not a single command.

Last of all, thank you very much.

-- 
Pongthep Kulkrisada
 
"Nothing ever exists entirely alone without relativity."

Reply via email to