slitaz-forge diff mirror/info/index.php @ rev 157

mirror: Add mirror info files
author Christophe Lincoln <pankso@slitaz.org>
date Tue Mar 20 13:13:22 2012 +0100 (2012-03-20)
parents
children 076ab51e4997
line diff
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/mirror/info/index.php	Tue Mar 20 13:13:22 2012 +0100
     1.3 @@ -0,0 +1,375 @@
     1.4 +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     1.5 +    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
     1.6 +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
     1.7 +<head>
     1.8 +	<title>SliTaz Mirror</title>
     1.9 +	<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1" />
    1.10 +	<meta name="description" content="slitaz mirror server" />
    1.11 +	<meta name="robots" content="index, nofollow" />
    1.12 +	<meta name="author" content="SliTaz Contributors" />
    1.13 +	<link rel="shortcut icon" href="/css/favicon.ico" />
    1.14 +	<link rel="stylesheet" type="text/css" href="/css/slitaz.css" />
    1.15 +	<style type="text/css">
    1.16 +#copy {
    1.17 +	text-align: center;
    1.18 +}
    1.19 +
    1.20 +#bottom {
    1.21 +	text-align: center;
    1.22 +}
    1.23 +	</style>
    1.24 +</head>
    1.25 +<body>
    1.26 +
    1.27 +<!-- Header -->
    1.28 +<div id="header">
    1.29 +	<div id="logo"></div>
    1.30 +	<div id="network">
    1.31 +		<a href="http://www.slitaz.org/">
    1.32 +		<img src="/css/pics/network.png" alt="network.png" /></a>
    1.33 +		<a href="http://scn.slitaz.org/">Community</a>
    1.34 +		<a href="http://doc.slitaz.org/" title="SliTaz Community Documentation">Doc</a>
    1.35 +		<a href="http://forum.slitaz.org/" title="Slitaz Forum">Forum</a>
    1.36 +		<a href="http://bugs.slitaz.org/" title="Bug Tracking System">Bugs</a>
    1.37 +		<a href="http://hg.slitaz.org/" title="SliTaz repositories">Hg</a>
    1.38 +	</div>
    1.39 +	<h1><a href="http://<?php echo $_SERVER["HTTP_HOST"]; ?>/">SliTaz 
    1.40 +	<?php $host=preg_replace('/(\w+).*/i','$1',$_SERVER["HTTP_HOST"]); echo $host; ?></a></h1>
    1.41 +</div>
    1.42 +
    1.43 +<!-- Block -->
    1.44 +<div id="block">
    1.45 +	<!-- Navigation -->
    1.46 +	<div id="block_nav">
    1.47 +		<h4><img src="/css/pics/development.png" alt="development.png" />Developers Corner</h4>
    1.48 +		<ul>
    1.49 +			<li><a href="http://www.slitaz.org/en/devel/">Website devel</a></li>
    1.50 +			<li><a href="http://scn.slitaz.org/">Community</a></li>
    1.51 +			<li><a href="http://cook.slitaz.org/">Build Bot</a></li>
    1.52 +			<li><a href="http://tank.slitaz.org/">Tank Server</a></li>
    1.53 +			<li><a href="http://mirror.slitaz.org/info/">Mirror Server</a> -
    1.54 +			<a href="http://mirror.slitaz.org/console/">Console</a>
    1.55 +			</li>
    1.56 +		</ul>
    1.57 +	</div>
    1.58 +	<!-- Information/image -->
    1.59 +	<div id="block_info">
    1.60 +	<h4>Codename: <?php echo $host; ?></h4>
    1.61 +		<p>
    1.62 +			This is the SliTaz GNU/Linux main mirror. The server runs naturally SliTaz 
    1.63 +			(stable) in an lguest virtual machine provided by 
    1.64 +			<a href="http://www.ads-lu.com/">Allied Data Sys. (ADS)</a>.
    1.65 +		</p>
    1.66 +		<p>
    1.67 +			Mirror CPU is a <?php system("sed -e '/^model name/!d;s/.*Intel(R) //;" .         
    1.68 +			"s/@//;s/(.*)//;s/CPU //;s/.*AMD //;s/.*: //;s/Processor //' </proc/cpuinfo |" .
    1.69 +			" awk '{ s=$0; n++ } END { if (n == 2) printf \"dual \";" .
    1.70 +			"if (n == 4) printf \"quad \"; print s }' ")?> -
    1.71 +			<?php system("free | awk '/Mem:/ { x=2*$2-1; while (x >= 1024) { x /= 1024; ".
    1.72 +			"n++ }; y=1; while (x > 2) { x /= 2; y *= 2}; ".
    1.73 +			"printf \"%d%cB RAM\",y,substr(\"MG\",n,1) }' ")?> - Located in France next to 
    1.74 +			Roubaix. This page has real time statistics provided by PHP 
    1.75 +			<code>system()</code> Mirror is also monitored by RRDtool which provides 
    1.76 +			<a href="graphs.php">graphical stats</a>.
    1.77 +		</p>
    1.78 +	</div>
    1.79 +</div>
    1.80 +
    1.81 +<!-- Content -->
    1.82 +<div id="content">
    1.83 +
    1.84 +<h2><a href="graphs.php"><img 
    1.85 +	style="vertical-align: middle; padding: 0 4px 0 0;"
    1.86 +	title="Mirror RRDtool graphs" alt="graphs"
    1.87 +    src="pics/website/monitor.png" /></a>System stats</h2>
    1.88 +
    1.89 +<h4>Uptime</h4>
    1.90 +
    1.91 +<pre class="package">
    1.92 +<?php
    1.93 +system("uptime | sed 's/^\s*//'");
    1.94 +?>
    1.95 +</pre>
    1.96 +
    1.97 +<h4>Disk usage</h4>
    1.98 +
    1.99 +<pre class="package">
   1.100 +<?php
   1.101 +system("df -h | sed '/^rootfs/d' | grep  '\(^/dev\|Filesystem\)'");
   1.102 +?>
   1.103 +</pre>
   1.104 +
   1.105 +<h4>Network</h4>
   1.106 +<pre class="package">
   1.107 +<?php
   1.108 +system("ifconfig eth0 | awk '{ if (/X packet/ || /X byte/) print }' | sed 's/^\s*//'");
   1.109 +?>
   1.110 +</pre>
   1.111 +
   1.112 +
   1.113 +<?php if (isset($_GET["all"])) { ?>
   1.114 +<h4>Logins</h4>
   1.115 +<pre class="package">
   1.116 +<?php
   1.117 +system("last");
   1.118 +?>
   1.119 +</pre>
   1.120 +
   1.121 +<h4>Processes</h4>
   1.122 +<pre class="package">
   1.123 +<?php
   1.124 +system("top -n1 -b");
   1.125 +?>
   1.126 +</pre>
   1.127 +<?php } ?>
   1.128 +
   1.129 +<a name="vhosts"></a>
   1.130 +<h3><a href="http://mirror.slitaz.org/awstats.pl?config=info.mirror.slitaz.org" target="_blank">
   1.131 +	<img title="Mirror Virtual hosts" alt="vhosts"
   1.132 +    src="pics/website/vhosts.png" /></a>Virtual hosts</h3>
   1.133 +
   1.134 +<ul>
   1.135 +	<li><a href="http://mirror.slitaz.org/">mirror.slitaz.org</a> - SliTaz Mirror.
   1.136 +	(<a href="http://mirror.slitaz.org/stats" target="_blank">stats</a>)</li>
   1.137 +	<li><a href="http://scn.slitaz.org/">scn.slitaz.org</a> - SliTaz Community Network.
   1.138 +	(<a href="http://mirror.slitaz.org/awstats.pl?config=scn.slitaz.org" target="_blank">stats</a>)</li>
   1.139 +	<li><a href="http://pizza.slitaz.org/">pizza.slitaz.org</a> - SliTaz Flavor builder.
   1.140 +	(<a href="http://mirror.slitaz.org/awstats.pl?config=pizza.mirror.slitaz.org" target="_blank">stats</a>)</li>
   1.141 +	<li><a href="http://tiny.slitaz.org/">tiny.slitaz.org</a> - Tiny SliTaz builder.
   1.142 +	(<a href="http://mirror.slitaz.org/awstats.pl?config=tiny.slitaz.org" target="_blank">stats</a>)</li>
   1.143 +	<li><a href="https://ajaxterm.slitaz.org/">ajaxterm.slitaz.org</a> - Slitaz Web Console.
   1.144 +	(<a href="http://mirror.slitaz.org/awstats.pl?config=ajaxterm.slitaz.org" target="_blank">stats</a>)</li>
   1.145 +</ul>
   1.146 +
   1.147 +<a name="replicas"></a>
   1.148 +<h3><a href="http://mirror.slitaz.org/awstats.pl?config=replicas.mirror.slitaz.org" target="_blank">
   1.149 +         <img title="Tank replicas" alt="replicas"
   1.150 +    src="pics/website/vhosts.png" /></a>Tank replicas</h3>
   1.151 +
   1.152 +<ul>
   1.153 +	<li><a href="http://mirror.slitaz.org/www/">www.slitaz.org</a> - SliTaz Website.
   1.154 +	(<a href="http://www.slitaz.org/" target="_blank">main</a>)</li>
   1.155 +	<li><a href="http://mirror.slitaz.org/doc/">doc.slitaz.org</a> - Documentation.
   1.156 +	(<a href="http://doc.slitaz.org/" target="_blank">main</a>)</li>
   1.157 +	<li><a href="http://mirror.slitaz.org/pkgs/">pkgs.slitaz.org</a> - Packages Web interface.
   1.158 +	(<a href="http://pkgs.slitaz.org/" target="_blank">main</a>)</li>
   1.159 +	<li><a href="http://mirror.slitaz.org/hg/">hg.slitaz.org</a> - Mercurial repositories (read only).
   1.160 +	(<a href="http://hg.slitaz.org/" target="_blank">main</a>
   1.161 +	<a href="http://hg.tuxfamily.org/mercurialroot/slitaz/" target="_blank">tuxfamily</a>)</li>
   1.162 +	<li><a href="http://mirror.slitaz.org/webboot/">boot.slitaz.org</a> - gPXE Web boot.
   1.163 +	(<a href="http://boot.slitaz.org/" target="_blank">main</a>)</li>
   1.164 +</ul>
   1.165 +
   1.166 +<a name="boot"></a>
   1.167 +<h3><a href="http://doc.slitaz.org/en:guides:pxe#web-booting" target="_blank">
   1.168 +	<img title="Web boot" src="pics/website/vhosts.png" 
   1.169 +	 alt="web boot" /></a>Web boot services</h3>
   1.170 +	 The SliTaz mirror provides a <b>tftp</b> access and a 
   1.171 +	 <a href="/pxe">pxe</a> tree. Simply add to your DHCP server configuration file:
   1.172 +	 <ul>
   1.173 +	 <li>for <b>udhcpd</b><!-- siaddr? sname? tftp? -->
   1.174 +	 <pre>
   1.175 +siaddr mirror.slitaz.org
   1.176 +boot_file gpxe.pxe</pre>
   1.177 +	 </li>
   1.178 +	 <li>for <b>dhcpd</b>
   1.179 +	 <pre>
   1.180 +next-server "mirror.slitaz.org"
   1.181 +filemane "gpxe.pxe"</pre>
   1.182 +	 </li>
   1.183 +	 <li>for <b>dnsmasq</b>
   1.184 +	 <pre>
   1.185 +dhcp-boot=gpxe.pxe,mirror.slitaz.org</pre>
   1.186 +	 </li>
   1.187 +	 </ul>
   1.188 +
   1.189 +<a name="mirrors"></a>
   1.190 +<h3><a href="http://mirror.slitaz.org/awstats.pl?config=rsync" target="_blank">
   1.191 +	<img title="Secondary mirrors" src="pics/website/vhosts.png" 
   1.192 +	 alt="mirrors" /></a>Mirrors</h3>
   1.193 +	Most mirrors are updated using the url: <b>rsync://mirror.slitaz.org/slitaz/</b>
   1.194 +	(<a href="http://mirror.slitaz.org/awstats.pl?config=rsync">stats</a>)
   1.195 +	<pre>
   1.196 +rsync -azH --delete rsync://mirror.slitaz.org/slitaz/ /local/slitaz/mirror/ </pre>
   1.197 +	New mirrors should be announced on the 
   1.198 +	<a href="http://www.slitaz.org/en/mailing-list.html">mailing list</a>.
   1.199 +<ul>
   1.200 +<?php
   1.201 +$output_url_file="";
   1.202 +$output_url_handler;
   1.203 +$mirrors_url_file="/tmp/mirrors";
   1.204 +
   1.205 +function test_url($link, $proto)
   1.206 +{
   1.207 +	global $output_url_file;
   1.208 +	global $mirrors_url_file;
   1.209 +	global $output_url_handler;
   1.210 +	
   1.211 +	if ($output_url_file != "") {
   1.212 +		switch($proto) {
   1.213 +		case "http" :
   1.214 +		case "ftp" :
   1.215 +			$cmd = "busybox wget -s $link/README" ;
   1.216 +			break;
   1.217 +		case "rsync" :
   1.218 +			$cmd = "rsync $link > /dev/null 2>&1" ;
   1.219 +			break;
   1.220 +		default :
   1.221 +			return FALSE;
   1.222 +		}
   1.223 +		if (shell_exec("$cmd && echo -n OK") == "OK") {
   1.224 +			fwrite($output_url_handler,$link."\n");
   1.225 +			return TRUE;
   1.226 +		} 
   1.227 +		return FALSE;
   1.228 +	}
   1.229 +	return shell_exec("grep -qs ^$link$ $mirrors_url_file && echo -n OK") == "OK"; 
   1.230 +}
   1.231 +
   1.232 +if (! file_exists($mirrors_url_file)) {
   1.233 +	$output_url_file = tempnam('/tmp','mkmirrors');
   1.234 +	$output_url_handler = fopen($output_url_file, "w");
   1.235 +	fwrite($output_url_handler,"http://mirror.slitaz.org/\n");
   1.236 +	fwrite($output_url_handler,"rsync://mirror.slitaz.org/\n");
   1.237 +}
   1.238 +
   1.239 +# Flags icons from http://www.famfamfam.com/lab/icons/flags/famfamfam_flag_icons.zip
   1.240 +foreach (array(
   1.241 +	array(	"flag"  => "ch",
   1.242 +		"http"  => "http://mirror.switch.ch/ftp/mirror/slitaz/",
   1.243 +		"ftp"   => "ftp://mirror.switch.ch/mirror/slitaz/"),
   1.244 +	array(	"flag"  => "us",
   1.245 +		"http"  => "http://www.gtlib.gatech.edu/pub/slitaz/",
   1.246 +		"ftp"   => "ftp://ftp.gtlib.gatech.edu/pub/slitaz/",
   1.247 +		"rsync" => "rsync://www.gtlib.gatech.edu/slitaz/"),
   1.248 +	array(	"flag"  => "fr",
   1.249 +		"http"  => "http://download.tuxfamily.org/slitaz/",
   1.250 +		"ftp"   => "ftp://download.tuxfamily.org/slitaz/",
   1.251 +		"rsync" => "rsync://download.tuxfamily.org/pub/slitaz/"),
   1.252 +	array(	"flag"  => "fr",
   1.253 +		"http"  => "http://www.linuxembarque.com/slitaz/mirror/"),
   1.254 +	array(	"flag"  => "cn",
   1.255 +		"http"  => "http://mirror.lupaworld.com/slitaz/"),
   1.256 +	array(	"flag"  => "cn",
   1.257 +		"http"  => "http://ks.lupaworld.com/slitaz/"),
   1.258 +	array(	"flag"  => "br",
   1.259 +		"http"  => "http://slitaz.c3sl.ufpr.br/",
   1.260 +		"ftp"   => "ftp://slitaz.c3sl.ufpr.br/slitaz/",
   1.261 +		"rsync" => "rsync://slitaz.c3sl.ufpr.br/slitaz/"),
   1.262 +	array(	"flag"  => "it",
   1.263 +		"http"  => "http://slitaz.mirror.garr.it/mirrors/slitaz/",
   1.264 +		"ftp"   => "ftp://slitaz.mirror.garr.it/mirrors/slitaz/",
   1.265 +		"rsync" => "rsync://slitaz.mirror.garr.it/mirrors/slitaz/"),
   1.266 +	array(	"flag"  => "si",
   1.267 +		"http"  => "http://mirror.drustvo-dns.si/slitaz/"),
   1.268 +	array(	"flag"  => "si",
   1.269 +		"ftp"   => "ftp://ftp.pina.si/slitaz/"),
   1.270 +	array(	"flag"  => "us",
   1.271 +		"http"  => "http://distro.ibiblio.org/pub/linux/distributions/slitaz/",
   1.272 +		"ftp"   => "ftp://distro.ibiblio.org/pub/linux/distributions/slitaz/"),
   1.273 +	array(	"flag"  => "nl",
   1.274 +		"http"  => "http://ftp.vim.org/ftp/os/Linux/distr/slitaz/",
   1.275 +		"ftp"   => "ftp://ftp.vim.org/mirror/os/Linux/distr/slitaz/"),
   1.276 +	array(	"flag"  => "nl",
   1.277 +		"http"  => "http://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/",
   1.278 +		"ftp"   => "ftp://ftp.nedit.org/ftp/ftp/pub/os/Linux/distr/slitaz/"),
   1.279 +	array(	"flag"  => "ch",
   1.280 +		"http"  => "http://ftp.ch.xemacs.org/ftp/pool/2/mirror/slitaz/",
   1.281 +		"ftp"   => "ftp://ftp.ch.xemacs.org//pool/2/mirror/slitaz/"),
   1.282 +	array(	"flag"  => "de",
   1.283 +		"http"  => "http://ftp.uni-stuttgart.de/slitaz/",
   1.284 +		"ftp"   => "ftp://ftp.uni-stuttgart.de/slitaz/"),
   1.285 +	array(	"flag"  => "au",
   1.286 +		"http"  => "http://mirror.iprimus.com/slitaz/"),
   1.287 +	array(	"flag"  => "au",
   1.288 +		"http"  => "http://mirror01.ipgn.com.au/slitaz/"),
   1.289 +	array(	"flag"  => "us",
   1.290 +		"http"  => "http://mirror.clarkson.edu/slitaz/",
   1.291 +		"rsync" => "rsync://mirror.clarkson.edu/slitaz/")) as $mirror) {
   1.292 +	$flag = "pics/website/".$mirror["flag"].".png";
   1.293 +	$head = TRUE;
   1.294 +	foreach(array("http", "ftp", "rsync") as $proto) {
   1.295 +		if (!isset($mirror[$proto])) continue;
   1.296 +		$link = $mirror[$proto];
   1.297 +		if (!test_url($link, $proto)) continue;
   1.298 +		$serveur = parse_url($link, PHP_URL_HOST);
   1.299 +		if ($head) echo <<<EOT
   1.300 +	<li><a href="http://en.utrace.de/?query=$serveur">
   1.301 +		<img title="map" src="$flag" alt="map" /></a>
   1.302 +		<a href="$link">$link</a>
   1.303 +EOT;
   1.304 +		else echo <<<EOT
   1.305 +		or <a href="$link">$proto</a>
   1.306 +EOT;
   1.307 +		$head = FALSE;
   1.308 +	}
   1.309 +	if ($head) continue;
   1.310 +	echo "	</li>\n";
   1.311 +}
   1.312 +
   1.313 +if ($output_url_file != "") {
   1.314 +	fclose($output_url_handler);
   1.315 +	rename($output_url_file, $mirrors_url_file);
   1.316 +	chmod($mirrors_url_file, 0644);
   1.317 +}
   1.318 +
   1.319 +?>
   1.320 +</ul>
   1.321 +
   1.322 +<a name="builds"></a>
   1.323 +<h3><img title="Daily builds" src="pics/website/cdrom.png" alt="builds" 
   1.324 +     width="25" height="25" />
   1.325 +    Daily builds</h3>
   1.326 +
   1.327 +<?php
   1.328 +function display_log($file,$anchor,$url)
   1.329 +{
   1.330 +echo '<a name="'.$anchor.'"></a>';
   1.331 +echo "<h4><a href=\"$url\">";
   1.332 +system("stat -c '%y %n' ".$file." | sed 's/.000000000//;s|/var/log/\(.*\).log|\\1.iso|'");
   1.333 +echo "</a></h4>";
   1.334 +echo "<pre>";
   1.335 +$sed_script="s/.\[[0-9][^mG]*.//g";
   1.336 +$sed_script.=";:a;s/^\(.\{1,68\}\)\(\[ [A-Za-z]* \]\)/\\1 \\2/;ta";
   1.337 +$sed_script.=";s#\[ OK \]#[ <span style=\"color:green\">OK</span> ]#";
   1.338 +$sed_script.=";s#\[ Failed \]#[ <span style=\"color:red\">Failed</span> ]#";
   1.339 +system("sed '".$sed_script."' < $file");
   1.340 +echo "</pre>";
   1.341 +}
   1.342 +
   1.343 +display_log("/var/log/packages-stable.log", "buildstable", "/iso/stable/packages-3.0.iso");
   1.344 +display_log("/var/log/packages-cooking.log","buildcooking","/iso/cooking/packages-cooking.iso");
   1.345 +?>
   1.346 +
   1.347 +<!-- End of content -->
   1.348 +</div>
   1.349 +
   1.350 +<div id="content_bottom">
   1.351 +<div class="bottom_left"></div>
   1.352 +<div class="bottom_right"></div>
   1.353 +</div>
   1.354 +
   1.355 +<!-- Start of footer and copy notice -->
   1.356 +<div id="copy">
   1.357 +<p>                                                                          
   1.358 +Last update : <?php echo date('r'); ?>
   1.359 +</p> 
   1.360 +<p>
   1.361 +Copyright &copy; <?php echo date('Y'); ?> <a href="http://www.slitaz.org/">SliTaz</a> -
   1.362 +<a href="http://www.gnu.org/licenses/gpl.html">GNU General Public License</a>
   1.363 +</p>
   1.364 +<!-- End of copy -->
   1.365 +</div>
   1.366 +
   1.367 +<!-- Bottom and logo's -->
   1.368 +<div id="bottom">
   1.369 +<p>
   1.370 +<a href="http://validator.w3.org/check?uri=referer"><img
   1.371 +   src="/css/pics/website/xhtml10.png" alt="Valid XHTML 1.0"
   1.372 +   title="Code validé XHTML 1.0"
   1.373 +   style="width: 80px; height: 15px;" /></a>
   1.374 +</p>
   1.375 +</div>
   1.376 +
   1.377 +</body>
   1.378 +</html>