Package Building in the Large

Jason C. Wells jcw at highperformance.net
Thu Nov 22 07:13:25 PST 2007


Doug Barton wrote:
> On Mon, 19 Nov 2007, Jason C. Wells wrote:
>
>> What I am trying to do is to build 30 or so packages including the 
>> big ones like X, kde, gnome, plus all of their dependencies on a 
>> build host and then use pkg_add on various machines.  I have had a 
>> variety of difficulties with all of the methods I have used thus far 
>> (portmaster, portupgrade, homegrown).
>
> What problems did you have with portmaster? Did the backup package 
> creation fail in some way?
>
Not all dependencies had a package built for them.  For my list of 31 
ports that I actually desired to build there was a dependency list (make 
all-depends-list) of 758 ports.  Of those 758 ports there were 427 
packages built.  I also ended up with shared a library version problem 
in at least one port (grip) in spite of having started my build with a 
completely vacant /usr/local.

It seems that portmaster is intended to be run on the host where the 
existing ports are currently installed and where the new ports will be 
eventually installed.  It looks to have good port upgrading abilities, 
but that is not what I am after.  What I am trying to do is operate a 
build host and distribute packages from there.  Not all hosts run the 
same set of packages.  Add the fact that I am finicky about customizing 
the kerberos dependencies.  I am trying to find a good method to build 
my ports at every minor release (7.0 upcoming) with little user 
intervention.

Perhaps I misunderstand the -g and -b switches.  I don't want backup 
packages of old ports.  I already have those.  I do want packages for 
all new ports that are built during a run.  I used 'portmaster -GgDt -p 
/usr/ports/ports $pmarg' for my run where $pmarg was the list of 31 ports.

I think portmaster worked as expected.  It just didn't do what I 
desired.  Hence my original question to the list.

The tinderbox port looks like the right functionality.  It also looks 
heavyweight requiring apache+mysql.  I am trying to avoid dealing with 
extra databases.  I spent a lot of time messing around with the database 
under portupgrade.  I have come to the opinion (like the idea behind 
portmaster) that there are already databases built into the port 
system.  I'd rather just use them in place.

I would also like the portmanagers to know that I think they do a 
bang-up job.   I just have my ultra narrow fussy roll your own way of 
doing things.  I am looking for the right method _for me_.  All of the 
above is no criticism.

Thanks,
Jason C. Wells


More information about the freebsd-ports mailing list