Yet Another Gemini Server Announcement

Hello,

I think I can finally share initial version of a server I've been working on.

Version 0.1.1 supports:





Link

It seems I have also succesfully switched my capsule from "Molly Brown" to YAGS 🎊

Posted in: s/Gemini

⛄️ gim

Aug 10 · 2 months ago · 👍 skyjake, stack

8 Comments ↓

☕️ tenno-seremel · Aug 10 at 16:16:

Can it handle websites with no domain name, only bare IPs (including IPv6 IPs)?

⛄️ gim [OP] · Aug 10 at 17:42:

it _should_, although I admit I haven't tested that

⛄️ gim [OP] · Aug 10 at 18:00:

ok, I'm wrong about it, I think one of the checks for vhosts is a bit too strong right now, will address this upcoming week

⛄️ gim [OP] · Aug 10 at 18:29:

@tenno-seremel wait, actually, what is the reason to have IP-based capsule?

I mean, I looked at Lupa database, there are no hosts there that are using IPs.

Besides that, the check I've added is because of this statement in the gemini spec:

"5. the use of an IP address in the authority section SHOULD NOT be used."

Are there any capsules that are IP-only? (What's the use case? are they indexed anywhere?)

☕️ tenno-seremel · Aug 11 at 09:17:

Sites running over Yggdrasil network do not usually have domain names. And, IMO, current DNS system is too susceptible to disruptions by outside players.

⛄️ gim [OP] · Aug 11 at 16:32:

@tenno-seremel I actually fixed and tested IPv4 already, ( https://codeberg.org/gim913/yags/commit/6f47a19b2bf21989026a39e3e024314e4e762066 ), this actually fixed some minor bug as well (when resolving but non-matching dns name was used). Althought v0.2.0 will have it's tag at some later point.

I still need to test if IPv6-based hostnames will work properly.

⛄️ gim [OP] · Aug 11 at 20:25:

@tenno-seremel seem that after change mentioned earlier, ipv6 should also work, I was able to test it on link-local interface:

to bind to all (ipv6) interfaces set

Bind = "[::]"

and hostname in servers section to ipv6 addr:

Hostname = "[fe80::9656:d028:8652:66b6]"

I _assume_ it would be nice to set CN in cert to that address as well. Although I'm not sure how clients should be handling that anyway (in context of TOFU I mean).

Anyway, simple script I got `getgem 'gemini://[fe80::9656:d028:8652:66b6]/'` seems to properly connect and retrieve the content

☕️ tenno-seremel · Aug 12 at 12:21:

@gim Now that’s interesting! :)


Source