Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 4 Mar 2006 12:47:30 -0800
From:      Kent Stewart <kstewart@owt.com>
To:        freebsd-questions@freebsd.org, Luke Dean <LukeD@pobox.com>
Subject:   Re: Determining proper order to upgrade
Message-ID:  <200603041247.30734.kstewart@owt.com>
In-Reply-To: <20060304110458.H84522@border.crystalsphere.multiverse>
References:  <20060304110458.H84522@border.crystalsphere.multiverse>

next in thread | previous in thread | raw e-mail | index | archive | help
On Saturday 04 March 2006 11:20, Luke Dean wrote:
> I'm one of those masochists who insists on manually building all my
> pakages from the ports collection without using automating software
> like portmanager.
>
> Typically I upgrade my ports collection with
> cvsup -g -L 2 /etc/supfile-that-I-made-for-ports
> then run
> pkg_version -v -L '='
> to get a list of what I need to upgrade.
>
> Then I
> pkg_info -o name-of-each-port
> to find out where the port lives in the ports collection, go there,
> and then use "make" with whatever custom options I need to upgrade
> it.
>
> The trouble I have is when one or more of those low-level ports that
> everything else depends on gets upgraded.  I can spend DAYS building
> and rebuilding ports until everything gets built with the most
> current dependencies.
> I'm familiar with the "-r" and "-R" switches for "pkg_info", and they
> are a huge help in this situation, but I'm wondering if anybody has
> written a script that will take a list of packages to be upgraded,
> examine their dependencies and what depends on them, and then return
> a sorted list of every installed package that should be rebuilt in
> order to keep the dependencies current.
>
> I don't want something to automate the whole process - just something
> to help me out with determining which ports are affected and what
> order they should be rebuilt in.
>
> Some of those port management packages must have something like this
> internally.  I guess I could go look there.
> _______________________________________________

I like aliases but they don't work for this. So, I have a shell script 
that does the work for me. I called it pkgreq and it looks like

#! /bin/sh
cd /var/db/pkg
pkg_info -R "$1*" | more

You "pkgreq port-name-of-interest" and it returns that ports that use 
the port.

Kent

-- 
Kent Stewart
Richland, WA

http://www.soyandina.com/ "I am Andean project".
http://users.owt.com/kstewart/index.html



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200603041247.30734.kstewart>