#dev 2025-01-12

2025-01-12 UTC
bterry, troojg, grufwub and corlaez joined the channel
#
corlaez
gemini://localhost/ches
#
corlaez
Got a little obsessed with Gemini Lately. Wrote my own Kotlin server and hosted a little chess board . I am the proud owner of a capsule now
#
corlaez
gemini://gem.corlaez.com/chess
#
corlaez
https://postimg.cc/gxYJmFm9 image link for a preview
#
aaronpk
Seems like if you can write a Gemini server in kotlin the least you could do is host your own screenshots on your web server so that clicking on that link doesn't look like this https://media.aaronpk.com/2025/01/11203649-6976.png
#
xuid0
Yea the screenshot did not load for me either
#
xuid0
Use Imgur.com or GitHub?
#
xuid0
Enjoy some photos of my Doggo
#
xuid0
When am I going to be told off for Deleting my own messages lol
#
xuid0
Can i ask a dumb question
#
xuid0
Do i need to generate a SSH key before i can use GitLab.com properly
#
xuid0
(I'm not usually on that platform)
#
xuid0
I remembered why i dont use GitHub or GitLab too often lol
#
xuid0
wow it takes a while for SSL to come into play
#
xuid0
anyway this is far as I got for now: https://gitlab.com/xuid0/website
#
xuid0
[edit] anyway this is far as I got for now: https://gitlab.com/xuid0/website
#
xuid0
LetsEncrypt (SSL) just kicked in: https://norealnames.org
#
Loqi
[preview] Josh Glenn
corlaez joined the channel
#
corlaez
oops sorry, a lot needs to be streamlined, i will use this for now https://i.imgur.com/oudsZ78.png
#
corlaez
Nice doggo xuid0, you don't have to generate and upload your ssh. You can use HTTPS
#
xuid0
thx i worked it out lol
#
xuid0
I generated a key using Terminal and just copy & pasted into the web browser (signed into my Gitlab)
#
corlaez
Deployment to my Digital Ocean is super clunky, this is the first time I am using a VPS as well. And the server doesn't really handle files yet, but I am looking forward to expand it.
#
xuid0
I've been using Linux since 1999.
#
xuid0
not in the sense of a workplace either lol
#
corlaez
In fact, I have plans to experiment with something: Since both gemini and https start with TLS, I can try to make a sort of dual server (at least for simple GET HTTP requests)
#
corlaez
so my DNS of corlaez.com would go to my VPS and that program could interpret both gemini and https schemes and serve data.
#
xuid0
it sounds like something your VPS might not like tbh
#
xuid0
is gemini some kind of overlay network
#
xuid0
what is the gemini projects homepage
#
Loqi
It looks like we don't have a page for "gemini projects homepage" yet. Would you like to create it?_y (Or just say "gemini projects homepage is ____", a sentence describing the term)
#
xuid0
woops
#
doesnm
corlaez: looks like you want to make like sslh?
#
xuid0
sorry I have only heard it mentioned online is all
#
xuid0
(i have never pesonally used it)
#
doesnm
also it's google ai and crypto site :D
#
xuid0
no its not
#
doesnm
xuid0: same name
#
xuid0
I mean google has one called gemini
#
xuid0
if that was the joke?
#
corlaez
ohhh yes yes, i described something like sslh
#
corlaez
I mean, now that I think about it, I could simply use different ports, all hosted in the same host as different applications
#
doesnm
add gemini support to sslh xD
#
xuid0
so there is no encryption of data going over networks
#
xuid0
it's basically HTTP listening on a port and talking back to clients using that port
#
corlaez
Right now, actually. I am now thinking the most practical for me would be to have that jvm program jsut listen on 443 and 1965
#
corlaez
in fact i now realize that's what I want, otherwise broswers would have to navigate to corlaez.com:1965
#
corlaez
and that allows me to pull a generic http/s library, so it should simplify things, I hope
#
[tantek]
yeah "no encryption of data going over networks" is not really practical these days, especially given things like Salt Typhoon
#
corlaez
Do you guys use let's encrypt and the ACME stuff? Gemini is more open to self signed, but if I want to serve https from my droplet I need CA's help
#
xuid0
i dont know if that page helps you @corlaez
#
xuid0
letsencrypt has a binary
#
xuid0
u download it onto the VPS
#
xuid0
run it and it generates the cert
#
[tantek]
yeah nearly everyone is using Let's Encrypt, almost always automatically via their web host
#
corlaez
Since no one actually uses gemini, this approach to services is better. Instead of running constantly, the gemini server only runs when someone sends it a packet. Genious
#
[tantek]
some folks like to roll their own Let's Encrypt renewals and installs and that's cool too if that's your preference
#
corlaez
I laughed out loud.
#
[tantek]
lol indeed
#
xuid0
it's a OpenBSD user's notes on gemini
#
[tantek]
I do think there's potential in self-signed that should be explored
#
[tantek]
you might be interested in this blog post: https://lowentropy.net/posts/local-https/
#
xuid0
interesting read thx tantek
#
corlaez
This is super interesting and clever. However I went with dynamic gemini for sheetz and giggles so it won't be practical for me unless I figure out serializing and deserializing state
#
corlaez
If I am reading it right, that local-https conclusion sounds really similar to what gemini sugests. I have also seen TOFU thrown around a lot on those circles
#
[tantek]
yeah TOFU has promise too
#
[tantek]
it's roughly how ssh works in practice
#
[tantek]
I think it's present de facto usage could be improved with some amount of social sharing of key hashes etc., essentially adding a layer of checking social trust on first use. Hah maybe I should call that STOFU
#
corlaez
Gemini (protocol) is a communication protocol that allows clients to download files from servers. It uses TLS for security and TCP to transfer the data. It is often referred as somewhere between Gopher and HTTPS.
#
corlaez
Gemini Protocol is a communication protocol that allows clients to download files from servers. It uses TLS for security and TCP to transfer the data. It is often referred as somewhere between Gopher and HTTPS.
#
corlaez
Gemini Protocol is a communication protocol that allows clients to download files from servers that uses TLS for security and TCP to transfer data.
#
corlaez
I give up
#
[tantek]
right, you can ask "what is" to get the definition
#
[tantek]
What is Gemini protocol?
#
Loqi
The Gemini protocol is an alternative to HTTP with similar use-cases, with intentional consideration of privacy and security, that could be an alternative way to serve an IndieWeb site https://indieweb.org/Gemini_protocol
#
[tantek]
what is Gemini (protocol)
#
Loqi
The Gemini protocol is an alternative to HTTP with similar use-cases, with intentional consideration of privacy and security, that could be an alternative way to serve an IndieWeb site https://indieweb.org/Gemini_protocol
#
corlaez
oh nice, you can visit my capsule in a regular browser here: https://portal.mozz.us/gemini/gem.corlaez.com/chess
#
xuid0
is the point of gemini so that one can't see the true hostname
#
xuid0
I'm just struggling to understand the benefits it offers.
#
xuid0
(note: i'm not trying to be offensive or insulting either)
#
corlaez
Oh no worries. No, the weird url there is just a proxy. It is a https site giving you access to a gemini capsule without you having to download a dedicated program
#
corlaez
(if you want a dedicated program, I can recommend Lagrange. Once in lagrange you can navigate directly with gemini://gem.corlaez.com/chess)
#
xuid0
I'm guessing the weird url is a bit like Tor2Web software
#
corlaez
Now regarding benefits... The web is considered too complex and invasive (privacy concerns, tracking, attention swallowing)
#
corlaez
Gemini is a far far simpler protocol, that aims to be easy to implement, yet secure, and not extensible (to ensure it continues to be safe and simple)
#
corlaez
It doesn't intend to replace the web, but just given a more content focused experience, with the written content being king. Gemtext is their "HTML" there is no CSS, very simple to write stuff up on it (you do surrender some control on the style to the clients)
#
corlaez
and then part of the protocol is about supporting client authentication. An interesting way of using the TLS communication to establish client identity. Clients like Lagrange, automate those certificate creations. You can use them for a session, or to sing in to a domain, etc.
#
corlaez
Well, not automate. But offer tooling, to make it dead easy, to create, activate, deactivate delete, manage in general.
barnaby joined the channel
#
xuid0
I see
#
xuid0
So internet archive would not be able to index Gemini site?
#
[tantek]
unlikely unless something has changed in their crawler
#
xuid0
yea I was assuming as such
#
[tantek]
it appears it does not crawl gopher or ftp either, based on this apparently outstanding request: https://archive.org/post/1028699/gopher-and-ftp-in-wayback-machine
#
xuid0
corlaez: I was looking around the link you shared and found this: gemini://bbs.geminispace.org
#
xuid0
[tantek]: interesting thx
#
xuid0
[tantek]: it might be useful to request if people are still using gopher and gemini ?
#
[tantek]
request hasn't been touched in 10 years, I doubt there's much use in spending time on it
#
xuid0
I have seen perhaps 1 other person also using this protocol
#
[tantek]
[snarfed]++ for launching 13 years (+4d) ago the first version of Bridgy++
#
Loqi
[snarfed] has 53 karma in this channel over the last year (92 in all channels)
#
Loqi
Bridgy has 3 karma in this channel over the last year (6 in all channels)
#
[tantek]
8 hours until happy 9 year anniversary of the Webmention FPWD, and 8 years for the Webmention Recommendation!
#
Loqi
I added a countdown scheduled for 2025-01-12 7:31pm UTC (#7178)
jonnybarnes, barnaby, Pixi, troojg and GuestZero joined the channel
#
[snarfed]
amusing timing, I got a related request to support gemini and gopher in granary recently, https://github.com/snarfed/granary/issues/861
#
[snarfed]
went something like:
#
[snarfed]
> them: Gemini and Gopher are great! do them!
#
[snarfed]
> me: ok!...but do they make sense in granary?
#
[snarfed]
> them: got me, I dunno, what's granary
#
[snarfed]
(...ok I'm exaggerating, but only somewhat 😁)
#
[Joe_Crawford]
html prior to 4 if you expect to validate, right?
#
[Joe_Crawford]
Someone correct me if I'm wrong, but it seems to me that neither HTML 2.0 nor HTML 3.2 allow for any `CLASS` attributes to be added to any element and have that document still validate according to those DTDs. https://www.w3.org/MarkUp/html-spec/html-spec_9.html https://www.w3.org/TR/HTML32.dtd -- I'm not talking about whether browsers could understand those attributes, just interested in validation. tl;dr: no `class` attribute in
#
xuid0
[snarfed]: After reading the Issue #861 on the GitHub i think the person who submitted that might need to be able to set up the code to work prior to randomly asking for Gemini & Gopher be added would be very helpful.
#
[tantek]
[Joe_Crawford] I think 'class' attr was in HTML 3.0 tho
#
[snarfed]
xuid0 I'm fine with non-developers asking for features, filing bugs, etc!
#
[Joe_Crawford]
There's this interesting note at top of 3.2 DTD: "
#
[Joe_Crawford]
```Otherwise support for them is not required.
#
[Joe_Crawford]
ID, CLASS and STYLE attributes are not included in this version
#
[Joe_Crawford]
of HTML.```
#
[Joe_Crawford]
[tantek]++ https://www.w3.org/MarkUp/html3/html3.dtd yes, there it is.
#
Loqi
[tantek] has 27 karma in this channel over the last year (143 in all channels)
#
[tantek]
Hence my OTVSTUDIOS site 😆
#
[Joe_Crawford]
This is a nuance of HTML DTD history I had missed, but am happy to learn now!
#
[tantek]
Here for all the web standards trivia 😂
#
[Joe_Crawford]
If web standards can be healing, I hope this is. I like this comment in the 3.0 DTD:
#
[Joe_Crawford]
```Add limited presentational controls with
#
[Joe_Crawford]
a view to use of linked style sheets
#
[Joe_Crawford]
... which was forward looking.
#
[Joe_Crawford]
(style overrides are supported)```
#
xuid0
[snarfed]: I see 🙂
#
[Joe_Crawford]
Chekov's ~gun~ `STYLE` and `CLASS` attributes.
[benatwork], barnaby, yewscion, yewscion_ and rdg joined the channel
#
Loqi
happy 9 year anniversary of the Webmention FPWD, and 8 years for the Webmention Recommendation!
#
Loqi
Countdown set by [tantek] on 2025-01-12 at 11:31am UTC
[KevinMarks], sebbu2, corlaez, yewscion, barnaby and troojg joined the channel