… | |
… | |
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> |
… | |
… | |
462 | libcoro cvs-co(README) cvs-co(coro.h) |
467 | libcoro cvs-co(README) cvs-co(coro.h) |
463 | This C-library implements coroutines (cooperative multitasking) in a |
468 | This C-library implements coroutines (cooperative multitasking) in a |
464 | portable fashion. |
469 | portable fashion. |
465 | |
470 | |
466 | As long as your system implements the <tt>ucontext</tt> (Unix) or the |
471 | 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 |
472 | 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 |
473 | 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 |
474 | 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 |
475 | a slow pthreads-based system and (optional) assembly backends for |
471 | any assembly language and is architecture-independent. |
476 | higher speed on some systems. It is known to run on a wide variety of |
|
|
477 | unix systems (SunOS, IRIX, GNU/Linux, HP-UX, FreeBSD, NetBSD, OpenBSD) |
|
|
478 | and also on Windows, does not require any assembly language and is |
|
|
479 | architecture-independent. |
472 | |
480 | |
473 | deliantra/server cvs-co(README) cvs-co(Changes) cvs-co(COPYING.Affero) |
481 | deliantra/server cvs-co(README) cvs-co(Changes) cvs-co(COPYING.Affero) |
474 | The <a href="http://www.deliantra.net/">Deliantra</a> game server. |
482 | The <a href="http://www.deliantra.net/">Deliantra</a> game server. |
475 | |
483 | |
476 | Follow the link to <a href="http://www.deliantra.net/">Deliantra</a> for background info. |
484 | 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 |
603 | more address ranges, to which pings will be distributed according to a |
596 | least-load principle. |
604 | least-load principle. |
597 | |
605 | |
598 | A command line utility (<tt>fastping</tt>) is included. |
606 | A command line utility (<tt>fastping</tt>) is included. |
599 | |
607 | |
|
|
608 | AnyEvent-AIO cpan cvs-pod(AIO.pm,) list(anyevent) irc(anyevent) |
|
|
609 | A perl module providing transparent integration of IO::AIO into AnyEvent. |
|
|
610 | |
|
|
611 | AnyEvent-BDB cpan cvs-pod(BDB.pm,) list(anyevent) irc(anyevent) |
|
|
612 | A perl module providing transparent integration of BDB into AnyEvent. |
|
|
613 | |
|
|
614 | AnyEvent-DBus cpan cvs-pod(DBus.pm,) list(anyevent) irc(anyevent) |
|
|
615 | A perl module providing mostly transparent integration of Net::DBus into AnyEvent. |
|
|
616 | |
|
|
617 | AnyEvent-DBI cpan cvs-pod(DBI.pm,) list(anyevent) irc(anyevent) |
|
|
618 | A perl module providing an asynchronous DBI interface for AnyEvent. |
|
|
619 | |
|
|
620 | This module provides an asynchronous DBI interface for AnyEvent by |
|
|
621 | starting one or more proxy processes that handle trhe actual sql |
|
|
622 | commands. |
|
|
623 | |
|
|
624 | AnyEvent-FCP cpan cvs-pod(FCP.pm,) list(anyevent) irc(anyevent) |
|
|
625 | A perl module implementing a Freenet Client Protocol 2.0 client. |
|
|
626 | |
|
|
627 | AnyEvent-GPSD cpan cvs-pod(GPSD.pm,) list(anyevent) irc(anyevent) |
|
|
628 | A perl module implementing an AnyEvent client for the (pre-xml) GPSD protocol. |
|
|
629 | |
|
|
630 | AnyEvent-Porttracker cpan cvs-pod(Porttracker.pm,) cvs-pod(Porttracker/protocol.pod,api-protocol) list(anyevent) irc(anyevent) |
|
|
631 | A perl module implementing a client for the Porttracker/PortIQ API protocol. |
|
|
632 | |
|
|
633 | AnyEvent-SNMP cpan cvs-pod(SNMP.pm,) list(anyevent) irc(anyevent) |
|
|
634 | A perl module that transparently integrates Net::SNMP into AnyEvent. |
|
|
635 | |
|
|
636 | In addition to making Net::SNMP AnyEvent-aware, this module also |
|
|
637 | implements advanced rate-limiting that enables you to query many devices |
|
|
638 | in parallel without running into timeouts due to high CPU usage. |
|
|
639 | |
|
|
640 | AnyEvent-Watchdog cpan cvs-pod(Watchdog.pm,) list(anyevent) irc(anyevent) |
|
|
641 | A perl module implementing a watchdog for Perl processes. |
|
|
642 | |
|
|
643 | This module forks your Perl process early during it's startup. It can |
|
|
644 | automatically restart the program on crashes, provide clean restarts |
|
|
645 | requested by the watched program and a number of other small feats. |
|
|
646 | |
600 | AnyEvent-HTTP cpan cvs-pod(HTTP.pm,) cvs-co(Changes) list(anyevent) irc(anyevent) |
647 | 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. |
648 | A simple and plain event based http and https client. |
602 | |
649 | |
603 | This module implements a simple, stateless and non-blocking HTTP |
650 | This module implements a simple, stateless and non-blocking HTTP |
604 | client. It supports GET, POST and other request methods, cookies and more, |
651 | client. It supports GET, POST and other request methods, cookies and more, |
… | |
… | |
762 | |
809 | |
763 | libev cvs-co(README) cvs-pod(ev.pod) dist list(libev) |
810 | libev cvs-co(README) cvs-pod(ev.pod) dist list(libev) |
764 | A full-featured and high-performance (<a |
811 | A full-featured and high-performance (<a |
765 | href="http://libev.schmorp.de/bench.html">see benchmark</a>) event loop that |
812 | 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 |
813 | 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 |
814 | 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 |
815 | <a href="rxvt-unicode.html">rxvt-unicode</a> packages, and in |
769 | the Deliantra MORPG Server and Client. |
816 | the Deliantra MORPG Server and Client. |
770 | |
817 | |
771 | Features include child/pid watchers, periodic timers based on wallclock |
818 | Features include child/pid watchers, periodic timers based on wallclock |
772 | (absolute) time (in addition to timers using relative timeouts), as well |
819 | (absolute) time (in addition to timers using relative timeouts), as well |
773 | as epoll/kqueue/event ports/inotify/eventfd/signalfd support, fast timer |
820 | as epoll/kqueue/event ports/inotify/eventfd/signalfd support, fast timer |
… | |
… | |
779 | configuration support. A full-featured and well-documented |
826 | configuration support. A full-featured and well-documented |
780 | <a href="EV.html">perl interface</a> is also available. |
827 | <a href="EV.html">perl interface</a> is also available. |
781 | <p /> |
828 | <p /> |
782 | A <a href="http://lists.schmorp.de/mailman/listinfo/libev">mailing |
829 | A <a href="http://lists.schmorp.de/mailman/listinfo/libev">mailing |
783 | list</a> for discussion and support is now available. |
830 | list</a> for discussion and support is now available. |
|
|
831 | |
|
|
832 | gvpe dist-gnu |
|
|
833 | GVPE creates a virtual ethernet network with multiple nodes using a |
|
|
834 | variety of transport protocols. Participating nodes do not need to trust |
|
|
835 | each other. |
|
|
836 | |
|
|
837 | GVPE creates a virtual ethernet (broadcasts supported, any protocol that |
|
|
838 | works with a normal ethernet should work with GVPE) by creating encrypted |
|
|
839 | host-to-host tunnels between multiple endpoints. |
|
|
840 | <p /> |
|
|
841 | Unlike other virtual private "network" solutions which merely create a |
|
|
842 | single tunnel, GVPE creates a real network with multiple endpoints. |
|
|
843 | <p /> |
|
|
844 | It is designed to be very simple and robust (cipher selection done at |
|
|
845 | compiletime etc.), and easy to setup (only a single config file shared |
|
|
846 | unmodified between all hosts). |
|
|
847 | <p /> |
|
|
848 | VPN hosts can neither sniff nor fake packets, that is, you can use |
|
|
849 | MAC-based filtering to ensure authenticity of packets even from member |
|
|
850 | nodes. |
|
|
851 | <p /> |
|
|
852 | GVPE can also be used to tunnel into some vpn network using a variety of |
|
|
853 | protocols (raw IP, UDP, TCP, HTTPS-proxy-connect, ICMP and DNS). It is, |
|
|
854 | however, primarily designed to sit on the gateway machines of company |
|
|
855 | branches to connect them together. |
784 | |
856 | |
785 | libeio dist cvs-pod(eio.pod,) cvs-co(eio.h) cvs-co(demo.c) cvs-co(Changes) list(libev) |
857 | 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). |
858 | Event-based fully asynchronous I/O library for C (used by IO::AIO). |
787 | Currently in BETA! |
859 | Currently in BETA! |
788 | |
860 | |