Finally publish site meta

This commit is contained in:
hedy 2024-04-08 09:28:32 +08:00
parent 010107d1b7
commit 689fb43e85
Signed by: hedy
GPG Key ID: B51B5A8D1B176372
3 changed files with 138 additions and 29 deletions

View File

@ -1,3 +1,107 @@
My gemini capsule is generated using Hugo* along with my web site. It contains my gemlog and some other various related things about me.
## 2023 Update
I started writing this post on 2021, February 23 but I never completed it. So in 2023 I decided to finish up this outstanding post and get it done with. Surprisingly, the content did not change much other than moving from ~team to ~cafe (more on that later). I still use Hugo and write in Markdown. And I still publish to both WWW and Gemini.
Excuse the odd placing of this post, but otherwise, enjoy the read~
## 2024 March Update
I no longer host my website, gemini capsule and spartan content on tilde.cafe. As of writing, I've switched to srht.site for static HTTPS/gemini hosting and my own domain at home.hedy.dev.
I'm keeping this post (which as it turns out, I still never got to publish) as a historical record, whose information, other than the aforementioned differences, remains mostly accurate.
----------------------------------------------------
This is where my gemlog and blog lives. It is statically generated with Hugo and rsync-ed to my public_html and public_gemini directories for HTML and gemini on tilde.cafe respectively on build.
=> https://gohugo.io Hugo Homepage
=> //tilde.cafe
The site source is always linked at the footer, pointing to the SourceHut repo. It is also mirroed on GitHub.
=> https://git.sr.ht/~hedy/site
=> https://github.com/hedyhli/site
## Tilde.Cafe and the Tildeverse
> [The Tildeverse is] a loose association of like-minded tilde communities. *Tildes* are pubnixes in the spirit of tilde.club, which was created in 2014 by Paul Ford.
=> gemini://tildeverse.org
=> gemini://tilde.club/
=> https://medium.com/message/tilde-club-i-had-a-couple-drinks-and-woke-up-with-1-000-nerds-a8904f0a2ebf
A **Pubnix** is a Public Access Unix System — in other words, a unix machine on the internet that provides access to other people on the internet — which started before WWW and even the public internet. Pubnixes you may have heard of SDF, Circumlunar.Space (yes, the very same one of the former gemini homepage), and Tilde.Club.
=> gemini://sdf.org
=> https://circumlunar.space/
=> gemini://gemini.circumlunar.space
~cmccabe has a Pubnix History Project for you to explore if you're interested in learning more about pubnixes.
=> https://tilde.team/~cmccabe/
=> gopher://rawtext.club/1/~cmccabe/pubnixhist/
=> gemini://rawtext.club/~cmccabe/pubnixhist/
There are a lot of pubnixes that have joined the Tildeverse since the the ~club and ~team (which hosts the tildeverse website together with many services).
=> https://tilde.team
Most Tildes have open registerations. Users are provided around 1 GB of disk space along with SSH access and are able to host their own static site with CGI under the main tilde domain, together with services like email, gemini/gopher hosting, pastbin, and more.
However, the true value of tildes lie not in the services they provide but the people and community. The tildeverse has an official IRC network, tilde.chat, which most tildes use for their main channel of communication. They also have a radio, a mastodon instance, gitea instance, among other services. The latter two from the above are both hosted by ~ben the owner and one of the sudoers of ~team.
=> https://tilderadio.org Tilderadio
=> https://tilde.zone Mastodon instance
=> https://tildegit.org Gitea instance
=> https://ben.tilde.team ~ben (WWW)
=> gemini://tilde.team/~ben/ ~ben (gemini)
I chose to host my personal website on tilde.cafe, a (relatively) newer tilde that runs on Debian with a smaller user base. For the past two years most coding projects I had done were developed on ~Cafe's server. It's grown to become my second digital home on the internet ever since I started to use hedy at tilde.cafe for my primary email.
=> gemini://tilde.cafe/
It was fun to work with ~cafe admins ~spider and ~jan6 in the early days, helping to set up and write the wiki() and automated website builds. We used the #cafe channel on tilde.chat for our main chat.
=> https://tilde.cafe/~spider/ ~spider
=> https://tilde.cafe/~jan6/ ~jan6 (WWW)
=> https://tilde.cafe/wiki/
Some time in 2021 or 2022, jan6 was no longer able to chat with us on #cafe in tilde.chat, and since spider became busy with work and other areas of life, we needed one more admin to take care of user support on tilde.cafe. I joined spider and jan6 as co-sudoers and have been helping with signups and sysadmin tasks every since.
I don't plan to move off ~cafe to host my gemlog, nor email in the foreseable future. Though when I have side-projects that required dedicated servers with subdomains, I will consider using my own server and domain. Until then, I remain eternally grateful to ~cafe and other tilde-owners for maintaining awesome communities and providing welcoming spaces online for strangers to come together and build cool stuff, with money from the admin's own pockets.
If you're someone who is recently discovering the tildeverse I highly recommend
rawtext.club (though not a "tilde" but a very cool community of extremely interesting people), ~team (they have a welcoming chat — #team — easily second most active channel on tilde.chat), ~envs (they have an Akkoma instance, used by Rohan Kumar from seirdy.one whose articles you may have come across on the internet), and of course ~cafe (drop me an email if you registered after reading this and I'll make sure to personally approve your sign-up ;P). Others may not agree on my choices so this is not at all to downplay the worth of other tildes: there's almost no harm in having an account on every single one, though you can definitely meet some cool people!
=> gemini://rawtext.club/
=> gopher://rawtext.club/
=> gemini://tilde.team/
=> gemini://envs.net/
=> https://pleroma.envs.net/ ~envs Akkoma instance
=> gemini://seirdy.one/
=> https://tildeverse.org/members/ Other tildes
## Software stack & workflows
All content is written in Markdown and Gemtext. The static site, including gemini pages is generated by Hugo and I do some minor post-processing to enable "ugly URLs" (/some/slug/file.gmi rather than /some/slug/file/) for gemini.
When a new blog post is written, I would ensure both markdown and gemtext sources are done, then I would run `make` which uses Hugo and does some miscellaneous cleaning-up to produce HTMl files at `~/public_html` and gemtext at `~/public_gemini`. I then use a browser to access the folder locally to check that everything is working. When something needs updating, a single `make` is enough to rebuild the entire site.
Finally, I commit and push. If I wasn't working on ~cafe directly I would next log into ~cafe, pull, and `make` from there. It's guaranteed to perform the same from my home computer and on ~cafe given the same Hugo versions.
Since I ran `make` on ~cafe, the actual `~/public_*` directories will be updated on the changes would be live! 🎉
The ~cafe gemserv server handles the rest. (On the web, we use nginx.)
## Hosting
The site and gemini capsule is to be accessed at hedy.tilde.cafe; it works on both protocols. You may be curious how we could have per-user vhosts on gemini — no, there is no built-in configuration option as of writing. This is done with a shell script that appends to config file a separate server configuration when a new user sign-up is approved, written by jan6.
The <user>.tilde.cafe vhost is also supported on spartan. I wrote the spartan server that cafe uses (spsrv) — it provides a config option to use per-user vhosts.
=> gemini://spartan.mozz.us/ Spartan protocol
=> https://tildegit.org/hedy/spsrv
=> https://gohugo.io * Hugo (HTTPS) Homepage

View File

@ -1,7 +1,7 @@
---
title: "How this site works"
date: 2023-08-27
draft: true
date: 2021-02-23
draft: false
outputs:
- html
- gemtext
@ -10,7 +10,7 @@ slug: "site-meta"
---
<details open>
<summary>A note on the publish date</summary>
<summary>2023 Update</summary>
I started writing this post on 2021, February 23 but I never completed it. So in
2023 I decided to finish up this outstanding post and get it done with.
@ -22,6 +22,18 @@ Excuse the odd placing of this post, but otherwise, enjoy the read~
</details>
<details open>
<summary>2024 March Update</summary>
I no longer host my website, gemini capsule and spartan content on tilde.cafe.
As of writing, I've switched to srht.site for static HTTPS+GEMINI hosting and
my own domain at home.hedy.dev.
I'm keeping this post (which as it turns out, I still never got to publish) as
a historical record, whose information, other than the aforementioned
differences, remains mostly accurate.
</details>
This is where my gemlog/blog lives. It is statically generated
with [Hugo](https://gohugo.io/) and rsync-ed to my `public_html` and `public_gemini`
@ -78,11 +90,11 @@ It was fun to work with ~cafe admins [~spider](https://tilde.cafe/~spider/) and
the [wiki](https://tilde.cafe/wiki/) and automated website builds. We used the
#cafe channel on tilde.chat for our main chat.
Some time in 2021 or 2022, jan6 was banned from the tilde.chat IRC network, and
since spider became busy with work and other areas of life, we needed one more
admin to take care of user support on tilde.chat. I was promoted to join spider
and jan6 as sudoers and have been helping with signups and sysadmin'ing since
then.
Some time in 2021 or 2022, jan6 is no longer able to chat with us on #cafe in
tilde.chat, and since spider became busy with work and other areas of life, we
needed one more admin to take care of user support on tilde.cafe. I was
promoted to join spider and jan6 as sudoers and have been helping with signups
and sysadmin'ing since then.
I don't plan to move off ~cafe to host my personal website, nor email in the
foreseable future. Though when I have side-projects that required dedicated
@ -98,8 +110,8 @@ community of extremely interesting people), [~team](https://tilde.team) (they
have a welcoming chat — #team — easily second most active channel on
tilde.chat), [~envs](https://envs.net) (they have an [Akkoma
instance](https://pleroma.envs.net), used by Rohan Kumar from
[seirdy.one](https://seirdy.one) whose wonderful articles you may have come
across on the internet), and of course [~cafe](https://tilde.cafe) (drop me an
[seirdy.one](https://seirdy.one) whose articles you may have come across on the
internet), and of course [~cafe](https://tilde.cafe) (drop me an
email if you registered after reading this and I'll make sure to personally
approve your sign-up ;P). Others may not agree on my choices so this is not at
all to downplay the worth of [other tildes](https://tildeverse.org/members/):
@ -111,11 +123,10 @@ definitely meet some cool people!
No javascript is used. All content is written in Markdown and Gemtext, with the
static HTMl output generated by Hugo. The styling is done with vanilla CSS,
[syntax highlighting](https://hedy.tilde.cafe/posts/hugo-syntax-highlighting/)
provided by chroma.
[syntax highlighting](/posts/hugo-syntax-highlighting/) provided by chroma.
When a new blog post is write , I would ensure both markdown and gemtext
sources are written, then I would run `make` which uses Hugo and does some
When a new blog post is written, I would ensure both markdown and gemtext
sources are done, then I would run `make` which uses Hugo and does some
miscellaneous cleaning-up to produce HTMl files at `~/public_html` and gemtext
at `~/public_gemini`. I then use a browser to access the folder locally to check
that everything is working. When something needs updating, a single `make` is
@ -137,7 +148,7 @@ use Gemserv.)
The site and gemini capsule is to be accessed at `hedy.tilde.cafe`; it works on
both protocols. You may be curious how we could have per-user vhosts on gemini —
no, there is no built-in configuration option as of writing. This is done with a
shell script that appends to config file a separte server configuration when a
shell script that appends to config file a separate server configuration when a
new user sign-up is approved, written by jan6.
The `<user>.tilde.cafe` vhost is also supported on

View File

@ -14,10 +14,9 @@ description: "How I've set up syntax highlighting for my website with dark mode
---
Hugo uses [chroma](https://github.com/alecthomas/chroma) as its syntax
highlighter, and it's mostly compatible with pygments. All you basically need
for having your code highlighted is to let chroma put the syntax classes in the
generated HTML, for the correct language, and then make sure you have
corresponding CSS for those classes.
highlighter. All you basically need for having your code highlighted is to let
chroma put the syntax classes in the generated HTML, for the correct language,
and then make sure you have corresponding CSS for those classes.
Let's start by enabling syntax highlighting in your configuration file.
@ -151,11 +150,6 @@ This tells hugo to only load the resource and put the CSS in `<style>` if the pa
## Read more
There are many configuration options for syntax highlighting, read this page
on Hugo docs for more information: [gohugo.io/getting-started/configuration-markup#highlight](https://gohugo.io/getting-started/configuration-markup#highlight)
If you'd like to highlight specific lines in code snippets, you can read about
how to do that here: [gohugo.io/content-management/syntax-highlighting/#example-highlight-shortcode](https://gohugo.io/content-management/syntax-highlighting/#example-highlight-shortcode)
There is also a `highlight` shortcode shipped with Hugo that lets you manually
highlight code with chroma: [gohugo.io/content-management/shortcodes/#highlight](https://gohugo.io/content-management/shortcodes/#highlight).
- [Configuration options for syntax highlighting](https://gohugo.io/getting-started/configuration-markup#highlight)
- [Highlighting specific lines in code snippets](https://gohugo.io/content-management/syntax-highlighting/#example-highlight-shortcode)
- [The built-in `highlight` shortcode for manual highlighting](https://gohugo.io/content-management/shortcodes/#highlight)