Files
i2p.www/www.i2p2/pages/meeting62.html
2008-02-04 18:22:36 +00:00

288 lines
21 KiB
HTML

{% extends "_layout.html" %}
{% block title %}I2P Development Meeting 62{% endblock %}
{% block content %}<div class="irclog">
<p>[23:01] &lt;jrand0m&gt; agenda </p>
<p>[23:01] &lt;jrand0m&gt; 0) welcome </p>
<p>[23:01] &lt;jrand0m&gt; 1) 0.2 status </p>
<p>[23:01] &lt;jrand0m&gt; 2) www proxy </p>
<p>[23:01] * dm ponders.</p>
<p>[23:02] &lt;dm&gt; oh, meeting?</p>
<p>[23:02] &lt;jrand0m&gt; 3) phttprelay </p>
<p>[23:02] &lt;jrand0m&gt; 4) i2ptunnel </p>
<p>[23:02] &lt;jrand0m&gt; 5) installation </p>
<p>[23:02] &lt;dm&gt; sorry.</p>
<p>[23:02] &lt;jrand0m&gt; 6) iip feature request </p>
<p>[23:02] &lt;jrand0m&gt; 7) ??? </p>
<p>[23:02] &lt;jrand0m&gt; 0) welcome </p>
<p>[23:02] &lt;jrand0m&gt; hi. </p>
<p>[23:02] &lt;jrand0m&gt; meeting 62? is it? </p>
<p>[23:02] &lt;Dellammo&gt; hi</p>
<p>[23:02] &lt;jrand0m&gt; (no worry dm, we can forgive you) </p>
<p>[23:02] &lt;mihi&gt; hi jrand0m</p>
<p>[23:02] &lt;dm&gt; hi mihi</p>
<p>[23:02] * mihi thinks so</p>
<p>[23:03] &lt;jrand0m&gt; 1) 0.2 status </p>
<p>[23:03] * jrand0m has had a severe case of feature-creep-itis as of late, so the 0.2 release still has about 30 minutes left of code left to do.</p>
<p>[23:04] &lt;jrand0m&gt; but then we'll be able to run and communicate reliably regardless of NAT, firewall, or HTTP proxy. </p>
<p>[23:04] * dm has just created I2PSecureRemoteShell 1.0</p>
<p>[23:04] &lt;dm&gt; cool jr!</p>
<p>[23:05] &lt;jrand0m&gt; everything is functional, the only thing left to do is to expire unused database entries after N minutes (probably 5 for a default) </p>
<p>[23:05] &lt;jrand0m&gt; the comm across NAT/firewall/HTTP proxy is the PHTTP transport. its slow, but reliable. </p>
<p>[23:05] &lt;dm&gt; how does it work? what ports does it use?</p>
<p>[23:06] &lt;jrand0m&gt; it sends the message to a reachable PHTTP relay, which stores the message, and then the receiver polls for messages ever N seconds </p>
<p>[23:06] &lt;jrand0m&gt; there is a LOT that can be tuned and improved on that side of things, which is agenda point 3 :) </p>
<p>[23:06] &lt;dm&gt; P stands for?</p>
<p>[23:06] &lt;jrand0m&gt; Polling HTTP </p>
<p>[23:06] &lt;dm&gt; ok thanks.</p>
<p>[23:07] &lt;jrand0m&gt; I'm going to update the "kludges" page on the wiki after the meeting too, to note the things that are funky </p>
<p>[23:07] &lt;jrand0m&gt; (such as not yet handling a lease change during communication) </p>
<p>[23:08] &lt;jrand0m&gt; the other point to discuss is agenda item 5 - installation. aka how we should handle installation of the router/sdk/tunnel/etc </p>
<p>[23:08] &lt;jrand0m&gt; ok, thats it for 0.2 status </p>
<p>[23:08] &lt;jrand0m&gt; 2) www proxy. </p>
<p>[23:09] &lt;jrand0m&gt; moi had a really cool idea for browsing in-i2p www sites. </p>
<p>[23:09] &lt;jrand0m&gt; wanna explain whats up moi? </p>
<p>[23:09] * jrand0m puts the spotlight on ya</p>
<p>*** moi is ~someone@anon.iip (someone) </p>
<p>*** on channels: #freenet #anonymous #iip #iip-dev </p>
<p>*** on irc via server anon.iip (Official IIP )</p>
<p>*** moi has been idle 9 minutes, signed on at Thu Jan 01 01:00:00 1970 </p>
<p>[23:10] &lt;moi&gt; well</p>
<p>[23:10] &lt;moi&gt; i am just modifying an HTTP proxy and using mihi's tunnel</p>
<p>[23:10] &lt;moi&gt; so that you can go to (Link: http://i2p/BASE64KEYHERE)http://i2p/BASE64KEYHERE</p>
<p>[23:10] &lt;moi&gt; eventually the naming server would be there--</p>
<p>[23:11] &lt;dm&gt; sweet</p>
<p>[23:11] *** Signoff: mihi (Ping timeout)</p>
<p>[23:11] &lt;moi&gt; you have to paste in the first long key, but after that you should technically be able to follow links I think</p>
<p>[23:11] &lt;Dellammo&gt; so an internal web page or a page outside of i2p?</p>
<p>[23:11] &lt;dm&gt; i2p resolves to localhost?</p>
<p>[23:11] &lt;moi&gt; so someone could put up an i2p Google, and go from there.... mabye</p>
<p>[23:12] &lt;mihi-backup&gt; !thwap dm.</p>
<p>[23:12] &lt;mihi-backup&gt; a proxy...</p>
<p>[23:12] &lt;jrand0m&gt; for security, the proxy should 404 all hosts other than (Link: http://i2p/)http://i2p/ </p>
<p>[23:12] &lt;dm&gt; oops!</p>
<p>[23:12] &lt;moi&gt; good point</p>
<p>[23:12] &lt;dm&gt; missed that part</p>
<p>[23:12] &lt;mihi-backup&gt; although a simple servlet would be nice too</p>
<p>[23:12] &lt;jrand0m&gt; hmm? </p>
<p>[23:13] *** mihi (~mihi@anon.iip) has joined channel #iip-dev</p>
<p>[23:13] &lt;jrand0m&gt; hmm, there may be a problem. </p>
<p>[23:13] &lt;jrand0m&gt; this would use HTTP 1.0 or 1.1? </p>
<p>[23:14] &lt;mihi&gt; if the server requests a Host: header?</p>
<p>[23:14] &lt;jrand0m&gt; [aka, would it have a Host: header?] </p>
<p>[23:14] &lt;jrand0m&gt; exactly </p>
<p>[23:14] * mihi wishes for something</p>
<p>[23:14] &lt;moi&gt; I wonder if we can have the proxy blank that out</p>
<p>[23:14] &lt;jrand0m&gt; if the server's outbound tunnel is always on the same host, thats fine </p>
<p>[23:14] &lt;jrand0m&gt; you can set the proxy Host: to 127.0.0.1 </p>
<p>[23:15] *** dm_backup (~as@anon.iip) has joined channel #iip-dev</p>
<p>[23:15] &lt;jrand0m&gt; but then you must run the tunnel on the same host as the server. not a bad problem, as its not for general normal-web browsing </p>
<p>[23:15] &lt;jrand0m&gt; right? </p>
<p>[23:15] *** Signoff: dm (Ping timeout)</p>
<p>[23:16] * moi hadn't thought that deeply into it yet</p>
<p>[23:16] &lt;mihi&gt; if you run the server on your own box you can also alias i2p to localhost or sth like that.</p>
<p>[23:16] &lt;dm_backup&gt; so do people have to run web servers now?</p>
<p>[23:16] &lt;jrand0m&gt; dm_backup&gt; this is only for people who want to. </p>
<p>[23:16] *** dm_backup is now known as dm</p>
<p>[23:16] &lt;Dellammo&gt; like me</p>
<p>[23:16] &lt;dm&gt; yeah, I mean for this (Link: http://i2p)http://i2p thingie</p>
<p>[23:17] &lt;mihi&gt; if you want to provide content, yes.</p>
<p>[23:17] &lt;mihi&gt; but you have to run one to provide content in good ol' www as well.</p>
<p>[23:18] &lt;Dellammo&gt; why?</p>
<p>[23:18] &lt;dm&gt; Hmmm, maybe I should build a P2P app for I2P.</p>
<p>[23:18] &lt;jrand0m&gt; a filesharing app over i2p would rule. </p>
<p>[23:18] &lt;dm&gt; yes sorry, filesharing.</p>
<p>[23:19] &lt;moi&gt; I think it would be possible for someone to run an OpenNap server in conjunction with i2ptunnel</p>
<p>[23:19] &lt;jrand0m&gt; yes. </p>
<p>[23:19] &lt;jrand0m&gt; (though a native i2p p2p would have better performance) </p>
<p>[23:19] &lt;mihi&gt; but the downloads will be hard. </p>
<p>[23:20] &lt;mihi&gt; no way to get to the correct host as all are localhost ;)</p>
<p>[23:20] &lt;dm&gt; Let's wait till we see PING running over i2ptunnel first.</p>
<p>[23:20] * Dellammo is confused are we talking about a proxy thats not i2ptunnel that lets you access webservers that are internal to the i2p network by typing '(Link: http://i2p/')http://i2p/' ?</p>
<p>[23:20] &lt;jrand0m&gt; perhaps just a simple FTP client designed to run over i2p? </p>
<p>[23:20] &lt;dm&gt; (not ping literally)</p>
<p>[23:20] &lt;mihi&gt; jrand0m: ftp needs 2 ports...</p>
<p>[23:20] &lt;jrand0m&gt; designed to run over i2p. </p>
<p>[23:21] &lt;jrand0m&gt; a general file transfer app, not the FTP protocol, specifically </p>
<p>[23:21] &lt;mihi&gt; then it's not ftp.</p>
<p>[23:21] &lt;mihi&gt; ATalk ;)</p>
<p>[23:21] &lt;jrand0m&gt; (taking advantage of larger message sizes) </p>
<p>[23:21] &lt;dm&gt; battle of the wise men!</p>
<p>[23:21] &lt;jrand0m&gt; heh </p>
<p>[23:21] &lt;moi&gt; Dellammo: right now you have to create an i2ptunnel for each website/Destination you want to browse. We are thinking of using a proxy server that would dynamically build an i2ptunnel for each site.</p>
<p>[23:22] &lt;jrand0m&gt; (kind of) </p>
<p>[23:22] &lt;jrand0m&gt; you won't want to use an i2ptunnel, specifically. </p>
<p>[23:22] &lt;jrand0m&gt; you'll want to use the i2ptunnel protocol, and send messages directly, not via TCP/IP sockets. </p>
<p>[23:23] &lt;jrand0m&gt; mihi&gt; any idea what kind of time it would take to factor the protocol functionality out of i2ptunnel so other apps could send data to an i2p tunnel? </p>
<p>*** mihi is mihi@anon.iip (mihi) </p>
<p>*** on channels: #iip-dev #iip #headlines #german #freenet-opn #freenet #fredisdead #frazaa @#fiw #anonymous </p>
<p>*** on irc via server anon.iip (Official IIP )</p>
<p>*** mihi has been idle 3 minutes, signed on at Thu Jan 01 01:00:00 1970 </p>
<p>*** mihi-backup is ~mihi@anon.iip (mihi) </p>
<p>*** on channels: #iip-dev </p>
<p>*** on irc via server anon.iip (Official IIP )</p>
<p>*** mihi-backup has been idle 12 minutes, signed on at Thu Jan 01 01:00:00 1970 </p>
<p>[23:25] &lt;mihi&gt; is there any large protocol functionality? I2PTunnelRunner can be used as is.</p>
<p>[23:25] &lt;mihi&gt; You just have to adjust the client class for your needs.</p>
<p>[23:25] &lt;jrand0m&gt; hmm, not really - i2ptunnelRunner uses a socket </p>
<p>[23:26] &lt;jrand0m&gt; this is a plain java app that wants to generate a message ("HTTP GET /\n\n") and send it to an outbound I2PTunnel </p>
<p>[23:27] &lt;jrand0m&gt; we don't want to redirect the client contacting the proxy to a new port to connect to the newly instantiated I2PTunnel (as there'd be no way to switch back for links off that site) </p>
<p>[23:28] &lt;jrand0m&gt; but perhaps switching I2PTunnelRunner to use an InputStream (all it uses is socket.getInputStream) would be easy... </p>
<p>[23:28] &lt;jrand0m&gt; but then we still need the listen side </p>
<p>[23:28] *** Signoff: mihi (Ping timeout)</p>
<p>[23:28] &lt;jrand0m&gt; d'oh </p>
<p>[23:28] * jrand0m hopes the backup isn't about to ping out...</p>
<p>[23:28] &lt;dm&gt; backup's gonna die as well ,watch it!</p>
<p>[23:29] &lt;mihi-backup&gt; ;)</p>
<p>[23:29] &lt;jrand0m&gt; w00t </p>
<p>[23:29] &lt;mihi-backup&gt; [23:25] &lt;jrand0m&gt; hmm, not really - i2ptunnelRunner uses a socket</p>
<p>[23:29] &lt;mihi-backup&gt; [23:25] &lt;mihi&gt; oops, right. and you want to do it completely without sockets?</p>
<p>[23:29] &lt;mihi-backup&gt; [23:26] &lt;mihi&gt; then there is not much code left from i2ptunnel. most is for handling the sockets.</p>
<p>[23:29] &lt;mihi-backup&gt; [23:26] &lt;mihi&gt; best stick to the protocol and implement it yourself (build the messages w/ the static method in i2ptunnel.java)</p>
<p>[23:29] &lt;mihi-backup&gt; [23:28] &lt;mihi&gt; http would not need that many threads. Just run a reader over the incoming message until a double return and then send your thing out.</p>
<p>[23:30] &lt;jrand0m&gt; ah 'k. thanks </p>
<p>[23:30] &lt;jrand0m&gt; moi&gt; tu sabes? </p>
<p>[23:30] &lt;mihi-backup&gt; re switching I2PTunnel for an input stream. what for? you won't get anythin on it any more after you parsed the request.</p>
<p>[23:31] * moi thinks</p>
<p>[23:31] &lt;dm&gt; toi thinks</p>
<p>[23:31] &lt;mihi-backup&gt; just forget the tunnelrunner. ;)</p>
<p>[23:31] &lt;jrand0m&gt; right, I was just thinking to keep the I2PTunnel and the http proxy to use the same code - I2PTunnel would use socket.getInputStream(), the http proxy would use new ByteArrayInputStream("GET / \n\n".getBytes()) </p>
<p>[23:31] *** mihi (mihi@anon.iip) has joined channel #iip-dev</p>
<p>[23:32] * moi will need to go over this later in detail</p>
<p>[23:32] &lt;mihi-backup&gt; but that will cause the runner to send a "Connection closed" when the string is sent.</p>
<p>[23:32] &lt;mihi-backup&gt; as the stream ends.</p>
<p>[23:32] &lt;jrand0m&gt; right, which is normal HTTP </p>
<p>[23:33] &lt;mihi-backup&gt; just forget the runner, i said ;)</p>
<p>[23:33] &lt;jrand0m&gt; 'k </p>
<p>[23:33] &lt;mihi-backup&gt; jrand0m: nope. the connection is closed when the answer is here, not when the question is out.</p>
<p>[23:33] &lt;jrand0m&gt; oh yeah </p>
<p>[23:33] &lt;jrand0m&gt; ;) </p>
<p>[23:36] &lt;jrand0m&gt; cool moi, we can work through this stuff later on. </p>
<p>[23:36] &lt;jrand0m&gt; ok, thats agenda item 2). now for 3) </p>
<p>[23:36] &lt;moi&gt; ok</p>
<p>[23:37] &lt;jrand0m&gt; 3) phttprelay </p>
<p>[23:37] &lt;jrand0m&gt; phttp relay is a set of servlets wrapped in a .war file </p>
<p>[23:38] &lt;jrand0m&gt; it works out of the box on windows / sun JVM, but I had to hack jetty to run w/ kaffe </p>
<p>[23:38] &lt;mihi&gt; make .peace not .war</p>
<p>[23:39] * jrand0m groans</p>
<p>[23:39] &lt;dm&gt; you can run .war files without a J2ee server?</p>
<p>[23:39] &lt;dm&gt; good to know.</p>
<p>[23:39] &lt;jrand0m&gt; .war files run in any servlet container - tomcat, apache w/ mod_jk, jetty, etc </p>
<p>[23:40] &lt;jrand0m&gt; we're going to want some people to run these on machines w/ publicly reachable IP addresses, but they're only necessary for people who don't have publicly reachable addresses (like me) </p>
<p>[23:41] &lt;mihi&gt; which ports do you need to redirect if you want to go through a nat without that?</p>
<p>[23:41] &lt;jrand0m&gt; its implementation is very rudimentary as well - it needs some limits as to how many routers it relays for, how many messages it queues up, how long before it times out, etc </p>
<p>[23:41] &lt;jrand0m&gt; just the I2NP TCP port </p>
<p>[23:41] &lt;jrand0m&gt; (or the I2NP UDP port) </p>
<p>[23:41] * mihi does not know if his nat allows udp forwarding</p>
<p>[23:42] * jrand0m doesn't know if mihi's nat does either</p>
<p>[23:43] &lt;jrand0m&gt; right now, for example, my laptop is reachable via PHTTP only, and my server's router is reachable via PHTTP, TCP, and UDP. if my laptop establishes a connection to the server's router via TCP, it can send messages via TCP. but if my laptop doesn't first do that, the server must send messages via PHTTP </p>
<p>[23:44] &lt;jrand0m&gt; the code is in i2p/code/apps/phttprelay/ for anyone with servlets experience who wants to hack on a small app </p>
<p>[23:45] &lt;jrand0m&gt; (it should also work transparently with https as well as plain http) </p>
<p>[23:45] &lt;jrand0m&gt; I'll doc up the PHTTP protocol Real Soon Now. :) </p>
<p>[23:45] *** Signoff: mihi (Ping timeout)</p>
<p>[23:45] &lt;jrand0m&gt; ok, thats it for item 3) phttprelay </p>
<p>[23:45] &lt;jrand0m&gt; 4) i2ptunnel </p>
<p>[23:46] &lt;jrand0m&gt; we've already discussed a bunch of stuff. unless mihi (or anyone else) has anything else on it, we can move to 5) </p>
<p>[23:46] *** wilde (~anon@anon.iip) has joined channel #iip-dev</p>
<p>[23:46] &lt;jrand0m&gt; hola wilde </p>
<p>[23:47] &lt;jrand0m&gt; ok. that said, item 5 :) </p>
<p>[23:47] &lt;jrand0m&gt; 5) installation </p>
<p>[23:48] &lt;jrand0m&gt; to get 0.2 out the door, and beyond, I'm thinking of some ant scripts. </p>
<p>[23:48] &lt;jrand0m&gt; or should we use another open source installation system? </p>
<p>[23:48] &lt;jrand0m&gt; anyone have any experiences / thoughts on this? </p>
<p>[23:49] &lt;Dellammo&gt; hmm</p>
<p>[23:50] &lt;jrand0m&gt; ant has the benefit of being unified with the build system, platform independent, and has headless operation. </p>
<p>[23:50] &lt;wilde&gt; hey</p>
<p>[23:50] &lt;jrand0m&gt; but it requires ant (which requires java). and it doesn't have a GUI </p>
<p>[23:51] &lt;Dellammo&gt; i can think of many install programs for windows... i dont know how many are gpl though</p>
<p>[23:51] &lt;jrand0m&gt; yeah, I have a licensed InstallAnywhere Enterprise installation, but its bad for open source </p>
<p>[23:51] &lt;jrand0m&gt; NSIS is open source, but has its nuances. </p>
<p>[23:51] &lt;dm&gt; stupid question: is ant included in java?</p>
<p>[23:52] &lt;jrand0m&gt; nope. </p>
<p>[23:52] &lt;jrand0m&gt; oh, though we COULD distribute a GCJ'ed ant </p>
<p>[23:52] &lt;dm&gt; alright, must have come with eclipse then.</p>
<p>[23:52] &lt;jrand0m&gt; (compiled to native code) </p>
<p>[23:52] &lt;jrand0m&gt; definitely dm. </p>
<p>[23:52] &lt;jrand0m&gt; apache makes ant (ant.apache.org) and its apache licensed. </p>
<p>[23:52] &lt;jrand0m&gt; oh, yuck. </p>
<p>[23:52] * jrand0m just read the sentence I typed)</p>
<p>[23:53] &lt;jrand0m&gt; gpl is not apl friendly, according to the FSF </p>
<p>[23:53] &lt;jrand0m&gt; we probably can't distribute ant. </p>
<p>[23:53] &lt;dm&gt; can't we just a script? what needs to be done for it to be installed?</p>
<p>[23:53] &lt;jrand0m&gt; but we can use it. </p>
<p>[23:53] &lt;jrand0m&gt; not much at all. a script is fine. </p>
<p>[23:53] &lt;jrand0m&gt; but do we want a .bat and a .sh, etc. </p>
<p>[23:54] *** shardy (~shardy@anon.iip) has joined channel #iip-dev</p>
<p>[23:54] &lt;dm&gt; what does an installation entail, a couple of questions?</p>
<p>[23:54] &lt;jrand0m&gt; writing a java installer to do the install platform independent is overkill, so we should ideally use an existing install framework </p>
<p>[23:54] &lt;jrand0m&gt; yeah, a few questions </p>
<p>[23:54] &lt;jrand0m&gt; the installation targets I forsee: </p>
<p>[23:54] &lt;Dellammo&gt; do we get a flashy new logo? whos working on that?</p>
<p>[23:54] &lt;jrand0m&gt; install-router </p>
<p>[23:55] &lt;jrand0m&gt; install-www-tunnel, install-www-proxy, install-sdk, install-cvs-tunnel, update-seednodes </p>
<p>[23:55] &lt;moi&gt; why not use InstallAnywhere? if the code is open that is what matters</p>
<p>[23:55] * jrand0m thinks YOU are Dellammo :)</p>
<p>[23:55] &lt;jrand0m&gt; InstallAnywhere isn't open source. </p>
<p>[23:55] * Dellammo gets to work</p>
<p>[23:56] &lt;dm&gt; script would probably be enough at this point, but I guess might as well think ahead.</p>
<p>[23:56] &lt;jrand0m&gt; (its about 4k euro / seat) </p>
<p>[23:56] &lt;jrand0m&gt; right. so for tomorrow, I'll probably just write ant scripts, but we need to look into a system </p>
<p>[23:56] *** Signoff: wilde (Ping timeout)</p>
<p>[23:56] &lt;jrand0m&gt; so if anyone can help out with that, it'd be appreciated :) </p>
<p>[23:57] &lt;dm&gt; ah okay, I was thinking shell scripts.</p>
<p>[23:57] &lt;moi&gt; Some of the package managers could do that on the Linux installs</p>
<p>[23:57] *** wilde (~anon@anon.iip) has joined channel #iip-dev</p>
<p>[23:57] &lt;jrand0m&gt; managing different installers for different platforms is a PITA </p>
<p>[23:59] &lt;dm&gt; java installer? Why is it a PITA?</p>
<p>[23:59] &lt;jrand0m&gt; a java installer would be great </p>
<p>[23:59] &lt;mihi-backup&gt; pain in the a**e</p>
<p>[23:59] &lt;mihi-backup&gt; oops, sorry...</p>
<p>[23:59] &lt;dm&gt; system.out.println("Please enter where you would like to install I2P") ;)</p>
<p>[23:59] &lt;mihi-backup&gt; s/tln/t; s/P"/P: "/</p>
<p>[23:59] &lt;mihi-backup&gt; s/sys/Sys/</p>
<p>[00:00] &lt;jrand0m&gt; writing a custom installer in java is possible, but its preferred to use an existing framework. but if you're volunteering to write a custom installer, I'm behind ya! </p>
<p>[00:00] &lt;dm&gt; mihi's having an epileptic seizure.</p>
<p>[00:00] * mihi-backup slaps dm around a bit with a large trout</p>
<p>[00:00] &lt;dm&gt; Tell you what...</p>
<p>[00:01] &lt;dm&gt; If you have time at any point to write out the exact steps needed in an install, I'll write a java installer.</p>
<p>[00:01] &lt;mihi-backup&gt; dm: read the ant script ;)</p>
<p>[00:01] &lt;jrand0m&gt; word dm. once I get the ant thing working I'll doc 'er up for you </p>
<p>[00:01] &lt;dm&gt; fair enough, we'll see if I can figure out the ant script once it's out.</p>
<p>[00:02] *** Signoff: wilde (Ping timeout)</p>
<p>[00:02] &lt;Dellammo&gt; jrand0m, i2p I2P i^2p or I^2P ?</p>
<p>[00:02] * jrand0m has some scribbles with a capital I, 2 and a capital P all superimposed on each other...</p>
<p>[00:03] &lt;Dellammo&gt; hmm</p>
<p>[00:03] *** wilde (~anon@anon.iip) has joined channel #iip-dev</p>
<p>[00:03] *** mihi (~mihi@anon.iip) has joined channel #iip-dev</p>
<p>[00:03] &lt;jrand0m&gt; ok, thats 5) installation </p>
<p>[00:03] &lt;jrand0m&gt; 6) iip feature request </p>
<p>[00:04] &lt;jrand0m&gt; someone came on here with a request for auto-nicktheifing </p>
<p>[00:04] &lt;jrand0m&gt; basically, if someone has registered a nick, no one can stay as that nick unless they're identified </p>
<p>[00:04] &lt;jrand0m&gt; nop or anyone who has done iip dev - thoughts? </p>
<p>[00:04] * jrand0m thinks it'd be a great feature to have</p>
<p>[00:05] * Dellammo draws an illuminati eye with a no 'as in no smoking sign' over it</p>
<p>[00:05] &lt;jrand0m&gt; heh </p>
<p>[00:05] &lt;dm&gt; Maybe I'll make an I2P logo as well... for the gui part of my installer ;)</p>
<p>[00:05] *** Signoff: wilde ((null))</p>
<p>[00:05] &lt;Dellammo&gt; lets all make them, so we dont get stuck with a sucky logo</p>
<p>[00:05] &lt;mihi&gt; jrand0m: ask mids - he maintains trent.</p>
<p>[00:06] &lt;mihi&gt; the trent source is in cvs btw</p>
<p>[00:06] &lt;Dellammo&gt; the logo is the most important part of any activity</p>
<p>[00:06] &lt;jrand0m&gt; definitely Dellammo. </p>
<p>[00:06] * dm dusts off Corel Draw...</p>
<p>[00:06] &lt;dm&gt; man I love Corel Draw.</p>
<p>[00:07] &lt;jrand0m&gt; ok, thats it for 6) </p>
<p>[00:07] &lt;jrand0m&gt; 7) ??? </p>
<p>[00:07] &lt;jrand0m&gt; any questions / thoughts / frisbees/ toenails? </p>
<p>[00:07] &lt;dm&gt; Thought: hope it works.</p>
<p>[00:08] &lt;jrand0m&gt; heh </p>
<p>[00:08] * jrand0m too.</p>
<p>[00:09] &lt;mihi&gt; jrand0m: keep the good work!</p>
<p>[00:09] &lt;dm&gt; yes, keep it up.</p>
<p>[00:09] &lt;jrand0m&gt; good work? you obviously haven't seen the code ;) </p>
<p>[00:09] &lt;dm&gt; Love your code, except for the bliding underscores.</p>
<p>[00:09] &lt;dm&gt; blinding...bleeding..etc..</p>
<p>[00:09] &lt;jrand0m&gt; heh, instance variables have _, so we don't ever need to do this.var = var; </p>
<p>[00:10] &lt;jrand0m&gt; ok... 68 minutes... if I can drag this out for one more minute... </p>
<p>[00:10] &lt;jrand0m&gt; w00t </p>
<p>[00:10] * jrand0m *baf*s the meeting closed.</p>
</div>{% endblock %}