The road to self-hosting

After a long time of using tools like GitHub pages and looking for

someone to host my little virtual home, I've decided to go the way of

the selfhost.... well almost, a VPS which is pretty much the same

thing. My motivation was mainly to have much more control over the tools

I use in the virtual world, like git servers, mail servers and more, and

in the process learn how a web server works.

Easier than it sounds

I already had a domain name for almost a year, so what I was missing

was the server. Sadly I can't afford to set one up at home, so I

decided to rent a VPS for only 3.70 dollars a month, that's about 70

Mexican pesos. Come on, I spend more on a snack on the weekend.

Setting it up was quite simple, although I must say that I was guided

entirely by Luke Smith's youtube videos, where he shows us step by

step how to set up a web server with nginx. A little bit of research

(i.e. the HexDSL video) led me to set up the gemini server using

Agate. Actually it was very simple, I have currently running a web

server, a mail server (not functional right now, because they have

blocked my SMTP port until a month has passed, to confirm that it is

not spam according to them), a git server, and I'm planning on setting

up my own cloud with NextCloud. All for 70 pesos a month, and with the

advantage that I have complete control over what happens on the

server.

Publishing from Emacs

Since I want to have both a web page and a gemini capsule, and I don't

want to write the same thing twice in two different markup languages,

I decided to look for a way to write everything in a common language

(markdown for example) and then export it to both a web page and the

gemini capsule. After a bit of searching on "converters" and possible

static site generators I discovered `org-publish', a function of

`org-mode' that allows to export .org files and generate complete

projects, be it web sites or books in LaTeX or whatever you want.

With this in mind and a bit of trial and error with lisp, I managed to

have what I currently have: a simple, plain page and the gemini

capsule, both generated thanks to a series of org-mode files. Is there

anything Emacs can't do?

I have to keep refining details yet, but I think it's already at a

level to show it to the public. Let's see how it works and what other

curious things I can do with the VPS, for the moment it seems that my

synchronization and mail needs are solved, so I can say goodbye to

Gmail and G-drive for the moment.