PDA

View Full Version : Keeping your FreeBSD ports and source up to date


choon
07-19-2004, 01:19 PM
Hi everyone,

I am using cvsup to keep my FreeBSD systems ports and source up to date.

What is cvsup?

CVSup is a software package for transferring and updating collections of files across a network. It consists of a server called cvsupd and a client called cvsup.

CVSup was written by John Polstra, a software consultant who lives in Seattle. Click here for more information (http://www.cvsup.org/faq.html)

Here are the steps...

Step 1: Install cvsup package from port
cd /usr/ports/net/cvsup-without-gui
make
make install
make clean
make distclean
Step 2: Create the necessary directory for cvsup
mkdir -p /usr/local/etc/cvsup/sup
Step 3: Copy the example ports-supfile and change the host to one of your preferred CVSup mirror sites
cat /usr/share/examples/cvsup/ports-supfile \
| sed 's|*default host=CHANGE_THIS.FreeBSD.org|*default host=cvsup.jp.FreeBSD.org|g' \
> /usr/local/etc/cvsup/sup/ports-supfile
Step 4: Copy the example stable-supfile and change the host to one of your preferred CVSup mirror sites
cat /usr/share/examples/cvsup/stable-supfile \
| sed 's|*default host=CHANGE_THIS.FreeBSD.org|*default host=cvsup.jp.FreeBSD.org|g' \
> /usr/local/etc/cvsup/sup/stable-supfile
For the list of CVSup mirror sites, visit:
http://www.freebsd.org/doc/handbook/mirrors.html

Step 5: Change tag=RELENG_4 to tag=RELENG_4_10 in order to keep your source in FreeBSD version 4.10 RELEASE
cat /usr/local/etc/cvsup/sup/stable-supfile \
| sed -e 's/tag=RELENG_4/tag=RELENG_4_10/g' \
> /usr/local/etc/cvsup/sup/stable-supfile~
mv /usr/local/etc/cvsup/sup/stable-supfile~ \
/usr/local/etc/cvsup/sup/stable-supfile
Click here to read more about CVS Tags (http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/cvs-tags.html)

Step 6: cvsup refuse

Typically, there are some ports that you won't need, like international support files, if you are using strictly English installations. Create a /usr/local/etc/cvsup/sup/refuse file, which will ignore the specified ports. Cut and paste all of the below in your SSH console:
cat > /usr/local/etc/cvsup/sup/refuse <<"EOF"
ports/chinese
ports/french
ports/german
ports/hebrew
ports/japanese
ports/korean
ports/russian
ports/ukrainian
ports/vietnamese
doc/de_DE.ISO8859-1
doc/es_ES.ISO8859-1
doc/fr_FR.ISO8859-1
doc/it_IT.ISO8859-15
doc/ja_JP.eucJP
doc/nl_NL.ISO8859-1
doc/pt_BR.ISO8859-1
doc/ru_RU.KOI8-R
doc/sr_YU.ISO8859-2
doc/zh_TW.Big5
EOF
Step 7: Update your ports and source
rehash
cvsup /usr/local/etc/cvsup/sup/ports-supfile
cvsup /usr/local/etc/cvsup/sup/stable-supfile