ViewVC Help
View File | Revision Log | Show Annotations | Download File
/cvs/cvsroot/schmorpforge/genpage
(Generate patch)

Comparing cvsroot/schmorpforge/genpage (file contents):
Revision 1.49 by root, Mon Jul 20 05:55:19 2009 UTC vs.
Revision 1.71 by root, Fri Jun 25 14:13:35 2010 UTC

4 4
5mkdir "software.schmorp.de", 0755; 5mkdir "software.schmorp.de", 0755;
6mkdir "software.schmorp.de/pkg", 0755; 6mkdir "software.schmorp.de/pkg", 0755;
7mkdir "software.schmorp.de/img", 0755; 7mkdir "software.schmorp.de/img", 0755;
8system "rsync -av *.jpg software.schmorp.de/img/"; 8system "rsync -av *.jpg software.schmorp.de/img/";
9
10our %IRC = (
11 anyevent => ["irc.perl.org", "#anyevent", "http://mibbit.com/chat/#anyevent\@irc.perl.org"],
12 freenode => ["irc.freenode.org", "#schmorp", "http://webchat.freenode.net/?randomnick=1&channels=schmorp&prompt=1", ", users <tt>schmorp</tt> and <tt>elmex</tt>"],
13 rxvt => ["irc.freenode.org", "#rxvt-unicode", "http://webchat.freenode.net/?randomnick=1&channels=rxvt-unicode&prompt=1", ""],
14 rxvtdev => ["irc.freenode.org", "#rxvt-unicode-dev", "http://webchat.freenode.net/?randomnick=1&channels=rxvt-unicode-dev&prompt=1", " <b>(no support, development only)</b>"],
15);
9 16
10sub hdr($$) { 17sub hdr($$) {
11 print <<EOF; 18 print <<EOF;
12<?xml version='1.0' encoding='utf-8'?> 19<?xml version='1.0' encoding='utf-8'?>
13<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 20<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
103</head> 110</head>
104<body> 111<body>
105<p class='back'><a href='/'>Schmorpforge Ta-Sa Software Repository</a></p> 112<p class='back'><a href='/'>Schmorpforge Ta-Sa Software Repository</a></p>
106<h1 class="$_[1]">$_[0]</h1> 113<h1 class="$_[1]">$_[0]</h1>
107<div style="text-align: center; float: right; margin-left: 1em; margin-bottom: 1em"> 114<div style="text-align: center; float: right; margin-left: 1em; margin-bottom: 1em">
115<!--
116 <a title="Mach mit!" href="http://www.piratenpartei.de/navigation/politik/unsere-ziele">
117 <img src="http://res.tst.eu/denke_selbst.gif" alt="Werde Pirat!" width="468" height="60" border="0" />
118 </a>
119 <br />
120-->
108 <a href="http://www.piratenpartei.de/navigation/politik/unsere-ziele"> 121 <a href="http://www.piratenpartei.de/navigation/politik/unsere-ziele">
109 <img src="http://www.piratenpartei-hessen.de/common/piratenbanner1" alt="Piratenpartei" border="0"/> 122 <img src="http://res.tst.eu/piraten1.png" alt="Piratenpartei" width="468" height="60" border="0" />
110 </a> 123 </a>
111 <br /> 124 <br />
112 <a href="http://www.deliantra.net/"> 125 <a href="http://www.deliantra.net/">
113 <img src="http://www.deliantra.net/images/deliantra.png" border="0" alt="Deliantra Free MMORPG" style="display: inline"/> 126 <img src="http://www.deliantra.net/images/deliantra.png" border="0" alt="Deliantra Free MMORPG" style="display: inline"/>
114 <br /> 127 <br />
159<h2>Resources</h2> 172<h2>Resources</h2>
160<table class='resources'> 173<table class='resources'>
161EOF 174EOF
162 if (grep /git/, @args) { 175 if (grep /git/, @args) {
163 print <<EOF; 176 print <<EOF;
164<tr><td><tt class="icon">GIT</tt></td><td class='rr'><a href='http://git.ta-sa.org/?p=$name.git;a=summary'>Browsable GIT repository '$name'</a></li></tr> 177<tr><td><tt class="icon">GIT</tt></td><td class='rr'><a href='http://git.ta-sa.org/git/$name/'>Browsable GIT repository '$name'</a></li></tr>
165<tr><td><tt class="icon">GIT</tt></td><td class='rr'>Read-only GIT checkout: <tt>&#160;git-clone http://git.ta-sa.org/$name.git</tt> 178<tr><td><tt class="icon">GIT</tt></td><td class='rr'>Read-only GIT checkout: <tt>&#160;git-clone http://git.ta-sa.org/$name.git</tt>
166</td></tr> 179</td></tr>
167<tr><td><tt class="icon">CVS</tt></td><td class='rr'>Contributor CVS access (command requires CVS version &gt;= 1.12.11):<br /> 180<!-- <tr><td><tt class="icon">CVS</tt></td><td class='rr'>Contributor CVS access (command requires CVS version &gt;= 1.12.11):<br />
168 <tt>cvs -d ":ext;CVS_SERVER=git-cvsserver:USER\@ruth.plan9.de/gitroot/$name.git" co -d $name master</tt> 181 <tt>cvs -d ":ext;CVS_SERVER=git-cvsserver:USER\@ruth.plan9.de/gitroot/$name.git" co -d $name master</tt>
169</td></tr> 182</td></tr> -->
170EOF 183EOF
171 } else { 184 } else {
172 my $modules = $name; 185 my $modules = $name;
173 $modules = "$1" if grep /modules\((.*)\)/, @args; 186 $modules = "$1" if grep /modules\((.*)\)/, @args;
174 187
201 214
202</td></tr> 215</td></tr>
203EOF 216EOF
204 } 217 }
205 218
219 my @irc;
220
206 print "<tr><td><tt class='icon'>FILE</tt></td><td class='rr'><a href='http://dist.schmorp.de/$name/'>File Releases</a></td></tr>\n" 221 print "<tr><td><tt class='icon'>FILE</tt></td><td class='rr'><a href='http://dist.schmorp.de/$name/'>File Releases</a></td></tr>\n"
207 if grep /dist/, @args; 222 if grep /dist/, @args;
208 print "<tr><td><tt class='icon'>CPAN</tt></td><td class='rr'><a href='http://www.cpan.org/modules/by-authors/Marc_Lehmann/'>File Releases (CPAN)</a></td></tr>\n" 223 print "<tr><td><tt class='icon'>CPAN</tt></td><td class='rr'><a href='http://www.cpan.org/modules/by-authors/Marc_Lehmann/'>File Releases (CPAN)</a></td></tr>\n"
209 if grep /cpan$/, @args; 224 if grep /cpan$/, @args;
210 print "<tr><td><tt class='icon'>CPAN</tt></td><td class='rr'><a href='http://www.cpan.org/modules/by-authors/id/E/EL/ELMEX/'>File Releases (CPAN)</a></td></tr>\n" 225 print "<tr><td><tt class='icon'>CPAN</tt></td><td class='rr'><a href='http://www.cpan.org/modules/by-authors/id/E/EL/ELMEX/'>File Releases (CPAN)</a></td></tr>\n"
211 if grep /cpan-elmex/, @args; 226 if grep /cpan-elmex/, @args;
212 for (@args) { 227 for (@args) {
213 if (/list\((.*)\)/) { 228 if (/list\((.*?)\)/) {
214 print "<tr><td><tt class='icon'>LIST</tt></td><td class='rr'><a href='http://lists.schmorp.de/mailman/listinfo/" . ($1 || $name) . "'>Mailing List '" . ($1 || $name) . "'</a></td></tr>\n"; 229 print "<tr><td><tt class='icon'>LIST</tt></td><td class='rr'><a href='http://lists.schmorp.de/mailman/listinfo/" . ($1 || $name) . "'>Mailing List '" . ($1 || $name) . "'</a></td></tr>\n";
215 } 230 }
231 if (/irc\((.*?)\)/) {
232 push @irc, $1;
233 }
234 }
235 push @irc, "freenode" unless @irc;
236 for (@irc) {
237 my ($server, $channel, $url, $comment) = @{ $IRC{$_} or die };
238 print "<tr><td><tt class='icon'>IRC</tt></td><td class='rr'>Server <a href='$url'><tt><b>$server</b></tt>, channel <tt>$channel</tt></a>$comment <b>(say hi and <i>wait a few minutes or hours</i>)</b></td></tr>\n";
216 } 239 }
217 240
218 print "</table>"; 241 print "</table>";
219 242
220 if (my @files = grep $_, map /(cvs-co|cvs-pod|git-pod|git-co)\((\S+)\)/ && [$1, $2], @args) { 243 if (my @files = grep $_, map /(cvs-co|cvs-pod|git-pod|git-co)\((\S+)\)/ && [$1, $2], @args) {
257<h2>About</h2> 280<h2>About</h2>
258<p class='blurb'>This page briefly documents the Schmorpforge Ta-Sa Software Repository and 281<p class='blurb'>This page briefly documents the Schmorpforge Ta-Sa Software Repository and
259lists all projects available here.</p> 282lists all projects available here.</p>
260 283
261<table class='resources'> 284<table class='resources'>
262<tr><td><tt class='icon'>CVS</tt></td><td class='rr'>All CVS modules can be browsed <a href="http://cvs.schmorp.de/">here</a>.</td></tr> 285<tr><td><tt class='icon'>CVS</tt></td><td class='rr'>All CVS modules can be browsed <a href="http://cvs.schmorp.de/">here</a></td></tr>
263<tr><td><tt class='icon'>GIT</tt></td><td class='rr'>All GIT repositories can be found <a href="http://git.ta-sa.org/">here</a>.</td></tr> 286<tr><td><tt class='icon'>GIT</tt></td><td class='rr'>All GIT repositories can be found <a href="http://git.ta-sa.org/">here</a></td></tr>
264<tr><td><tt class='icon'>FILE</tt></td><td class='rr'>All file releases can be found <a href="http://dist.schmorp.de/">here</a> or on CPAN (for Perl modules).</td></tr> 287<tr><td><tt class='icon'>FILE</tt></td><td class='rr'>All file releases can be found <a href="http://dist.schmorp.de/">here</a> or on CPAN (for Perl modules)</td></tr>
265<tr><td><tt class='icon'>LIST</tt></td><td class='rr'>All mailinglists can be found <a href="http://lists.schmorp.de/mailman/listinfo">here</a>.</td></tr> 288<tr><td><tt class='icon'>LIST</tt></td><td class='rr'>All mailinglists can be found <a href="http://lists.schmorp.de/mailman/listinfo">here</a></td></tr>
266<!--<tr><td><tt class='icon'>WIKI</tt></td><td class='rr'>The Wiki can be found <a href="http://wiki.schmorp.de/">here</a>.</td></tr>--> 289<!--<tr><td><tt class='icon'>WIKI</tt></td><td class='rr'>The Wiki can be found <a href="http://wiki.schmorp.de/">here</a></td></tr>-->
290<tr><td><tt class='icon'>IRC</tt></td><td class='rr'>Server <a href='http://webchat.freenode.net/?randomnick=1&amp;channels=schmorp&amp;prompt=1'><tt><b>irc.freenode.net</b></tt>, channel <tt>#schmorp</tt></a>, users <tt>schmorp</tt> and <tt>elmex</tt> <b>(say hi and <i>wait a few minutes or hours</i>)</b><br/>Other project-specific IRC servers are listed on their respective project page.</td></tr>
291EOF
292
293print <<EOF;
267</table> 294</table>
268 295
269<h2>Project List</h2> 296<h2>Project List</h2>
270<table class='overview'> 297<table class='overview'>
271EOF 298EOF
274 301
275print "</table>"; 302print "</table>";
276ftr; 303ftr;
277 304
278__DATA__ 305__DATA__
279rxvt-unicode dist list(rxvt-unicode) cvs-pod(doc/rxvt.1.pod,) cvs-pod(doc/rxvt.7.pod,FAQ) cvs-pod(src/urxvt.pm,Perl) cvs-co(Changes) 306rxvt-unicode dist list(rxvt-unicode) cvs-pod(doc/rxvt.1.pod,) cvs-pod(doc/rxvt.7.pod,FAQ) cvs-pod(src/urxvt.pm,Perl) cvs-co(Changes) irc(rxvt) irc(rxvtdev)
280 rxvt-unicode is a clone of the well known terminal emulator rxvt. 307 rxvt-unicode is a clone of the well known terminal emulator rxvt.
281 308
282 <p>If you have a problem, please have a look at the 309 <p>If you have a problem, please have a look at the
283 <a href="http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.html">FAQ</a> 310 <a href="http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.html">FAQ</a>
284 <em>first</em>.</p> 311 <em>first</em>.</p>
347 readline tab-completion to enter filenames. 374 readline tab-completion to enter filenames.
348 375
349 Again, its a dire hack and will not work with all programs. It does work 376 Again, its a dire hack and will not work with all programs. It does work
350 for gimp, firefox, gedit at least, though. 377 for gimp, firefox, gedit at least, though.
351 378
352Async-Interrupt cpan cvs-pod(Interrupt.pm,) cvs-co(Changes) list(anyevent) 379Async-Interrupt cpan cvs-pod(Interrupt.pm,) cvs-co(Changes) list(anyevent) irc(anyevent)
353 Allow C/XS libraries to interrupt perl asynchronously. 380 Allow C/XS libraries to interrupt perl asynchronously.
354 381
355 This is a module implementing a rarely-needed, very advanced technique 382 This is a module implementing a rarely-needed, very advanced technique
356 to interrupt a running perl interpreter from another thread, or similar, 383 to interrupt a running perl interpreter from another thread, or similar,
357 context, at very low overhead. 384 context, at very low overhead.
389 It could be used to write Knuddels clients, bots and even servers 416 It could be used to write Knuddels clients, bots and even servers
390 (although the latter doesn't make much sense, the protocol is rather 417 (although the latter doesn't make much sense, the protocol is rather
391 ugly. If you want to implement your own group communication server, use 418 ugly. If you want to implement your own group communication server, use
392 IRC instead). 419 IRC instead).
393 420
394AnyEvent-IRC cpan-elmex git-pod(lib/AnyEvent/IRC.pm,) git-co(Changes) git-co(samples/anyeventirccl) git-co(samples/anyeventirc) list(anyevent) 421AnyEvent-IRC cpan-elmex git-pod(lib/AnyEvent/IRC.pm,) git-co(Changes) git-co(samples/anyeventirccl) git-co(samples/anyeventirc) list(anyevent) irc(anyevent)
395 This module provides an alternative to the Net-IRC and Net-IRC2 422 This module provides an alternative to the Net-IRC and Net-IRC2
396 modules. Its design rationale is offering a 100% non-blocking 423 modules. Its design rationale is offering a 100% non-blocking
397 callback-based interface, RFC-compliant parsing and a lightweight 424 callback-based interface, RFC-compliant parsing and a lightweight
398 approach to modularity and reusability. 425 approach to modularity and reusability.
399 426
402 that are executed when a scope is being exited (or an object is destroyed). 429 that are executed when a scope is being exited (or an object is destroyed).
403 430
404 Much effort was invested into these guards behaving "sensibly" in the 431 Much effort was invested into these guards behaving "sensibly" in the
405 presence of thrown exceptions, errors and other adverse conditions, as 432 presence of thrown exceptions, errors and other adverse conditions, as
406 well as into good performance. 433 well as into good performance.
434
435common-sense cpan cvs-pod(sense.pm,) cvs-co(Changes)
436 This module implements some sane defaults for Perl programs, as defined
437 by two typical (or not so typical - use your common sense) specimens of
438 Perl coders.
407 439
408Net-IRC-Server cvs-pod(Net/IRC/Server.pm,) 440Net-IRC-Server cvs-pod(Net/IRC/Server.pm,)
409 This module provides a simple API for handling the IRC Protocol 441 This module provides a simple API for handling the IRC Protocol
410 aiming at implementing lightweight IRC-Servers. 442 aiming at implementing lightweight IRC-Servers.
411 443
516 A fork of the unmaintained xcb (x cut buffers) program implementing better i18n. 548 A fork of the unmaintained xcb (x cut buffers) program implementing better i18n.
517 549
518lmainit cvs-co(NEWS) 550lmainit cvs-co(NEWS)
519 A sysvinit replacement that can even be configured to be sysvinit-compliant. 551 A sysvinit replacement that can even be configured to be sysvinit-compliant.
520 552
521 See <a href="http://www.goof.com/pcg/marc/lmainit.html">its homepage</a> for more info. 553 See <a href="http://home.schmorp.de/marc/lmainit.html">its homepage</a> for more info.
522 554
523Algorithm-FEC cpan cvs-pod(FEC.pm,) cvs-co(README.fec) cvs-co(Changes) 555Algorithm-FEC cpan cvs-pod(FEC.pm,) cvs-co(README.fec) cvs-co(Changes)
524 Perl module implementing forward error correction using Vandermonde matrices 556 Perl module implementing forward error correction using Vandermonde matrices
525 557
526AnyEvent cpan cvs-pod(lib/AnyEvent.pm,) cvs-pod(lib/AnyEvent/Intro.pod,Introduction/Tutorial) cvs-co(Changes) cvs-pod(lib/AnyEvent/Util.pm,AnyEvent::Util) cvs-pod(lib/AnyEvent/Handle.pm,AnyEvent::Handle) cvs-pod(lib/AnyEvent/Socket.pm,AnyEvent::Socket) cvs-pod(lib/AnyEvent/DNS.pm,AnyEvent::DNS) cvs-pod(lib/AnyEvent/Impl/EV.pm,AnyEvent::Impl::EV) cvs-pod(lib/AnyEvent/Impl/Event.pm,AnyEvent::Impl::Event) cvs-pod(lib/AnyEvent/Impl/Glib.pm,AnyEvent::Impl::Glib) cvs-pod(lib/AnyEvent/Impl/Tk.pm,AnyEvent::Impl::Tk) cvs-pod(lib/AnyEvent/Impl/Perl.pm,AnyEvent::Impl::Perl) cvs-pod(lib/AnyEvent/Impl/Qt.pm,AnyEvent::Impl::Qt) cvs-pod(lib/AnyEvent/Impl/EventLib.pm,AnyEvent::Impl::EventLib) cvs-pod(lib/AnyEvent/Impl/IOAsync.pm,AnyEvent::Impl::IOAsync) cvs-pod(lib/AnyEvent/Impl/POE.pm,AnyEvent::Impl::POE) list(anyevent) 558AnyEvent cpan cvs-pod(lib/AnyEvent.pm,) cvs-pod(lib/AnyEvent/Intro.pod,Introduction/Tutorial) cvs-pod(lib/AE.pm,AE) cvs-co(Changes) cvs-pod(lib/AnyEvent/Util.pm,AnyEvent::Util) cvs-pod(lib/AnyEvent/Handle.pm,AnyEvent::Handle) cvs-pod(lib/AnyEvent/Socket.pm,AnyEvent::Socket) cvs-pod(lib/AnyEvent/DNS.pm,AnyEvent::DNS) cvs-pod(lib/AnyEvent/Impl/EV.pm,AnyEvent::Impl::EV) cvs-pod(lib/AnyEvent/Impl/Event.pm,AnyEvent::Impl::Event) cvs-pod(lib/AnyEvent/Impl/Glib.pm,AnyEvent::Impl::Glib) cvs-pod(lib/AnyEvent/Impl/Tk.pm,AnyEvent::Impl::Tk) cvs-pod(lib/AnyEvent/Impl/Perl.pm,AnyEvent::Impl::Perl) cvs-pod(lib/AnyEvent/Impl/Qt.pm,AnyEvent::Impl::Qt) cvs-pod(lib/AnyEvent/Impl/EventLib.pm,AnyEvent::Impl::EventLib) cvs-pod(lib/AnyEvent/Impl/Irssi.pm,AnyEvent::Impl::Irssi) cvs-pod(lib/AnyEvent/Impl/IOAsync.pm,AnyEvent::Impl::IOAsync) cvs-pod(lib/AnyEvent/Impl/POE.pm,AnyEvent::Impl::POE) list(anyevent) irc(anyevent)
527 This module offers a simple API for I/O, timer, signal, child process 559 This module offers a simple API for I/O, timer, signal, child process
528 and completion events, independent of a specific event loop. 560 and completion events, independent of a specific event loop.
529 561
530 <p>This module allows module authors to use those events internally 562 <p>This module allows module authors to use those events internally
531 without forcing users of the module to use a specific event loop, without 563 without forcing users of the module to use a specific event loop, without
532 adding noticable overhead. Currently supported event loops are EV, Event, 564 adding noticable overhead. Currently supported event loops are EV, Event,
533 Glib/Gtk2, Tk, Qt, Event::Lib, IO::Async and POE (and thus also WxWidgets 565 Glib/Gtk2, Tk, Qt, Event::Lib, Irssi, IO::Async and POE (and thus also
534 and Prima). It also comes with a very fast (see benchmarks in the main 566 WxWidgets and Prima). It also comes with a very fast (see benchmarks in
535 manual page) Pure Perl event loop and doesn't rely on XS, which ensures 567 the main manual page) Pure Perl event loop and doesn't rely on XS, which
536 that your program will always run even when no C-based event loop is 568 ensures that your program will always run even when no C-based event loop
537 available.</p> 569 is available.</p>
538 570
539 <p>In addition to the event core (which might be all you need), AnyEvent 571 <p>In addition to the event core (which might be all you need), AnyEvent
540 comes with an optional, fully asynchronous, pure-perl DNS resolver 572 comes with an optional, fully asynchronous, pure-perl DNS resolver
541 library supporting UDP, TCP and EDNS0, with many utility functions to 573 library supporting UDP, TCP and EDNS0, with many utility functions to
542 "just resolve" stuff without having to instantiate even a resolver object 574 "just resolve" stuff without having to instantiate even a resolver object
550 <p>Lastly, AnyEvent::Handle offers a powerful framework for asynchronous and 582 <p>Lastly, AnyEvent::Handle offers a powerful framework for asynchronous and
551 buffered protocol handling. You can push multiple read event handlers 583 buffered protocol handling. You can push multiple read event handlers
552 to parse your protocol and start TLS/SSL negotiation transparently (and 584 to parse your protocol and start TLS/SSL negotiation transparently (and
553 fully non-blocking) at any time, in both server and client mode.</p> 585 fully non-blocking) at any time, in both server and client mode.</p>
554 586
555AnyEvent-FastPing cpan cvs-pod(FastPing.pm,) list(anyevent) 587AnyEvent-FastPing cpan cvs-pod(FastPing.pm,) list(anyevent) irc(anyevent)
556 This module implements a very fast and relatively flexible 588 This module implements a very fast and relatively flexible
557 ping (ping as in icmp echo request). 589 ping (ping as in icmp echo request).
558 590
559 This module allows you to quickly send ipv4 and ipv6 pings at a defined 591 This module allows you to quickly send ipv4 and ipv6 pings at a defined
560 rate to whole address ranges. It is fully event-driven (doesn't block 592 rate to whole address ranges. It is fully event-driven (doesn't block
563 more address ranges, to which pings will be distributed according to a 595 more address ranges, to which pings will be distributed according to a
564 least-load principle. 596 least-load principle.
565 597
566 A command line utility (<tt>fastping</tt>) is included. 598 A command line utility (<tt>fastping</tt>) is included.
567 599
568AnyEvent-HTTP cpan cvs-pod(HTTP.pm,) cvs-co(Changes) list(anyevent) 600AnyEvent-HTTP cpan cvs-pod(HTTP.pm,) cvs-co(Changes) list(anyevent) irc(anyevent)
569 A simple and plain event based http and https client. 601 A simple and plain event based http and https client.
570 602
571 This module implements a simple, stateless and non-blocking HTTP 603 This module implements a simple, stateless and non-blocking HTTP
572 client. It supports GET, POST and other request methods, cookies and more, 604 client. It supports GET, POST and other request methods, cookies and more,
573 all on a very low level. It can follow redirects supports proxies and 605 all on a very low level. It can follow redirects supports proxies and
581 The caller is responsible for authentication management, cookies (if 613 The caller is responsible for authentication management, cookies (if
582 the simplistic implementation in this module doesn't suffice), referer 614 the simplistic implementation in this module doesn't suffice), referer
583 and other high-level protocol details for which this module offers only 615 and other high-level protocol details for which this module offers only
584 limited support. 616 limited support.
585 617
618AnyEvent-MP cpan cvs-pod(MP.pm,) cvs-pod(MP/Intro.pod,Introduction/Tutorial) cvs-co(Changes) list(anyevent) irc(anyevent)
619 This Perl module (-family) implements a simple message passing framework for Perl.
620
621 Despite its simplicity, you can securely message other processes running
622 on the same or other hosts.
623
624 For an introduction to this module family, see the Intro manual page.
625
626Coro-MP cpan cvs-pod(MP.pm,) cvs-co(Changes) list(anyevent) irc(anyevent)
627 This Perl module extends the AnyEvent::MP API with a thread-like/erlang-style API.
628
629 This module implements a thread-like API to AnyEvent::MP that is closer
630 to Erlang than the event-based AnyEvent::MP API. It integrates well into
631 AnyEvent::MP.
632
633 See the AnyEvent::MP module and tutorial for info about the concepts used
634 in AnyEvent::MP.
635
586AnyEvent-DBI cpan cvs-pod(DBI.pm,) cvs-co(Changes) list(anyevent) 636AnyEvent-DBI cpan cvs-pod(DBI.pm,) cvs-co(Changes) list(anyevent) irc(anyevent)
587 A relatively simple wrapper around DBI to make asynchronous 637 A relatively simple wrapper around DBI to make asynchronous
588 SQL requests. 638 SQL requests.
589 639
590 This module implements asynchronous DBI access my forking or executing 640 This module implements asynchronous DBI access my forking or executing
591 separate "DBI-Server" processes and sending them requests. 641 separate "DBI-Server" processes and sending them requests.
592 642
593 It means that you can run DBI requests in parallel to other tasks. 643 It means that you can run DBI requests in parallel to other tasks.
594 644
595AnyEvent-HTTPD cpan-elmex git-pod(lib/AnyEvent/HTTPD.pm,) git-co(Changes) list(anyevent) 645AnyEvent-HTTPD cpan-elmex git-pod(lib/AnyEvent/HTTPD.pm,) git-co(Changes) list(anyevent) irc(anyevent)
596 A simple and plain event based http web application server Perl module. 646 A simple and plain event based http web application server Perl module.
597 647
598 This is a very basic HTTP server that allows the user/programmer to install 648 This is a very basic HTTP server that allows the user/programmer to install
599 hooks for URL paths to generate the output. It uses AnyEvent to be easily 649 hooks for URL paths to generate the output. It uses AnyEvent to be easily
600 embeddable into other applications. The main objective was to make it 650 embeddable into other applications. The main objective was to make it
601 easier to make simple HTTP frontends in Perl for Perl programs and Perl modules. 651 easier to make simple HTTP frontends in Perl for Perl programs and Perl modules.
602 652
653AnyEvent-Feed cpan-elmex git-pod(lib/AnyEvent/Feed.pm,) git-co(Changes) list(anyevent) irc(anyevent)
654 A RSS/Atom Feed aggregator.
655
656 This module uses AnyEvent::HTTP and XML::Feed to fetch and parse RSS and Atom
657 feeds. It provides aggregation (detecting of new entries) to provide an easy
658 interface for simple feed readers.
659
660AnyEvent-Twitter cpan-elmex git-pod(lib/AnyEvent/Twitter.pm,) git-co(Changes) list(anyevent) irc(anyevent)
661 Implementation of the Twitter API for AnyEvent.
662
663 Provides a simple non-blocking API to access information (aka tweets) provided
664 by <a href="http://www.twitter.com">Twitter</a>.
665
603AnyEvent-IGS cpan-elmex git-pod(lib/AnyEvent/IGS.pm,) git-co(Changes) list(anyevent) 666AnyEvent-IGS cpan-elmex git-pod(lib/AnyEvent/IGS.pm,) git-co(Changes) list(anyevent) irc(anyevent)
604 A Perl module that interfaces to the International Go Server. 667 A Perl module that interfaces to the International Go Server.
605 668
606 This module is an Anyevent-based interface to the International Go Server 669 This module is an AnyEvent-based interface to the International Go Server
607 protocol. 670 protocol.
608 671
609AnyEvent-EditText cpan-elmex git-pod(lib/AnyEvent/EditText.pm,) git-co(Changes) list(anyevent) 672AnyEvent-EditText cpan-elmex git-pod(lib/AnyEvent/EditText.pm,) git-co(Changes) list(anyevent) irc(anyevent)
610 A Perl module which allows editing any text via an editor in a separate process. 673 A Perl module which allows editing any text via an editor in a separate process.
611 674
612 A utility Perl module that will start a terminal/editor for you and will 675 A utility Perl module that will start a terminal/editor for you and will
613 wait non-blocking for you to finish editing that file. Very useful to embed 676 wait non-blocking for you to finish editing that file. Very useful to embed
614 content edititing in event based programs that have a AnyEvent compatible 677 content edititing in event based programs that have a AnyEvent compatible
618 A Perl module that implements C++ STL-like binary heap operations. 681 A Perl module that implements C++ STL-like binary heap operations.
619 682
620Audio-Play-MPG123 cpan cvs-pod(MPG123.pm,) cvs-co(Changes) 683Audio-Play-MPG123 cpan cvs-pod(MPG123.pm,) cvs-co(Changes)
621 A Perl module implementing an interface to mpg123. 684 A Perl module implementing an interface to mpg123.
622 685
686BK git-pod(lib/BK.pm,) git-pod(lib/BK/News.pod,News) git-co(Changes) git-pod(lib/BK/Client.pm,BK::Client) git-pod(lib/BK/Backend.pm,BK::Backend)
687 Bummskraut is a distributed chat/messaging client framework written in Perl
688 using <a href="/pkg/AnyEvent-MP.html">AnyEvent::MP</a>.
689
690 For more documentation please consult the main manpage (see below). If you
691 want to check on the latest news proceed to the news or changelog (see also
692 below).
693
623Compress-LZV1 cpan cvs-pod(LZV1.pm,) cvs-co(Changes) 694Compress-LZV1 cpan cvs-pod(LZV1.pm,) cvs-co(Changes)
624 A Perl module implementing the LZV1 compression algorithm. See 695 A Perl module implementing the LZV1 compression algorithm. See
625 <tt>Compress::LZF</tt> for a better algorithm and module. 696 <tt>Compress::LZF</tt> for a better algorithm and module.
697
698Compress-LZF cpan cvs-pod(LZF.pm,) cvs-co(Changes)
699 A Perl module implementing the LZF compression algorithm, and simple
700 to use data structure serialising.
626 701
627Convert-CD cvs-pod(lib/Convert/CD.pm,) cvs-pod(bin/cvtiso,cvtiso) cvs-co(doc/) cvs-co(Changes) 702Convert-CD cvs-pod(lib/Convert/CD.pm,) cvs-pod(bin/cvtiso,cvtiso) cvs-co(doc/) cvs-co(Changes)
628 Unfinished Perl project implementing CD image formats. Extracting ISO images 703 Unfinished Perl project implementing CD image formats. Extracting ISO images
629 already works. 704 already works.
630 705
636 allows easy decoding of multipart mime, uuencode and a whole lot of 711 allows easy decoding of multipart mime, uuencode and a whole lot of
637 differently encoded messages. You basically throw files at it, and 712 differently encoded messages. You basically throw files at it, and
638 it extracts the files in them. This module is used by the popular <a 713 it extracts the files in them. This module is used by the popular <a
639 href="www.amavis.org">amavis virus scanner</a>. 714 href="www.amavis.org">amavis virus scanner</a>.
640 715
641Coro cpan cvs-co(Changes) cvs-pod(Coro.pm,) cvs-pod(Coro/AIO.pm,Coro::AIO) cvs-pod(Coro/AnyEvent.pm,Coro::AnyEvent) cvs-pod(Coro/BDB.pm,Coro::BDB) cvs-pod(Coro/Channel.pm,Coro::Channel) cvs-pod(Coro/Debug.pm,Coro::Debug) cvs-pod(Coro/EV.pm,Coro::EV) cvs-pod(Coro/Event.pm,Coro::Event) cvs-pod(Coro/Handle.pm,Coro::Handle) cvs-pod(Coro/LWP.pm,Coro::LWP) cvs-pod(Coro/MakeMaker.pm,Coro::MakeMaker) cvs-pod(Coro/RWLock.pm,Coro::RWLock) cvs-pod(Coro/Select.pm,Coro::Select) cvs-pod(Coro/Semaphore.pm,Coro::Semaphore) cvs-pod(Coro/SemaphoreSet.pm,Coro::SemaphoreSet) cvs-pod(Coro/Signal.pm,Coro::Signal) cvs-pod(Coro/Socket.pm,Coro::Socket) cvs-pod(Coro/Specific.pm,Coro::Specific) cvs-pod(Coro/State.pm,Coro::State) cvs-pod(Coro/Storable.pm,Coro::Storable) cvs-pod(Coro/Timer.pm,Coro::Timer) cvs-pod(Coro/Util.pm,Coro::Util) list(anyevent) 716Coro cpan cvs-co(Changes) cvs-pod(Coro.pm,) cvs-pod(Coro/AIO.pm,Coro::AIO) cvs-pod(Coro/AnyEvent.pm,Coro::AnyEvent) cvs-pod(Coro/BDB.pm,Coro::BDB) cvs-pod(Coro/Channel.pm,Coro::Channel) cvs-pod(Coro/Debug.pm,Coro::Debug) cvs-pod(Coro/EV.pm,Coro::EV) cvs-pod(Coro/Event.pm,Coro::Event) cvs-pod(Coro/Handle.pm,Coro::Handle) cvs-pod(Coro/LWP.pm,Coro::LWP) cvs-pod(Coro/MakeMaker.pm,Coro::MakeMaker) cvs-pod(Coro/RWLock.pm,Coro::RWLock) cvs-pod(Coro/Select.pm,Coro::Select) cvs-pod(Coro/Semaphore.pm,Coro::Semaphore) cvs-pod(Coro/SemaphoreSet.pm,Coro::SemaphoreSet) cvs-pod(Coro/Signal.pm,Coro::Signal) cvs-pod(Coro/Socket.pm,Coro::Socket) cvs-pod(Coro/Specific.pm,Coro::Specific) cvs-pod(Coro/State.pm,Coro::State) cvs-pod(Coro/Storable.pm,Coro::Storable) cvs-pod(Coro/Timer.pm,Coro::Timer) cvs-pod(Coro/Util.pm,Coro::Util) list(anyevent) irc(anyevent)
642 A large Perl module family that implements cooperative multitasking in 717 A large Perl module family that implements cooperative multitasking in
643 Perl. It supports filehandle and event abstraction and also implements 718 Perl. It supports filehandle and event abstraction and also implements
644 continuations as well as the necessary directives to implement a slightly 719 continuations as well as the necessary directives to implement a slightly
645 limited call/cc in Perl. 720 limited call/cc in Perl.
646 721
801 876
802 This Perl module represents a Go game. It can check for valid moves, 877 This Perl module represents a Go game. It can check for valid moves,
803 capture stones, stores move history and can represent a variety of 878 capture stones, stores move history and can represent a variety of
804 additional annotations (circles, labels, grayed-out stones etc.). 879 additional annotations (circles, labels, grayed-out stones etc.).
805 880
881Games-Sokoban cpan cvs-pod(Sokoban.pm,) cvs-co(Changes)
882 A perl module to load/transform/save sokoban levels in various formats.
883
884 Supports xsb (text), rle, sokevo and a small "binpack" format for input and
885 output and can normalise levels as well as calculate unique IDs.
886
806Gtk2-GoBoard cpan cvs-pod(GoBoard.pm,) cvs-co(Changes) 887Gtk2-GoBoard cpan cvs-pod(GoBoard.pm,) cvs-co(Changes)
807 A Perl module implementing a go board widget. 888 A Perl module implementing a go board widget.
808 889
809 This Perl module implements a beautiful go board (see <a 890 This Perl module implements a beautiful go board (see <a
810 href="http://data.plan9.de/kgsuemel.jpg">example</a>), implemented as a 891 href="http://data.plan9.de/kgsuemel.jpg">example</a>), implemented as a
880 transfers (normal thttpd has problems with this). 961 transfers (normal thttpd has problems with this).
881 962
882wvsniff 963wvsniff
883 Undocumented but nicely working wavelan sniffer that I wrote for use 964 Undocumented but nicely working wavelan sniffer that I wrote for use
884 with my cisco aironet card. If you get it working, praise yourself. 965 with my cisco aironet card. If you get it working, praise yourself.
885
886ermyth cvs-pod(doc/poddoc/documentation.pod) cvs-co(Changes)
887 This is a fork of Atheme IRC Services.
888
889 Ermyth IRC Services is a set of Services for IRC networks that allows
890 users to manage their channels in a secure and efficient way and
891 allows operators to manage various things about their networks.
892 Ermyth has been ported to C++ and goes its way using modern concepts
893 and the object oriented paradigm.
894 966
895dhcpping cvs-pod(dhcping.pod,) 967dhcpping cvs-pod(dhcping.pod,)
896 A version of dhcpping enhanced by <a href="mailto:marco@nethype.de">Marco Maisenhelder</a> 968 A version of dhcpping enhanced by <a href="mailto:marco@nethype.de">Marco Maisenhelder</a>
897 to support passing dhcp options. Intended to test dhcp server implementations. 969 to support passing dhcp options. Intended to test dhcp server implementations.
898 970
1008 1080
1009 <p>lsys is a full-featured program that understands most of the syntax 1081 <p>lsys is a full-featured program that understands most of the syntax
1010 of the original l-systems language, which is far more complex and 1082 of the original l-systems language, which is far more complex and
1011 powerful than most available l-system interpreters.</p> 1083 powerful than most available l-system interpreters.</p>
1012 1084
1013 <p>See <a href="http://www.goof.com/pcg/marc/lsys.html">the original homepage</a> 1085 <p>See <a href="http://home.schmorp.de/marc/lsys.html">the original homepage</a>
1014 for more explanations and some images. 1086 for more explanations and some images.
1087
1088ermyth cvs-pod(doc/poddoc/documentation.pod) cvs-co(Changes)
1089 This is a fork of Atheme IRC Services.
1090
1091 Ermyth IRC Services is a set of Services for IRC networks that allows
1092 users to manage their channels in a secure and efficient way and
1093 allows operators to manage various things about their networks.
1094 Ermyth has been ported to C++ and goes its way using modern concepts
1095 and the object oriented paradigm.
1096

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines