updating ports with svn

Hi,

I previously would use csup(1) with a supfile to upgrade ports from a fresh install of FreeBSD 8. The supfile updates specific ports that I was interested in building, and not the whole tree.

The guide seems geared towards checking out your own ports tree and maintaining it. I am currently installing FreeBSD with ports from distro, then doing this
  1. cd /usr/ports
  2. svn co -r {2012-10-17} [url=svn://svn.freebsd.org/ports/head/net/isc-dhcp41-server]svn://svn.freebsd.org/ports/head/net/isc-dhcp41-server[/url] net/isc-dhcp41-server
  3. svn -R resolve --accept working net/isc-dhcp41-server
  4. svn -R revert net/isc-dhcp41-server

Which seems pretty suboptimal. Is there a simpler/better/smarter way to upgrade specific ports to a specific version without checking out a new tree?

Thanks!
 
Save yourself a lot of headaches and just check-out a complete tree.
 
portsnap(8) is not always faster. I think it depends on how often you update. Daily, or well, several times daily, svn up is faster for me.

But yes, the ports are meant to work as a unit. After a full checkout, updates are not appreciably slower than with csup(1). If the concern is with space, see net/svnup.
 
I find it very easy to just use a crontab like:

Code:
0 3 * * * root portsnap -I cron update && pkg_version -vIL=
 
Ok, I went with a small tree, details below in case someone else cares. ;)

Code:
/usr/local/bin/svn checkout --depth empty svn://svn.freebsd.org/ports/head  /my/tmp/ports/tree

cd /my/tmp/ports/tree

/usr/local/bin/svn update -r '{2012-10-17}' --set-depth files Mk Templates Tools net dns security sysutils devel
/usr/local/bin/svn update -r '{2012-10-17}' net/isc-dhcp41-server/ net/isc-dhcp41-relay/ net/isc-dhcp41-client/ net/mpd5/ net/dhcp6 net/wol dns/dnsmasq sysutils/mbmon security/ipsec-tools devel/libtool net/sixxs-aiccu devel/gmake security/gnutls

export PORTSDIR=/my/tmp/ports/tree
 
Back
Top