Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 11 Nov 2018 12:34:25 +0000
From:      Grzegorz Junka <list1@gjunka.com>
To:        freebsd-ports@freebsd.org
Subject:   Few how-it-works questions
Message-ID:  <73366a94-238a-ed9a-5dee-d5955525e851@gjunka.com>

next in thread | raw e-mail | index | archive | help
Hi All,

I would like to understand a bit better how the ports infrastructure works.

1. Recommended way of upgrading ports is "poudriere ports -p local -u", 
right? But this always gets me the latest version, in which some ports 
may not compile, depending on my luck. I know I can use SVN to checkout 
a specific version of ports instead, but is it possible to find out in 
which SVN version which ports are compiling and which are not? In other 
words, can I open the history of builds of FreeBSD ports on the build 
servers and check which ports are building in a specific SVN version, 
then checkout that version to build on my server?
  - also, is the ports tree mirrored in Git/GitHub?

2. Every time poudriere builds a new set of packages, it deletes those 
which have changed in ports or for which the options have changed, then 
it tries to build them again. But because the ports change, some may no 
longer build. In that case I am left with no packages to install on a 
system unless I am lucky enough to be able to cleanly build all ports 
again. What is the preferred strategy to maintain old packages until a 
new set is build correctly? Copy the whole folder aside? Is it possible 
to tell poudriere to create a new folder with packages for each new 
build (eventually with the option to use already built packages when 
they have not changed)? I suspect poudriere doesn't maintain such state 
internally, it simply deletes what's no longer relevant and then builds 
what's missing?

3. When a package doesn't build because of a patch error:

===>  Patching for ImageMagick6-6.9.10.14,1
===>  Applying FreeBSD patches for ImageMagick6-6.9.10.14,1
1 out of 1 hunks failed--saving rejects to config/policy.xml.rej
=> FreeBSD patch patch-config_policy.xml failed to apply cleanly.
*** Error code 1

Is this a problem with the ports tree, the upstream package, or some 
other package? In other words, can that problem be fixed without having 
an updated version of the port (e.g. assuming the upstream package or 
the other package gets updated and rebuilding the same package without a 
new version of the ports tree may fix this). Are patches always kept in 
the ports tree or sometimes they may be kept separately (e.g. in another 
repo versioned independently)?

Many thanks for your time

GrzegorzJ




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?73366a94-238a-ed9a-5dee-d5955525e851>