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?


_______________________________________________
freebsd-ports@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-ports
To unsubscribe, send any mail to "freebsd-ports-unsubscr...@freebsd.org"

Reply via email to