csup to svn

Anton Shterenlikht mexas at bristol.ac.uk
Wed Nov 21 18:02:04 UTC 2012


	From fbsd8 at a1poweruser.com Wed Nov 21 17:57:51 2012

	Anton Shterenlikht wrote:
	> 	Date: Wed, 21 Nov 2012 11:10:28 -0500
	> 	From: Fbsd8 <fbsd8 at a1poweruser.com>
	> 
	> 	I use packages for all my ports.
	> 	But some times I have to use ports make files because I need to change 
	> 	the default configuration.
	> 
	> 	I use a custom csup script to just download the desired single port.
	> 
	> 	Since the CVSup/Csup service is being phased out as of February 28, 
	> 	2013, How can I duplicate this function using svn?
	> 
	> 	Following is a sample csup script I use to download a single port.
	> 
	> 
	> 	  #! /bin/sh
	> 	  # This script is used to download make files for ytree port.
	> 
	> 	  # Load script symbolic field with path & file name
	> 	  cvsupfile=/root/temp.work.file
	> 
	> 	  # Check to see if file exists & delete it if it does
	> 	  [ -e "$cvsupfile" ] && rm -f "$cvsupfile"
	> 
	> 	  # Load instream data to file
	> 	  cat >> "$cvsupfile" <<EOD
	> 	  *default  base=/usr                # create CVSup tree off /usr directory
	> 	  *default  release=cvs
	> 	  *default  delete use-rel-suffix    # no compression, for DSL or t1 lines
	> 	  *default  host=cvsup11.FreeBSD.org #  Virginia
	> 	  *default tag=.      # set tag value to nulls to get most current version
	> 	  ports-misc
	> 	  EOD
	> 
	> 	  # Exec csup to download just the selected port make files
	> 	  cd /usr/ports/
	> 	  csup -g -L 2 -i ports/misc/ytree "$cvsupfile"
	> 
	> 	  # Delete file we are done with it
	> 	  rm -f "$cvsupfile"
	> 
	> 	  echo " Ytree port download completed."
	> 
	> I would do:
	> 
	> # cd /usr/ports
	> # svn co svn://svn0.us-east.freebsd.org/ports/head/ .
	> 
	> This will populate your ports tree.
	> Then, you can update anything and everything,
	> e.g. the whole ports tree:
	> 
	> # svn up /usr/ports
	> 
	> or just a single port:
	> 
	> # svn up /usr/ports/misc/ytree
	> 
	> I think it's way simpler than your current method.
	> In my opinion, svn is way better (at least in this regard)
	> than csup.
	> 
	> Other useful thing that is easy with svn is reverting
	> port updates, e.g. when new ports don't build or give
	> other problems. For example, right now the latest sudo
	> doesn't work for me on ia64. So I do
	> 
	> # svn up /usr/ports
	> # svn up -r302692 /usr/ports/security/sudo
	> 
	> to build an older working version of sudo.
	> 
	> Anton
	> 
	> 

	You missed to whole point of my question.
	I don't want to maintain the WHOLE ports tree.
	I only want to download selected single port.
	My current ports tree only has 2 ports, apache22 and php5.
	So your reply did not answer my question.
	Thanks any how.

# mkdir apache22
# cd apache22/
# svn co svn://svn0.us-east.freebsd.org/ports/head/www/apache22 .
A    distinfo
A    pkg-descr
A    Makefile.doc
A    files
A    files/patch-Makefile.in
A    files/patch-support__apachectl.in
A    files/mpm-itk-20110321-01
A    files/patch-configure.in
A    files/patch-docs__conf__httpd.conf.in
A    files/patch-docs__conf__extra__httpd-ssl.conf.in
A    files/apache22.in
A    files/no-accf.conf
A    files/patch-support__ab.c
A    files/patch-server__core.c
A    files/patch-modules__proxy__mod_proxy_connect.c
A    files/patch-docs__conf__extra__httpd-userdir.conf.in
A    files/extra-patch-suexec_rsrclimit
A    files/patch-support__log_server_status.in
A    files/extra-patch-suexec_userdir
A    files/htcacheclean.in
A    files/patch-server__config.c
A    files/patch-support__apxs.in
A    files/mpm-itk-perdir-regex
A    files/patch-support__envvars-std.in
A    files/patch-support__Makefile.in
A    files/mpm-itk-limits
A    files/patch-config.layout
A    pkg-message
A    Makefile.modules
A    Makefile.options
A    pkg-plist
A    Makefile
Checked out revision 307619.
# ls
.svn                    Makefile.modules        files                   pkg-plist
Makefile                Makefile.options        pkg-descr
Makefile.doc            distinfo                pkg-message
#

Anton



More information about the freebsd-questions mailing list