Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 25 Jun 2007 14:23:07 -0500
From:      Jonathan Horne <freebsd@dfwlp.com>
To:        freebsd-questions@freebsd.org
Subject:   Re: script to update my ports tree
Message-ID:  <200706251423.08172.freebsd@dfwlp.com>
In-Reply-To: <46800849.5040402@slightlystrange.org>
References:  <467FD67B.9070604@oregnier.net> <46800849.5040402@slightlystrange.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Monday 25 June 2007 13:24:09 Daniel Bye wrote:
> Olivier Regnier wrote:
> > Hi everyone,
> >
> > I made a shell script in /etc/periodic/daily/610.update-ports-tree and
> > in my /etc/periodic.conf, this line :
> > daily_update_ports_tree_enable="YES".
> >
> > The problem is simple, my script doesn't start at all.
> >
> > Can you help me please ?
> >
> > Thank you :)
>
> There is a syntax error in the script - you have missed the ;; from the
> end of the first case statement. Try putting that in and see what
> happens. You need something like this, or the script will just fall off
> the last case statement, which does nothing:
>
> case $var in
>   yes)
>     do stuff here
>     ;;
>   *) ;;
> esac
>
>
> Also, you can simplify the script somewhat - you don't need to jump
> through all those hoops with sed and awk to create a supfile on the fly
> - just put this in your /etc/make.conf file, which does the same as your
> selectserver() function:
>
> SUP_UPDATE=     yes
> SUP=            /usr/bin/csup
> SUPFLAGS=       -g
> SUPHOST=        `/usr/local/bin/fastest_cvsup -Qc uk,fr,nl`
> SUPFILE=        /etc/cvsup/system
>
> The -Q option to fastest_cvsup returns just the hostname of the fastest
> server, so no need to set up an enormous pipeline of tools. Alter the
> rest of the script to call 'make update' from /usr/ports, and you're done.
>
> Alternatively, you can use portsnap(8) instead - it automatically
> selects one of the available mirrors and uses it. However, you will need
> to do a bit of work to set this up - remove your ports tree (no,
> seriously - follow along, this is good), then run:
>
> # portsnap fetch extract
>
> Now your script just needs to call
>
> # portsnap fetch update
>
> and that's it. This has the advantage that you don't need to cd to
> /usr/ports for it to work.
>
> HTH, one way or another...
>
> Dan
> _______________________________________________
> freebsd-questions@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to
> "freebsd-questions-unsubscribe@freebsd.org"

easiest way, is to add this to /etc/crontab

15      15      *       *       *       root    portsnap cron update 
> /dev/null 2>&1

cheers,
-- 
Jonathan Horne
http://dfwlpiki.dfwlp.org
freebsd@dfwlp.com



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200706251423.08172.freebsd>