On 03/03/17 05:09, Mathieu Arnold wrote:

Currently, all our tools working automatically with the quarterly
branches do this before any run:

latest_branch=$(svn ls https://svn.freebsd.org/ports/branches/|sed -ne
'/^2.*Q./s|/$||p'|tail -1)

All you'd need to do before running svn update would be to run:

svn switch ^/branches/$(svn ls
https://svn.freebsd.org/ports/branches/|sed -ne '/^2.*Q./s|/$||p'|tail -1)

and it would automagically switch to the new branch when a new branch
happens.


Thank you! At least I can create a script to update ports. That solves the problem for me.

If the symlink would work and easy enough to manage, it would be a
great portsnap default in the base system to match pkg. The icing on
the cake would be a persistent local setting to tell portsnap what
branch to use so the commands to fetch/update the ports tree are
consistent whether using HEAD or a branch.

The problems with symbolic links, is that they do not work on all
filesystems.


I've never managed an SVN server, so please forgive my ignorance. If a symlink can't (always) be created on the server side, maybe an Apache alias or a rewrite could be used. It sounds like an SVN external might serve a similar purpose on the SVN side:

http://svnbook.red-bean.com/en/1.7/svn.advanced.externals.html

The goal would be to both simplify the pkg/ports management process and reduce the learning curve for new users. Imagine never having used FreeBSD before (or even SVN!) and needing to learn that pkg pointed to "latest" builds from HEAD of the ports tree, but the default for pkg is to use "quarterly" which points to whatever is the current quarterly branch with a naming convention of YYYYQ#. If you use ports, you can't use them by default unless you change pkg to latest so it builds from HEAD. You could use SVN to get a quarterly ports tree instead, but then you have to use a tool other than portsnap. I'm sure you can see the frustration a new user would have, and that's just to manage software on the system.

It would be nice to have some consistency at a minimum in the terminology/settings. For example, having a latest and quarterly SVN external (?) in the ports tree so "SVN" doesn't have to come up in the conversation about managing packages and ports: we could have a config property for portsnap set to "quarterly" by default so it "just works" no matter what month and year it is today. Alternatively, both pkg and portsnap could use the same CURRENT/STABLE labels as the base system rather than latest/quarterly so all 3 make sense once you learn the terminology.

No pressure here. I'm 110% sure you guys are all very busy already, but the back and forth in the following thread sparked the idea for me and I thought it was worth mentioning:

https://forums.freebsd.org/threads/49694/

Chris
_______________________________________________
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