Diff for /doc/install/fedora/install.pl between versions 1.1 and 1.9

version 1.1, 2003/12/04 21:58:35 version 1.9, 2005/07/01 23:17:58
Line 1 Line 1
 #!/usr/bin/perl -w  #!/usr/bin/perl -w
 # The LearningOnline Network   # The LearningOnline Network 
 # Red Hat 7.3 installation script  # Fedora installation script
 #  #
 # $Id$  # $Id$
 #  #
Line 179  if ($install_httpd_conf) { Line 179  if ($install_httpd_conf) {
     &copy_httpd_conf();      &copy_httpd_conf();
 }  }
   
 my $lctarball = 'loncapa-current.tar.gz';  #my $lctarball = 'loncapa-current.tar.gz';
   my $lctarball = 'loncapa-fedora-current.tar.gz';
 if ($download_loncapa) {  if ($download_loncapa) {
     &download_loncapa($lctarball);      &download_loncapa($lctarball);
 } else {  } else {
Line 217  sub setup_www { Line 218  sub setup_www {
 ###############################################  ###############################################
 ###############################################  ###############################################
 sub uid_of_www {  sub uid_of_www {
     my $num = `grep ^www /etc/passwd | cut -d':' -f3`;      my ($num) = (getpwnam('www'))[2];
     chomp $num;  
     if (int($num) == $num) {  
  writelog ("uid of www = $num\n");  
     } else {  
  die "Unable to determine UID of user www\n  Halting.\n";  
     }  
     print_and_log("\n");  
     return $num;      return $num;
 }  }
   
Line 235  sub uid_of_www { Line 229  sub uid_of_www {
 ###############################################  ###############################################
 sub build_and_install_mod_auth_external {  sub build_and_install_mod_auth_external {
     my $num = &uid_of_www();      my $num = &uid_of_www();
     # Patch mod_auth_external      # Patch pwauth
     print_and_log("Building authentication system for LON-CAPA users.\n");      print_and_log("Building authentication system for LON-CAPA users.\n");
     my $patch = <<"ENDPATCH";      my $patch = <<"ENDPATCH";
 148c148  148c148
Line 246  ENDPATCH Line 240  ENDPATCH
   
     if (! -e "/usr/bin/patch") {      if (! -e "/usr/bin/patch") {
  print_and_log("You must install the software development tools package ".   print_and_log("You must install the software development tools package ".
       "when installing RedHat.\n");        "when installing Fedora.\n");
  die;   die;
     }      }
     &die_if_nonempty(`cd /tmp; tar zxf $instdir/mod_auth_external-2.1.13.tar.gz`,      &die_if_nonempty(`cd /tmp; tar zxf $instdir/pwauth-2.2.8.tar.gz`,
      "Unable to extract mod_auth_external\n");       "Unable to extract pwauth\n");
     my $dir = "/tmp/mod_auth_external-2.1.13/pwauth";      my $dir = "/tmp/pwauth-2.2.8";
     open PATCH, "| patch $dir/config.h" ||       open PATCH, "| patch $dir/config.h" || 
  die "Unable to start patch for mod_auth_external.  Halting\n";   die "Unable to start patch for pwauth.  Halting\n";
     print PATCH $patch;      print PATCH $patch;
     close PATCH;      close PATCH;
     print_and_log("\n");      print_and_log("\n");
Line 269  END Line 263  END
     if ($result ne $expected) {      if ($result ne $expected) {
  die "Unable to compile patched pwauth.  Halting.\n";   die "Unable to compile patched pwauth.  Halting.\n";
     }          }    
     print_and_log( "appearant success compiling pwauth:\n".$result );      print_and_log( "apparent success compiling pwauth:\n".$result );
     # Install patched pwauth      # Install patched pwauth
     print_and_log("Copying pwauth to /usr/local/sbin\n");      print_and_log("Copying pwauth to /usr/local/sbin\n");
     if (! copy "$dir/pwauth","/usr/local/sbin/pwauth") {      if (! copy "$dir/pwauth","/usr/local/sbin/pwauth") {
Line 318  sub setup_mysql { Line 312  sub setup_mysql {
     }      }
     print_and_log("\n");      print_and_log("\n");
     #      #
   
       my ($mysqlinfo,$mysql_ver);
       open(PIPE,"/usr/bin/mysql -V  |");
       $mysqlinfo = <PIPE>;
       close(PIPE);
       if ($mysqlinfo =~ /Distrib\s+([\d]+)\./) {
           $mysql_ver = $1;
       }
     my $mysql_commands = "CREATE DATABASE loncapa;\n";      my $mysql_commands = "CREATE DATABASE loncapa;\n";
     if ($setup_mysql_permissions) {      if ($setup_mysql_permissions) {
  ##   ##
Line 330  to remember it. Line 332  to remember it.
 END  END
         my $rootpass = <>;          my $rootpass = <>;
  chomp $rootpass;   chomp $rootpass;
  $mysql_commands .= <<"END";   $mysql_commands .= <<"BLOCKONE";
 INSERT INTO user (Host, User, Password)  INSERT INTO user (Host, User, Password)
 VALUES ('localhost','www',password('localhostkey'));  VALUES ('localhost','www',password('localhostkey'));
 INSERT INTO db VALUES ('localhost','loncapa','www',  BLOCKONE
 'Y','Y','Y','Y','Y','Y','N','Y','Y','Y');          if ($mysql_ver < 4) {
               $mysql_commands .=<<"BLOCKTWO";
   INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv,Grant_priv,References_priv,Index_priv,Alter_priv) VALUES ('localhost','loncapa','www','Y','Y','Y','Y','Y','Y','N','Y','Y','Y');
   BLOCKTWO
           } else {
               $mysql_commands .=<<"BLOCKTHREE";
   INSERT INTO db (Host,Db,User,Select_priv,Insert_priv,Update_priv,Delete_priv,Create_priv,Drop_priv,Grant_priv,References_priv,Index_priv,Alter_priv,Create_tmp_table_priv,Lock_tables_priv) VALUES ('localhost','loncapa','www','Y','Y','Y','Y','Y','Y','N','Y','Y','Y','Y','Y');
   BLOCKTHREE
           }
           $mysql_commands .=<<"END"; 
 SET PASSWORD FOR root\@localhost=PASSWORD('$rootpass');  SET PASSWORD FOR root\@localhost=PASSWORD('$rootpass');
 DELETE FROM user WHERE host<>'localhost';  DELETE FROM user WHERE host<>'localhost';
 FLUSH PRIVILEGES;  FLUSH PRIVILEGES;
Line 399  You seem to have a version of loncapa-cu Line 410  You seem to have a version of loncapa-cu
 This copy will be used and a new version will NOT be downloaded.    This copy will be used and a new version will NOT be downloaded.  
 If you wish, you may download a new version by executing:  If you wish, you may download a new version by executing:
   
 wget http://install.loncapa.org/versions/loncapa-current.tar.gz  wget http://install.loncapa.org/versions/loncapa-fedora-current.tar.gz
   
 ------------------------------------------------------------------------  ------------------------------------------------------------------------
 END  END
Line 409  END Line 420  END
     ## untar loncapa.tar.gz      ## untar loncapa.tar.gz
     ##      ##
     print_and_log("Extracting LON-CAPA source files\n");      print_and_log("Extracting LON-CAPA source files\n");
     writelog(`cd ~root; tar zxf $instdir/loncapa-current.tar.gz`);      writelog(`cd ~root; tar zxf $instdir/$lctarball`);
     print_and_log("\n");      print_and_log("\n");
     print <<"ENDMSG";      print <<"ENDMSG";
 All of the extra files seem to have been installed correctly.  It remains for   All of the extra files seem to have been installed correctly.  It remains for 

Removed from v.1.1  
changed lines
  Added in v.1.9


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>