💾 Archived View for fkfd.me › hosting.gmi captured on 2020-11-07 at 00:39:31. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2020-09-24)

-=-=-=-=-=-=-

gemini://fkfd.me/

Gemini[1] is an emerging internet protocol. Emerging as in you know, pretty cool and not full of shit. The spec[2] is 4.4k words long, compared to 114M, length of all w3c specs. Limited capability makes it cool in aesthetics.

Last week I was like "why not set up my own Gemini server?" and now you have `gemini://fkfd.me`, running Jetforce[3]) as the server. It's not just for me, though. You're welcome to host some pages on my server; here's how.

Hosting

1. Clone the repo: `git clone https://git.sr.ht/\~fkfd/gemini`. The repo is structured as follows:

~fkfd/
    index.gmi
    stuff.gmi
~otheruser/
    index.gmi
index.gmi

2. Create your own directory, with a leading tilde (`~`). (Hint: when typing it in the terminal, prepend a backslash to it: `\~fkfd`)

3. Put your pages in the directory. You probably want to start with an `index.gmi`. The gemini spec §5.3 will teach you how to write gemini pages.

4. Locally test your pages with a server and a client. For me I'm using Jetforce[3] which comes with a barebone client. McRoss[4] is an excellent GUI client, written in Python. Also if you're into Rust, check out Castor[5].

5. If the test passes, commit your changes. The commit message should be in this format: `Create ~.../`, e.g. `Create ~fkfd/`.

6. Send me a patch. You can either automate the process[6] (which you're likely familiar with should you already be a sr.ht user) or manually pipe the output of `git diff origin/master` (that is, a diff reflecting what you have added) to an email. Send patch to `fkfd@macaw.me`.

7. In case I find any problems in your patch, I'll notify asap. Otherwise, your pages will be on Low Earth Orbit soon!

Terms

TL;DR

Your content is yours. Others' contents are theirs. The server is mine.

Allowed formats

So far, only gemini pages (text/gemini), source code and other plaintext formats are allowed. HTML is not accepted, unless used for satirical/sarcastic purposes. No large files (>50MB) or binary files (image, audio, video, executable) in the repo. Send them to me via alternative means if you must.

Allowed content

I reject any content that is obviously unethical to me at first glance, including but not limited to Nazi advocacy, racism and sexism. I reserve the rights to select what to host here, but I have no right to modify any file that users submit. That is, your files are atomic. A file is either hosted here in its entirety, or not hosted at all.

Rights to contents

You are the sole owner of your content, unless you waive your copyright to it. You can only create, modify, and remove contents in your own directory. To commit changes and send me patches with the email address you had used to create the directory proves the authenticity of your modifications. That is to say, if you used `foo@bar.com` to commit the creation of `~foo/`, then I will only accept modifications to `~foo/*` from `foo@bar.com`.

Links

[1] Gemini (gemini.circumlunar.space)

[2] Gemini specs (gemini.circumlunar.space)

[3] Jetforce (https, github.com)

[4] McRoss (https, git.sr.ht)

[5] Castor (https, git.sr.ht)

[6] git send-email (https, git-send-email.io)