Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 30 May 2017 12:16:35 -0600
From:      Adam Weinberger <adamw@adamw.org>
To:        Peter Beckman <beckman@angryox.com>
Cc:        mexas@bris.ac.uk, rollingbits@gmail.com, freebsd-ports@freebsd.org
Subject:   Re: The future of portmaster
Message-ID:  <24648C78-D141-4649-B2D0-D7D538C3D640@adamw.org>
In-Reply-To: <alpine.BSF.2.20.1705301334080.90609@nog2.angryox.com>
References:  <201705301415.v4UEFNJv049083@mech-as222.men.bris.ac.uk> <A1413AB8-AA0E-4B73-875A-D7E65E87C39F@adamw.org> <alpine.BSF.2.20.1705301334080.90609@nog2.angryox.com>

next in thread | previous in thread | raw e-mail | index | archive | help
> On 30 May, 2017, at 11:37, Peter Beckman <beckman@angryox.com> wrote:
>=20
> On Tue, 30 May 2017, Adam Weinberger wrote:
>=20
>> You don't need separate port trees. The idea is to use poudriere to =
build
>> ALL your ports. Just make a list of the ports you want, pass it to
>> poudriere, and it will keep everything up-to-date, rebuild things =
when
>> they need to be rebuilt, and give you a pkg repository so you can =
just
>> run "pkg install foo" or "pkg upgrade" to keep your system running.
>>=20
>> Even if you do use poudriere to build only a few ports, it's pretty =
easy.
>> Give your own generated packages a higher priority in
>> /usr/local/etc/pkg/repos/ and you can transparently layer your pkg =
repo
>> above the upstream repo.
>=20
> Where is this seemingly super easy process documented? Yes, I can read =
the
> docs and try to figure out the "best practice" workflow, or someone =
with
> amazing knowledge of poudriere (and/or synth) can write a "here's how =
to
> manage your ports" best practices for the occasional sysadmin, rather =
than
> the hard-core supporting a fleet of FreeBSD boxes admin.
>=20
> I've looked before and never found such a document. Something from the
> portupgrade or portmaster user POV, and why and how to move to the =
more
> modern and actively developed tools.

/usr/local/etc/pkg/repos/local.conf:
Local: {
	url:	file:///zroot/poudriere/data/packages/JAILNAME,
	priority: 10
}

Then, "pkg install foo" will first look for foo in your generated =
packages, and fall back to the upstream pkg repository.

If you use poudriere to build all your ports, just add this to turn =
upstream off entirely:
/usr/local/etc/pkg/repos/FreeBSD.conf:
FreeBSD: { enabled: no }

>> So no, you don't need separate ports trees. poudriere is happiest =
though
>> when you let it manage its own ports tree, so I prefer to just =
symlink
>> /usr/ports to it, but you can very easily use a pre-existing ports =
tree
>> with poudriere.
>=20
> You make it sound so easy! Maybe it is, but I haven't found it.

Check out =
https://github.com/freebsd/poudriere/wiki/use_system_ports_tree for some =
instructions on how to use a system ports tree.

Personally, I prefer to let poudriere's tree be the main one:
( Remove your old ports tree first; keep the distfiles around if you'd =
like)
# poudriere ports -c (Skip this if you already created a poudriere tree)
# ln -s /zroot/poudriere/ports/default /usr/ports

# Adam


--=20
Adam Weinberger
adamw@adamw.org
https://www.adamw.org





Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?24648C78-D141-4649-B2D0-D7D538C3D640>