Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Aug 2004 20:55:21 +0100
From:      Matthew Seaman <m.seaman@infracaninophile.co.uk>
To:        "Jay O'Brien" <jayobrien@att.net>
Cc:        freebsd-questions@freebsd.org
Subject:   Re: Reinstalling, then upgrading (Was Re: Salvageable? (Was Re:make installworld   error))
Message-ID:  <20040824195521.GA7691@happy-idiot-talk.infracaninophile.co.uk>
In-Reply-To: <412B935B.2010706@att.net>
References:  <37045.24.11.146.21.1093373223.squirrel@freedombi.com> <412B935B.2010706@att.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--pf9I7BMVVzbSWLtt
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Tue, Aug 24, 2004 at 12:13:31PM -0700, Jay O'Brien wrote:
> Charles Ulrich wrote:
>=20
> > The phrase "ports
> > build packages" is a neat and efficient way of rectifying the
> > misunderstandings that can occur when trying to give a proper=20
> > explanation of FreeBSD package management.

> Thank you for concisely answering a burning question I didn't=20
> know how to ask. I had gathered the concept that if I built a=20
> "port" I was stuck with it, because it couldn't be removed as=20
> easily as something installed as a package.

That phrase -- "ports build packages" is just so right on so many
levels.  Except for the literal description of what actually happens.

If I was feeling pedantic, I'd say "ports build and install software,
and also create a packaging list.  A package is simply a shortcut
method of using that packaging list to gather together all of those
files into an archive in order to copy them to a different machine."
But it really doesn't have the same ring to it.

Most people know that to build a package you simply change to the
correct ports directory and type:

    # make package

Which is fine and dandy most of the time.  What deserves to be more
widely known is that you can create a package fron any already
installed port:

    # pkg_create -b pkg-name

which saves a lot of effort trying to recompile things and is a really
handy way to back stuff up.

As it stands, you can't make a package without also installing the
corresponding port.  For many reasons it would be very handy to avoid
that: ie. to be able to install the port into a chroot'ed area and
assemble the package from there.  Avoids conflicts with already
installed ports or the need to de-install and re-install a port if you
want a different set of options for the package.  Also a lot of the
time it would make it feasible to build packages as a mortal user,
rather than requiring root access.

This has been discussed on several occasions in the
freebsd-ports@... list, and there are various patch sets floating
around.  As I understand it though, quite a lot of ports would need
remedial work if that functionality was to be introduced, which is
what has kept anything from being committed yet.

	Cheers,

	Matthew

--=20
Dr Matthew J Seaman MA, D.Phil.                       26 The Paddocks
                                                      Savill Way
PGP: http://www.infracaninophile.co.uk/pgpkey         Marlow
Tel: +44 1628 476614                                  Bucks., SL7 1TH UK

--pf9I7BMVVzbSWLtt
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.5 (FreeBSD)

iD8DBQFBK50piD657aJF7eIRApr6AJ4kYNEAr0zXskSAFwmJfyT8uF819wCgrGvC
bEmXtOE+b4060jNvnF43ccw=
=c2U/
-----END PGP SIGNATURE-----

--pf9I7BMVVzbSWLtt--



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