Conversation with #inferno at Tue Nov 17 20:13:41 2009 on powerman-asdf@irc.freenode.net (irc) (20:27:28) j123m [n=quassel@unas-revda.interra.ru] entered the room. (20:32:33) mennis left the room (quit: Read error: 60 (Operation timed out)). (21:18:27) mennis [n=mennis@adsl-068-016-104-079.sip.asm.bellsouth.net] entered the room. (21:47:31) eekee [n=ethan@sourcemage/guru/eekee] entered the room. (01:36:03) mennis left the room (quit: Read error: 110 (Connection timed out)). (02:45:37) underspecified [n=eric@softbank220043052007.bbtec.net] entered the room. (04:08:28) eekee left the room (quit: Remote closed the connection). (06:05:55) underspecified left the room (quit: ). (07:02:30) robot12: hi all (07:05:57) underspecified [n=eric@walnut.naist.jp] entered the room. (08:08:03) me___ [n=venkates@c-68-55-179-48.hsd1.md.comcast.net] entered the room. (08:16:28) underspecified left the room (quit: ). (08:18:59) underspecified [n=eric@isa7-dhcp-116-227.naist.jp] entered the room. (08:55:17) underspecified left the room (quit: ). (08:56:23) underspecified [n=eric@walnut.naist.jp] entered the room. (09:55:54) eno left the room (quit: orwell.freenode.net irc.freenode.net). (09:55:54) Robdgreat left the room (quit: orwell.freenode.net irc.freenode.net). (09:56:48) eno [n=eno@nslu2-linux/eno] entered the room. (09:56:52) Robdgreat [i=rob@unaffiliated/robdgreat] entered the room. (11:29:18) me___ left the room (quit: "Lost terminal"). (11:57:48) acmeuser125 [n=acmeuser@217.175.7.15] entered the room. (12:19:43) mjl-: good day all (12:20:56) uriel: good morning mjl-! (12:21:00) ***uriel is going to sleep :) (12:21:05) uriel: see you later! (12:21:57) mjl-: later :) (12:29:43) gualteri [n=salva@crespins.disca.upv.es] entered the room. (12:45:46) gualteri left the room. (12:51:28) mjl-: anyone know what the equivalent of plan 9's postmountsrv in inferno is? (12:51:44) mjl-: e.g. for posting a styx server pipe fd in /srv (12:52:19) mjl-: i'm now thinking of writing a program that does something like that with file2chan... but plan 9's srv(3) seems easier to use (14:07:59) eekee [n=ethan@sourcemage/guru/eekee] entered the room. (14:09:48) eekee: ok I don't get it. (14:11:25) eekee: Charon running in inferno hosted under linux on my quad core two point four jiga-hertz machine is SLOW (14:12:21) eekee: Charon running in inferno hosted under OS X on my 466MHz, 384MB PPC machine which predates any notions of multicore is QUICK (14:21:51) mjl-: strange indeed (14:22:05) mjl-: try some microbenchmarks? (14:22:09) mjl-: if you really want to find out that is (14:22:34) mjl-: i've just rediscovered that listen(1) sucks: it does only one connection at a time (14:22:52) andguent: why not just give the profiler a go. see what turns up (14:23:17) mjl-: and i noticed that mount(1)'s -S is a bit tricky: it causes the mount to happen on a different Chan, stopping the kernel (emu) from mux'ing the styx connection on it, causing it to send new Version messages (14:23:23) andguent: at least it gives you a quick impression if the code spends it's time in the runtime or in the actual code (14:23:57) mjl-: and look at /dev/jit, to be sure that's not the problem (14:24:16) eekee: ty (14:25:02) andguent: iirc. inferno does no jitting on intel macs (14:25:18) eekee: hmm (14:25:32) andguent: but that memory is rather vague (14:25:44) mjl-: that's correct (14:26:12) mjl-: but the linux machine is probably intel, and the other is ppc (14:26:47) eekee: yep (14:27:35) underspecified left the room (quit: ). (14:37:30) eekee left the room (quit: Remote closed the connection). (14:44:49) ethan__ [n=ethan@cpc2-lanc4-0-0-cust329.brig.cable.ntl.com] entered the room. (14:45:08) ethan__: *sigh* too unstable (14:46:42) ethan__: first resizing a second Charon caused it to stop responding. windowing system problem I think since resizing a shell did the same (14:47:16) ethan__: then coming out of full-screen mode screwed up the keyboard for OS X (2nd time in 2 days) (14:47:24) ethan__: is this sort of stuff normal? (14:48:10) mjl-: resizing windows in wm/wm has always worked for me (14:48:22) mjl-: i didn't know full screen mode existed (14:48:26) mjl-: how do you switch to that? (14:49:00) ethan__: command-F on a Mac, ctrl-option to switch out (14:49:14) mjl-: bummer, i don't have a mac (14:49:28) ethan__: sometimes it leaves the system thinking the ctrl and/or option keys are still pressed (14:49:43) ethan__: try alt-F or ctrl-f or alt-enter? (14:50:15) mjl-: i see that there is explicit support for full screen for mac osx. isn't present in x11 support afaik (14:50:23) ethan__: ah gotcha (14:50:23) mjl-: i have the same with alt "sticking" though (14:50:28) mjl-: but there's nothing to do about that (14:50:30) ethan__: ouch! (14:50:37) mjl-: my x11 window manager uses it for shortcuts (14:50:46) mjl-: (switching virtual desktops) (14:50:55) mjl-: and inferno uses it for unicode input (14:51:12) ethan__: oh so it sticks in inferno? (14:51:23) ethan__: mine sticks for everything :/ (14:52:30) mjl-: when inferno sees alt pressed, it remembers it and treats next chars special (14:52:48) mjl-: so "alt : )" causes the character ☺ to be "typed" (14:52:59) mjl-: but you can press alt, release alt, then type :, then type ) (14:53:06) mjl-: so it must remember the alt (14:53:30) olegfink: that's when I realised the "win" key isn't that of an evil (14:53:32) mjl-: but it seems my window manager passes the alt to programs (emu) even though it is part of a shortcut for the wm itself. perhaps that's a wm bug (14:53:47) olegfink: mjl-: no, that's intentional (14:53:56) ethan__: it's a trick, aye (14:54:04) ethan__: I don't like it (14:54:07) ethan__ is now known as eekee (14:54:28) mjl-: olegfink: afaik, the wm could wait for enough chars to know whether its a wm shortcut, and then either pass or don't pass the keystrokes (14:54:33) eekee is now known as EthanG (14:54:59) EthanG: it's an X11 feature, probably common to most windowing systems (14:59:58) olegfink: mjl-: aha, according to xev(1), dwm sends the alt keypress/keyrelease events but not the other shortcut key (15:01:39) mjl-: pwm seems to do the same (15:02:20) underspecified [n=eric@softbank220043052007.bbtec.net] entered the room. (15:02:35) EthanG: ya that's how it goes (15:02:50) EthanG: I'd just change the WM shortcut key to the windows key (15:03:05) EthanG: alt is a silly binding for a WM with lots of apps (15:03:36) olegfink: I guess that's because alt is sometimes used as a quasimodifier, and if the wm waits for some other key to decide whether to send the event or not you will never get anything (15:03:55) olegfink: EthanG: good laptops (and keyboards in general) have no windows key (15:05:03) EthanG: IMHO not having a key dedicated to the OS is not good (15:05:38) EthanG: there aren't nearly enough keys for everything to bind to as it is, and youreally need somehting that applications are not going to use (15:10:18) EthanG: Then again I'm not over keen on using the same key as both a modifier and a... what's the word.. signal I guess, so I'd want to find some other key for compose. Maybe one of the F-keys (15:15:25) olegfink: thinkpads have Fn, but follows mjl-'s suggestion in hardware and thus difficult to use (15:17:28) acmeuser125 left the room. (15:20:47) EthanG: mmm, Fn on the shortboard is entirely invisible to the host (15:21:12) EthanG: I think on my iBook Fn is not generally visible to the OS (15:21:25) EthanG: it is on my Zaurus, but the Zaurus kb is a pain to type on :} (16:06:49) mjl-: does anyone know if something like the following exists in inferno already? (16:06:51) mjl-: http://www.ueber.net/who/mjl/tmp/srvfc.b (16:10:11) anothy_x: is that just attaching a command's in/out to a filetochan? (16:10:42) mjl-: yes (16:10:58) mjl-: i would like to do something like plan 9's srv(3) (16:11:05) mjl-: but i don't know how to do it in inferno (16:11:38) mjl-: i don't want every app to have that "for(;;) alt { fileio... }" loop (16:11:54) mjl-: i have an fs that i want to attach to with multiple attach names, serving different file trees (16:12:13) mjl-: so on p9 you would post the 9p fd in /srv (16:12:15) anothy_x: ah, right srv's only in plan9. (16:13:06) mjl-: my fs now serves styx on fd 0, so srvfc can "post" it to /chan, then i can issue multiple mount(1)'s with different attach names, and it works (16:14:17) anothy_x: doesn't that just shift your differention from fid to attach name? (16:15:01) mjl-: well, before i did this: mount {myfs} /n/someplace (16:15:12) mjl-: but you cannot get at a different attach name once mounted (16:15:24) mjl-: and i do want to serve multiple file trees (16:15:50) anothy_x: is "multiple" there "one per client"? (16:16:01) EthanG: Is one process per tree no good? (16:16:01) mjl-: no, not really (16:18:55) mjl-: sorry, connection probs (16:18:55) mjl-: this fs is an on-disk fs (16:18:55) mjl-: and i want a normal attach to give the file tree with the actual on-disk files (16:18:55) mjl-: and another attach name for ctl files (16:18:55) mjl-: and more attach names for alternate views of the on-disk files (16:18:55) mjl-: styxlisten won't help because it doesn't allow setting attach names: it mounts & exports (without aname's) a styx server (16:18:55) mjl-: listen runs one instance of the command at a time. but there should be only one. (16:18:55) mjl-: and i do want devmnt to mux the styx connection, i.e. do only one version message (16:19:13) mjl-: so if i would serve a tcp connection, i would get multiple connections each with its own styx state (fids) (16:19:52) mjl-: with /srv/* on p9 (and inferno with /chan/* too), devmnt mux'es styx operations on the underlying in-kernel Chan* (18:34:07) mennis [n=mennis@adsl-068-016-104-079.sip.asm.bellsouth.net] entered the room. (20:39:34) j123m left the room (quit: Remote closed the connection). (20:40:22) j123m [n=quassel@unas-revda.interra.ru] entered the room. (20:52:25) soul9: anyone know how to read a file line-by-line in wm-sh? (20:54:33) mjl-: getline (20:54:51) mjl-: getlines even (20:55:32) mjl-: cat /dev/memory | getlines {echo line: $line} (20:57:11) soul9: cool! (20:57:13) soul9: thanks (20:58:09) mjl-: it's not the same as reading a line at will. the other option is to write a tool that keeps read(2)'ing 1 byte at a time until it sees a \n. (21:03:41) soul9: this is fine, thanks! (21:03:56) soul9: i really wanted to loop over it, exactly as getlines seems to do (21:04:31) soul9: will it continue reading undefinitely? ex. an ircfs data file ;P (21:04:57) mjl-: i think so :) (21:06:23) soul9: purrfect! (21:06:36) EthanG: :] (21:26:57) sqweek left the room (quit: Read error: 101 (Network is unreachable)). (21:50:25) soul9: ircbot here ready to serv (21:52:07) soul9: $(echo /me thinks it's a pity this doesn't work :() (21:52:08) ***soul9 thinks it's a pity this doesn't work :( (21:52:22) soul9: mjl-: ↑ ;P (21:59:31) mjl-: hah, nice (21:59:49) mjl-: how does the $(...) work? (22:03:03) EthanG: neat (22:13:05) soul9: just grep and sed ;) (22:13:17) soul9: it didn't work that well, i hope i have fixed it (22:13:50) soul9: just written in sh (22:15:02) soul9: sorry for the spam.. (22:15:18) soul9: ircbot here ready to serv (22:15:53) soul9: $(echo me thinks this works... > ctl) (22:15:54) ***soul9 thinks this works... (22:15:57) soul9: :) (22:17:07) EthanG: sweet (22:17:27) soul9: there is one problem: can't define new functions, because it runs commands in a new sh (22:17:34) EthanG: I may be wanting irc in inferno to replace my present irssix (22:17:37) soul9: if anyone knows how to do this without a new shell... (22:17:43) soul9: here, i'll paste the code (22:17:49) EthanG: shell scripts instead of functions? (22:18:50) soul9: EthanG: what do wou mean? (22:19:23) EthanG: soul9: maybe I should ask what you mean first :) (22:19:36) soul9: i mean being able to define a function for the bot as in $(fn tell {...}) (22:20:08) EthanG: no good writing a little script instead of defining that function? (22:20:30) soul9: $(echo 'me ''s code is at http://friendpaste.com/6JBBNPHLkjwJscVUQ4Bi75') (22:20:31) soul9: me 's code is at http://friendpaste.com/6JBBNPHLkjwJscVUQ4Bi75 (22:20:34) soul9: :( (22:20:35) mjl-: soul9: something like: cat data | sed -n s/$\((.*)\)/\1/p' | sh >data? (22:20:57) mjl-: oh, with filtering the leading char, timestamp & user (22:21:08) soul9: $(echo 'me ''s code is at http://friendpaste.com/6JBBNPHLkjwJscVUQ4Bi75' > ctl) (22:21:10) ***soul9 's code is at http://friendpaste.com/6JBBNPHLkjwJscVUQ4Bi75 (22:21:15) soul9: ☺ there (22:22:34) soul9: oooh, that could be a solution, nice one! (22:22:40) soul9: just filter! (22:22:44) soul9: neato! (22:49:36) mennis left the room (quit: ). (23:00:23) mennis [n=mennis@adsl-068-016-104-079.sip.asm.bellsouth.net] entered the room. (23:00:58) soul9: mjl-: doesn't work for some weird reason (23:01:05) soul9: sed doesn't like this data file (23:01:08) soul9: grep is fine (23:01:32) soul9: but then when i try to transform it, sed does't display :( (23:01:42) soul9: cat data | grep '^[^:]+:[^:]+: \$\(.*\)$'| sed 's,[^:]+:[^:]+: \$\((.*)\)$,\1,g' (23:03:01) mjl-: hmm (23:03:09) soul9: cat data | grep '^[^:]+:[^:]+: \$\(.*\)$' works fine, the sed line is just the one taken from the previious bot, it should work.. (23:03:15) mjl-: could it be that sed uses iobuf's for its output and doesn't flush on line boundary? (23:03:43) soul9: that might be, this is not just for last few lines though (23:03:52) soul9: how big can that buffer be?! :) (23:04:05) mjl-: 8k (23:04:14) soul9: hmmm, yep, might be then (23:04:19) mjl-: but if not much matches, the buffer won't fill quickly (23:04:29) mjl-: i think i ran into that once... (23:04:45) mjl-: and i recall openbsd's sed has a -u option to force line-buffered mode. (23:04:57) mjl-: inferno's sed does use iobuf's, but not sure if also for all output. i think so though (23:05:33) soul9: in irc that pretty much means 8k characters (23:05:37) soul9: that*'s a lot :( (23:06:25) soul9: any ideas of how to eval an expression in the current shell context? :) (23:06:55) soul9: i could set up an other shell, redirect output, and send it message i guess...kind of complicated for me ;) (23:08:18) mjl-: patch sed? :) (23:08:33) soul9: eheh (23:13:38) EthanG: awk? (23:13:42) EthanG: just guessing (23:24:29) soul9: i still don't know awk (23:29:03) EthanG: oh aye (23:29:08) EthanG: me either really (23:29:46) EthanG: still though, it seems ideal for bot triggers, or would be if you can add commands at runtime (23:31:05) soul9: there si no awk on inferno anyways (23:31:23) soul9: and i like to havce sh cmds better, though it would be nice to add triggers i guess (23:31:37) soul9: ii just want simple ;) (23:31:37) EthanG: isn't there? oke (23:31:43) EthanG: ah :) (23:31:48) soul9: nno triggers (23:31:53) EthanG: I'd want triggers and... little else really, lol (23:31:57) soul9: just add new commands would allready be nice (23:32:39) soul9: EthanG: you can add triggers with sh too, just create a new background process that tails the data file same as the bot ;) (23:32:59) soul9: in one line :D (23:37:57) EthanG: ah :D (23:48:38) soul9: i figured it out!!! (23:48:44) soul9: IT'S SO SIMPLE! (23:48:49) soul9: ☺ (23:49:10) soul9: noow for triggers.. (23:50:17) EthanG: :D (00:26:48) soul9: well.. (00:27:06) soul9: now ii need to test it somehow :( (00:50:21) mennis left the room (quit: Read error: 110 (Connection timed out)). (02:02:53) eno_ [n=eno@adsl-70-137-172-110.dsl.snfc21.sbcglobal.net] entered the room. (02:13:57) eno left the room (quit: Success). (02:36:51) soul9 left the room (quit: Excess Flood). (02:40:05) soul9 [n=none@unaffiliated/johnnybuoy] entered the room. (02:42:28) soul9: re :) (02:42:36) soul9: i added a trigger for my own nickname :D (02:42:46) soul9: that wasn't that much fun... (02:43:03) soul9: ok, the bot basic works :) (02:43:24) soul9: i want to add permanent functions that are dynammically addable..but that's foor llater (02:43:30) soul9: http://friendpaste.com/dXfV3oAiMHwg4m9NlJcqi (02:43:37) soul9: here's my irclib ☺ (02:44:41) soul9: ind of ugly, but even triggers work : (02:44:53) soul9: kind* :)* (03:01:51) EthanG: cheers. what do you use it with? (03:09:15) EthanG: 'scuse my ignorance but I've ignored IRC on inferno up to now thinking I'd always have plan 9 :) (03:11:25) soul9: ircfs (03:11:33) soul9: mjl- wrote it (03:11:48) soul9: it's a w e s o m e (03:11:49) soul9: ;) (03:11:53) EthanG: ok ty :) (03:12:00) ***EthanG pokes mjl- (03:12:12) soul9: i9 can give url (03:13:06) ***EthanG pokes i9 (03:13:16) soul9: heh (03:13:19) soul9: ueber.net (03:13:22) EthanG: ^^' (03:13:24) EthanG: ty (03:13:45) soul9: btw that is all served from inferno afaik.. (03:13:50) soul9: at least the hg part (03:18:38) EthanG: oh neat (05:02:16) underspecified left the room (quit: ). (05:07:14) mennis [n=mennis@adsl-065-012-170-146.sip.asm.bellsouth.net] entered the room. (05:11:28) eno_ left the room (quit: Nick collision from services.). (05:11:36) eno [n=eno@nslu2-linux/eno] entered the room. (05:45:04) underspecified [n=eric@walnut.naist.jp] entered the room. (05:57:15) mennis left the room (quit: "Swine Flu!!"). (07:00:59) j123m left the room (quit: Read error: 104 (Connection reset by peer)). (07:18:14) j123m [n=quassel@unas-revda.interra.ru] entered the room. (07:41:33) robot12 left the room (quit: Read error: 104 (Connection reset by peer)). (07:50:59) robot12 [n=robot12@inferno.kgts.ru] entered the room. (08:00:18) j123m left the room (quit: Read error: 110 (Connection timed out)). (10:00:32) rapidfx [n=host666@vl-cen-ce1.avtlg.ru] entered the room. (10:26:41) me__ [n=venkates@c-68-55-179-48.hsd1.md.comcast.net] entered the room. (11:26:36) underspecified left the room (quit: ). (11:48:27) mjl-: morning (11:49:13) mjl-: yeah, all of www.ueber.net is served by a httpd on inferno. it's a linux machine with emu. almost all scripts are scgi's (11:49:47) me__: mjl-: your hgweb is very nice, btw. i like it better than the real mercurial hgweb. (11:50:52) mjl-: that's good to hear! :) (11:51:06) mjl-: and i think there is enough room for improvement (11:51:39) mjl-: i also have to look into why www.ueber.net/code/ is so slow after a recent restart. i bet it's doing something inefficient, eg not caching (14:40:40) underspecified [n=eric@softbank220043052007.bbtec.net] entered the room. (16:04:18) me__ left the room (quit: "leaving"). (16:10:08) sswam1 [n=sswam@CPE-58-168-196-229.lns3.win.bigpond.net.au] entered the room. (16:31:31) raiz [n=raiz@p4FE88427.dip0.t-ipconnect.de] entered the room. (16:37:28) acmeuser [n=acmeuser@94.153.195.207] entered the room. (16:38:44) acmeuser left the room. (17:55:14) maht_ [n=maht__@85.189.31.174.proweb.managedbroadband.co.uk] entered the room. (18:04:59) maht left the room (quit: Read error: 110 (Connection timed out)). (18:40:09) me___ [i=[U2FsdGV@batman.acm.jhu.edu] entered the room. (18:59:44) sswam1 left the room (quit: Read error: 54 (Connection reset by peer)). (19:20:29) rapidfx left the room (quit: Remote closed the connection). (19:29:43) sqweek [n=none@203-206-124-219.dyn.iinet.net.au] entered the room. (19:32:49) j123m [n=quassel@unas-revda.interra.ru] entered the room. (19:43:18) p4p4 [n=pedro@24.121.113.82.net.de.o2.com] entered the room. (19:56:04) soul9 left the room (quit: Excess Flood). (19:58:37) soul9 [n=none@unaffiliated/johnnybuoy] entered the room. (20:28:12) sku [n=sku@93.190.180.221] entered the room. (20:42:19) sku left the room. (21:00:08) p4p4 left the room (quit: Remote closed the connection). (21:30:56) p4p4_ [n=P4p4@24.106.113.82.net.de.o2.com] entered the room. (22:57:18) maht_ left the room (quit: orwell.freenode.net irc.freenode.net). (22:57:18) F1sh left the room (quit: orwell.freenode.net irc.freenode.net). (22:57:42) F1sh [n=Fish@86.65.182.194] entered the room. (22:59:17) maht_ [n=maht__@85.189.31.174.proweb.managedbroadband.co.uk] entered the room. (23:02:52) raiz left the room (quit: Client Quit). (23:17:44) maht_ left the room (quit: orwell.freenode.net irc.freenode.net). (23:21:38) maht_ [n=maht__@85.189.31.174.proweb.managedbroadband.co.uk] entered the room. (00:03:10) j123m left the room (quit: Read error: 104 (Connection reset by peer)). (00:03:34) j123m [n=quassel@unas-revda.interra.ru] entered the room. (00:17:05) p4p4_ left the room (quit: Client Quit). (01:05:20) j123m left the room (quit: Read error: 110 (Connection timed out)). (01:58:25) maht_ left the room (quit: orwell.freenode.net irc.freenode.net). (02:00:24) maht_ [n=maht__@85.189.31.174.proweb.managedbroadband.co.uk] entered the room. (02:25:40) sswam1 [n=sswam@CPE-121-214-100-86.lnse4.lon.bigpond.net.au] entered the room. (02:25:47) sswam1 left the room (quit: Client Quit). (08:06:16) me___ left the room (quit: "leaving"). (08:53:09) robot12: hi all (10:39:54) npe [n=npe@195.207.5.2] entered the room. (10:48:12) mjl-: morning robot12, all (12:42:39) rapidfx [n=host666@vl-cen-ce1.avtlg.ru] entered the room. (13:45:54) sku [n=sk@217.175.6.56] entered the room. (13:53:32) raiz [n=raiz@p4FE883F5.dip0.t-ipconnect.de] entered the room. (14:37:44) soul9: hi all (14:44:11) soul9: mjl-: you got an idea how too use the users file from the shell? (14:44:17) soul9: it just bllocks and never ends the read :( (14:56:51) mjl-: it only returns a read when a user joins/leaves a channel (14:56:59) mjl-: you could do a getlines on it, in the background (14:57:07) mjl-: all depends on what you want to do with it (15:16:19) sswam1 [n=sswam@CPE-124-180-12-227.lns1.lon.bigpond.net.au] entered the room. (15:25:54) sswam1 left the room (quit: "leaving"). (15:30:17) sswam1 [n=sswam@CPE-124-180-12-227.lns1.lon.bigpond.net.au] entered the room. (15:30:42) sswam1 left the room (quit: Client Quit). (15:48:48) raiz left the room (quit: Client Quit). (17:11:47) mennis [n=mennis@adsl-068-016-104-079.sip.asm.bellsouth.net] entered the room.