2005-05-20 17:42:06 +00:00
< ? php
2005-10-26 05:38:40 +00:00
function type_text ( $type ) {
2005-05-20 17:42:06 +00:00
global $xml ;
if ( $xml ) {
2005-10-26 05:38:40 +00:00
switch ( $type ) {
case " win_old " :
return " Single-mode Windows installer " ;
case " win_new " :
return " Windows installer " ;
case " bare_core " :
2013-10-08 21:40:09 +00:00
return " Command-line client (no GUI) " ;
2005-10-26 05:38:40 +00:00
case " sea " :
return " Self-extracting archive " ;
2014-11-06 20:33:09 +00:00
case " mac_advanced " :
return " Standard GUI " ;
2013-02-14 04:02:26 +00:00
case " apk " :
return " Android Installer " ;
2005-10-26 05:38:40 +00:00
}
2014-11-06 20:33:09 +00:00
} else {
2005-10-26 05:38:40 +00:00
switch ( $type ) {
case " win_old " :
return " <a href=client_windows.php>Single-mode Windows installer</a> " ;
case " win_new " :
return " <a href=win_install.php>Windows installer</a> " ;
case " bare_core " :
2013-10-08 21:40:09 +00:00
return " <a href=bare_core.php>Command-line client (no GUI)</a> " ;
2005-10-26 05:38:40 +00:00
case " sea " :
return " <a href=sea.php>Self-extracting archive</a> " ;
2014-11-06 20:33:09 +00:00
case " mac_advanced " :
return " <a href=mac_advanced.php>Standard GUI</a> " ;
case " apk " :
return " TBD " ;
}
2005-05-20 17:42:06 +00:00
}
}
2013-02-14 04:02:26 +00:00
function linux_info () {
2014-11-06 20:33:09 +00:00
return " Tested on the current Ubuntu distribution; may work on others.
2013-02-14 04:02:26 +00:00
< br > If available , we recommend that you install a
< a href = http :// boinc . berkeley . edu / wiki / Installing_BOINC #Linux>
distribution - specific package </ a >
instead . " ;
}
2015-03-24 17:25:42 +00:00
$w74 = array (
2015-03-10 04:27:29 +00:00
" num " => " 7.4.42 " ,
2015-03-24 17:25:42 +00:00
" status " => " Recommended version " ,
2015-03-10 04:27:29 +00:00
" file " => " boinc_7.4.42_windows_intelx86.exe " ,
" vbox_file " => " boinc_7.4.42_windows_intelx86_vbox.exe " ,
" vbox_version " => " 4.3.12 " ,
" date " => " 10 Mar 2015 " ,
" type " => " win_new " ,
);
2014-02-12 16:20:34 +00:00
$w72 = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.2.42 " ,
2014-11-11 17:41:41 +00:00
" status " => " Older version " ,
2014-11-06 20:33:09 +00:00
" file " => " boinc_7.2.42_windows_intelx86.exe " ,
" vbox_file " => " boinc_7.2.42_windows_intelx86_vbox.exe " ,
2014-11-11 09:05:52 +00:00
" vbox_version " => " 4.2.16 " ,
2014-11-06 20:33:09 +00:00
" date " => " 28 Feb 2014 " ,
" type " => " win_new " ,
2013-12-31 08:55:03 +00:00
);
2009-12-09 21:28:17 +00:00
$w66 = array (
2009-10-28 18:28:23 +00:00
" num " => " 6.6.38 " ,
2013-11-08 16:29:38 +00:00
" status " => " Older version (also works on Windows 98, Windows ME) " ,
2009-10-28 18:28:23 +00:00
" file " => " boinc_6.6.38_windows_intelx86.exe " ,
" date " => " 28 Oct 2009 " ,
2009-04-09 20:54:55 +00:00
" type " => " win_new " ,
);
2010-03-05 18:38:49 +00:00
$w5816 = array (
" num " => " 5.8.16 " ,
" status " => " Older version (also works on Windows 95 and NT 4.0) " ,
" file " => " boinc_5.8.16_windows_intelx86.exe " ,
" date " => " 1 Mar 2007 " ,
" type " => " win_new " ,
2009-12-09 21:28:17 +00:00
);
2015-03-24 17:25:42 +00:00
$w74x64 = array (
2015-03-10 04:27:29 +00:00
" num " => " 7.4.42 " ,
2015-03-24 17:25:42 +00:00
" status " => " Recommended version " ,
2015-03-10 04:27:29 +00:00
" file " => " boinc_7.4.42_windows_x86_64.exe " ,
" vbox_file " => " boinc_7.4.42_windows_x86_64_vbox.exe " ,
" vbox_version " => " 4.3.12 " ,
" date " => " 10 Mar 2015 " ,
" type " => " win_new " ,
);
2014-02-12 16:20:34 +00:00
$w72x64 = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.2.42 " ,
2014-11-11 17:41:41 +00:00
" status " => " Older version " ,
2014-11-06 20:33:09 +00:00
" file " => " boinc_7.2.42_windows_x86_64.exe " ,
" vbox_file " => " boinc_7.2.42_windows_x86_64_vbox.exe " ,
2014-11-11 17:41:41 +00:00
" vbox_version " => " 4.2.16 " ,
2014-11-06 20:33:09 +00:00
" date " => " 28 Feb 2014 " ,
" type " => " win_new " ,
2013-12-31 08:55:03 +00:00
);
2015-03-24 17:25:42 +00:00
$m74 = array (
2015-03-12 17:12:13 +00:00
" num " => " 7.4.42 " ,
2015-03-24 17:25:42 +00:00
" status " => " Recommended version (standard GUI) " ,
2015-03-12 17:12:13 +00:00
" file " => " boinc_7.4.42_macOSX_x86_64.zip " ,
" date " => " 12 Mar 2015 " ,
" type " => " mac_advanced " ,
);
2014-02-12 16:20:34 +00:00
$m72 = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.2.42 " ,
2014-11-11 17:44:05 +00:00
" status " => " Recommended version (standard GUI) " ,
2014-11-06 20:33:09 +00:00
" file " => " boinc_7.2.42_macOSX_i686.zip " ,
" date " => " 28 Feb 2014 " ,
" type " => " mac_advanced " ,
2013-12-31 08:55:03 +00:00
);
2012-04-12 22:24:51 +00:00
$m612_ppc = array (
2014-11-06 20:33:09 +00:00
" num " => " 6.12.35 " ,
" status " => " Recommended version (standard GUI) " ,
" file " => " boinc_6.12.35_macOSX_universal.zip " ,
" date " => " 11 Aug 2011 " ,
" type " => " mac_advanced " ,
2012-04-12 22:24:51 +00:00
);
2009-05-15 17:14:38 +00:00
$m66 = array (
2009-06-10 20:49:42 +00:00
" num " => " 6.6.36 " ,
2009-12-07 09:03:51 +00:00
" status " => " Older version (standard GUI) (works on OS 10.3.9 - OS 10.5.8) " ,
2009-06-10 20:49:42 +00:00
" file " => " boinc_6.6.36_macOSX_universal.zip " ,
" date " => " 10 June 2009 " ,
2009-04-09 20:54:55 +00:00
" type " => " mac_advanced " ,
);
2015-03-24 17:25:42 +00:00
$m74c = array (
2015-03-12 17:12:13 +00:00
" num " => " 7.4.42 " ,
2015-03-24 17:25:42 +00:00
" status " => " Recommended version (Unix command-line version) " ,
2015-03-12 17:12:13 +00:00
" file " => " boinc_7.4.42_x86_64-apple-darwin.zip " ,
" date " => " 12 Mar 2015 " ,
" type " => " bare_core " ,
);
2014-02-12 16:20:34 +00:00
$m72c = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.2.42 " ,
2014-11-11 17:44:05 +00:00
" status " => " Recommended version (Unix command-line version) " ,
2014-11-06 20:33:09 +00:00
" file " => " boinc_7.2.42_i686-apple-darwin.zip " ,
" date " => " 28 Feb 2014 " ,
" type " => " bare_core " ,
2013-12-31 08:55:03 +00:00
);
2012-04-12 22:24:51 +00:00
$m612c_ppc = array (
2014-11-06 20:33:09 +00:00
" num " => " 6.12.35 " ,
" status " => " Recommended version (Unix command-line version) " ,
" file " => " boinc_6.12.35_universal-apple-darwin.zip " ,
" date " => " 11 Aug 2011 " ,
" type " => " bare_core " ,
2012-04-12 22:24:51 +00:00
);
2009-05-15 17:14:38 +00:00
$m66c = array (
2009-06-10 20:49:42 +00:00
" num " => " 6.6.36 " ,
2009-12-07 09:03:51 +00:00
" status " => " Older version (Unix command-line version) (works on OS 10.3.9 - OS 10.5.8) " ,
2009-06-10 20:49:42 +00:00
" file " => " boinc_6.6.36_universal-apple-darwin.zip " ,
" date " => " 10 June 2009 " ,
2009-04-09 20:54:55 +00:00
" type " => " bare_core " ,
);
2011-04-06 18:43:03 +00:00
$l612 = array (
2014-11-06 20:33:09 +00:00
" num " => " 6.12.22 " ,
" status " => " Recommended version " ,
" file " => " boinc_compat_6.12.22_i686-pc-linux-gnu.sh " ,
" date " => " 6 Apr 2011 " ,
" type " => " sea " ,
2011-04-06 18:43:03 +00:00
);
2014-03-12 21:45:28 +00:00
$l74ubuntudev = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.4.22 " ,
" status " => " Development version " ,
" file " => " boinc_7.4.22_i686-pc-linux-gnu.sh " ,
" date " => " 17 Sept 2014 " ,
" type " => " sea " ,
2014-03-12 21:45:28 +00:00
);
2014-02-12 16:20:34 +00:00
$l72ubuntu = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.2.42 " ,
" status " => " Recommended version " ,
" file " => " boinc_7.2.42_i686-pc-linux-gnu.sh " ,
" date " => " 28 Feb 2014 " ,
" type " => " sea " ,
2013-12-31 08:55:03 +00:00
);
2013-04-23 18:32:30 +00:00
$l70ubuntu = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.0.65 " ,
" status " => " Older version " ,
" file " => " boinc_7.0.65_i686-pc-linux-gnu.sh " ,
" date " => " 17 Apr 2013 " ,
" type " => " sea " ,
2012-05-21 16:01:12 +00:00
);
2014-03-12 21:45:28 +00:00
$l74ubuntux64dev = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.4.22 " ,
" status " => " Development version " ,
" file " => " boinc_7.4.22_x86_64-pc-linux-gnu.sh " ,
" date " => " 17 Sept 2014 " ,
" type " => " sea " ,
2014-03-12 21:45:28 +00:00
);
2014-02-12 16:20:34 +00:00
$l72ubuntux64 = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.2.42 " ,
" status " => " Recommended version " ,
" file " => " boinc_7.2.42_x86_64-pc-linux-gnu.sh " ,
" date " => " 28 Feb 2014 " ,
" type " => " sea " ,
2013-12-31 08:55:03 +00:00
);
2013-04-23 18:32:30 +00:00
$l70ubuntux64 = array (
2014-11-06 20:33:09 +00:00
" num " => " 7.0.65 " ,
" status " => " Older version " ,
" file " => " boinc_7.0.65_x86_64-pc-linux-gnu.sh " ,
" date " => " 17 Apr 2013 " ,
" type " => " sea " ,
2012-05-21 16:01:12 +00:00
);
2014-08-26 17:14:02 +00:00
$a74dev = array (
2014-11-26 19:28:10 +00:00
" num " => " 7.4.31 " ,
2014-11-06 20:33:09 +00:00
" status " => " Development Version " ,
2014-11-26 19:28:10 +00:00
" file " => " boinc_7.4.31.apk " ,
" date " => " 26 Nov 2014 " ,
2014-11-06 20:33:09 +00:00
" type " => " apk " ,
2014-08-26 17:14:02 +00:00
);
2014-11-24 19:29:22 +00:00
$a74 = array (
2015-02-13 18:13:17 +00:00
" num " => " 7.4.41 " ,
2014-11-06 20:33:09 +00:00
" status " => " Recommended Version " ,
2015-02-13 18:13:17 +00:00
" file " => " boinc_7.4.41.apk " ,
" date " => " 22 Jan 2015 " ,
2014-11-06 20:33:09 +00:00
" type " => " apk " ,
2013-07-22 17:00:09 +00:00
);
2009-10-14 18:07:49 +00:00
// platform descriptors. For each one, "versions"
// lists versions in reverse time order.
// i.e. the first non-dev version is the current one
2005-05-20 17:42:06 +00:00
$windows = array (
2013-11-12 08:14:14 +00:00
" name " => " Windows 32-bit " ,
2013-11-08 16:38:28 +00:00
" description " => " XP/Vista/7/8/8.1 " ,
2005-11-10 06:06:11 +00:00
" dbname " => " windows_intelx86 " ,
2005-05-20 17:42:06 +00:00
" versions " => array (
2014-11-11 17:41:41 +00:00
$w74 ,
2014-11-06 20:33:09 +00:00
$w72 ,
$w66 ,
$w5816 ,
2005-05-20 17:42:06 +00:00
)
);
2007-04-20 18:47:55 +00:00
$windowsx64 = array (
2008-01-28 15:48:09 +00:00
" name " => " Windows 64-bit " ,
2013-11-08 16:38:28 +00:00
" description " => " XP/Vista/7/8/8.1 " ,
2007-04-20 18:47:55 +00:00
" dbname " => " windows_x86_64 " ,
" versions " => array (
2014-11-11 17:41:41 +00:00
$w74x64 ,
2014-11-06 20:33:09 +00:00
$w72x64 ,
2007-04-20 18:47:55 +00:00
)
);
2005-05-20 17:42:06 +00:00
$mac = array (
2014-11-11 09:05:52 +00:00
" name " => " Mac OS X (64-bit Intel) " ,
2014-11-06 20:33:09 +00:00
" description " => " Version 10.5.0+ " ,
2012-04-12 22:41:35 +00:00
" dbname " => " x86_64-apple-darwin " ,
2005-05-20 17:42:06 +00:00
" versions " => array (
2014-11-11 17:41:41 +00:00
$m74 ,
$m74c ,
2012-04-12 22:24:51 +00:00
)
);
2014-11-11 09:05:52 +00:00
$mac32 = array (
2014-11-06 20:33:09 +00:00
" name " => " Mac OS X (32-bit or 64-bit Intel) " ,
2012-04-12 22:24:51 +00:00
" description " => " Version 10.4.0+ " ,
2014-12-03 22:22:26 +00:00
" dbname " => " x86_64-apple-darwin " ,
2012-04-12 22:24:51 +00:00
" versions " => array (
2014-11-06 20:33:09 +00:00
$m72 ,
$m72c ,
2014-11-11 09:05:52 +00:00
)
);
$macppc = array (
" name " => " Mac OS X (Power PC or 32-bit Intel) " ,
" description " => " Version 10.4.0+ " ,
" dbname " => " powerpc-apple-darwin " ,
" versions " => array (
$m612_ppc ,
$m612c_ppc ,
$m66 ,
$m66c ,
2005-05-20 17:42:06 +00:00
)
);
2007-05-17 17:39:31 +00:00
2012-06-05 20:13:19 +00:00
$linux = array (
" name " => " Linux x86 " ,
" description " => linux_info (),
2008-01-15 18:43:00 +00:00
" dbname " => " i686-pc-linux-gnu " ,
" versions " => array (
2014-11-06 20:33:09 +00:00
$l74ubuntudev ,
$l72ubuntu ,
$l70ubuntu ,
2008-01-15 18:43:00 +00:00
)
);
2007-05-17 17:39:31 +00:00
$linuxx64 = array (
2008-01-28 15:48:09 +00:00
" name " => " Linux x64 " ,
2012-06-05 20:13:19 +00:00
" description " => linux_info (),
" dbname " => " x86_64-pc-linux-gnu " ,
2007-05-17 17:39:31 +00:00
" versions " => array (
2014-11-06 20:33:09 +00:00
$l74ubuntux64dev ,
$l72ubuntux64 ,
$l70ubuntux64 ,
2007-05-17 17:39:31 +00:00
)
);
2013-02-14 04:02:26 +00:00
$linuxcompat = array (
2014-11-06 20:33:09 +00:00
" name " => " Older Linux x86 and x64 " ,
" description " => " For older Linux versions, both x86 and x64; command-line interface only " ,
" dbname " => " i686-pc-linux-gnu " ,
" versions " => array (
$l612 ,
)
2013-02-14 04:02:26 +00:00
);
2014-11-08 06:03:45 +00:00
$android = array (
" name " => " Android " ,
2015-02-13 18:13:17 +00:00
" description " => " Android version 4.1 and later for ARM, MIPS, or x86<br>We recommend that, rather than downloading BOINC from here,</br>you get it from the Google Play Store or the Amazon app store (for Kindle Fire) " ,
2014-11-06 20:33:09 +00:00
" dbname " => " arm-android-linux-gnu " ,
" versions " => array (
2014-11-24 19:29:22 +00:00
$a74 ,
2014-11-06 20:33:09 +00:00
)
2013-07-22 17:00:09 +00:00
);
2005-05-20 17:42:06 +00:00
$platforms = array (
" win " => $windows ,
2007-04-20 18:47:55 +00:00
" winx64 " => $windowsx64 ,
2005-05-20 17:42:06 +00:00
" mac " => $mac ,
2014-11-11 09:05:52 +00:00
" mac32 " => $mac32 ,
2012-04-12 22:31:28 +00:00
" macppc " => $macppc ,
2007-05-17 17:39:31 +00:00
" linuxx64 " => $linuxx64 ,
2014-11-06 20:33:09 +00:00
" linux " => $linux ,
2014-02-07 01:32:06 +00:00
" linuxcompat " => $linuxcompat ,
2014-11-08 06:03:45 +00:00
" android " => $android ,
2005-05-20 17:42:06 +00:00
);
2006-08-01 21:22:25 +00:00
function is_dev ( $v ) {
return ( strstr ( $v [ " status " ], " Development " ) != null );
}
2014-10-03 18:01:32 +00:00
function latest_version ( $p ) {
$dev = false ;
foreach ( $p [ 'versions' ] as $i => $v ) {
if ( ! $dev && is_dev ( $v )) continue ;
return $v ;
}
foreach ( $p [ 'versions' ] as $i => $v ) {
return $v ;
}
}
2009-08-12 16:01:46 +00:00
// note: rand() is inclusive
2010-05-24 19:26:59 +00:00
//switch(rand(0,3)) {
switch ( 0 ) {
case 0 : $url_base = " http://boinc.berkeley.edu/dl/ " ; break ;
2012-04-05 19:43:43 +00:00
//case 0: $url_base = "http://boincdl3.ssl.berkeley.edu/mirror/"; break;
//case 1: $url_base = "http://einstein.ligo.caltech.edu/download/boinc/dl/"; break;
//case 2: $url_base = "http://einstein.aei.mpg.de/download/boinc/dl/"; break;
2007-07-10 17:49:51 +00:00
//case 1: $url_base = "http://morel.mit.edu/download/boinc/dl/"; break;
2012-04-05 19:43:43 +00:00
//case 3: $url_base = "http://einstein-dl.phys.uwm.edu/download/boinc/dl/"; break;
2010-04-06 20:32:02 +00:00
//case 4: $url_base = "http://einstein.astro.gla.ac.uk/download/boinc/dl/"; break;
2007-07-10 17:49:51 +00:00
//case 4: $url_base = "http://albert.gravity.psu.edu/download/boinc/dl/"; break;
2010-03-10 06:00:37 +00:00
}
2006-08-01 21:22:25 +00:00
2005-05-20 17:42:06 +00:00
?>