wowana.me
website source
commit 5075286a91ae8ca2c8f7968a4e672e40fa26be04 parent 59e8c565a3ccb368c494e5970ce1fe68f7a0e310 Author: opal hart <opal@wowana.me> Date: Wed, 5 Jun 2019 02:55:20 +0000 new blog article Diffstat:
M | out/blog/feed.atom | | | 108 | ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++- |
M | out/blog/index.xht | | | 1 | + |
A | out/blog/wowaname-now-on-git-and-hosted-on-my-laptop.xht | | | 130 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
A | src/blog/wowaname-now-on-git-and-hosted-on-my-laptop.md | | | 103 | +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ |
4 files changed, 341 insertions(+), 1 deletion(-)
diff --git a/out/blog/feed.atom b/out/blog/feed.atom @@ -4,7 +4,7 @@ <link href="/blog/" rel="alternate"/> <link href="/blog/feed.atom" rel="self"/> <id>/blog/</id> - <updated>2019-05-11T03:40:55+0000</updated> + <updated>2019-06-05T03:15:52+0000</updated> <entry> <title>a musing on sharing and receiving opinions</title> <link href="/blog/a-musing-on-sharing-and-receiving-opinions.xht" rel="alternate" type="application/xhtml+xml" /> @@ -561,4 +561,110 @@ mechanism.</p> </div> </content> </entry> + <entry> + <title>wowana.me now on git (and hosted on my laptop)</title> + <link href="/blog/wowaname-now-on-git-and-hosted-on-my-laptop.xht" rel="alternate" type="application/xhtml+xml" /> + <id>/blog/wowaname-now-on-git-and-hosted-on-my-laptop.xht</id> + <published>2019-06-05T02:53:09+0000</published> + <updated>2019-06-05T03:15:47+0000</updated> + <author><name>opal hart</name></author> + <content type="xhtml"> + <div xmlns="http://www.w3.org/1999/xhtml"> +<p>my blog has long been overdue for a new post, so here goes nothing. I +haven't been writing lately for several reasons: the main one being that +I've had difficulties with bashblog. also, of course, I have been busy +with many things in the past few months, some of which I will cover in +later posts. I have a lot to write about in the coming months; I'll try +to get through it all when I have spare time.</p> + +<hr /> + +<p>so, bashblog. from my <a href="/blog/testing-patches-made-to-bashblog-script.xht" title="“testing patches made to bashblog script”">previous post about it</a>, I described some of +the changes I had to make to it for my own use. with my new patches, I +found that editing old articles is almost impossible without incurring a +headache, so my plan was to rewrite the entire script. and since I'd be +rewriting it, might as well do it in a language I'm more comfortable +with: perl. that wass a big project I kept putting off, until one day I +thought, "shit, why am I not managing it with a makefile?"</p> + +<p>why use <code>make</code>? I first learned proper use of the utility, as well as +how to write a proper makefile, when working on my chat client, +<a href="https://git.volatile.bz/wowaname/achlys" title="wowaname/achlys Git repository">achlys</a>. I wanted to avoid anything such as automake or cmake due +to their complexity, so despite lack of a clear makefile introduction, I +went for it anyway, to my success. in addition to its usefulness for +building C and C++ projects, it's also useful for its core purpose: +smart file-dependency tracking. this is what makes it perfect for a +website; the fact that I can write my entire site's content in markdown +(what I've already been doing with my blog articles), write a few +wrappers to generate the boilerplate HTML, and have it <em>only</em> touch +files that would be updated. if I write an article like I'm doing now, I +just save it, run <code>make</code> (and <code>make check</code> to ensure the output is +conformant XHTML, before I push a broken copy of my website live), and +it'll touch just this page, the blog index, and the atom feed. if I +decide I want to add a link to the site sidebar, I can just modify the +header template and <code>make</code> will generate my entire site. this has the +nice side effect of avoiding server-side includes as well. now I don't +have to worry about a lot of things; I can focus on writing content.</p> + +<p>since it's all backed by git, I have a few benefits from this. I no +longer have to sign blog posts individually; I let git take care of +signed commits for me. this way, you can not only verify the post, but +any edits I make as well. it's all preserved in the commit history for +complete transparency, and for something like a mostly-static, +archive-quality website, I find this invaluable. I also get natural +backups of my site. of course there's the live site copy accessible over +http, but also I get to keep a working copy on my desktop, which allows +me to use the editing tools with which I'm comfortable, instead of being +limited to whatever my server has. I don't like installing too much +cruft on any server; the bulk of my convenience programs (such as vim) +are at home on my desktop.</p> + +<p>you can clone <a href="https://wowana.me/git/wowana.me.git">https://wowana.me/git/wowana.me.git</a> if you're interested +in how I generate my site, if you want an archived copy (of the public +portions) of my website, or if you want to mirror the site elsewhere +(just be kind and link back to <a href="https://wowana.me/">https://wowana.me/</a>, please). I will +soon provide access to my other projects on wowana.me as well as a +mirror on git.volatile.bz, and I will provide cloning instructions on +wowana.me for repositories, since I will not expose these repositories +using an interface such as cgit or stagit. I am not really a fan of +allowing code to be indexed over HTTP; anyone who is truly interested in +my code can clone the repository directly. I will also provide release +tarballs for certain projects (such as achlys) for those who do not have +ready access to git on their system.</p> + +<hr /> + +<p>while you may have noticed I have been making changes to my website (the +<a href="/blog/">blog index</a> received a makeover, for example, and web pages now +have file extensions exposed), I have also made less-visible changes. +one thing of note is that I am now hosting wowana.me on my laptop. I am +using <a href="https://git.volatile.bz/wowaname/quark" title="wowaname/quark Git repository">quark</a> HTTP server written by some of the people over at +<a href="https://suckless.org/" title="suckless.org">suckless</a>, complete with a few bug fixes and modifications for my +personal use (potentially more fixes as time goes on). quark is <em>very</em> +lightweight, clocking in at just under 3mb memory usage at the time of +writing this article. this setup is still served behind nginx, both to +proxy my home IP since I still do not have an ISP suitable for hosting +directly from home, and to cache requests in order to reduce load on my +laptop. also, there are a few nginx-specific rewrites I have for my +site, and I cannot yet find a good way to replace these. so for now, +nginx still plays a role in my website, and that's fine since I use it +for other sites anyway.</p> + +<p>I am looking forward to fully self-hosting wowana.me and all services +located on my domain, to reduce my dependency on third-party hosting. +it's my definitive home on the internet, so I may as well make it +completely mine.</p> + +<p>I also hope that others see the simplicity in what I'm doing here, and +consider moving away from complex website frameworks, opting to roll +their own in a similar fashion to what I am doing. I understand that not +everyone may be a programmer or a web developer, but I believe that +there are certain tools all of us need to know about, so that we can +make the most out of our computers and our time. I can finally manage my +site in a sane manner, visualise all its components, know exactly what +will show up on the live site, because I am in control of every aspect +of its generation. it certainly beats writing all that HTML manually.</p> + </div> + </content> + </entry> </feed> diff --git a/out/blog/index.xht b/out/blog/index.xht @@ -32,6 +32,7 @@ <p><a href="/blog/feed.atom">atom feed</a></p> <ul> +<li><a href="wowaname-now-on-git-and-hosted-on-my-laptop.xht">wowana.me now on git (and hosted on my laptop)</a> <em>last updated <time datetime='2019-06-05T03:15:47+0000' title='2019-06-05T03:15:47+0000'>2019 Jun 05</time></em></li> <li><a href="a-new-era-for-hidden-answers.xht">a new era for Hidden Answers</a> <em>last updated <time datetime='2019-05-11T03:38:03+0000' title='2019-05-11T03:38:03+0000'>2019 May 11</time></em></li> <li><a href="a-musing-on-sharing-and-receiving-opinions.xht">a musing on sharing and receiving opinions</a> <em>last updated <time datetime='2018-09-24T11:40:36+0000' title='2018-09-24T11:40:36+0000'>2018 Sep 24</time></em></li> <li><a href="acme-client-letskencrypt-dns-01-how-to.xht">acme-client (letskencrypt) dns-01 how-to</a> <em>last updated <time datetime='2018-09-21T16:45:46+0000' title='2018-09-21T16:45:46+0000'>2018 Sep 21</time></em></li> diff --git a/out/blog/wowaname-now-on-git-and-hosted-on-my-laptop.xht b/out/blog/wowaname-now-on-git-and-hosted-on-my-laptop.xht @@ -0,0 +1,130 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE html> +<html xmlns="http://www.w3.org/1999/xhtml" lang="en-GB"> + <head> + <title>opal hart / wowaname</title> + <link rel="stylesheet" type="text/css" href="/opal.css"/> + </head> + <body> + <div class="sidebar-holder"> + <header class="sidebar"> + <img class="avatar" src="/gravatar" alt="Libravatar"/> + <h1><a class="nolink" href="/">opal</a></h1> + <p class="subheader">wowaname</p> + <nav class="topnav"> + <ul> + <li><a href="/about.xht">about</a></li> + <li><a href="/blog/">blog</a></li> + <li><a href="/contact.xht">contact</a></li> + <li><a href="/donate.xht">donate</a></li> + <li><a href="/pgp.xht">PGP</a></li> + <li><a href="/files/">files</a></li> + <li><a href="/permalink.xht">permalink</a></li> + <li>content is <a href="https://creativecommons.org/share-your-work/public-domain/cc0">public domain</a> unless otherwise noted</li> + </ul> + </nav> + </header> + </div> + +<article class='main' id='wowaname-now-on-git-and-hosted-on-my-laptop'> +<h1>wowana.me now on git (and hosted on my laptop)</h1> + +<time datetime='2019-06-05T02:53:09+0000' title='2019-06-05T02:53:09+0000'>2019 Jun 05</time> + +<p>my blog has long been overdue for a new post, so here goes nothing. I +haven't been writing lately for several reasons: the main one being that +I've had difficulties with bashblog. also, of course, I have been busy +with many things in the past few months, some of which I will cover in +later posts. I have a lot to write about in the coming months; I'll try +to get through it all when I have spare time.</p> + +<hr /> + +<p>so, bashblog. from my <a href="/blog/testing-patches-made-to-bashblog-script.xht" title="“testing patches made to bashblog script”">previous post about it</a>, I described some of +the changes I had to make to it for my own use. with my new patches, I +found that editing old articles is almost impossible without incurring a +headache, so my plan was to rewrite the entire script. and since I'd be +rewriting it, might as well do it in a language I'm more comfortable +with: perl. that wass a big project I kept putting off, until one day I +thought, "shit, why am I not managing it with a makefile?"</p> + +<p>why use <code>make</code>? I first learned proper use of the utility, as well as +how to write a proper makefile, when working on my chat client, +<a href="https://git.volatile.bz/wowaname/achlys" title="wowaname/achlys Git repository">achlys</a>. I wanted to avoid anything such as automake or cmake due +to their complexity, so despite lack of a clear makefile introduction, I +went for it anyway, to my success. in addition to its usefulness for +building C and C++ projects, it's also useful for its core purpose: +smart file-dependency tracking. this is what makes it perfect for a +website; the fact that I can write my entire site's content in markdown +(what I've already been doing with my blog articles), write a few +wrappers to generate the boilerplate HTML, and have it <em>only</em> touch +files that would be updated. if I write an article like I'm doing now, I +just save it, run <code>make</code> (and <code>make check</code> to ensure the output is +conformant XHTML, before I push a broken copy of my website live), and +it'll touch just this page, the blog index, and the atom feed. if I +decide I want to add a link to the site sidebar, I can just modify the +header template and <code>make</code> will generate my entire site. this has the +nice side effect of avoiding server-side includes as well. now I don't +have to worry about a lot of things; I can focus on writing content.</p> + +<p>since it's all backed by git, I have a few benefits from this. I no +longer have to sign blog posts individually; I let git take care of +signed commits for me. this way, you can not only verify the post, but +any edits I make as well. it's all preserved in the commit history for +complete transparency, and for something like a mostly-static, +archive-quality website, I find this invaluable. I also get natural +backups of my site. of course there's the live site copy accessible over +http, but also I get to keep a working copy on my desktop, which allows +me to use the editing tools with which I'm comfortable, instead of being +limited to whatever my server has. I don't like installing too much +cruft on any server; the bulk of my convenience programs (such as vim) +are at home on my desktop.</p> + +<p>you can clone <a href="https://wowana.me/git/wowana.me.git">https://wowana.me/git/wowana.me.git</a> if you're interested +in how I generate my site, if you want an archived copy (of the public +portions) of my website, or if you want to mirror the site elsewhere +(just be kind and link back to <a href="https://wowana.me/">https://wowana.me/</a>, please). I will +soon provide access to my other projects on wowana.me as well as a +mirror on git.volatile.bz, and I will provide cloning instructions on +wowana.me for repositories, since I will not expose these repositories +using an interface such as cgit or stagit. I am not really a fan of +allowing code to be indexed over HTTP; anyone who is truly interested in +my code can clone the repository directly. I will also provide release +tarballs for certain projects (such as achlys) for those who do not have +ready access to git on their system.</p> + +<hr /> + +<p>while you may have noticed I have been making changes to my website (the +<a href="/blog/">blog index</a> received a makeover, for example, and web pages now +have file extensions exposed), I have also made less-visible changes. +one thing of note is that I am now hosting wowana.me on my laptop. I am +using <a href="https://git.volatile.bz/wowaname/quark" title="wowaname/quark Git repository">quark</a> HTTP server written by some of the people over at +<a href="https://suckless.org/" title="suckless.org">suckless</a>, complete with a few bug fixes and modifications for my +personal use (potentially more fixes as time goes on). quark is <em>very</em> +lightweight, clocking in at just under 3mb memory usage at the time of +writing this article. this setup is still served behind nginx, both to +proxy my home IP since I still do not have an ISP suitable for hosting +directly from home, and to cache requests in order to reduce load on my +laptop. also, there are a few nginx-specific rewrites I have for my +site, and I cannot yet find a good way to replace these. so for now, +nginx still plays a role in my website, and that's fine since I use it +for other sites anyway.</p> + +<p>I am looking forward to fully self-hosting wowana.me and all services +located on my domain, to reduce my dependency on third-party hosting. +it's my definitive home on the internet, so I may as well make it +completely mine.</p> + +<p>I also hope that others see the simplicity in what I'm doing here, and +consider moving away from complex website frameworks, opting to roll +their own in a similar fashion to what I am doing. I understand that not +everyone may be a programmer or a web developer, but I believe that +there are certain tools all of us need to know about, so that we can +make the most out of our computers and our time. I can finally manage my +site in a sane manner, visualise all its components, know exactly what +will show up on the live site, because I am in control of every aspect +of its generation. it certainly beats writing all that HTML manually.</p> +</article> + </body> +</html> diff --git a/src/blog/wowaname-now-on-git-and-hosted-on-my-laptop.md b/src/blog/wowaname-now-on-git-and-hosted-on-my-laptop.md @@ -0,0 +1,103 @@ +# wowana.me now on git (and hosted on my laptop) +<!--[time 201906050253.09]--> + +my blog has long been overdue for a new post, so here goes nothing. I +haven't been writing lately for several reasons: the main one being that +I've had difficulties with bashblog. also, of course, I have been busy +with many things in the past few months, some of which I will cover in +later posts. I have a lot to write about in the coming months; I'll try +to get through it all when I have spare time. + +---- + +so, bashblog. from my [previous post about it] [1], I described some of +the changes I had to make to it for my own use. with my new patches, I +found that editing old articles is almost impossible without incurring a +headache, so my plan was to rewrite the entire script. and since I'd be +rewriting it, might as well do it in a language I'm more comfortable +with: perl. that wass a big project I kept putting off, until one day I +thought, "shit, why am I not managing it with a makefile?" + +why use `make`? I first learned proper use of the utility, as well as +how to write a proper makefile, when working on my chat client, +[achlys] [2]. I wanted to avoid anything such as automake or cmake due +to their complexity, so despite lack of a clear makefile introduction, I +went for it anyway, to my success. in addition to its usefulness for +building C and C++ projects, it's also useful for its core purpose: +smart file-dependency tracking. this is what makes it perfect for a +website; the fact that I can write my entire site's content in markdown +(what I've already been doing with my blog articles), write a few +wrappers to generate the boilerplate HTML, and have it *only* touch +files that would be updated. if I write an article like I'm doing now, I +just save it, run `make` (and `make check` to ensure the output is +conformant XHTML, before I push a broken copy of my website live), and +it'll touch just this page, the blog index, and the atom feed. if I +decide I want to add a link to the site sidebar, I can just modify the +header template and `make` will generate my entire site. this has the +nice side effect of avoiding server-side includes as well. now I don't +have to worry about a lot of things; I can focus on writing content. + +since it's all backed by git, I have a few benefits from this. I no +longer have to sign blog posts individually; I let git take care of +signed commits for me. this way, you can not only verify the post, but +any edits I make as well. it's all preserved in the commit history for +complete transparency, and for something like a mostly-static, +archive-quality website, I find this invaluable. I also get natural +backups of my site. of course there's the live site copy accessible over +http, but also I get to keep a working copy on my desktop, which allows +me to use the editing tools with which I'm comfortable, instead of being +limited to whatever my server has. I don't like installing too much +cruft on any server; the bulk of my convenience programs (such as vim) +are at home on my desktop. + +you can clone <https://wowana.me/git/wowana.me.git> if you're interested +in how I generate my site, if you want an archived copy (of the public +portions) of my website, or if you want to mirror the site elsewhere +(just be kind and link back to <https://wowana.me/>, please). I will +soon provide access to my other projects on wowana.me as well as a +mirror on git.volatile.bz, and I will provide cloning instructions on +wowana.me for repositories, since I will not expose these repositories +using an interface such as cgit or stagit. I am not really a fan of +allowing code to be indexed over HTTP; anyone who is truly interested in +my code can clone the repository directly. I will also provide release +tarballs for certain projects (such as achlys) for those who do not have +ready access to git on their system. + +[1]: </blog/testing-patches-made-to-bashblog-script.xht> "“testing patches made to bashblog script”" +[2]: <https://git.volatile.bz/wowaname/achlys> "wowaname/achlys Git repository" + +---- + +while you may have noticed I have been making changes to my website (the +[blog index](/blog/) received a makeover, for example, and web pages now +have file extensions exposed), I have also made less-visible changes. +one thing of note is that I am now hosting wowana.me on my laptop. I am +using [quark] [3] HTTP server written by some of the people over at +[suckless] [4], complete with a few bug fixes and modifications for my +personal use (potentially more fixes as time goes on). quark is *very* +lightweight, clocking in at just under 3mb memory usage at the time of +writing this article. this setup is still served behind nginx, both to +proxy my home IP since I still do not have an ISP suitable for hosting +directly from home, and to cache requests in order to reduce load on my +laptop. also, there are a few nginx-specific rewrites I have for my +site, and I cannot yet find a good way to replace these. so for now, +nginx still plays a role in my website, and that's fine since I use it +for other sites anyway. + +I am looking forward to fully self-hosting wowana.me and all services +located on my domain, to reduce my dependency on third-party hosting. +it's my definitive home on the internet, so I may as well make it +completely mine. + +I also hope that others see the simplicity in what I'm doing here, and +consider moving away from complex website frameworks, opting to roll +their own in a similar fashion to what I am doing. I understand that not +everyone may be a programmer or a web developer, but I believe that +there are certain tools all of us need to know about, so that we can +make the most out of our computers and our time. I can finally manage my +site in a sane manner, visualise all its components, know exactly what +will show up on the live site, because I am in control of every aspect +of its generation. it certainly beats writing all that HTML manually. + +[3]: <https://git.volatile.bz/wowaname/quark> "wowaname/quark Git repository" +[4]: <https://suckless.org/> "suckless.org"