Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Dec 1999 01:42:11 GMT
From:      Salvo Bartolotta <bartequi@nojunk.com>
To:        freebsd-questions@FreeBSD.org
Subject:   multiple ports versions .
Message-ID:  <19991222.1421100@bartequi.ottodomain.org>

next in thread | raw e-mail | index | archive | help
Dear readers,

I would like to be able to keep different versions of the ports on my
system, for various reasons: in order to test them and to be able to
(re)configure and (re)build them; in order to be able to provide
*different* versions to *different* users -- on demand.

For the sake of simplicity, I will begin to consider the following
oversimplified scenario: a snapshot of the ports collection is taken
e.g. every four months; two "versions" of the (entire) ports
collection are kept under /usr/ports and /usr/newports respectively;
the distfiles directory is shared.

As far as I can see, I should use the new ports collection by defining
the DISTDIR and PORTSDIR environment variables in my root shell:

DISTDIR=3D/usr/ports/distfiles  #old distfiles directory;
PORTSDIR=3D/usr/newports #or /whatever/my/new/ports/directory/is.

I will go to /usr/newports/my/port/of/choice and issue the usual
commands -- make, make install.
Is this correct ?

If I should move my /usr/newports elsewhere, it will suffice to
redefine my environment variables.

In this oversimplified scenario, I should be able to build either
version of the ports in order to suit my needs -- with a trivial
modification of environment variables.




The general case is far more complicated: of course some ports may get
updated, others may NOT.
I should organize something like a CVS, but for the ports, in order to
be able to choose among them.
The problem may sound purely academic or paranoid, but I consider a
practical situation: the new versions of some ports may prove
unstable, and restoring the old versions thus becomes *mandatory*.
If the ports in question involves a few (old) dependencies, it may be
a little complicated to restore these ports ...

Of course I do not consider here the problem of file clashing due to
different versions of the same program (package).
This would require its own versioning system (like e.g. Linux RPM).





Finally, I consider the simplest case: suppose I CVSup my /usr/ports.
Some of the ports will be updated. In this case I give up the ability
to *rebuild* the corresponding old ports (and issue "make deinstall"
for them). In order to use the new ports, I seem to understand that
I should:

-- install the new ports and test them;

-- if the tests are ok, I should pkg_delete both my old ports and my
new ports;

-- reinstall my new ports only.

Is this correct ?

However, depending on the particular case, I might need to pkg_delete
an old port -- because of file clashing issues. What if the new port
proves unstable (or more buggy) ?


My confusion is greatest ...


I thank you very, very much in advance for any tips and suggestions
related to these awkward problems.

Best regards,
Salvo

N.B. myjokingdomain =3D=3D=3D> neomedia.it to reply.





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




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