Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 29 Aug 2000 12:32:41 +0200
From:      Neil Blakey-Milner <nbm@mithrandr.moria.org>
To:        Jeremy Lea <reg@FreeBSD.ORG>
Cc:        Satoshi - Ports Wraith - Asami <asami@FreeBSD.ORG>, Kris Kennaway <kris@FreeBSD.ORG>, ports@FreeBSD.ORG
Subject:   Re: Proposal: PORTREVISION and PORTEPOCH
Message-ID:  <20000829123241.A78426@mithrandr.moria.org>
In-Reply-To: <20000828223955.B323@shale.csir.co.za>; from reg@FreeBSD.ORG on Mon, Aug 28, 2000 at 10:39:55PM -0700
References:  <Pine.BSF.4.21.0008200434470.24448-100000@freefall.freebsd.org> <vqc4s44oocq.fsf@bubble.hip.berkeley.edu> <20000828223955.B323@shale.csir.co.za>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon 2000-08-28 (22:39), Jeremy Lea wrote:
> I started on this, and have a design in mind.  The first part was my
> pkg_which tool, which I've been asked to wrap into pkg_info
> (http://people.freebsd.org/~reg/).  The idea is to detect which
> port/package installed a binary/library, and use it rather than the info
> from the makefiles.

> The support for bsd.port.mk would involve doing a pkg_which on each
> immediate dependency:
> 
> for $$f in ${RUN_DEPENDS}; do
>   pkg_info -qf `pkg_which $$f` | egrep '(@pkgdep|@name)' |
>     sed -e 's/@pkgdep //' -e 's/@name //'
> done | sort -u

Cool, was on my list after awaiting feedback on portrevision/portepoch
(since 9 April, but it seems it's finally getting somewhere) and
portconf (since 4 June 1999).

> pkg_add is a bit harder, since we need to added a comment after each
> @pkgdep line which has is something like:
> 
> @pkgdep gtk-1.2.8
> @comment libdep gtk12.2

Looks reasonable.

> My vote would be for writing the port epoch and minor version into the
> packaging list, and forgetting it in the package names:
> 
> @comment epoch 1
> @comment minor 2
> 
> The are numbers which are more important to the tools than to the users. 
> Well maybe the minor should be in the port name.  The epoch is less of a
> user thing...  I'd also vote for bumping the minor no matter what
> changed - then there's no judgement call on what is important and what
> is not.

I don't see why it should be hidden.  An astute user can figure it out
in seconds, without having to download it, untar it, and look inside it.
pkg_version can figure it out from the INDEX (or we can add the fields
to INDEX separately).

Tools that may use ftpls or similar can figure it out.  Hiding it gains
us nothing.

The rest of my list:

The only outstanding bits for real upgradeability is a perfectly
up-to-date INDEX whenever packages are in a directory (I'm not sure if
we have this already?), adding virtual package dependencies
(libgtk12.so.2, virtapache-1.2.13, Provides/Requires), adding relative
versioning (virtapache >= 1.2.6), and making this information available
in the INDEX.

Then we can use the apt/dselect algorithms from Debian, since they rely
on: relative versions, virtual packages, and up-to-date indexes
synched/cached whenever you request to upgrade.

I think that's the minimum amount of information required to do
upgrading.  'Upgrades' and 'Conflicts' may be useful too.

> In the libdep line above, it would also be possible to have a minimum
> required version:
> 
> @comment libdep gtk12.2:1.2.6

Can you propose a method and patches to specify this in LIB_DEPENDS or
similar in the ports?

Neil
-- 
Neil Blakey-Milner
Sunesi Clinical Systems
nbm@mithrandr.moria.org


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-ports" in the body of the message




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