summaryrefslogtreecommitdiffstatshomepage
path: root/posts
diff options
context:
space:
mode:
Diffstat (limited to 'posts')
-rw-r--r--posts/beton-brut.md134
-rw-r--r--posts/concrete.md48
-rw-r--r--posts/img/brutalist-websites.pngbin0 -> 286211 bytes
-rw-r--r--posts/img/weltschmerz.pngbin0 -> 45345 bytes
-rw-r--r--posts/old-days.md73
-rw-r--r--posts/the-cat.md65
-rw-r--r--posts/transcript.md42
-rw-r--r--posts/verify-with-signify.md51
-rw-r--r--posts/weltschmerz.md77
9 files changed, 490 insertions, 0 deletions
diff --git a/posts/beton-brut.md b/posts/beton-brut.md
new file mode 100644
index 0000000..3c28211
--- /dev/null
+++ b/posts/beton-brut.md
@@ -0,0 +1,134 @@
+title: Béton Brut
+date: 2019-07-21
+author: Wolfgang Müller
+
+It is hard to believe that it took me well over half a year to finally
+come to the point where I can publish this website on my new domain and
+leave the old one behind. There's a few reasons it took this long, and
+for once, surprisingly, they are not at all software-related. It was a
+journey through uncertainty, insecurity, and compulsive hesitancy, which
+is why this post will mostly be a reflective one.
+
+## Legacy Woes
+
+Last year in November I had a bunch of free time on my hands, and I very
+innocently decided to work on a new site design. Back then I only really
+wanted to change a few things, since a full makeover seemed a bit too
+daunting. Still, after throwing around a bunch of ideas in my head, it
+seemed more clear that I would have to abandon the bulk of what I
+already had. Mainly this was because the old site was built on a
+considerable amount of legacy code: I was using AsciiDoc, which I had
+fallen out of favour with, and most of the site was being held together
+by an unwieldy Makefile and a couple of hacky shell scripts.
+
+So whilst it was easy enough to add new content, changing the design or
+even merely attempting to tweak core concepts was impossible without a
+bigger rewrite.
+
+Another concern was my growing disdain for a few of the things that I
+had published. Ideally I thought it'd be best to rewrite the bits that I
+didn't like and keep the rest, but I couldn't find a sufficient amount
+of motivation. I ended up neglecting to write any new posts on the site,
+and knowing I had stuff online that I kind of despised made me feel
+depressed every time I thought about it. I felt that the site could no
+longer reasonably present the kind of person I was. I felt that I was
+lying.
+
+## Honest Design
+
+Around the same time I stumbled upon [Brutalist
+Websites](https://brutalistwebsites.com/) (since defunct, and only
+reasonably browsable by removing the prominent overlay), which curated a
+collection of _brutalist_ websites.
+
+![Brutalist Websites](img/brutalist-websites.png)
+
+There was always a certain - perhaps morbid - fascination I had with
+Brutalism and its idea of _béton brut_, raw concrete. The German word
+for this concept, _Sichtbeton_, takes a more experiential approach; it
+is simply concrete that is unobstructedly visible. There's no attempt to
+hide the underpinning, instead it is displayed with a certain kind of
+pride. Core to the whole concept is a notion of honesty, of being
+utterly clear about what a thing is made of.
+
+So when I felt that I was lying about what kind of person I was, it
+seemed only fitting to create something new in that sort of style, and
+to take to heart the idea of being more honest to the outside world and
+myself.
+
+## The Foundation
+
+Not only did that mean creating a new design, it also meant starting
+from scratch and looking for a new engine to build the whole website. I
+quickly decided to use [sblg](https://kristaps.bsd.lv/sblg/) to generate
+HTML files from templates, and
+[lowdown](https://kristaps.bsd.lv/lowdown/) to convert markdown files to
+XML content that sblg understands.
+
+The whole project would live in only a couple of directories, tied
+together with a much simpler and cleaner Makefile this time. Compared to
+AsciiDoc, site generation was blazingly fast and very robust. It only
+took me about a day or two to fully tweak everything the way I wanted it
+to behave.
+
+## Small Steps
+
+What ended up taking 90% of the rest of the time was the design. With
+the idea of being fully honest came a problem: I started questioning
+certain decisions because of what they might reveal about myself, what
+they might look like from an outside perspective. I noticed that, for a
+very long time, I had been genuinely insecure about releasing anything
+that was in any way personal to me.
+
+For instance, the idea very early on was to have one single page
+containing everything I published; be it a piece of software, a poem, or
+some sort of essay. This resulted in a lot of internal conflict as I
+often considered my poetry to be "pretentious" and inherently less
+impactful than a software project. Suddenly I was wanting to have two
+sites, one for the "real" and technical projects, and one for the more
+personal. In turn that would mean that I was actively censoring my
+output by categorizing it away to a more obscure part of the site.
+
+Another problem was an almost compulsive need to tweak the most
+insignificant parts of the design towards a sense of perfection and
+coherence that was frankly unattainable. Because of a lot of internal
+turmoil, it became impossible to do any further work I would feel
+positive of.
+
+In the end the solution was to take considerable time off personal
+projects and reflect on and try to dismantle those problems and
+insecurities. I learned that it is very helpful to talk to trustworthy
+friends about this, and to find a comfortable space in which to
+experiment with being more immediately public with projects, ideas, or
+thoughts - even if you think they are unrefined and not ready. This is
+especially helpful if one tends to feel vulnerable after having
+published or when considering to publish. Initially it is perfectly fine
+to create a "mock public" space that no one can see initially, but which
+can be made more public as time goes on (a locked Twitter or Fediverse
+profile, for example). The idea is to build confidence in the act of
+publishing itself, and to take away the vulnerability and fear.
+
+## Horizon
+
+Building this sort of confidence in publishing personal content is
+time-consuming and not always easy. You may feel the intense urge to
+undo a publication or to re-read it until it sounds drab and uninspired.
+In those cases, maybe ask a friend for feedback, but most importantly:
+take a step back and take some time off. It may read wholly differently
+tomorrow.
+
+As for technical work, if you, like me, feel sometimes that what you do
+is unimportant, unrecognized, or invisible, it might help to start a
+document in which you collect even the smallest things that have some
+sort of impact day to day. Julia Evan's idea of a [brag
+document](https://jvns.ca/blog/brag-documents/) is a helpful resource. I
+tend to be overly humble myself and want to highlight the following excerpt,
+which helped me understand something no one had explained to me before:
+
+> One thing I want to emphasize, for people who don't like to brag, is –
+> **you don't have to try to make your work sound better than it is**. Just
+> make it sound **exactly as good as it is**!
+
+Like _béton brut_, be uncompromisingly honest about your work. Don't
+make it sound better than it is, but most importantly, learn that it
+has value and that there is no shame in showing it.
diff --git a/posts/concrete.md b/posts/concrete.md
new file mode 100644
index 0000000..ecae66c
--- /dev/null
+++ b/posts/concrete.md
@@ -0,0 +1,48 @@
+title: Concrete
+date: 2017-03-08
+author: Wolfgang Müller
+
+Concrete. Drab, lifeless surfaces, complete in their sterility. Dust
+from abrasion dancing around in the few shafts of light like
+poisoned spores, carrying death across the hallway. Lying against
+the blood-stained wall, this should be his last moment in life. Born
+in concrete, deep below the earth, away from sunshine, green grass,
+sunflowers, singing birds; Killed in concrete just the same, smashed
+against the wall, shot into the lungs and shoulders, bleeding out far
+away from light or happiness.
+
+The others were all already gone. Strewn about, lying atop of each
+other, dead eyes, pale skin. Grey and feeble, like the concrete all
+around. Pools of blood under the bodies, a dark coagulated red. Life
+forgotten now seeping into the devouring pores of the cement floor.
+
+"I'll end up like them, eaten up, rotting here where there is
+no sunshine. I'll end up in the belly of the concrete monstrosity, my
+skeleton grinning sheepishly at the unlucky dwellers who find this vault
+expecting riches, but getting only death; death grimacing back, and the
+concrete, silent as ever, watching, waiting."
+
+A putrid smell lay in the room, ironlike, miasmatic, and
+dusty. Thankfully only a few more breaths left. Complete silence,
+except for the ghastly wheezing of ruptured lungs. A last reminder of
+life dwindling between the uncaring walls. Nobody listening except the
+elongated and lobeless concrete ears, the rough surfaces like petrified
+skin.
+
+Darkness slowly crept in; first at the edges, concealing the unnatural
+smiles of mutilated faces. Faces of friends, family, faces of enemies,
+of bullies. Everyone's face. Nobody's face.
+
+He drew his last breath. The darkness crept more towards the center,
+towards that one fixpoint; towards the concrete wall he had been staring
+at all this time. His enemy. Mankind's enemy. And yet it was just a
+wall. Something so simple had become the name for all the horrors in the
+world, and it was staring back. Endlessly it was staring back, loudly
+accusing in complete silence.
+
+It resounded in the corpse-filled room, mangled vocal chords in an
+undead chorus.
+
+It resounded in his dying, confused mind.
+
+Concrete.
diff --git a/posts/img/brutalist-websites.png b/posts/img/brutalist-websites.png
new file mode 100644
index 0000000..d116bb6
--- /dev/null
+++ b/posts/img/brutalist-websites.png
Binary files differ
diff --git a/posts/img/weltschmerz.png b/posts/img/weltschmerz.png
new file mode 100644
index 0000000..2c46430
--- /dev/null
+++ b/posts/img/weltschmerz.png
Binary files differ
diff --git a/posts/old-days.md b/posts/old-days.md
new file mode 100644
index 0000000..41bcb7c
--- /dev/null
+++ b/posts/old-days.md
@@ -0,0 +1,73 @@
+title: Old Days
+date: 2016-06-03T02:44:44Z
+author: Wolfgang Müller
+
+In the lowland of the taiga;
+And vast forests boreal
+Midst wapiti and wild reindeer,
+Lynx, stoat, squirrel, snowshoe, brown bear,
+Lives a hermit in remembrance
+Of old days and the explosion.
+
+Green the firs, bicoloured birches
+Waving proudly in light wind;
+Poplars shedding crimson catkins.
+And the hermit, longing, silent
+Standing lonely on the brink
+Of tundra, opens weary eyes and sees.
+
+Oak trees bending, whipping back;
+Barks then tinged by hellish fire,
+Songbirds in a sky of black.
+The mushroom cloud, the ball of red:
+People fleeing, hoping, dying,
+To the church walls shadows burnt.
+
+In the seas the water boiling,
+Blistering from the reflection
+Of the short-lived man-made sun.
+Uriel in heaven crying,
+Mourning loss of the creation
+That, in war, unmade itself.
+
+No more seasons, only winter;
+Everlasting winter, with grey soot
+Like snowflakes falling gently
+Down to blackened soil; a Hell
+on Earth, forever dead and frozen.
+Upon mankind a shadow cast.
+
+So the hermit with his gas mask,
+Breathing filters and asbestos
+Makes his way, past sickly tree stumps,
+Past the rotten flesh, past poison
+Past the hollow shells of old
+Through miasma to catharsis;
+
+Through the lowland of the taiga;
+In vast graveyards boreal
+Midst wapiti and dead reindeer,
+Lynx, stoat, squirrel, snowshoe, brown bear,
+Through miasma past the tombstones
+Past the unmarked grave and carcass.
+
+Face turned west another fire,
+Older still than the creation;
+Shimmering subtly, orange, crimson
+Through the clouds and casting rays
+Upon the rolling hills afar,
+Lights like ghostly sirens calling.
+
+And the harp, resurging music,
+Calming shadows, living beings,
+Forests, meadows, nature, beauty!
+From that subtle light display
+Made the hermit so resentful
+And envious of death's embrace.
+
+Far away inside a bunker
+Beneath the old charred earth forgotten
+Lies dormant in a silo still
+The array of rockets primed;
+Awaiting silent, patient, stoic
+An end, and the explosion.
diff --git a/posts/the-cat.md b/posts/the-cat.md
new file mode 100644
index 0000000..c3ffd40
--- /dev/null
+++ b/posts/the-cat.md
@@ -0,0 +1,65 @@
+title: The Cat
+date: 2016-08-04T10:49:20Z
+author: Wolfgang Müller
+
+One should live in a house like a cat, finding repose on almost every
+surface. To the cat, the whole house is a shelter. Every table, every
+sofa, every chair, every bed, indeed every floor is an invitation to
+find some rest. Do we not find cats, again and again, in the most
+unusual and unexpected places? We find them there, lying and sleeping
+with a kind of lightness and peace as if they themselves had designed
+that space specifically for them. We find them there snugly in a ball,
+breathing softly to themselves and relaxing their claws.
+
+Now, in this instance, they need them not. In this instance the whole
+world around them, usually a cat's plaything and center of attention,
+ceases to exist almost, as if they, in their peaceful huddledness,
+transcended life and entered the realm of daydreaming. A human realm,
+not an animal one. Of which things do they dream? Do they dream of the
+mouse that eluded them in the existential battle for life and retreated
+back to its hole, its own shelter? Do they maybe dream of the fields in
+which they were kings and queens, unchallenged monarchs of old?
+
+Truly there is something kingly about cats; a certain evolutionary
+dignity. How is it that they live content with beings displaying even
+greater hubris? Or maybe they just want to learn? How innocent, though,
+in their pursuit of this. How unburdened, how free. Whom do they see
+when they look at us? What do they feel when we talk to them?
+
+Can it be that it is only instinct that drives them? They exhibit such
+humanness, they exhibit an animal soul. It is a purer soul, a more
+simple one, but it is a soul. What do they feel when we gently stroke
+their fur with our hands? Do they feel the same kind of love? How is it
+to live a cat's life?
+
+I said earlier that cats lie down to repose anywhere. Like a human,
+however, they have their favourite spots. Always these spots have a
+distinctly human element. It is the small opening under our beds that
+we so cherished as a child, dreaming of and building at the same time
+a warm and safe den ourselves. It is next to our spot on the sofa, as
+if we radiated a familiarity and comfort there even in our absence.
+It is in the bags we use for our shopping, the suitcases we use for
+travelling.
+
+It is on our discarded clothes on the table, floor, chair or bed, as
+if they wanted to absorb the fragrances of our lives and thus come
+closer to our person. It is our smell that is home to them, our ``having
+lived'' in something, on something, that is so dear to them. Maybe
+they want to feel the pain that was inflicted upon us, or the joy and
+happiness that was diffused through the clothes as we wore them. They
+are not all without us, and while we are gone they are emptier inside
+for the loss, seeking refuge, seeking a nest, seeking shelter from the
+rain in the touched and transformed things we left behind. We are their
+mothers and fathers to them, we are their family. This bond transcends
+species, it is therefore something inherent in life. It is a soulful
+longing for nearness, a longing for exchange of life, and what makes
+life what it is.
+
+My cats cannot comprehend what I have written here, but I believe
+fully that they feel the same way. The cat hair on my clothes is their
+attempt at sharing this warmness, this closeness. And when the cat
+lies down close to me and purrs with all the excellence of beauty and
+reverberation, then I feel loved in the universe and want to share that
+love. Maybe in this simplicity we should look for love and give it back
+with all our heart. Maybe in this simplicity we have found the core of
+us and the dignified true expression of the animal, and of nature.
diff --git a/posts/transcript.md b/posts/transcript.md
new file mode 100644
index 0000000..5d3f333
--- /dev/null
+++ b/posts/transcript.md
@@ -0,0 +1,42 @@
+title: A Transcript
+date: 2018-12-30
+author: Wolfgang Müller
+
+though one thing still disturbs me greatly
+and I don't know whether I am alone in this
+but it is most obvious at night, in the dark
+or in the haze, the fog;
+that I am not fully there - that there is
+in another space, another self, not me
+but indistinguishble from me,
+yet wholly alien.
+
+it is irksome to know this, and
+whilst I have come to learn how to cope,
+it never fully leaves me, this thought
+that I am fake.
+
+it seems an impossible situation, to be
+and not to be at the same time, and to
+hide and show as necessary, just so;
+yes, the necessity of it is still of
+great difficulty. I am not sure
+whether to continue or not, to be,
+to not be, at the same time.
+
+since, in the past, it worked and
+sometimes made it easy.
+yet, it is not honest, and I fear
+being eaten up from the inside
+by this self, and for it
+to take over.
+
+then, nothing will be true
+but everything will go on as if
+it were.
+
+and so I leave this query with
+utmost confusion and no real
+hope of assurance
+that my self be saved and the other
+to be discarded.
diff --git a/posts/verify-with-signify.md b/posts/verify-with-signify.md
new file mode 100644
index 0000000..8853554
--- /dev/null
+++ b/posts/verify-with-signify.md
@@ -0,0 +1,51 @@
+title: Verifying snapshots with signify
+date: 2019-01-01
+author: Wolfgang Müller
+
+I use the [signify](https://flak.tedunangst.com/post/signify) tool to
+cryptographically sign all software downloads you will find on this
+site.
+
+Whilst you technically don't need `signify` to verify the _integrity_ of
+downloaded files, I strongly recommend using it to also verify the
+_signature_. A portable version of the tool is available
+[here](https://github.com/aperezdc/signify).
+
+### Obtaining the signature and checksum
+
+If you decide to use `signify` to verify downloaded files, you need to obtain
+the detached signature linked on the respective project page and the public
+release key (see below). Otherwise, you only need to fetch the checksum.
+
+### Obtaining the public key
+
+To fully verify a download with `signify`, first obtain [my public
+key](/release.pub). I keep a copy of the same key on DNS, feel free to
+verify it therewith:
+
+ $ drill TXT releasekey.oriole.systems
+
+Another copy of the key exists on the freenode IRC servers, in my
+taxonomy data:
+
+ /msg NickServ taxonomy vehk
+
+You may want to keep the public key saved on your system for future
+verifications.
+
+### Verification with signify
+
+Once you have downloaded my public key, run the following to verify your
+download:
+
+ $ signify -C -p release.pub -x <snapshot>.SHA256.sig
+ Signature Verified
+ <snapshot>: OK
+
+### Verification with sha256sum
+
+Alternatively, if you don't want to install `signify`, you can use
+the `sha256sum` tool to only verify the integrity of the download:
+
+ $ sha256sum -c <snapshot>.SHA256
+ <snapshot>: OK
diff --git a/posts/weltschmerz.md b/posts/weltschmerz.md
new file mode 100644
index 0000000..bdaeced
--- /dev/null
+++ b/posts/weltschmerz.md
@@ -0,0 +1,77 @@
+title: weltschmerz - A terminal emulator in Vala
+date: 2019-07-12
+author: Wolfgang Müller
+
+## Synopsis
+
+weltschmerz is a small and simple terminal emulator built upon the
+Virtual Terminal Emulator widget. It's written in Vala, supports
+clickable URLs, can reload its configuration whilst running, and has
+very basic search functionality.
+
+![weltschmerz in action](img/weltschmerz.png)
+
+As a VTE app, weltschmerz supports practically every contemporary
+terminal emulator feature. It is built to be a stable and practical
+terminal emulator for daily use.
+
+## Download
+
+- [weltschmerz-1.0.0.tar.gz](/snapshots/weltschmerz/weltschmerz-1.0.0.tar.gz)
+ ([signature](/snapshots/weltschmerz/weltschmerz-1.0.0.tar.gz.SHA256.sig),
+ [checksum](/snapshots/weltschmerz/weltschmerz-1.0.0.tar.gz.SHA256),
+ [verify?](verify.html),
+ [archive](/snapshots/weltschmerz))
+- [git repository](https://git.oriole.systems/weltschmerz.git) (clone only, no web interface)
+
+## Requirements
+
+- [VTE](https://wiki.gnome.org/Apps/Terminal/VTE) >= 2.91
+- [Vala](https://wiki.gnome.org/Projects/Vala) >= 0.40.12
+- [GTK+](https://www.gtk.org/) >= 3.0
+
+## Usage & Configuration
+
+See [`weltschmerz(1)`](/man/weltschmerz.1.html).
+
+## Build
+
+weltschmerz can be built with any POSIX-conformant make or with
+[Meson](https://mesonbuild.com). The latter may be interesting to
+distribution packagers or people already comfortable with this
+particular build system.
+
+__Note:__ if your Vala compiler executable is not named `valac`, you
+need to export the environment variable `VALAC` containing the correct
+name before you can build weltschmerz:
+
+ export VALAC='valac-0.42'
+
+### Makefile
+
+Run the following to build and install weltschmerz to the default
+location (`/usr/local`):
+
+ make install
+
+The Makefile honors the environment variables `PREFIX`, `DESTDIR`,
+`BINDIR`, and `MANDIR`. For instance, if you want to install weltschmerz
+to your home directory, call make like so:
+
+ PREFIX=/home/user make install
+
+### Meson
+
+Create the build directory and configure the Meson build like so:
+
+ meson build
+ cd build
+ meson configure
+
+The build can be configured extensively; for more information, see
+`meson(1)`. If you want to install weltschmerz to your home directory,
+for example, pass `--prefix=/home/user` to configure.
+
+Once the build is set up, install weltschmerz:
+
+ meson install