pavement

Talk:Ports Tree, Updating

From FreeBSDwiki
(Difference between revisions)
Jump to: navigation, search
(defaults section)
(moved sections to cvs)
 
(39 intermediate revisions by 19 users not shown)
Line 1: Line 1:
 +
Merged sections pertaining to no longer supported cvs to [[cvs]] on December 21, 2014. [[User:Sidetone|Sidetone]] 09:42, 22 December 2014 (EST)
  
 +
==defaults section==
 
This is incomplete. I'm getting this error message:
 
This is incomplete. I'm getting this error message:
  
Line 47: Line 49:
  
 
Note that cvsup.freebsd.org IS a valid cvsup server, as are cvsup1 through something like cvsup19 or so (?) - be careful with those, though, as quite a few of them are from ''way'' across the pond and slower than molasses.  --[[User:Jimbo|Jimbo]] 01:14, 4 Jan 2005 (EST)
 
Note that cvsup.freebsd.org IS a valid cvsup server, as are cvsup1 through something like cvsup19 or so (?) - be careful with those, though, as quite a few of them are from ''way'' across the pond and slower than molasses.  --[[User:Jimbo|Jimbo]] 01:14, 4 Jan 2005 (EST)
 +
 +
== news to me ==
 +
 +
when i first copied over the confs in /usr.../example/cvsup all I changed was the cvsup server and ran cvsup against it, I got errors saying "/home/ncvs doesn't exist, loser" (or something like that,) so I just did a mkdir and it worked.....--[[User:Dave|Dave]] 09:41, 4 Jan 2005 (EST)
 +
 +
== the /home/ncvs thing ==
 +
 +
Sure, it'll "work" if you want your ports in /home/ncvs/ports - but it's NOT updating the tree at /usr/ports.  That's what the "prefix" section means.
 +
 +
Was this one of your Solaris boxes?  Maybe that platform has an odd file in it.  I've never seen the default ports-supfile have a prefix in it other than /usr.  --[[User:Jimbo|Jimbo]] 10:11, 4 Jan 2005 (EST)
 +
 +
== no, not a sparc box ==
 +
 +
this was a fresh install of 5.3-RELEASE on my POS compaq laptop. Do you build your cvsup files from scratch or do you modify the examples? I just copied the file in ...../examples/cvsup/ and ran [[sed]] to change the CHANGE_THIS parts.
 +
 +
--[[User:Dave|Dave]] 00:52, 7 Jan 2005 (EST)
 +
 +
I build the cvsup port, then go in and edit the supfile by hand, usually.  Never seen it use a base of ANYTHING but /usr in the example as installed by the cvsup port.  --[[User:Jimbo|Jimbo]] 03:10, 7 Jan 2005 (EST)
 +
 +
== Add mention of indexes ==
 +
 +
portupgrade users can be constantly confused by cvsup-ing, but not rebuilding or downloading new index files. The result is that they don't see out-of-date ports using portversion. This is mostly a note to myself to add a note in this file when I writeup the portupgrade/portsnap/portmanager/csup/portversion/oodles-of-ports pages.
 +
--[[User:Joe|Joe]] 11:42, 17 Jan 2006 (EST)
 +
 +
== fastest_cvsup ==
 +
 +
The port <code>fastest_cvsup</code> takes (most of) the guess work out of finding the server that will be the fastest source for your location.  You can use it on the command-line something like this:
 +
/usr/local/bin/cvsup -h `/usr/local/bin/fastest_cvsup -Q -c us` /etc/cvsupfile
 +
 +
This adds a brief pause to the start of the <code>cvsup</code> process, as the program searches for the fastest connection (<code> -c us</code> limits the search to servers in the US).  The <code>-h</code> switch over-rides <code>*default host=</code> in the file, <code>/etc/cvsupfile</code>. [[User:Ninereasons|Ninereasons]] 18:10, 12 May 2006 (EDT)
 +
 +
 +
=== Makefile ===
 +
You can create a simple Makefile, adding targets that meet your preferences.  This example uses <code>fastest_cvsup</code> to determine the best connection.  To use it, you would save the file as <code>/root/cvsup/Makefile</code> and from the commandline, in the directory <code>/root/cvsup</code>, say <code>make update</code>:
 +
<pre>
 +
# /root/cvsup/Makefile - a minimal cvsup Makefile
 +
# Remember if copying this, that targeted commands start with tabs
 +
 +
# Create this directory for logging before running make
 +
LOGTO=/usr/tmp
 +
 +
# a suffix added to all log files
 +
LOGTOSUFFIX=log
 +
 +
# a unique suffix for all log files
 +
DATE=`date "+%Y.%m.%d.%H.%M.%S"`
 +
 +
# this is the cvsup file to use when updating the source
 +
SUPFILE=/etc/cvsupfile
 +
 +
# Use fastest_cvsup to determine the fastest cvsup connection
 +
FASTHOST=`/usr/local/bin/fastest_cvsup -Q -c us`
 +
 +
update:
 +
/usr/local/bin/cvsup -h ${FASTHOST} -g -z -L2 ${SUPFILE} 2>&1 | \
 +
/usr/bin/tee ${LOGTO}/update.${DATE}.${LOGTOSUFFIX};
 +
 +
</pre>[[User:Ninereasons|Ninereasons]] 18:10, 12 May 2006 (EDT)

Latest revision as of 10:42, 22 December 2014

Merged sections pertaining to no longer supported cvs to cvs on December 21, 2014. Sidetone 09:42, 22 December 2014 (EST)

Contents

[edit] defaults section

This is incomplete. I'm getting this error message:

Release not specified for collection "default".

relax

[edit] defaults section

should look something like this:

*default host=cvsup000.FreeBSD.org
*default base=/var/db
*default prefix=/home/ncvs
*default release=cvs
*default delete use-rel-suffix

with a proper cvsup# server of course. You may need to mkdir a /home/ncvs if you do not already have one.

-d.

[edit] defaults section

Dave's conf above is a bit nonstandard - normally the ports tree lives under /usr in /usr/ports; whereas his will wind up in /home/ncvs/ports, which will confuse the hell out of mose FreeBSD admins (and generate a second unneeded copy of the ports tree if you installed it when you first built the system, in which case you've already got one at /usr/ports).

This is a working configuration (which is not to say that his isn't, except I don't think there's actually a "cvs000" server):

# Defaults that apply to all the collections
#
# IMPORTANT: Change the next line to use one of the CVSup mirror sites
# listed at http://www.freebsd.org/doc/handbook/mirrors.html.
*default host=cvsup.FreeBSD.org
*default base=/var/db
*default prefix=/usr
*default release=cvs tag=.
*default delete use-rel-suffix

# If you seem to be limited by CPU rather than network or disk bandwidth, try
# commenting out the following line.  (Normally, today's CPUs are fast enough
# that you want to run compression.)
*default compress

## Ports Collection.
#
# The easiest way to get the ports tree is to use the "ports-all"
# mega-collection.  It includes all of the individual "ports-*"
# collections,
ports-all

Note that cvsup.freebsd.org IS a valid cvsup server, as are cvsup1 through something like cvsup19 or so (?) - be careful with those, though, as quite a few of them are from way across the pond and slower than molasses. --Jimbo 01:14, 4 Jan 2005 (EST)

[edit] news to me

when i first copied over the confs in /usr.../example/cvsup all I changed was the cvsup server and ran cvsup against it, I got errors saying "/home/ncvs doesn't exist, loser" (or something like that,) so I just did a mkdir and it worked.....--Dave 09:41, 4 Jan 2005 (EST)

[edit] the /home/ncvs thing

Sure, it'll "work" if you want your ports in /home/ncvs/ports - but it's NOT updating the tree at /usr/ports. That's what the "prefix" section means.

Was this one of your Solaris boxes? Maybe that platform has an odd file in it. I've never seen the default ports-supfile have a prefix in it other than /usr. --Jimbo 10:11, 4 Jan 2005 (EST)

[edit] no, not a sparc box

this was a fresh install of 5.3-RELEASE on my POS compaq laptop. Do you build your cvsup files from scratch or do you modify the examples? I just copied the file in ...../examples/cvsup/ and ran sed to change the CHANGE_THIS parts.

--Dave 00:52, 7 Jan 2005 (EST)

I build the cvsup port, then go in and edit the supfile by hand, usually. Never seen it use a base of ANYTHING but /usr in the example as installed by the cvsup port. --Jimbo 03:10, 7 Jan 2005 (EST)

[edit] Add mention of indexes

portupgrade users can be constantly confused by cvsup-ing, but not rebuilding or downloading new index files. The result is that they don't see out-of-date ports using portversion. This is mostly a note to myself to add a note in this file when I writeup the portupgrade/portsnap/portmanager/csup/portversion/oodles-of-ports pages. --Joe 11:42, 17 Jan 2006 (EST)

[edit] fastest_cvsup

The port fastest_cvsup takes (most of) the guess work out of finding the server that will be the fastest source for your location. You can use it on the command-line something like this:

/usr/local/bin/cvsup -h `/usr/local/bin/fastest_cvsup -Q -c us` /etc/cvsupfile

This adds a brief pause to the start of the cvsup process, as the program searches for the fastest connection ( -c us limits the search to servers in the US). The -h switch over-rides *default host= in the file, /etc/cvsupfile. Ninereasons 18:10, 12 May 2006 (EDT)


[edit] Makefile

You can create a simple Makefile, adding targets that meet your preferences. This example uses fastest_cvsup to determine the best connection. To use it, you would save the file as /root/cvsup/Makefile and from the commandline, in the directory /root/cvsup, say make update:

# /root/cvsup/Makefile - a minimal cvsup Makefile
# Remember if copying this, that targeted commands start with tabs

# Create this directory for logging before running make
LOGTO=/usr/tmp

# a suffix added to all log files
LOGTOSUFFIX=log

# a unique suffix for all log files
DATE=`date "+%Y.%m.%d.%H.%M.%S"`

# this is the cvsup file to use when updating the source
SUPFILE=/etc/cvsupfile

# Use fastest_cvsup to determine the fastest cvsup connection
FASTHOST=`/usr/local/bin/fastest_cvsup -Q -c us`

update:
	/usr/local/bin/cvsup -h ${FASTHOST} -g -z -L2 ${SUPFILE} 2>&1 | \
	/usr/bin/tee ${LOGTO}/update.${DATE}.${LOGTOSUFFIX};

Ninereasons 18:10, 12 May 2006 (EDT)
Personal tools