… | |
… | |
7 | mkdir "software.schmorp.de/img", 0755; |
7 | mkdir "software.schmorp.de/img", 0755; |
8 | system "rsync -av *.jpg software.schmorp.de/img/"; |
8 | system "rsync -av *.jpg software.schmorp.de/img/"; |
9 | |
9 | |
10 | our %IRC = ( |
10 | our %IRC = ( |
11 | anyevent => ["irc.perl.org", "#anyevent", "http://mibbit.com/chat/#anyevent\@irc.perl.org"], |
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>"], |
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 | freenode => ["irc.schmorp.de", "#schmorpforge", "http://chat.schmorp.de/?channels=schmorpforge", ", 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 | 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 | 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 | ); |
16 | ); |
16 | |
17 | |
17 | sub hdr($$) { |
18 | sub hdr($$) { |
… | |
… | |
217 | } |
218 | } |
218 | |
219 | |
219 | my @irc; |
220 | my @irc; |
220 | |
221 | |
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" |
222 | 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" |
|
|
223 | if grep /dist(?!-)/, @args; |
|
|
224 | print "<tr><td><tt class='icon'>FILE</tt></td><td class='rr'><a href='http://ftp.gnu.org/gnu/$name/'>File Releases</a></td></tr>\n" |
222 | if grep /dist/, @args; |
225 | if grep /dist-gnu/, @args; |
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" |
226 | 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" |
224 | if grep /cpan$/, @args; |
227 | if grep /cpan$/, @args; |
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" |
228 | 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" |
226 | if grep /cpan-elmex/, @args; |
229 | if grep /cpan-elmex/, @args; |
227 | for (@args) { |
230 | for (@args) { |
… | |
… | |
282 | lists all projects available here.</p> |
285 | lists all projects available here.</p> |
283 | |
286 | |
284 | <table class='resources'> |
287 | <table class='resources'> |
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> |
288 | <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> |
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> |
289 | <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> |
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> |
290 | <tr><td><tt class='icon'>FILE</tt></td><td class='rr'>Most file releases can be found <a href="http://dist.schmorp.de/">here</a> or on CPAN (for Perl modules)</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> |
291 | <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> |
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>--> |
292 | <!--<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>--> |
|
|
293 | |
290 | <tr><td><tt class='icon'>IRC</tt></td><td class='rr'>Server <a href='http://webchat.freenode.net/?randomnick=1&channels=schmorp&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> |
294 | <!--<tr><td><tt class='icon'>IRC</tt></td><td class='rr'>Server <a href='http://webchat.freenode.net/?randomnick=1&channels=schmorp&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>--> |
|
|
295 | <tr><td><tt class='icon'>IRC</tt></td><td class='rr'>Server <a href='http://chat.schmorp.de/?channels=schmorpforge'><tt><b>irc.schmorp.de</b></tt>, channel <tt>#schmorpforge</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> |
291 | EOF |
296 | EOF |
292 | |
297 | |
293 | print <<EOF; |
298 | print <<EOF; |
294 | </table> |
299 | </table> |
295 | |
300 | |
… | |
… | |
302 | print "</table>"; |
307 | print "</table>"; |
303 | ftr; |
308 | ftr; |
304 | |
309 | |
305 | __DATA__ |
310 | __DATA__ |
306 | rxvt-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) |
311 | rxvt-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) |
307 | rxvt-unicode is a clone of the well known terminal emulator rxvt. |
312 | rxvt-unicode is a fork of the well known terminal emulator rxvt. |
308 | |
313 | |
309 | <p>If you have a problem, please have a look at the |
314 | <p>If you have a problem, please have a look at the |
310 | <a href="http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.html">FAQ</a> |
315 | <a href="http://cvs.schmorp.de/rxvt-unicode/doc/rxvt.7.html">FAQ</a> |
311 | <em>first</em>.</p> |
316 | <em>first</em>.</p> |
312 | |
317 | |
… | |
… | |
329 | <li>Remote pastebin, digital clock, block graphics to ascii filter and |
334 | <li>Remote pastebin, digital clock, block graphics to ascii filter and |
330 | whatever you like to implement for yourself.</li> |
335 | whatever you like to implement for yourself.</li> |
331 | </ul> |
336 | </ul> |
332 | </li> |
337 | </li> |
333 | <li>Crash-free. At least I try, but rxvt-unicode certainly crashes much less often than |
338 | <li>Crash-free. At least I try, but rxvt-unicode certainly crashes much less often than |
334 | rxvt and its many clones, and reproducible bugs get fixed immediately.</li> |
339 | rxvt and its many forks, and reproducible bugs get fixed immediately.</li> |
335 | <li>Completely flicker-free.</li> |
340 | <li>Completely flicker-free.</li> |
336 | <li>Re-wraps long lines instead of splitting or cutting them on resizes.</li> |
341 | <li>Re-wraps long lines instead of splitting or cutting them on resizes.</li> |
337 | <li>Full combining character support (unlike xterm :).</li> |
342 | <li>Full combining character support (unlike xterm :).</li> |
338 | <li>Multiple fonts supported at the same time: No need to choose between |
343 | <li>Multiple fonts supported at the same time: No need to choose between |
339 | nice japanese and ugly latin, or no japanese and nice latin characters :).</li> |
344 | nice japanese and ugly latin, or no japanese and nice latin characters :).</li> |
… | |
… | |
402 | delivering a stable reference implementation which makes it easy to write |
407 | delivering a stable reference implementation which makes it easy to write |
403 | your own clients, bots and so on. It also contains Gtk2 modules for |
408 | your own clients, bots and so on. It also contains Gtk2 modules for |
404 | KGS-independent rendering of beautiful Go boards. For a introduction to |
409 | KGS-independent rendering of beautiful Go boards. For a introduction to |
405 | the game of go, look <a href="http://playgo.to/interactive/">here</a>. |
410 | the game of go, look <a href="http://playgo.to/interactive/">here</a>. |
406 | |
411 | |
|
|
412 | App-Staticperl cpan cvs-pod(bin/staticperl,) cvs-co(Changes) |
|
|
413 | Perl, libc, 50 modules - all in one self-contained 500kb executable. |
|
|
414 | |
|
|
415 | App::Staticperl installs a helper script that allows you to install a |
|
|
416 | statically linked (or linkable) perl distribution, install additional |
|
|
417 | modules, and create new perl interpreters with just the selection of |
|
|
418 | modules you need. It is also possible to just create the C source files |
|
|
419 | needed to embed this custom interpreter into your own programs.<p /> |
|
|
420 | |
|
|
421 | Two pre-built perl binaries which include some highly subjective |
|
|
422 | package selection are available as |
|
|
423 | <a href="http://staticperl.schmorp.de/smallperl.html">smallperl</a> |
|
|
424 | and |
|
|
425 | <a href="http://staticperl.schmorp.de/bigperl.html">bigperl</a>. |
|
|
426 | |
407 | Net-Knuddels cvs-pod(Net/Knuddels.pm,) |
427 | Net-Knuddels cvs-pod(Net/Knuddels.pm,) |
408 | This perl module provides an API for group communications using the |
428 | This perl module provides an API for group communications using the |
409 | <a href="http://www.knuddels.de/">www.knuddels.de</a> protocol. It is outdated |
429 | <a href="http://www.knuddels.de/">www.knuddels.de</a> protocol. It is outdated |
410 | and only provided as reference. |
430 | and only provided as reference. |
411 | |
431 | |
… | |
… | |
462 | libcoro cvs-co(README) cvs-co(coro.h) |
482 | libcoro cvs-co(README) cvs-co(coro.h) |
463 | This C-library implements coroutines (cooperative multitasking) in a |
483 | This C-library implements coroutines (cooperative multitasking) in a |
464 | portable fashion. |
484 | portable fashion. |
465 | |
485 | |
466 | As long as your system implements the <tt>ucontext</tt> (Unix) or the |
486 | As long as your system implements the <tt>ucontext</tt> (Unix) or the |
467 | older <tt>sigaltstack</tt> interfaces it should work out of the box, with |
487 | older <tt>sigaltstack</tt> interfaces it should work out of the box, |
468 | minimal configuration (it consists of only a single <tt>.h</tt> and a |
488 | with minimal configuration (it consists of only a single <tt>.h</tt> and |
469 | single <tt>.c</tt> file). It is known to run on a wide variety of unix |
489 | a single <tt>.c</tt> file). For the broken systems, it also supports |
470 | systems (SunOS, IRIX, GNU/Linux, HP-UX) and also on Windows, does not use |
490 | a slow pthreads-based system and (optional) assembly backends for |
471 | any assembly language and is architecture-independent. |
491 | higher speed on some systems. It is known to run on a wide variety of |
|
|
492 | unix systems (SunOS, IRIX, GNU/Linux, HP-UX, FreeBSD, NetBSD, OpenBSD) |
|
|
493 | and also on Windows, does not require any assembly language and is |
|
|
494 | architecture-independent. |
472 | |
495 | |
473 | deliantra/server cvs-co(README) cvs-co(Changes) cvs-co(COPYING.Affero) |
496 | deliantra/server cvs-co(README) cvs-co(Changes) cvs-co(COPYING.Affero) |
474 | The <a href="http://www.deliantra.net/">Deliantra</a> game server. |
497 | The <a href="http://www.deliantra.net/">Deliantra</a> game server. |
475 | |
498 | |
476 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
499 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
… | |
… | |
595 | more address ranges, to which pings will be distributed according to a |
618 | more address ranges, to which pings will be distributed according to a |
596 | least-load principle. |
619 | least-load principle. |
597 | |
620 | |
598 | A command line utility (<tt>fastping</tt>) is included. |
621 | A command line utility (<tt>fastping</tt>) is included. |
599 | |
622 | |
|
|
623 | AnyEvent-AIO cpan cvs-pod(AIO.pm,) list(anyevent) irc(anyevent) |
|
|
624 | A perl module providing transparent integration of IO::AIO into AnyEvent. |
|
|
625 | |
|
|
626 | AnyEvent-BDB cpan cvs-pod(BDB.pm,) list(anyevent) irc(anyevent) |
|
|
627 | A perl module providing transparent integration of BDB into AnyEvent. |
|
|
628 | |
|
|
629 | AnyEvent-DBus cpan cvs-pod(DBus.pm,) list(anyevent) irc(anyevent) |
|
|
630 | A perl module providing mostly transparent integration of Net::DBus into AnyEvent. |
|
|
631 | |
|
|
632 | AnyEvent-DBI cpan cvs-pod(DBI.pm,) list(anyevent) irc(anyevent) |
|
|
633 | A perl module providing an asynchronous DBI interface for AnyEvent. |
|
|
634 | |
|
|
635 | This module provides an asynchronous DBI interface for AnyEvent by |
|
|
636 | starting one or more proxy processes that handle trhe actual sql |
|
|
637 | commands. |
|
|
638 | |
|
|
639 | AnyEvent-FCP cpan cvs-pod(FCP.pm,) list(anyevent) irc(anyevent) |
|
|
640 | A perl module implementing a Freenet Client Protocol 2.0 client. |
|
|
641 | |
|
|
642 | AnyEvent-GPSD cpan cvs-pod(GPSD.pm,) list(anyevent) irc(anyevent) |
|
|
643 | A perl module implementing an AnyEvent client for the (pre-xml) GPSD protocol. |
|
|
644 | |
|
|
645 | AnyEvent-Porttracker cpan cvs-pod(Porttracker.pm,) cvs-pod(Porttracker/protocol.pod,api-protocol) list(anyevent) irc(anyevent) |
|
|
646 | A perl module implementing a client for the Porttracker/PortIQ API protocol. |
|
|
647 | |
|
|
648 | AnyEvent-SNMP cpan cvs-pod(SNMP.pm,) list(anyevent) irc(anyevent) |
|
|
649 | A perl module that transparently integrates Net::SNMP into AnyEvent. |
|
|
650 | |
|
|
651 | In addition to making Net::SNMP AnyEvent-aware, this module also |
|
|
652 | implements advanced rate-limiting that enables you to query many devices |
|
|
653 | in parallel without running into timeouts due to high CPU usage. |
|
|
654 | |
|
|
655 | AnyEvent-Watchdog cpan cvs-pod(Watchdog.pm,) list(anyevent) irc(anyevent) |
|
|
656 | A perl module implementing a watchdog for Perl processes. |
|
|
657 | |
|
|
658 | This module forks your Perl process early during it's startup. It can |
|
|
659 | automatically restart the program on crashes, provide clean restarts |
|
|
660 | requested by the watched program and a number of other small feats. |
|
|
661 | |
600 | AnyEvent-HTTP cpan cvs-pod(HTTP.pm,) cvs-co(Changes) list(anyevent) irc(anyevent) |
662 | AnyEvent-HTTP cpan cvs-pod(HTTP.pm,) cvs-co(Changes) list(anyevent) irc(anyevent) |
601 | A simple and plain event based http and https client. |
663 | A simple and plain event based http and https client. |
602 | |
664 | |
603 | This module implements a simple, stateless and non-blocking HTTP |
665 | This module implements a simple, stateless and non-blocking HTTP |
604 | client. It supports GET, POST and other request methods, cookies and more, |
666 | client. It supports GET, POST and other request methods, cookies and more, |
… | |
… | |
762 | |
824 | |
763 | libev cvs-co(README) cvs-pod(ev.pod) dist list(libev) |
825 | libev cvs-co(README) cvs-pod(ev.pod) dist list(libev) |
764 | A full-featured and high-performance (<a |
826 | A full-featured and high-performance (<a |
765 | href="http://libev.schmorp.de/bench.html">see benchmark</a>) event loop that |
827 | href="http://libev.schmorp.de/bench.html">see benchmark</a>) event loop that |
766 | is loosely modelled after libevent, but without its limitations and bugs. It is |
828 | is loosely modelled after libevent, but without its limitations and bugs. It is |
767 | used, among others, in the <a href="http://savannah.gnu.org/projects/gvpe">GNU Virtual Private Ethernet</a> and |
829 | used, among others, in the <a href="gvpe.html">GNU Virtual Private Ethernet</a> and |
768 | <a href="http://software.schmorp.de/pkg/rxvt-unicode.html">rxvt-unicode</a> packages, and in |
830 | <a href="rxvt-unicode.html">rxvt-unicode</a> packages, and in |
769 | the Deliantra MORPG Server and Client. |
831 | the Deliantra MORPG Server and Client. |
770 | |
832 | |
771 | Features include child/pid watchers, periodic timers based on wallclock |
833 | Features include child/pid watchers, periodic timers based on wallclock |
772 | (absolute) time (in addition to timers using relative timeouts), as well |
834 | (absolute) time (in addition to timers using relative timeouts), as well |
773 | as epoll/kqueue/event ports/inotify/eventfd/signalfd support, fast timer |
835 | as epoll/kqueue/event ports/inotify/eventfd/signalfd support, fast timer |
… | |
… | |
779 | configuration support. A full-featured and well-documented |
841 | configuration support. A full-featured and well-documented |
780 | <a href="EV.html">perl interface</a> is also available. |
842 | <a href="EV.html">perl interface</a> is also available. |
781 | <p /> |
843 | <p /> |
782 | A <a href="http://lists.schmorp.de/mailman/listinfo/libev">mailing |
844 | A <a href="http://lists.schmorp.de/mailman/listinfo/libev">mailing |
783 | list</a> for discussion and support is now available. |
845 | list</a> for discussion and support is now available. |
|
|
846 | |
|
|
847 | gvpe dist-gnu |
|
|
848 | GVPE creates a virtual ethernet network with multiple nodes using a |
|
|
849 | variety of transport protocols. Participating nodes do not need to trust |
|
|
850 | each other. |
|
|
851 | |
|
|
852 | GVPE creates a virtual ethernet (broadcasts supported, any protocol that |
|
|
853 | works with a normal ethernet should work with GVPE) by creating encrypted |
|
|
854 | host-to-host tunnels between multiple endpoints. |
|
|
855 | <p /> |
|
|
856 | Unlike other virtual private "network" solutions which merely create a |
|
|
857 | single tunnel, GVPE creates a real network with multiple endpoints. |
|
|
858 | <p /> |
|
|
859 | It is designed to be very simple and robust (cipher selection done at |
|
|
860 | compiletime etc.), and easy to setup (only a single config file shared |
|
|
861 | unmodified between all hosts). |
|
|
862 | <p /> |
|
|
863 | VPN hosts can neither sniff nor fake packets, that is, you can use |
|
|
864 | MAC-based filtering to ensure authenticity of packets even from member |
|
|
865 | nodes. |
|
|
866 | <p /> |
|
|
867 | GVPE can also be used to tunnel into some vpn network using a variety of |
|
|
868 | protocols (raw IP, UDP, TCP, HTTPS-proxy-connect, ICMP and DNS). It is, |
|
|
869 | however, primarily designed to sit on the gateway machines of company |
|
|
870 | branches to connect them together. |
784 | |
871 | |
785 | libeio dist cvs-pod(eio.pod,) cvs-co(eio.h) cvs-co(demo.c) cvs-co(Changes) list(libev) |
872 | libeio dist cvs-pod(eio.pod,) cvs-co(eio.h) cvs-co(demo.c) cvs-co(Changes) list(libev) |
786 | Event-based fully asynchronous I/O library for C (used by IO::AIO). |
873 | Event-based fully asynchronous I/O library for C (used by IO::AIO). |
787 | Currently in BETA! |
874 | Currently in BETA! |
788 | |
875 | |