From 844441fce7ac5c0364b3fe1a217da6889cb937ba Mon Sep 17 00:00:00 2001 From: Alex Karle Date: Wed, 30 Dec 2020 13:49:47 -0500 Subject: [PATCH] www: Goodbye markdown, long live mdoc Man (pun intended), I had a blast putting this together. I got the idea the other day while playing around with a toy static site, and it just clicked--what if I used mdoc as my markup language and mandoc to generate the HTML for a static site? This was obviously not the intended use case, but I think it gives off a nerdy vibe in exactly the right way :) Later versions of mandoc allow .Xr to link against a fallback if the reference doesn't exist locally, which is perfect for using .Xr as both my internal site links (between pages) and as a cheap reference to OpenBSD man pages (which I plan to do more often as I write more technical content). The beauty of this setup is that it can now be built entirely from base OpenBSD (relying only on make(1) and mandoc(1)). Time for the final test -- the girlfriend approval! --- .gitignore | 3 +++ BLM.7 | 18 ++++++++++++++++++ Makefile | 32 ++++++++++++++++++++------------ README.md | 18 +++++++----------- a-new-hope.7 | 22 ++++++++++++++++++++++ bin/build.sh | 6 ------ bin/tm.pl | 35 ----------------------------------- blog.7 | 28 ++++++++++++++++++++++++++++ content/03-24-20-domain-name.md | 25 ------------------------- content/07-13-20-blm.md | 11 ----------- content/07-19-20-self-hosted.md | 54 ------------------------------------------------------ content/10-22-20-on-writing.md | 46 ---------------------------------------------- content/12-19-19-a-new-hope.md | 14 -------------- content/favicon.ico | Bin 95954 -> 0 bytes content/index.md | 17 ----------------- content/style.css | 66 ------------------------------------------------------------------ content/thoughts.md | 13 ------------- domain-names.7 | 44 ++++++++++++++++++++++++++++++++++++++++++++ intro.7 | 28 ++++++++++++++++++++++++++++ on-writing.7 | 55 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ self-hosted.7 | 96 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ style.css | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ template.7 | 13 +++++++++++++ templates/head.tmpl | 24 ------------------------ templates/post-tail.tmpl | 6 ------ templates/tail.tmpl | 3 --- 26 files changed, 383 insertions(+), 343 deletions(-) create mode 100644 BLM.7 create mode 100644 a-new-hope.7 delete mode 100755 bin/build.sh delete mode 100755 bin/tm.pl create mode 100644 blog.7 delete mode 100644 content/03-24-20-domain-name.md delete mode 100644 content/07-13-20-blm.md delete mode 100644 content/07-19-20-self-hosted.md delete mode 100644 content/10-22-20-on-writing.md delete mode 100644 content/12-19-19-a-new-hope.md delete mode 100644 content/favicon.ico delete mode 100644 content/index.md delete mode 100644 content/style.css delete mode 100644 content/thoughts.md create mode 100644 domain-names.7 create mode 100644 intro.7 create mode 100644 on-writing.7 create mode 100644 self-hosted.7 create mode 100644 style.css create mode 100644 template.7 delete mode 100644 templates/head.tmpl delete mode 100644 templates/post-tail.tmpl delete mode 100644 templates/tail.tmpl diff --git a/.gitignore b/.gitignore index 84c048a..5b389c4 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,4 @@ /build/ + +# generated html from man pages +*.[1-9].html diff --git a/BLM.7 b/BLM.7 new file mode 100644 index 0000000..1465a88 --- /dev/null +++ b/BLM.7 @@ -0,0 +1,18 @@ +.Dd July 13, 2020 +.Dt BLM 7 +.Os +.Sh NAME +.Nm BLM +.Nd Black Lives Matter +.Sh DESCRIPTION +I meant to post about this earlier, but it's better late than never. +.Pp +It's become abundantly clear to me that we need serious structural changes in our country. +I want to raise my voice in solidarity to say that Black Lives Matter. +.Sh SEE ALSO +.Bl -compact -bullet -format=indent +.It +.Lk https://blacklivesmatter.com +.It +.Xr blog 7 +.El diff --git a/Makefile b/Makefile index e0d66dd..2525511 100644 --- a/Makefile +++ b/Makefile @@ -1,16 +1,24 @@ -HOST = alexkarle.com -DEST = /var/www/htdocs +# sub-Makefile so that mandoc -Oman can find the Xr references +HIDE = @ +HTML := \ + intro.7.html \ + blog.7.html \ + a-new-hope.7.html \ + domain-names.7.html \ + BLM.7.html \ + self-hosted.7.html \ + on-writing.7.html .PHONY: build -build: - ./bin/build.sh +build: $(HTML) -.PHONY: install -install: build - mkdir -p $(DEST) - cp build/* $(DEST) +.PHONY: clean +clean: + rm -f $(HTML) -.PHONY: release -release: - rsync --delete --exclude=.git -av ./ $(HOST):karleco/ && \ - ssh -t $(HOST) doas make -C karleco install +.SUFFIXES: .7 .7.html +.7.7.html: + @echo "mandoc $<" + $(HIDE)mandoc -Thtml -O 'man=%N.%S.html;https://man.openbsd.org/%N.%S,style=style.css' $< \ + | sed 's##&# ' \ + > $@ diff --git a/README.md b/README.md index 403aca8..7691013 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,13 @@ alexkarle.com ============= - My small corner of the internet. www. ---- -A static site with a small templating system, build with `make`. +A static site comprised of `mdoc(7)` flavored man pages, built to HTML via +`mandoc(1)`. -Currently hosted with OpenBSD's `httpd`, but any web server should be able to +Currently hosted with OpenBSD's `httpd(8)`, but any web server should be able to serve it up. git. @@ -19,14 +19,10 @@ views into the diffs and files of each repo. I like the stagit approach in that it is simple, modular, and emphasizes the use of regular git for larger operations (i.e. diff between refs, etc). -In the stagit/ directory, find: - - * style.css -- CSS for all pages - * post-receive -- the git-hook to update the pages - * logo.png -- AK logo - * setup.sh -- small script to setup all exported repos with proper hooks, etc - also used to bulk update style.css/post-receive/logo.png +I use the default post-receive and create scripts that ship with the tool (with +small modifications for the installation). The logo is in this repo as +`logo.png`. -The content, being static, is served up with `httpd` as well. +The content, being static, is served up with `httpd(8)` as well. [1]: https://git.codemadness.org/stagit diff --git a/a-new-hope.7 b/a-new-hope.7 new file mode 100644 index 0000000..54e57b1 --- /dev/null +++ b/a-new-hope.7 @@ -0,0 +1,22 @@ +.Dd December 19, 2019 +.Dt A-NEW-HOPE 7 +.Os +.Sh NAME +.Nm a-new-hope +.Nd cliche first blog post? +.Sh DESCRIPTION +Toying with the thought of starting a website/blog. +.Pp +Exploring my hosting options and pleasantly surprised that +.Lk https://fastmail.com FastMail +has free static site hosting! +.Pp +Inspired by Jeff Huang's article on websites Designed to Last +a general desire for a simpler web. +.Sh SEE ALSO +.Bl -compact -bullet -format=indent +.It +.Lk https://jeffhuang.com/designed_to_last +.It +.Xr blog 7 +.El diff --git a/bin/build.sh b/bin/build.sh deleted file mode 100755 index 43f7e2c..0000000 --- a/bin/build.sh +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -mkdir -p build -cp content/*.css build -for f in content/*.md; do - Markdown.pl $f | ./bin/tm.pl > build/`basename $f md`html -done diff --git a/bin/tm.pl b/bin/tm.pl deleted file mode 100755 index c9b2209..0000000 --- a/bin/tm.pl +++ /dev/null @@ -1,35 +0,0 @@ -#!/usr/bin/env perl -# tm.pl -- minimal templating script -# ^ ^^^ -use strict; -use warnings; - -use File::Basename qw(dirname); -use FindBin; - -my $TOP = dirname($FindBin::Bin); - -while (my $l = <>) { - process_line($l); -} - -sub process_line { - my $l = shift; - if ($l =~ /{% include=(.*) %}/) { - process_file($1); - } else { - print $l; - } -} - -sub process_file { - my $f = shift; - - my $tmpl = "$TOP/templates/$f.tmpl"; - die "bad template: $tmpl" unless -e $tmpl; - open(my $tfh, '<', $tmpl) or die "open: $!"; - while (my $l = <$tfh>) { - process_line($l); - } - close($tfh) or die "close: $!"; -} diff --git a/blog.7 b/blog.7 new file mode 100644 index 0000000..ee95707 --- /dev/null +++ b/blog.7 @@ -0,0 +1,28 @@ +.Dd +.Dt BLOG 7 +.Os +.Sh NAME +.Nm blog +.Nd yet another weblog +.Sh DESCRIPTION +I don't write frequently, but when I do, it's usually about tech. +.Sh SEE ALSO +.Bl -bullet -compact -offset=indent +.It +.Xr intro 7 +.It +.Xr on-writing 7 +- On Writing Without an Audience (10/22/2020) +.It +.Xr self-hosted 7 +- Migrating to a Self-Hosted Site (7/19/2020) +.It +.Xr BLM 7 +- Black Lives Matter (7/13/2020) +.It +.Xr domain-names 7 +- What's in a (domain) name? (3/24/2020) +.It +.Xr a-new-hope 7 +- A New Hope (12/19/2019) +.El diff --git a/content/03-24-20-domain-name.md b/content/03-24-20-domain-name.md deleted file mode 100644 index 8ccbeba..0000000 --- a/content/03-24-20-domain-name.md +++ /dev/null @@ -1,25 +0,0 @@ - - -### Mar. 24, 2020: What's in a (domain) name? - -I went through a phase this week of really wanting `karle.[original-tld]`. -Not for a business. Not for boosting my own webpage (it doesn't really -have much). Just for me. - -The results were... disheartening. - -* **`karle.org:`**
Registered since 2004, no website, just an email -DNS record. WHOIS guard ensures I can't even reach out to who owns it. - -* **`karle.com:`**
For sale by owner on Uniregistry. Ok. Inquired. -Owner wants a "serious 5 figure offer". Next! - -* **`karle.net:`**
Owned by [RealNames](https://realnames.com), -a business seemingly centered around buying lastname.net domains and -charging people like me to set up an email. Almost brilliant enough of a -business to make me forgive their scumminess. _Almost_. Nary an -option to buy it. - -So here we are. Looks like `karle.co` for at least a little longer. - - diff --git a/content/07-13-20-blm.md b/content/07-13-20-blm.md deleted file mode 100644 index 49f24b6..0000000 --- a/content/07-13-20-blm.md +++ /dev/null @@ -1,11 +0,0 @@ - - -### July 13, 2020: Black Lives Matter - -I meant to post about this earlier, but it's better late than never. - -It's become abundantly clear to me that we need serious structural changes in -our country. I want to raise my voice in solidarity to say that -[Black Lives Matter](https://blacklivesmatter.com). - - diff --git a/content/07-19-20-self-hosted.md b/content/07-19-20-self-hosted.md deleted file mode 100644 index a34c0a8..0000000 --- a/content/07-19-20-self-hosted.md +++ /dev/null @@ -1,54 +0,0 @@ - - -### July 19, 2020: Migrating to a Self-Hosted Site - -If you look at the [first post][1] on this site, you'll see that this site -started as a series of static HTML files that I was, by hand, uploading to -Fastmail via their "files" GUI. - -Being a total nerd for automation, I was always on the lookout for an excuse to -migrate to my own server, where I could (over)engineer a pipeline to build my -static content and deploy it without ever leaving the terminal. - -That excuse presented itself in the form of needing to get a VPS to stand up my -hobby-project, [`euchre.live`][el]. If I was going to pay for a tiny VM, it was -a no-brainer to move my personal site to it too. - -This turned out to be a great learning experience -- getting hands on experience -with reverse proxies, DNS, and a variety of operating systems and webservers -(first hosted on Alpine Linux and migrated to OpenBSD). Additionally, I could -self-host git repos, which has long been a nerd-goal of mine :) - -I plan to write a lengthier post about the joys of self-hosting in the future, -but for now, I really just wanted to give a brief update on where I landed and -what the current stack is. - -I'm currently running (in no particular order): - -* **OS:** OpenBSD -* **Web server:** OpenBSD's `httpd(8)` - - Serves the `www.` static content - - Also serves [`git.alexkarle.com`][git] -* **Reverse proxy:** OpenBSD's `relayd(8)` - - Used to send traffic between [`euchre.live`][el] (which uses a [Mojolicious][mojo] - web server as the backend) and `alexkarle.com` based on URL -* **`www` content:** - - 100% static content - - No metrics, ads, or tracking - - Posts and pages written in markdown - - HTML generated with a pipeline of the original `Markdown.pl` into a small - templating Perl script that I home-rolled -* **Git:** - - Public repos served with `git-daemon(1)` over the `git://` protocol - - Push access via the `ssh://` protocol - - static HTML of content generated via post-receive hook with [`stagit(1)`][stagit] - -That's all for now! - -[1]: 12-19-19-a-new-hope.html -[el]: http://euchre.live -[git]: https://git.alexkarle.com -[stagit]: https://git.codemadness.org/stagit/ -[mojo]: https://mojolicious.org - - diff --git a/content/10-22-20-on-writing.md b/content/10-22-20-on-writing.md deleted file mode 100644 index 64c5c52..0000000 --- a/content/10-22-20-on-writing.md +++ /dev/null @@ -1,46 +0,0 @@ - - -### October 22, 2020: On Writing Without an Audience - -I wrote a blog post 3 weeks ago but never published it. I spent a couple -hours writing, proof-reading, and rewriting, and settled to re-read -once more in the morning and publish if I still liked it after a good -nights sleep. - -I got caught up with other things, and a day or two later re-read it and -still didn't end up publishing it. I didn't think it was quite right. -I liked it well enough, but I was worried other people would judge it. - -But here's the irony--as far as I know, I have no readers. Publishing it -is almost equivalent to shouting into the void. - -So why did I care so much? - -As I found myself thinking about how I'd revise the original post -tonight, I realized that maybe this fear of judgment from non-existent -(but potential future) internet strangers was a much more interesting -topic to explore than my original musings. So here I am hashing it out. - -I think the fear of judgment comes from a mixture of seeing public figures -have their pasts (preserved in the digital era) come back to haunt them -combined with observing how readers can react strongly and negatively to -posts. I don't plan to ever become so famous as to have a blog haunt me, -nor do I ever expect enough readers to have overwhelmingly unpleasant -reactions, but the fear still got to me. - -But I want to persevere, and that's ultimately what writing this is about. -I'm not writing for fame or attention. I'm not writing to further my -career or put it on my resume. - I'm writing for me. For the clarity -I get from expressing my thoughts, and for the joy I get looking back -at where I was months or years ago. - -Why host them publicly? Well, I really enjoy a good tech blog, and -admire a blogger or two out there. I want to be the change I want to -see in the internet and migrate from centralized social networks back -to a decentralized network of personal and self-hosted sites. - -And who knows, maybe one day someone will read this and have felt the -same. I guess I'm writing for that person too. - - diff --git a/content/12-19-19-a-new-hope.md b/content/12-19-19-a-new-hope.md deleted file mode 100644 index 574cdf8..0000000 --- a/content/12-19-19-a-new-hope.md +++ /dev/null @@ -1,14 +0,0 @@ - - -### Dec. 19, 2019: A New Hope - -Toying with the thought of starting a website/blog. - -Exploring my hosting options and pleasantly surprised that -[Fastmail](https://fastmail.com) has free static site hosting! - -Inspired by Jeff Huang's article on websites -[Designed to Last](https://jeffhuang.com/designed_to_last) and -a general desire for a simpler web. - - diff --git a/content/favicon.ico b/content/favicon.ico deleted file mode 100644 index 135c675..0000000 Binary files a/content/favicon.ico and /dev/null differ diff --git a/content/index.md b/content/index.md deleted file mode 100644 index 0de91ad..0000000 --- a/content/index.md +++ /dev/null @@ -1,17 +0,0 @@ - - -### About me: - -Hi, I'm Alex! I'm a software engineer living in the Boston area. - -I'm currently interested in free Operating Systems (particularly Linux -and OpenBSD), SCM systems (mostly git), and developer tooling. - -
- -### Find me online: - -* GitHub: [`@akarle`](https://github.com/akarle) -* Email: `alex AT this-domain` - - diff --git a/content/style.css b/content/style.css deleted file mode 100644 index 56c5fa1..0000000 --- a/content/style.css +++ /dev/null @@ -1,66 +0,0 @@ -body { - background-color: #F5F5F5; - font-family: sans-serif; - margin-left: 20px; - margin-right: 20px; - font-size: 1em; - line-height: 1.3; -} - -h1, h2, #nav { - font-family: "Courier New", monospace; -} - -ul { - padding-left: 30px; -} - -code { - font-size: 1.3em; -} - -@media only screen and (min-width: 992px) { - #content { - width: 60%; - margin: 0 auto; - } -} - -@media only screen and (min-width: 600px) and (max-width: 991px) { - #content { - width: 80%; - margin: 0 auto; - } -} - -@media only screen and (min-width: 600px) { - header { - display: flex; - flex-direction: row; - justify-content: space-between; - align-items: center; - } -} - -a:link { - color: #0a7899; -} - -a:visited { - color: #033a4a; -} - -header { - text-align: center; - margin-bottom: 3em; -} - -#nav > a { - color: dimgray; - text-decoration: none; -} - -#nav > a:hover { - color: #3f3f3f; - text-decoration: underline; -} diff --git a/content/thoughts.md b/content/thoughts.md deleted file mode 100644 index a682ddc..0000000 --- a/content/thoughts.md +++ /dev/null @@ -1,13 +0,0 @@ - - -### A collection of thoughts. - -

(Because I couldn't commit to calling it a blog)

- -* [Oct. 22, 2020: On Writing Without an Audience](10-22-20-on-writing.html) -* [Jul. 19, 2020: Migrating to a Self-Hosted Site](07-19-20-self-hosted.html) -* [Jul. 13, 2020: Black Lives Matter](07-13-20-blm.html) -* [Mar. 24, 2020: What's in a (domain) name?](03-24-20-domain-name.html) -* [Dec. 19, 2019: A New Hope](12-19-19-a-new-hope.html) - - diff --git a/domain-names.7 b/domain-names.7 new file mode 100644 index 0000000..75a9c69 --- /dev/null +++ b/domain-names.7 @@ -0,0 +1,44 @@ +.Dd March 24, 2020 +.Dt DOMAIN-NAMES 7 +.Os +.Sh NAME +.Nm domain-names +.Nd what's in a (domain) name? +.Sh DESCRIPTION +I went through a phase this week of really wanting `karle.[original-tld]`. +Not for a business. +Not for boosting my own webpage (it doesn't really have much). +Just for me. +.Pp +The results were... disheartening. +.Bl -bullet -compact -format=indent +.It +.Sy karle.org : +.Pp +Registered since 2004, no website, just an email DNS record. +WHOIS guard ensures I can't even reach out to who owns it. +.It +.Sy karle.com : +.Pp +For sale by owner on Uniregistry. +Ok. +Inquired. +Owner wants a "serious 5 figure offer". +Next! +.It +.Sy karle.net : +.Pp +Owned by +.Lk https://realnames.com RealNames , +a business seemingly centered around buying lastname.net domains and +charging people like me to set up an email. +Almost brilliant enough of a business to make me forgive their scumminess. +.Em Almost . +Nary an option to buy it. +.El +So here we are. Looks like `karle.co` for at least a little longer. +.Sh SEE ALSO +.Bl -compact -bullet -format=indent +.It +.Xr blog 7 +.El diff --git a/intro.7 b/intro.7 new file mode 100644 index 0000000..9731b42 --- /dev/null +++ b/intro.7 @@ -0,0 +1,28 @@ +.Dd +.Dt INTRO 7 +.Os +.Sh NAME +.Nm intro +.Nd welcome to my personal homepage +.Sh ABOUT ME +Hi! +I'm Alex. +I'm a software engineer living in the Boston area. +I'm currently interested in free Operating Systems (particularly Linux +and OpenBSD), SCM systems (mostly git), and developer tooling. +.Pp +If you can't tell from the layout of this site, I'm a +.Xr man 1 +page enthusiast. +.Sh SEE ALSO +.Bl -bullet -compact +.It +.Lk https://euchre.live euchre(6) +.It +.Xr blog 7 +.It +.Lk /git projects(7) +.El +.Sh CONTACT +Email: +.Mt alex@alexkarle.com diff --git a/on-writing.7 b/on-writing.7 new file mode 100644 index 0000000..9a6ec0e --- /dev/null +++ b/on-writing.7 @@ -0,0 +1,55 @@ +.Dd October 22, 2020 +.Dt ON-WRITING 7 +.Os +.Sh NAME +.Nm on-writing +.Nd thoughts on writing without an audience +.Sh DESCRIPTION +I wrote a blog post 3 weeks ago but never published it. +I spent a couple hours writing, proof-reading, and rewriting, and settled to +re-read once more in the morning and publish if I still liked it after a good +nights sleep. +.Pp +I got caught up with other things, and a day or two later re-read it and +still didn't end up publishing it. +I didn't think it was quite right. +I liked it well enough, but I was worried other people would judge it. +.Pp +But here's the irony--as far as I know, I have no readers. +Publishing it is almost equivalent to shouting into the void. +.Pp +So why did I care so much? +.Pp +As I found myself thinking about how I'd revise the original post +tonight, I realized that maybe this fear of judgment from non-existent +(but potential future) internet strangers was a much more interesting +topic to explore than my original musings. +So here I am hashing it out. +.Pp +I think the fear of judgment comes from a mixture of seeing public figures +have their pasts (preserved in the digital era) come back to haunt them +combined with observing how readers can react strongly and negatively to +posts. +I don't plan to ever become so famous as to have a blog haunt me, +nor do I ever expect enough readers to have overwhelmingly unpleasant +reactions, but the fear still got to me. +.Pp +But I want to persevere, and that's ultimately what writing this is about. +I'm not writing for fame or attention. +I'm not writing to further my career or put it on my resume. +I'm writing for me. For the clarity I get from expressing my thoughts, and for +the joy I get looking back at where I was months or years ago. +.Pp +Why host them publicly? +Well, I really enjoy a good tech blog, and admire a blogger or two out there. +I want to be the change I want to see in the internet and migrate from +centralized social networks back to a decentralized network of personal and +self-hosted sites. +.Pp +And who knows, maybe one day someone will read this and have felt the same. I guess I'm writing for that person too. +.Pp +.Sh SEE ALSO +.Bl -compact -bullet -format=indent +.It +.Xr blog 7 +.El diff --git a/self-hosted.7 b/self-hosted.7 new file mode 100644 index 0000000..c82df8a --- /dev/null +++ b/self-hosted.7 @@ -0,0 +1,96 @@ +.Dd July 19, 2020 +.Dt SELF-HOSTED 7 +.Os +.Sh NAME +.Nm self-hosted +.Nd a tale of migrating to my own server +.Sh DESCRIPTION +If you look at the first post +.Xr ( a-new-hope 7 ) +on this site, you'll see that this site started as a series of static HTML +files that I was, by hand, uploading to Fastmail via their "files" GUI. +.Pp +Being a total nerd for automation, I was always on the lookout for an excuse to +migrate to my own server, where I could (over)engineer a pipeline to build my +static content and deploy it without ever leaving the terminal. +.Pp +That excuse presented itself in the form of needing to get a VPS to stand up my +hobby-project, `euchre.live`. +If I was going to pay for a tiny VM, it was a no-brainer to move my personal +site to it too. +.Pp +This turned out to be a great learning experience -- getting hands on experience +with reverse proxies, DNS, and a variety of operating systems and webservers +(first hosted on Alpine Linux and migrated to OpenBSD). +Additionally, I could self-host git repos, which has long been a nerd-goal of mine :) +.Pp +I plan to write a lengthier post about the joys of self-hosting in the future, +but for now, I really just wanted to give a brief update on where I landed and +what the current stack is. +.Pp +I'm currently running (in no particular order): +.Bl -compact -bullet -format=indent +.It +.Sy OS : +OpenBSD +.It +.Sy Web server : +OpenBSD's +.Xr httpd 8 +.Bl -compact -dash -format=indent +.It +Serves the `www.` static content +.It +Also serves +.Lk https://git.alexkarle.com +.El +.It +.Sy Reverse proxy : +OpenBSD's +.Xr relayd 8 +.Bl -compact -dash -format=indent +.It +Used to send traffic between `euchre.live` (which uses a Mojolicious +web server as the backend) and `alexkarle.com` based on URL +.El +.It +.Sy `www` content : +.Bl -compact -dash -format=indent +.It +100% static content +.It +No metrics, ads, or tracking +.It +Posts and pages written in markdown +.It +HTML generated with a pipeline of the original `Markdown.pl` into a small +templating Perl script that I home-rolled +.El +.It +.Sy Git : +.Bl -compact -dash -format=indent +.It +Public repos served with +.Sy git-daemon(1) +over the `git://` protocol +.It +Push access via the `ssh://` protocol +.It +static HTML of content generated via post-receive hook with +.Sy stagit(1) +.El +.El +That's all for now! +.Sh SEE ALSO +.Bl -compact -bullet -format=indent +.It +.Xr blog 7 +.It +.Xr a-new-hope 7 +.It +.Lk https://euchre.live +.It +.Lk https://mojolicious.org Mojolicious +.It +.Lk https://git.codemadness.org/stagit/ stagit(1) +.El diff --git a/style.css b/style.css new file mode 100644 index 0000000..ffcc610 --- /dev/null +++ b/style.css @@ -0,0 +1,49 @@ +/* general defaults */ +body { + background-color: #F5F5F5; + margin-left: 20px; + margin-right: 20px; + font-size: 1.3em; + line-height: 1.3; + font-family: monospace; +} + +/* style tweaks */ +a:link { color: #0a7899; } +a:visited { color: #033a4a; } +code { font-size: 1em; } +h1 { font-size: 1em; } +h1 > a { text-decoration: none; } + +/* Responsive screen sizes */ +@media only screen and (min-width: 992px) { + body { + width: 60%; + margin: 0 auto; + } +} +@media only screen and (min-width: 600px) and (max-width: 991px) { + body { + width: 80%; + margin: 0 auto; + } +} + +/* margins around head/foot */ +table.foot { margin-top: 3em; } +table.head { margin-bottom: 3em; } + +/* hide the "miscellaneous" section bit -- too big on mobile */ +td.head-vol { visibility: hidden; } + +/* defaults from mandoc(1)'s inlined CSS */ +table.head, table.foot { width: 100%; } +td.head-rtitle, td.foot-os { text-align: right; } +td.head-vol { text-align: center; } +.Nd, .Bf, .Op { display: inline; } +.Pa, .Ad { font-style: italic; } +.Ms { font-weight: bold; } +.Bl-diag > dt { font-weight: bold; } +code.Nm, .Fl, .Cm, .Ic, code.In, .Fd, .Fn, .Cd { + font-weight: bold; +} diff --git a/template.7 b/template.7 new file mode 100644 index 0000000..1518ba2 --- /dev/null +++ b/template.7 @@ -0,0 +1,13 @@ +.Dd Month Day, Year +.Dt TITLE 7 +.Os +.Sh NAME +.Nm +.Nd <desc> +.Sh DESCRIPTION +entry +.Sh SEE ALSO +.Bl -compact -bullet -format=indent +.It +.Xr blog 7 +.El diff --git a/templates/head.tmpl b/templates/head.tmpl deleted file mode 100644 index b13b724..0000000 --- a/templates/head.tmpl +++ /dev/null @@ -1,24 +0,0 @@ -<!DOCTYPE html> -<html> - <head> - <meta charset="utf-8"> - <title>Alex Karle - - - - - - -
-
-

Alex Karle

- -
diff --git a/templates/post-tail.tmpl b/templates/post-tail.tmpl deleted file mode 100644 index 01820ca..0000000 --- a/templates/post-tail.tmpl +++ /dev/null @@ -1,6 +0,0 @@ -


-
- Back -
-


- diff --git a/templates/tail.tmpl b/templates/tail.tmpl deleted file mode 100644 index a51c933..0000000 --- a/templates/tail.tmpl +++ /dev/null @@ -1,3 +0,0 @@ -
- - -- libgit2 1.1.1