aboutsummaryrefslogtreecommitdiff
path: root/articles/2026
diff options
context:
space:
mode:
Diffstat (limited to 'articles/2026')
-rw-r--r--articles/2026/De-Gaulle---Two-films.html63
-rw-r--r--articles/2026/Filtering-the-web.html62
-rw-r--r--articles/2026/Freedos-thoughts.html43
-rw-r--r--articles/2026/From-minimalist-to-smolweb.html43
-rw-r--r--articles/2026/Funeral-blues.html57
-rw-r--r--articles/2026/Ghostbsd-installation.html92
-rw-r--r--articles/2026/Hebdogiciel.html51
-rw-r--r--articles/2026/Installation-of-Snac2-on-Artix-Linux.html144
-rw-r--r--articles/2026/Ladybird-turns-into-a-squashed-bug.html45
-rw-r--r--articles/2026/Living-on-Snac's-bleeding-edge.html60
-rw-r--r--articles/2026/More-on-Dillo.html36
-rw-r--r--articles/2026/My-own-private-search-engine.html54
-rw-r--r--articles/2026/Oops!-I-did-it-again.html46
-rw-r--r--articles/2026/This-blog-wasn't-so-bad-after-all.html46
-rw-r--r--articles/2026/Updated-blogthis-script.html38
-rw-r--r--articles/2026/Updated-poem.html45
-rw-r--r--articles/2026/Web-sites-that-work-well-in-Dillo.html60
-rw-r--r--articles/2026/displaying-MATE-on-a-1366x768-screen.html73
-rw-r--r--articles/2026/semware-tse-editor.html44
-rw-r--r--articles/2026/smolweb-validation-in-Dillo.html57
-rw-r--r--articles/2026/upgrade-to-dwm-6.8.html49
21 files changed, 1208 insertions, 0 deletions
diff --git a/articles/2026/De-Gaulle---Two-films.html b/articles/2026/De-Gaulle---Two-films.html
new file mode 100644
index 0000000..5be3c14
--- /dev/null
+++ b/articles/2026/De-Gaulle---Two-films.html
@@ -0,0 +1,63 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>De Gaulle - Two films</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>De Gaulle - Two films</h2>
+ <h3>2026-06-04</h3>
+ <h4>De Gaulle is more popular than ever</h4>
+ <p>
+ People who choose a country to be their home are often patriotic as
+ it's their choice, not mere circumstance.
+ </p>
+ <p>Personally I'm patriotic but certainly not nationalist.</p>
+ <blockquote>
+ <i
+ >“The difference between patriotism and nationalism is that the
+ patriot is proud of his country for what it does, and the
+ nationalist is proud of his country no matter what it does; the
+ first attitude creates a feeling of responsibility, but the second a
+ feeling of blind arrogance that leads to war.”</i
+ >
+ ―
+ <a href="https://en.wikipedia.org/wiki/Sydney_J._Harris"
+ >Sydney J. Harris</a
+ >
+ </blockquote>
+ <p></p>
+ <div class="wrapper">
+ <iframe
+ src="https://www.youtube.com/embed/RTNzSKr3Hsw"
+ title="De Gaulle (2026) Official Trailer"
+ frameborder="0"
+ allow="
+ accelerometer;
+ autoplay;
+ clipboard-write;
+ encrypted-media;
+ gyroscope;
+ picture-in-picture;
+ web-share;
+ "
+ referrerpolicy="strict-origin-when-cross-origin"
+ allowfullscreen
+ ></iframe>
+ </div>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Filtering-the-web.html b/articles/2026/Filtering-the-web.html
new file mode 100644
index 0000000..0a94d16
--- /dev/null
+++ b/articles/2026/Filtering-the-web.html
@@ -0,0 +1,62 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Filtering the web</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Filtering the web</h2>
+ <h3>2026-06-20</h3>
+ <h4>A browser that says no</h4>
+ <p>
+ To me the problem with the smolweb is that there's isn't a browser
+ that applies these rules. Dillo comes close, even though it needs a
+ makeover.
+ </p>
+ <p>
+ Dillo also has an rdrview plugin, but you have to manually write
+ rdrview: in front of the url in the url bar of every page to see the
+ results.
+ </p>
+ <p>
+ A better solution would be a smolweb plugin that filters the entire
+ html page rejecting anything that doesn't
+ <a href="https://smolweb.org/validator/">validate</a> or pass to
+ rdrview . Degrees of acceptance could be set in settings.
+ </p>
+ <p>
+ A dedicated browser wouldn't require searching for smolweb / smallweb
+ / indieweb blogs, sites, or articles. (There seems to be no such thing
+ as a smolweb search engine, although points for wiby, marginalia, kagi
+ and mojeek).
+ </p>
+ <p>
+ Just point the browser to any web site and if it borks, display the
+ "errors" or ignore it with a
+ <a
+ href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Status/418"
+ >
+ 418 I'm a teapot error</a
+ >: after all it's the web site author's responsibility to provide
+ clean, readable web sites.
+ </p>
+ <p>
+ Imagine a world where this plugin would be as ubiquitous as
+ ublock-origin, it could even change web site development.
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Freedos-thoughts.html b/articles/2026/Freedos-thoughts.html
new file mode 100644
index 0000000..d16485e
--- /dev/null
+++ b/articles/2026/Freedos-thoughts.html
@@ -0,0 +1,43 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Freedos thoughts</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Freedos thoughts</h2>
+ <h3>2026-06-11</h3>
+ <h4>Maybe I have the best system already</h4>
+ <p>
+ I've been looking at Freedos for the retrocomputing nostalgia value
+ and the text-only goodness.
+ </p>
+ <p>
+ I wound up using Qemu on my X270 as Freedos on bare metal means my 14
+ year old Thinkpad X220 is way too modern.
+ </p>
+ <p>
+ Yes there's some crazy good software, and it's fun. But using
+ fullscreen in Qemu means a fuzzy display, and I came to measure how
+ the terminal on Linux is truly light years ahead.
+ </p>
+ <p>
+ In fact it pushes home that my Artix / DWM / Kitty setup is the
+ veritable retrocomputing bees knees
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/From-minimalist-to-smolweb.html b/articles/2026/From-minimalist-to-smolweb.html
new file mode 100644
index 0000000..54de0bd
--- /dev/null
+++ b/articles/2026/From-minimalist-to-smolweb.html
@@ -0,0 +1,43 @@
+<!doctype html>
+<html lang="EN">
+ <head>
+ <meta charset="utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
+ <link rel="stylesheet" href="/style.css" />
+ <title>From minimalist to smolweb</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+
+ <main>
+ <article>
+ <h2>From minimalist to smolweb</h2>
+ <h3>2026-05-06</h3>
+ <h4>When smarter people get things done</h4>
+ <p>
+ In 2023
+ <a href="/articles/2023/minimalist-blog.html">I wrote an article</a>
+ about what I was feeling at the time on the sorry state of the web.
+ </p>
+ <p>
+ I'm happy to say that the people at
+ <a href="https://smolweb.org">smolweb.org</a> have made a far better
+ statement than mine.
+ </p>
+ <p>
+ As this blog is now a few years old, I'll be working on making it pass
+ the
+ <a href="https://smolweb.org/validator/">smolweb validation test</a>.
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>&nbsp;</p>
+
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Funeral-blues.html b/articles/2026/Funeral-blues.html
new file mode 100644
index 0000000..31f4f9b
--- /dev/null
+++ b/articles/2026/Funeral-blues.html
@@ -0,0 +1,57 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Funeral blues</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Funeral blues</h2>
+ <h3>2026-05-07</h3>
+ <h4>A poem by W.H.Auden (1907-1973)</h4>
+ <p>This poem was read in the film "Four marriages and a funeral"</p>
+
+ <p>I just stumbled upon it and wanted to write it down.</p>
+
+ <code>
+Funeral Blues
+
+Stop all the clocks, cut off the telephone.
+Prevent the dog from barking with a juicy bone,
+
+Silence the pianos and with muffled drum
+Bring out the coffin, let the mourners come.
+
+Let aeroplanes circle moaning overhead
+Scribbling in the sky the message He is Dead,
+
+Put crêpe bows round the white necks of the public doves,
+Let the traffic policemen wear black cotton gloves.
+
+He was my North, my South, my East and West,
+My working week and my Sunday rest
+
+My noon, my midnight, my talk, my song;
+I thought that love would last forever, I was wrong.
+
+The stars are not wanted now; put out every one,
+Pack up the moon and dismantle the sun.
+
+Pour away the ocean and sweep up the wood;
+For nothing now can ever come to any good.
+ </code>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Ghostbsd-installation.html b/articles/2026/Ghostbsd-installation.html
new file mode 100644
index 0000000..cf3314e
--- /dev/null
+++ b/articles/2026/Ghostbsd-installation.html
@@ -0,0 +1,92 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Ghostbsd installation</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Ghostbsd installation</h2>
+ <h3>2026-06-14</h3>
+ <h4>messing around on a sunday</h4>
+ <p>
+ So now we have Microsoft delivering Linux, and the Arch based AUR
+ getting wrecked by people who should be locked into a public pillory,
+ and I have some free time. Well in fact a lot of free time now that
+ I'm retired.
+ </p>
+ <p>
+ So. I downloaded the latest #Ghostbsd Mate and cut a usb key, then
+ plugged it into my Thinkpad X220.
+ </p>
+ <p>
+ The installation was simple and uneventful, and it booted without
+ problem. Everything worked out of the box. Mate seems pretty and
+ unobfuscated, just like me.
+ </p>
+ <p>So far I've done just two things:</p>
+ <p>
+ (1) to get some thinkpad function keys to work I've added in
+ /boot/loader.conf
+ </p>
+ <pre>
+acpi_ibm_load="YES"
+</pre
+ >
+ <p>
+ Printscreen works, brightness and volume controls work, vol mute
+ works, lid led works, but the MICMUTE button doesn't work.<br />
+ For the X220 MICMUTE key, which is F20 or 0xBE (190), unfortunately
+ Ghostbsd's acpi_ibm doesn't pass on the event, so any script for it in
+ /etc/devd won't be fired. Checking the source code, acpi_ibm only accepts
+ a subset of events accepted by Linux's thinkpad_acpi, which appears to
+ cover them all. It's unfortunate as I'm a bit pedantic about keys but I
+ guess I'll have to live with it as the code is 20 years old and I
+ doubt it will change anytime soon.
+ </p>
+
+ <p>FYI, acpi_ibm accepts only these keyboard events:</p>
+ <PRE>
+ LCD_BACKLIGHT
+ SUSPEND_TO_RAM
+ BLUETOOTH
+ SCREEN_EXPAND
+ SUSPEND_TO_DISK
+ BRIGHTNESS_UP
+ BRIGHTNESS_DOWN
+ THINKLIGHT
+ ZOOM
+ VOLUME_UP
+ VOLUME_DOWN
+ MUTE
+ ACCESS_IBM_BUTTON
+ </pre>
+ <p>(2) to enable the automounting of usb storage media:</p>
+ <pre>
+sudo pkg install automount
+</pre
+ >
+ <p>
+ I've replaced the default Firefox with Librewolf, and I'm not too sure
+ about zsh instead of bash, and why not doas instead of sudo?
+ </p>
+ <p>
+ Ghostbsd is a very nice BSD distribution that's been around since
+ 2010.
+ </p>
+ <p><a href="https://www.ghostbsd.org/">https://www.ghostbsd.org</a></p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Hebdogiciel.html b/articles/2026/Hebdogiciel.html
new file mode 100644
index 0000000..fdc10e4
--- /dev/null
+++ b/articles/2026/Hebdogiciel.html
@@ -0,0 +1,51 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Hebdogiciel</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Hebdogiciel</h2>
+ <h3>2026-06-07</h3>
+ <h4>Flashback to the 80's</h4>
+ <p>
+ After my ZX81 I purchased an Amstrad CPC464, and oh joy I discovered
+ Hebdogiciel. Before the internet this magazine printed the code for
+ games and programs that you could painfully copy out. Today I
+ discovered that there's an online archive:
+ </p>
+
+ <p>
+ <a
+ href="https://www.abandonware-magazines.org/affiche_mag.php?mag=7&page=1"
+ >abandonware-magazines</a
+ >
+ </p>
+
+ <p>A translation of the French abandonware-magazine article:</p>
+ <p>
+ <b>1983–1987:</b> Imagine a weekly magazine that, in addition to
+ providing us with a weekly program to type out and delivering
+ uncompromising hardware and software reviews (and that’s saying
+ something), also featured TV listings, movie, music, and comic book
+ releases, assembly language tutorials, a comic strip, a discount club,
+ walkthroughs... A tone that blew you away from the first page to the
+ last, Carali’s drawings filling in the gaps, lawsuits galore… Simply
+ extraordinary, unmatched.
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Installation-of-Snac2-on-Artix-Linux.html b/articles/2026/Installation-of-Snac2-on-Artix-Linux.html
new file mode 100644
index 0000000..2b752ea
--- /dev/null
+++ b/articles/2026/Installation-of-Snac2-on-Artix-Linux.html
@@ -0,0 +1,144 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" >
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
+ <link rel="stylesheet" href="/style.css">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ <title>Installation of Snac2 on Artix Linux</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+<h2>Installation of Snac2 on Artix Linux</h2>
+<h3>2026-05-20</h3>
+<h4>Installation of snac2 on Artix Linux +Nginx +Dinit</h4>
+<pre>
+useradd -m -s /bin/bash snac
+passwd snac
+usermod -aG wheel snac
+su - snac
+mkdir src
+cd src
+git clone https://codeberg.org/grunfink/snac2.git
+cd snac2
+make
+sudo make install
+snac init ~/data
+</pre>
+<h3>snac init will ask these questions:</h2>
+<pre>
+Host name: your.server.domain
+Path prefix: leave empty
+Network address: 127.0.0.1
+Port: 8001
+</pre>
+<h3>add user</h3>
+<pre>
+snac adduser ~/data
+</pre>
+<h3> In /home/snac/data/server.json edit these settings:</h3>
+<pre>
+admin_email
+admin_account
+title
+short_description
+
+and add this line:
+
+"proxy_media: true
+</pre>
+<h3> As root, create the dinit script: /etc/dinit.d/snac2</h3>
+<pre>
+type = process
+run-as = snac
+command = /usr/local/bin/snac httpd /home/snac/data
+depends-on = NetworkManager
+restart = true
+smooth-recovery = yes
+log-type = file
+logfile = /var/log/dinit/snac2.log
+</pre>
+<h3>enable snac2</h3>
+<pre>
+dinitcl enable snac2
+</pre>
+<h3>NGINX Media caching</h3>
+<p>
+see <a href="https://it-notes.dragas.net/2025/01/29/improving-snac-performance-with-nginx-proxy-cache/">it-notes.fragas.net</a>
+</p>
+<h3>Nginx configuration
+<p>
+see <a href="https://comam.es/snac-doc/snac.8.html">comam.es</a>.<br/>
+Use $host not $http_host (gixy)
+</p>
+<h3>in /etc/nginx/nginx.conf http section add:</h3>
+<pre>
+proxy_cache_path /var/cache/nginx/snac_cache levels=1:2 keys_zone=snac:10m max_size=1g inactive=1440m use_temp_path=off;
+</pre>
+<h3>make cache folder</h3>
+<pre>
+mkdir -p /var/cache/nginx/snac_cache
+</pre>
+<h3>/etc/nginx/sites-available/example.com</h3>
+<pre>
+server {
+ listen 443 ssl;
+ listen [::]:443 ssl;
+ server_name example.com;
+
+ ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
+ ssl_certificate_key /etc/letsencrypt/example.com/privkey.pem;
+ ssl_protocols TLSv1.2 TLSv1.3;
+ ssl_ciphers HIGH:!aNULL:!MD5;
+ # openssl dhparam -out /etc/ssl/certs/dhparam.pem 2048
+ ssl_dhparam /etc/ssl/certs/dhparam.pem;
+
+ add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
+
+location / {
+ proxy_pass http://127.0.0.1:8001;
+ proxy_set_header Host $host;
+ proxy_set_header X-Forwarded-For $remote_addr;
+}
+
+location ~ ^/.+/s/ {
+ proxy_cache snac;
+ proxy_pass http://127.0.0.1:8001;
+ proxy_set_header Host $host;
+ proxy_cache_valid 200 1d;
+ proxy_cache_valid 404 1h;
+ proxy_ignore_headers "Cache-Control" "Expires";
+ proxy_cache_use_stale error timeout updating http_500 http_502 http_503 http_504;
+ proxy_cache_lock on;
+ add_header Strict-Transport-Security "max-age=31536000; includeSubDomains" always;
+ add_header X-Proxy-Cache $upstream_cache_status;
+}
+}
+
+server {
+ listen 80;
+ listen [::]:80;
+ server_name example.com;
+ return 301 https://$host$request_uri;
+}
+</pre>
+
+<h3>add pleroma relay</h3>
+<p>see <a href="https://relaylist.com/">relaylist.com</a></p>
+<pre>
+su - snac
+snac adduser ~/data relay
+snac follow ~/data relay https://relay.toot.io/actor
+</pre>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Ladybird-turns-into-a-squashed-bug.html b/articles/2026/Ladybird-turns-into-a-squashed-bug.html
new file mode 100644
index 0000000..c6039f7
--- /dev/null
+++ b/articles/2026/Ladybird-turns-into-a-squashed-bug.html
@@ -0,0 +1,45 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Ladybird turns into a squashed bug</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Ladybird turns into a squashed bug</h2>
+ <h3>2026-06-06</h3>
+ <h4>Sponsored software hype</h4>
+ <p>
+ Last year
+ <a href="https://wittamore.fr/articles/2025/Ladybird-web-browser.html"
+ >I had high hopes for Ladybird</a
+ >, a web browser with a brand new engine written, from scratch and
+ open source.
+ </p>
+ <p>
+ Unfortunately
+ <a href="https://ladybird.org/posts/changing-how-we-develop-ladybird/"
+ >the code has now been locked</a
+ >, and the code was moved from Swift to Rust because ... AI code.
+ </p>
+ <p>
+ -->
+ <a href="https://exquisite.social/@thomholwerda/116697078838020135"
+ >The fash browser developed by "AI" hypeboys</a
+ >
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Living-on-Snac's-bleeding-edge.html b/articles/2026/Living-on-Snac's-bleeding-edge.html
new file mode 100644
index 0000000..a17ffc6
--- /dev/null
+++ b/articles/2026/Living-on-Snac's-bleeding-edge.html
@@ -0,0 +1,60 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Living on Snac's bleeding edge</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Living on Snac's bleeding edge</h2>
+ <h3>2026-05-25</h3>
+ <h4>Autoupdate script</h4>
+ <p>
+ I like living on the bleeding edge of
+ <a href="https://codeberg.org/grunfink/snac2">snac2</a>, so I added
+ this (banal) script to /etc/cron.daily.
+ </p>
+ <pre>
+#!/usr/bin/env bash
+# snaceto
+# Social Networks Are Crap Except This One
+
+cd /home/snac/src/snac2 || exit
+
+sudo -u snac git remote update
+UPDATED="$(git status -uno | grep -c 'up to date')"
+
+if [ "$UPDATED" -ne "1" ] ; then
+ echo "Updating..."
+ systemctl stop snac.service
+ # backup data before update
+ TODAY=$(date "+%Y-%m-%d-%H-%m")
+ BACKUPDIR="/opt/backups"
+ mkdir -p "$BACKUPDIR"
+ FILENAME="$BACKUPDIR/pre-update-snac-$TODAY.tar.gz"
+ tar -zcf "$FILENAME" /home/snac/data
+ # pull latest
+ sudo -u snac git pull
+ sudo -u snac make
+ make install
+ sudo -u snac snac upgrade /home/snac/data
+ systemctl start snac.service
+ VERSION="$(snac | head -n2)"
+ toot post "My bleeding edge #snac2 server has been updated<br>$VERSION"
+fi
+</pre>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/More-on-Dillo.html b/articles/2026/More-on-Dillo.html
new file mode 100644
index 0000000..862574e
--- /dev/null
+++ b/articles/2026/More-on-Dillo.html
@@ -0,0 +1,36 @@
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta http-equiv="Content-Type" content=
+ "text/html; charset=utf-8">
+ <meta name="viewport" content=
+ "width=device-width, initial-scale=1.0">
+ <link rel="stylesheet" href="/style.css">
+ <link rel="icon" type="image/x-icon" href="/favicon.ico">
+ <title>More on Dillo</title>
+</head>
+<body>
+ <header>
+ <h1>Bloggings</h1><a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>More on Dillo</h2>
+ <h3>2026-06-21</h3>
+ <h4>update on yesterday's post</h4>
+ <p>The <a href="https://git.dillo-browser.org/dillo">git
+ version of dillo</a> has a new option: page_action, which
+ enables running rdrview on the current page if the
+ setting:</p>
+ <pre><code>page_action="Reader mode:dilloc dump | rdrview -H | dilloc load"
+</code></pre>
+ <p>is set in dillorc.</p>
+ <p>When you right click on a page the menu will now include
+ the option "Reader Mode".</p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+</body>
+</html>
diff --git a/articles/2026/My-own-private-search-engine.html b/articles/2026/My-own-private-search-engine.html
new file mode 100644
index 0000000..e2c924e
--- /dev/null
+++ b/articles/2026/My-own-private-search-engine.html
@@ -0,0 +1,54 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>My own private search engine</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>My own private search engine</h2>
+ <h3>2026-06-02</h3>
+ <h4>Messing around with a bad back in stormy weather</h4>
+ <p>
+ I made a bad movement in the shower this morning and made my back
+ scream again, so no woodworking today. One of the benefits of
+ retirement is that I get to choose the days activities.
+ </p>
+ <p>
+ I had installed
+ <a href="https://github.com/searxng/searxng">SearxNG</a> previously
+ more than two years ago, but as I'm constantly fiddling it wound up in
+ the bin.
+ </p>
+ <p>
+ Convalescing in the armchair I saw that my current vps is mostly idle
+ running just snac2, my blog, xmpp, gophernicus and other bits, so I
+ reinstalled SearxNG.
+ </p>
+ <p>
+ It's fast, responsive, and private. I have it behind an Nginx reverse
+ proxy, and only accepting my own IP address for now.
+ </p>
+ <p>
+ Another thing I did was to play around with the
+ <a href="https://getfresh.dev/">Fresh editor</a>. Like Micro, it can
+ be configured to use prettier, the code formatter. Ok, it's written in
+ Rust, but it is a nice editor with a retro computing vibe. It won't
+ replace Micro as my daily editor, but if I ever need a TUI IDE it
+ could be a good choice.
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Oops!-I-did-it-again.html b/articles/2026/Oops!-I-did-it-again.html
new file mode 100644
index 0000000..bd3bf4f
--- /dev/null
+++ b/articles/2026/Oops!-I-did-it-again.html
@@ -0,0 +1,46 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Oops! I did it again</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Oops! I did it again</h2>
+ <h3>2026-05-31</h3>
+ <h4>More blog improvements</h4>
+ <p>
+ This blog now
+ <a href="https://git.wittamore.fr/bloggings/tree/"
+ >sits in my git repository</a
+ >, so I made a few changes.
+ </p>
+ <p>
+ One is the
+ <a href="https://git.wittamore.fr/blog-scripts/tree/blogsend"
+ >blogsend</a
+ >
+ bash script which now does a git commit on my local machine, and a git
+ pull on the remote web server. The other is the git repos itself which
+ now has the web site in one repos, and the bash scripts in another.
+ </p>
+ <p>
+ All this is probably of little interest to anyone other than myself,
+ but if you want to run a smol blog you might find it useful, after all
+ that's why I'm posting it.
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/This-blog-wasn't-so-bad-after-all.html b/articles/2026/This-blog-wasn't-so-bad-after-all.html
new file mode 100644
index 0000000..f0392cd
--- /dev/null
+++ b/articles/2026/This-blog-wasn't-so-bad-after-all.html
@@ -0,0 +1,46 @@
+<!doctype html>
+<html lang="EN">
+ <head>
+ <meta charset="utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
+ <link rel="stylesheet" href="/style.css" />
+ <title>This blog wasn't so bad after all</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+
+ <main>
+ <article>
+ <h2>This blog wasn't so bad after all</h2>
+ <h3>2026-05-05</h3>
+ <h4>Smolweb, Fediverse and blogs</h4>
+ <p>
+ For several months I've been using Gopher exclusively, I find it's
+ minimalist raw text files appealing.
+ </p>
+ <p>
+ It does have several drawbacks however. Recently I've been self
+ hosting my own fediverse instance at
+ <a href="https://social.wittamore.fr">social.wittamore.fr</a>.
+ </p>
+ <p>
+ Looking around for a fediverse blog, I realised that this html blog
+ wasn't so bad after all.
+ </p>
+ <p>
+ It's work in progress, as I would like to have it
+ <a href="https://smolweb.org/">smolweb validated</a>, and needs a
+ clean up.
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>&nbsp;</p>
+
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Updated-blogthis-script.html b/articles/2026/Updated-blogthis-script.html
new file mode 100644
index 0000000..6bb2ad7
--- /dev/null
+++ b/articles/2026/Updated-blogthis-script.html
@@ -0,0 +1,38 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Updated blogthis script</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Updated blogthis script</h2>
+ <h3>2026-06-16</h3>
+ <h4>now with markdown</h4>
+ <p>
+ I've updated my blogthis script so I can write articles in markdown.
+ </p>
+ <p>
+ It saves me having to write html in the articles and avoids errors.
+ </p>
+ <p>
+ I've uploaded it to
+ <a href="https://git.wittamore.fr/blog-scripts/tree/"
+ >my git server</a
+ >
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Updated-poem.html b/articles/2026/Updated-poem.html
new file mode 100644
index 0000000..ad2a02d
--- /dev/null
+++ b/articles/2026/Updated-poem.html
@@ -0,0 +1,45 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Updated poem</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Updated poem</h2>
+ <h3>2026-06-01</h3>
+ <h4>Existance is the prize itself</h4>
+ <p>
+ Sadly a childhood friend of one of my nieces recently died at 36 of a
+ brain tumour. I gave this poem a re-write.
+ </p>
+ <pre>
+Life is but a long farewell
+While clawing at eternity's shell
+No rhyme nor reason, no justice in sight
+A frantic push against entropy's might
+This fleeting hare
+Brings grave dispair
+But pointless is a daily dread
+Of closing circuit in our bed
+Here then gone, a spark in the night?
+Our passing through is never trite
+Best keep your malaise on the shelf
+Existance is the prize itself
+</pre
+ >
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/Web-sites-that-work-well-in-Dillo.html b/articles/2026/Web-sites-that-work-well-in-Dillo.html
new file mode 100644
index 0000000..42caa89
--- /dev/null
+++ b/articles/2026/Web-sites-that-work-well-in-Dillo.html
@@ -0,0 +1,60 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>Web sites that work well in Dillo</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>Web sites that work well in Dillo</h2>
+ <h3>2026-06-19</h3>
+ <h4>and other minimal browsers</h4>
+ <p>
+ I'm always looking for sane web sites. By sane I mean websites that
+ are not bloated with useless eye candy, nor have any ketamin fired
+ javascript. Sites that just want to display data in the form of easily
+ readable text with or without some images.
+ </p>
+ <p>
+ There is an increasing number of web sites that do this, as it's a
+ normal backlash to the slop infested, obfuscated tar pit that the
+ internet has sadly become. I haven't found a single compendium of
+ sites, but I'll list some here.
+ </p>
+ <p>
+ One of the things I find realy interesting are web proxies that render
+ sites into a saner version, like
+ <a href="https://www.textise.net/">Textise</a> or
+ <a href="https://txt.dc09.xyz/">Textdot</a>. I fact I'm wondering if I
+ could roll my own simple version using php and rdrview.
+ </p>
+ <p>
+ This list incomplete list will be updated as I find them, or maybe you
+ dear reader might have suggestions?
+ </p>
+ <p>
+ <a href="https://dir.dillo-browser.org/"
+ >Directory of useful sites that work reasonably well on Dillo</a
+ >
+ </p>
+ <p><a href="https://wiby.me/">Wiby search engine</a></p>
+ <p>
+ <a href="https://ronaldsvilcins.com/2021/09/15/text-only-websites/"
+ >Text only web sites</a
+ >
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/displaying-MATE-on-a-1366x768-screen.html b/articles/2026/displaying-MATE-on-a-1366x768-screen.html
new file mode 100644
index 0000000..da49491
--- /dev/null
+++ b/articles/2026/displaying-MATE-on-a-1366x768-screen.html
@@ -0,0 +1,73 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>displaying MATE on a 1366x768 screen</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>displaying MATE on a 1366x768 screen</h2>
+ <h3>2026-06-15</h3>
+ <h4>xrandr to the rescue</h4>
+ <p>
+ Unfortunately several Ghostbsd MATE configuration windows are taller
+ than my Thinkpad X220's 768 pixels. I made both the top and bottom
+ panels autohide, but a better solution is to use xrandr:
+ </p>
+ <pre>sudo pkg install xrandr</pre>
+ <p>
+ type xrandr to get the name of your display, in my case LVDS-1 on my
+ Thinkpad X220.
+ </p>
+ <p>To change 16:9 screen resolution, you can type:</p>
+ <pre>
+xrandr --output LVDS-1 --panning 1600x900 --scale 1.171x1.172</pre
+ >
+ <p>or</p>
+ <pre>
+xrandr --output LVDS-1 --panning 1920x1080 --scale 1.406x1.406</pre
+ >
+ <p>To get back to the original resolution type:</p>
+ <pre>xrandr --output LVDS-1 --panning 1366x768 --scale 1x1</pre>
+ <p>
+ Here's a simple bash script that will rotate the screen resolution on
+ each call. I've added a MATE keyboard shortcut (CTRL+RIGHT) to run
+ this script. It is intended for my 1366x768 screen, so it will need
+ adapting for other screens.
+ </p>
+ <pre>
+#!/usr/bin/env bash
+
+RES="$(xdpyinfo | grep dimensions | sed -r 's/^[^0-9]*([0-9]+x[0-9]+).*$/\1/')"
+# xdpy results can vary by 1 or two pixels
+# so take the first two characters
+RES="${RES:0:2}"
+
+case "$RES" in
+ "13")
+ xrandr --output LVDS-1 --panning 1600x900 --scale 1.171x1.172
+ ;;
+ "16")
+ xrandr --output LVDS-1 --panning 1920x1080 --scale 1.406x1.406
+ ;;
+ *)
+ xrandr --output LVDS-1 --panning 1366x768 --scale 1x1
+ ;;
+esac
+ </pre>
+ <p>I doubt you can do that in Wayland.</p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/semware-tse-editor.html b/articles/2026/semware-tse-editor.html
new file mode 100644
index 0000000..441df10
--- /dev/null
+++ b/articles/2026/semware-tse-editor.html
@@ -0,0 +1,44 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>semware-tse-editor</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>semware-tse-editor</h2>
+ <h3>2026-06-13</h3>
+ <h4>A very interesting editor for DOS, Linux and Windows</h4>
+ <p>
+ <img src="/images/blog/semware.png" alt="semware editor screenshot" />
+ </p>
+ <p>
+ I stumbled upon the #Semware editor (TSE) for #Linux, Windows and #Dos
+ and thought I'd share it here. Originally named Qedit in 1985, the
+ latest version is dated May 2026. I don't know about Windows (as I
+ haven't used it in years), but the Linux version is a pleasant CLI app
+ with many features, including it's own application language. The more
+ I look at it, the more I realise that it is a profound piece of
+ software.
+ </p>
+ <p>
+ <a href="https://www.semware.com/">www.semware.com</a><br />
+ <a href="https://www.youtube.com/@knudvaneeden"
+ >Knud Vaneeded YT videos</a
+ >
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/smolweb-validation-in-Dillo.html b/articles/2026/smolweb-validation-in-Dillo.html
new file mode 100644
index 0000000..38e543d
--- /dev/null
+++ b/articles/2026/smolweb-validation-in-Dillo.html
@@ -0,0 +1,57 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>smolweb validation in Dillo</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>smolweb validation in Dillo</h2>
+ <h3>2026-06-22</h3>
+ <h4>a simple page_action script</h4>
+ <p>
+ I added smolweb-validator as a page action in Dillo. It's a bit of a
+ pain as the validator is a java application. The action script is
+ brutal so far but it works.
+ </p>
+ <h3>.dillo/actions/smolcheck.sh</h3>
+ <pre><code>#!/bin/sh
+
+#smolweb validator location
+smp="$HOME/src/smolweb-validator"
+
+# validate
+cd $smp
+output="$(java -cp "jsoup-1.21.2.jar:." SmolwebValidator $url --verbose)"
+echo "$output" | dilloc rawload
+</code></pre>
+ <p>
+ The action is added to ~/.dillo/dillorc and appears in Dillo's
+ right-click menu
+ </p>
+ <pre>
+page_action="Smolcheck:~/.dillo/actions/smolcheck.sh"
+</pre
+ >
+ <p>
+ see
+ <a href="https://codeberg.org/smolweb/smolweb-validator"
+ >https://codeberg.org/smolweb/smolweb-validator</a
+ >
+ </p>
+ <p>&nbsp;</p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>
diff --git a/articles/2026/upgrade-to-dwm-6.8.html b/articles/2026/upgrade-to-dwm-6.8.html
new file mode 100644
index 0000000..1637f7c
--- /dev/null
+++ b/articles/2026/upgrade-to-dwm-6.8.html
@@ -0,0 +1,49 @@
+<!doctype html>
+<html lang="en">
+ <head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <link rel="stylesheet" href="/style.css" />
+ <link rel="icon" type="image/x-icon" href="/favicon.ico" />
+ <title>upgrade to dwm 6.8</title>
+ </head>
+ <body>
+ <header>
+ <h1>Bloggings</h1>
+ <a href="/index.php">Back</a>
+ </header>
+ <main>
+ <article>
+ <h2>upgrade to dwm 6.8</h2>
+ <h3>2026-06-29</h3>
+ <h4>dwm with some patches</h4>
+ <p>
+ I've been using dwm 6.5 for a while now, so I thought it was about
+ time I upgraded to dwm 6.8.
+ </p>
+ <p>
+ Ideally I'd settle for a horizontal scrolling wm as my Thinkpad screen
+ is small, but after flirting with nwm I'm staying with dwm for now.
+ </p>
+ <p>
+ I've added a few patches and shortcuts that make it easy for me to
+ circulate between windows and workspaces. I haven't added the xrdb
+ patch this time, instead I added the colorbar patch which nicely
+ colours the dwmblocks status bar and keeps things simple. Many of the
+ tiling patches I added to 6.5 have been left out as I just don't use
+ them. On a small 1366x768 screen splitting it renders it useless so
+ instead I use the monocle layout by default and switch workspaces with
+ super+right and left, and switch windows with super+up and down.
+ </p>
+ <p>
+ <a href="https://git.wittamore.fr/dwm-6.8-patched/tree"
+ >It's up on my git server if you are interested.</a
+ >
+ </p>
+ </article>
+ </main>
+ <footer>
+ <p>§</p>
+ </footer>
+ </body>
+</html>