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>