[HEADS UP] Planned deprecation of portsnap

Ernie Luzar luzar722 at gmail.com
Wed Aug 5 16:31:38 UTC 2020


Steve Wills wrote:
> 
> We are planning to deprecate use of portsnap in ports.
> 
> The reasons are as follows (in no particular order):
> 
> * Portsnap doesn't support quarterly branches, even years after 
> quarterly branches were created and changed to the default for non-HEAD 
> packages.
> 
> * Portsnap doesn't seem to save disk space compared to svn or git, if 
> you count the metadata (stored in /var/db/portsnap by default) and you 
> do an apples-to-apples comparison of svn or git without history and 
> ignoring possible ZFS compression. That is, you use "svn export" or git 
> "clone --depth 1", you see this disk usage:
> 
>     342M    svnexport
>     426M    git
>     477M    portsnap
> 
> * Portsnap also doesn't work offline which git does. With git, you can 
> also easily add the history by running "git pull --unshallow"
> 
> * This migration away from portsnap fits well with the planned migration 
> to git.
> 
> * Also based on the patches we've seen in Bugzilla for some time, usage 
> of portsnap causes folks to too easily accidentally submit patches to 
> Bugzilla which don't apply easily.
> 
> * Since portsnap doesn't support quarterly branches, it often causes 
> users to build on the wrong branch or end up with mismatched packages. 
> That is, they install packages from quarterly via pkg, then want to 
> customize so run portsnap and build from head, which can cause problems, 
> as we often see. Even when this doesn't happen, it adds to 
> troubleshooting to verify that it didn't.
> 
> We are aware people have gotten used to portsnap, but believe:
> 
> * People should be able to easily use svnlite in base or git from pkgs. 
> (Very few people seem to actually use WITHOUT_SVNLITE).
> 
> * There is also the possibility of falling back to fetching a tar or zip 
> from https://cgit-beta.freebsd.org/ports/ although this does make 
> updating harder.
> 
> How it will be done, in order:
> 
> * Update poudriere to use svn by default. This is already done:
> 
>   https://github.com/freebsd/poudriere/pull/764
> 
> https://github.com/freebsd/poudriere/commit/bd68f30654e2a8e965fbdc09aad238c8bf5cdc10 
> 
> 
> * Update docs not to mention portsnap. This is already in progress:
> 
>   https://reviews.freebsd.org/D25800
>   https://reviews.freebsd.org/D25801
>   https://reviews.freebsd.org/D25803
>   https://reviews.freebsd.org/D25805
>   https://reviews.freebsd.org/D25808
>   https://svnweb.freebsd.org/changeset/base/363798
> 
>   Many thanks to the folks who have worked and are working on this!
> 
> * Make WITHOUT_PORTSNAP default in base. Currently not certain when this 
> will happen. May not happen before 13.0, but hopefully it will.
> 
> * Eventually, portsnap servers will see low enough usage they can be 
> disabled.
> 
> We welcome any constructive feedback. All input would be heard, and if 
> the plans need to be amended, we will come back to you with the amended 
> plan in a couple of weeks. This process will take some time and 
> hopefully won't be too disruptive to anyone's usual workflow.
> 
> Steve (with portmgr@ hat)


I seems this is a done deal as changes are already being done now. So 
the real question is, when is the portsnap utility going to be removed 
from the base system? Will it happen in 12.2 or 13.0?

I maintain ports that use the portsnap utility. One is currently going 
through a maintenance cycle right now. Should the use of portsnap be 
removed from the port now?




More information about the freebsd-ports mailing list