Am 17.12.18 um 00:11 schrieb George Mitchell: > On 12/16/18 5:24 PM, Stefan Esser wrote: >> [...] >> I have (my version of) portmaster mostly working in a clean chroot jail. >> It is still a pure shell script (works with the FreeBSD /bin/sh and bash), >> thus portable to all architectures supported by FreeBSD (e.g. ARM). >> >> There are a few edge cases that need further work, but my version does >> already support 4 build modes: >> >> 1) direct build ("classic portmaster mode") >> >> 2) delayed installation (only BUILD_DEPENDS are immediately installed, >> all other ports are installed or upgraded from saved packages at the >> end of the portmaster run) >> >> 3) jailed build (everything is built in a chroot jail and installed after >> all builds have finished, except for pure build dependencies, which are >> only kept as packages for use in the next portmaster run) >> >> 4) repository mode (packages are saved and at the end the repository files >> are updated to allow local and remote upgrades with "pkg upgrade") >> [...] >> My goal is to have portmaster build everything, but with some restrictions >> compared to poudriere (only for the architecture and release of the base >> system) and with the option to use the direct mode for simple cases and >> jailed builds (which require extra disk space for the chroot jail) in case >> the builds need to be performed in a clean environment. >> >> Regards, STefan >> [...] > > Wow! I've been using "classic" mode and I didn't even realize the > new modes were there. THANK YOU for all your fine work! -- George
Well, they are in my development version, not the one currently in ports ... I have worked on the portmaster rewrite since december 2017, when I noticed that it was impossible to make the current port fully work with flavors and complex dependency changes. It works for most simple cases, but there have been changes (e.g. KDE4->KF5) where the current version just can't pass the required state around (and that could not be fixed without a lot or effort). Anyway, I'm giving the current "beta" of the new portmaster to interested developers, but there are still a number of details that need to be cleaned up. One of the nice features that are already working well is that a failed portmaster run can be restarted with just "portmaster -R". All state and options are read in from a restart file (but it is possible to add e.g. an -x option to exclude some port that causes the failure from the current run when restarting ...). I had hoped to have finished the current version to a state that could be released at least as portmaster-devel for interested parties to test, a few months ago. But I have continued adding features (for example to build the ports in a chroot jail), and I'm alternating between adding features and cleaning and speeding-up the code ... I'd really hope to commit that version as an alternative to the current portmaster port within the next weeks (but I'm not sure that I'll have much time to work on it over the holidays ...). Thanks to all that have supported my work by testing draft versions and who have given very valuable feedback! Best regards, STefan
signature.asc
Description: OpenPGP digital signature