IRC channel logs
2025-08-15.log
back to list of logs
<stdh>What are the OCapN options in Hoot? I think I read about what's possible, but I can't find it in the docs or on the forum. <stdh>(Maybe I should post there?) <tsyesika>stdh: On hoot you can use the websocket netlayer and if you'd like the prelay netlayer (over websockets) <tsyesika>because of browser limitations the websocket netlayer on hoot can only make outbound connections (which is where the prelay netlayer comes in), connections must be encrypted (unless serving over localhost) and the TLS cert must be valid (from the browser's perspective) <tsyesika>unfortunately 0.16 introduced a bug preventing the websocket netlayer being used under hoot so I suggest for now using 0.15.1, hopefully we'll get the fix for the bug out soon <stdh>tsyesika: Thanks! I see websocket and prelay in Goblin's manual, I suppose I can find all the info there? <tsyesika>yep, you should be able to just follow the manual <stdh>Is it a good idea to look at Spritely's submission for the latest game jam? <stdh>The was multiplayer, so some magic has to happen there. :) <tsyesika>I don't recall if that used the prelay or not, but yeah it should help with setting up the websocket netlayer. We also have an internal tool called pumpkin chat, that uses both the websocket netlayer and the prelay together (the relevant file is client.scm) <tsyesika>pumpkin-chat's source code is on Spritely's codeberg :) I'd link you but I'm having some issues reaching codeberg right now >.< <stdh>Yeah, me too, but I should be able to find pumpkin chat when Codeberg's back up. Thanks again for your help! <jfred>Huh, something I just realized since pumpkin-chat uses goblins... I guess hoot programs can import guile libraries? Are those discovered in the same way other guile libraries would be? (e.g. if I'm in a guix env with goblins in it and I import goblins in a hoot program, the version of goblins from that guix env gets discovered during `guild compile-wasm`?) <jfred>It has been a *while* since I've written anything for hoot and I guess I haven't been following it closely enough haha <jfred>And related, does that mean that we're at the point now where someone could start a library with FFI declarations for browser APIs so they don't have to be duplicated in each project? <tsyesika>jfred: yeah you can use other guile libraries, you can include them using `guild compile-wasm -L /path/to/guile-dep/ my-hoot-program.scm` <jfred>Ahhhh, right, -L... that makes sense. Now I'm trying to figure out how `guild compile-wasm` is finding goblins in pumpkin-chat, because there are two -L arguments to it in the Makefile and neither is a directory with goblins in it. (Clearly it does find goblins and I'm just missing something though; I'm not super comfortable with autotools yet haha) <jfred>HOOT_LOAD_PATH as a search path in guile-hoot, then as an output path in that patched goblins package <jfred>(I've definitely encountered this before too and forgot about it haha) <jfred>but this makes sense, if you wanted to make a library specific for hoot you'd have its guix package drop its files into share/guile-hoot/site and that seems like it should do it <tsyesika>Autotools and to a lesser but still significant degree packaging has always been a bit of a mystery to me :) <jfred>same, haha - you end up having to interact with autotools quite a bit when writing a new guile project and I always tiptoe around it a bit XD <jfred>guile-hall helps with that but not completely <jfred>I've gotten an okay amount of experience writing guix packages at this point but guix *services*... those are still a little brain-bendy for me, though I'm learning <tsyesika>The unix domain socket into server exists now if you ever feel inclined to write a guix service ;) <jfred>I wonder if that might be a good use case for the service extension stuff? Haven't touched that all that much yet beyond the very basics <tsyesika>Not sure :) ima heading off tho it’s quite late here. G’Night!