home *** CD-ROM | disk | FTP | other *** search
- #!/usr/bin/perl
- # fetch-latest.pl - Fetch and (possibly) install the latest version of CBB
- # Requires use of the "ftp" command
- #
- # Written by Curtis Olson. Started October 4, 1996.
- #
- # Copyright (C) 1996 Curtis L. Olson - curt@sledge.mn.org
- #
- # This program is free software; you can redistribute it and/or modify
- # it under the terms of the GNU General Public License as published by
- # the Free Software Foundation; either version 2 of the License, or
- # (at your option) any later version.
- #
- # This program is distributed in the hope that it will be useful,
- # but WITHOUT ANY WARRANTY; without even the implied warranty of
- # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- # GNU General Public License for more details.
- #
- # You should have received a copy of the GNU General Public License
- # along with this program; if not, write to the Free Software
- # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- #
- # $Id: fetch-latest.pl,v 1.3 1997/06/13 14:42:58 curt Exp $
- # (Log is kept at end of this file)
-
-
- #----------------------------------------------------------------------------
- # Global variables
- #----------------------------------------------------------------------------
-
- if ( -f "/etc/debian_version" ) {
- $file = "cbb-latest.deb";
- } else {
- $file = "cbb-latest.tar.gz";
- }
- $cbbhost = "ftp.me.umn.edu";
- $account = "anonymous";
-
- # get user name
- $user = (getpwuid($<))[0] || $ENV{LOGNAME} || "Luser";
- $host = `hostname`; chop($host);
-
- $passwd = "$user\@$host";
- $dir = "/pub/finance";
-
- $temp = "/var/tmp";
- $dest = "$temp/$file";
-
-
- #----------------------------------------------------------------------------
- # Fetch the latest version
- #----------------------------------------------------------------------------
-
- print "Fetching CBB from ftp://$cbbhost$dir\n\n";
-
- chdir($temp);
- $command =
- "echo \"open $cbbhost\n" .
- "user $account $passwd\n" .
- "bin\n".
- "hash\n".
- "cd $dir\n" .
- "get $file\n" .
- "quit\n\"";
-
- # print "$command\n";
-
- #open(FTP, "|ftp -n -i -v -d");
- open(FTP, "|ftp -n -i -d");
- print FTP "open $cbbhost\n";
- print FTP "user $account $passwd\n";
- print FTP "bin\n";
- print FTP "hash\n";
- print FTP "cd $dir\n";
- print FTP "get $file\n";
- print FTP "quit\n";
- close(FTP);
-
-
- #----------------------------------------------------------------------------
- # Extract ...
- #----------------------------------------------------------------------------
-
- if ( ! -f "/etc/debian_version" ) {
- print "\nExtracting in $temp\n\n";
- open( TAR, "tar xvzf $temp/$file|" );
-
- while ( <TAR> ) {
- # print " $_";
-
- @files = split(/\//, $_);
-
- $cbbver = @files[0];
- }
-
- close( TAR );
-
- print "CBB version is $cbbver\n";
- }
-
-
- #----------------------------------------------------------------------------
- # Install ...
- #----------------------------------------------------------------------------
-
- print "\nInstalling ...\n\n";
-
- if ( -f "/etc/debian_version" ) {
- system("dpkg -i $dest");
- } else {
- chdir("$temp/$cbbver");
- system("make install");
- }
-
-
- #----------------------------------------------------------------------------
- # Cleanup
- #----------------------------------------------------------------------------
-
- chdir("/");
- unlink("$temp/$file");
-
- if ( ! -f "/etc/debian_version" ) {
- if ( $cbbver =~ m/^cbb/ ) {
- # if the untar succeeded
- system("rm -rf $temp/$cbbver");
- }
- }
-
- print "\nRetreival and Installation finished.\n";
- print "If the installation succeeded, you should immediately exit and and rerun CBB.\n";
- print "This script is called \"fetch-latest.pl\" and can be run\n";
- print "independently. It is located in the contrib directory.\n\n";
- print "Press return to exit: ";
- $junk = <>;
-
-
- #----------------------------------------------------------------------------
- # $Log: fetch-latest.pl,v $
- # Revision 1.3 1997/06/13 14:42:58 curt
- # Fetch the latest debian package instead if you are running on a debian system.
- #
- # Revision 1.2 1996/10/04 19:48:28 curt
- # Added a script to automatically fetch and install the latest version of CBB.
- #
- # Revision 1.1 1996/10/04 19:22:09 curt
- # Initial revision.
- #
-