<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom"><id>https://burgeonlab.com/notes/</id><title>BurgeonLab: Microblogs</title><subtitle>Full-text Atom feed of BurgeonLab: short-form content (notes, replies, RSVPs, books).</subtitle><icon>https://burgeonlab.com/android-chrome-192x192.png</icon><updated>2026-11-03T00:30:35+08:00</updated><generator uri="https://gohugo.io/" version="0.169.0">Hugo</generator><link rel="self" type="application/atom+xml" href="https://burgeonlab.com/notes/feed.xml"/><link rel="alternate" href="https://burgeonlab.com/notes/"/><link rel="related" href="https://burgeonlab.com/subscribe/" title="Subscribe to other feeds by BurgeonLab"/><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><rights>Copyright © 2023-2026 Naty S.</rights><entry><id>tag:burgeonlab.com,2026:/notes/20261103003035</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/1103-0030/"/><title type="html">November Writing Month: Haiku Project</title><published>2026-11-03T00:30:35+08:00</published><updated>2026-11-03T00:30:35+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">There are only 58 days before the end of 2026, and before we reach December there’s November which is National #WritingMonth! Created by the talented …</summary><content type="html"><![CDATA[<h1 id="november-writing-month-haiku-project">November Writing Month: Haiku Project<a href="#november-writing-month-haiku-project" class="heading-anchor" title="Permalink to #November Writing Month: Haiku Project">&NoBreak;<span class="anchor-link">§</span></a></h1><p>There are only 58 days before the end of 2026, and before we reach December there&rsquo;s November which is National <a href="https://fosstodon.org/tags/writingmonth" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">#WritingMonth</span></a>! Created by the talented <a href="https://benjaminhollon.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Amin</span></a>, it is a project that promotes writing (of all types).</p>
<p>There&rsquo;s a <a href="https://burgeonlab.com/likes/2026/1025-1309/"><span class="ext-text">buddy system</span></a> where you can see each other&rsquo;s projects and goal progress. If you want to add me as your buddy, send a request from my Writing Month profile!</p>
<p>I have decided on a low pressure project for November: <em>A Haiku Habit</em>, where my goal is to write 3 haiku poems per week, a total of 12 (at least). I&rsquo;ve set something achievable so I can ease back into poetry writing without too much stress. I think this will be a nice little challenge after completing my first <a href="https://burgeonlab.com/tags/100daystooffload/"><span class="ext-text">#100DaysToOffload</span></a>. I&rsquo;ve yet to make a page for my haiku writing month project though; will link to it soon! <a href="/about/#asterism" title="Updates to follow" class="future">⁂</a></p>
<p>Yesterday, I was distracted by going on a CSS styling / tinkering spree for this site. I revamped the light mode completely and and dark mode is pending. Also trying to partially tackle the override hell I&rsquo;ve been dealing with for over a year (with the forked theme&rsquo;s CSS and my custom CSS). It&rsquo;s far from perfect but at least I finally got round to doing something about it!</p>
<p>Anyway, I&rsquo;m looking forward to writing more in November and meeting others doing the same! 🖋️📜</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=november-writing-month-haiku-project">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/1103-0030/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20261022172939</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/1022-1729/"/><title type="html">A Message For Myself</title><published>2026-10-22T17:29:39+08:00</published><updated>2026-10-22T17:38:24+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">It feels liberating to step up for myself and make a decision that is focused on my well being and mental health. Even though it was a difficult …</summary><content type="html"><![CDATA[<h1 id="a-message-for-myself">A Message For Myself<a href="#a-message-for-myself" class="heading-anchor" title="Permalink to #A Message For Myself">&NoBreak;<span class="anchor-link">§</span></a></h1><p>It feels liberating to step up for myself and make a decision that is focused on my well being and mental health. Even though it was a difficult decision to step away from the familiar, the self-inflicted pressures was not worth it. I would like to think I grew a bit wiser and future me will be proud. I believe we should be our own advocates for choosing what&rsquo;s best for ourselves as no one knows better than how we feel in ourselves; be it mentally, physically, or otherwise. Onwards and upwards!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=a-message-for-myself">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/1022-1729/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20261017220200</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/1017-2202/"/><title type="html">PSA: RSS and Atom XML Feeds Failure</title><published>2026-10-17T22:02:00+08:00</published><updated>2026-10-18T17:20:16+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Hello dear readers. Earlier this week, if you noticed a lot of new (actually duplicate) entries in your feed reader from me—I apologize!
To fix it, …</summary><content type="html"><![CDATA[<h1 id="psa-rss-and-atom-xml-feeds-failure">PSA: RSS and Atom XML Feeds Failure<a href="#psa-rss-and-atom-xml-feeds-failure" class="heading-anchor" title="Permalink to #PSA: RSS and Atom XML Feeds Failure">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Hello dear readers. Earlier this week, if you noticed a lot of new (actually duplicate) entries in your feed reader from me—I apologize!</p>
<p><strong>To fix it, mark all as read in your feed reader.</strong> If your feed reader didn&rsquo;t fetch during the time I was messing with all of this, it might not have seen the wrong ID (then you&rsquo;re fine!)</p>
<h2 id="what-happened">What Happened?<a href="#what-happened" class="heading-anchor" title="Permalink to #What Happened?">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I should have triple checked before pushing the revised XML templates live, but I failed to pick up on one of the very specific date syntax errors in the <a href="https://www.rfc-editor.org/info/rfc4151/#section-2.1" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Tag URI</span></a> I used for the ID field (Atom) and GUID field (RSS). The feed ID is a unique string for each entry; with my mistake deployed (before I fixed ~10 min later), feed readers saw the two different IDs for each post and thinks they&rsquo;re new posts. Hence, the duplication nightmare&hellip; 😥</p>
<p>There were a lot of inconsistencies in my Hugo XML templates, which was what triggered me to update all of them (a dangerous move!) I made the following changes:</p>
<ul>
<li>Added all the required fields according to the documentation for Atom and RSS feeds</li>
<li>Clean up the Hugo logic to generate notices and the footer message</li>
<li>Added an email reply link to the footer of every entry</li>
<li><em>And the troublemaker</em>: deciding to use Tag URIs for <code>&lt;ID&gt;</code> / <code>&lt;GUID&gt;</code> instead of the permalink</li>
</ul>
<p>The guide <a href="https://validator.w3.org/feed/docs/atom.html#requiredEntryElements" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">mentioned</span></a> in the W3 Atom spec page was: <a href="https://web.archive.org/web/20110915110202/http://diveintomark.org/archives/2004/05/28/howto-atom-id" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">How to make a good ID in Atom by Mark Pilgrim</span></a>. I&rsquo;m following the section, &ldquo;Other ways to build valid Atom IDs: By entry creation date&rdquo;.</p>
<h2 id="the-exact-error">The Exact Error<a href="#the-exact-error" class="heading-anchor" title="Permalink to #The Exact Error">&NoBreak;<span class="anchor-link">§</span></a></h2><p>The validation check <a href="https://validator.w3.org/feed/docs/error/InvalidTAG.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">alerted</span></a> me that my Tag URI&rsquo;s date was in the wrong format. I had <code>YYYYMMDD</code> instead of either <code>YYYY-MM-DD</code> or <code>YYYY</code>:</p>

<blockquote>
  <p>Followed by the date at which this tag scheme was first used. Note that this is the date at which the tag scheme was minted, not the date of the specific entry or item. <strong>Format is YYYY-MM-DD with the month and day parts being optional.</strong></p>

</blockquote>

<p>My Tag URI is now: <code>&lt;id&gt;tag:burgeonlab.com,2026:/posts/20260913212356&lt;/id&gt;</code>, with just the year as YYYY after the first comma.</p>
<h2 id="conclusion">Conclusion<a href="#conclusion" class="heading-anchor" title="Permalink to #Conclusion">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I&rsquo;ve learnt my lesson; but at a cost to my readers. I will not deploy any XML changes unless I&rsquo;m 100% certain the feed is valid in at least two validators (if I ever dare touch it again 😅).</p>
<p>Thanks for bearing with my XML tinkering. Sorry again for my oversight.</p>
<p>—Naty</p>
<p>P.S. I want to thank <a href="https://chrisburnell.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Chris</span></a> for his pointers and advice re: XML feeds.</p>
<h2 id="resources">Resources<a href="#resources" class="heading-anchor" title="Permalink to #Resources">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Here are some pages I found useful when working with XML feeds.</p>
<ul>
<li><a href="https://validator.w3.org/feed/docs/atom.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Atom Feed Specifications</span></a></li>
<li><a href="https://www.rssboard.org/rss-specification" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">RSS Feed Specifications</span></a></li>
<li><a href="https://validator.w3.org/feed/docs/error/InvalidTAG.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Tag URI Syntax Requirements</span></a></li>
<li><a href="https://validator.w3.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">W3 Validator</span></a></li>
<li><a href="https://www.rssboard.org/rss-validator/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">RSS Board Validator</span></a> (I prefer this one over W3&rsquo;s)</li>
<li><a href="https://stackoverflow.com/questions/705224/how-do-i-add-an-image-to-an-item-in-rss-2-0" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">How do I add an image to an item in RSS 2.0? | Stack Overflow</span></a></li>
<li><a href="https://en.wikipedia.org/wiki/Atom_%28web_standard%29#Atom_compared_to_RSS_2.0" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Atom compared to RSS 2.0 | Wikipedia</span></a></li>
<li><a href="https://indieweb.org/feed" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Feeds | IndieWeb Wiki</span></a></li>
<li><a href="https://indieweb.org/feed_reader" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Feed Readers | IndieWeb Wiki</span></a> (Shoutout to <a href="https://jamesg.blog/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">James</span></a> who created a cool reader called <a href="https://artemis.jamesg.blog/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Artemis</span></a>!)</li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=psa-rss-and-atom-xml-feeds-failure">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/1017-2202/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20261012161243</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/1012-1612/"/><title type="html">Indiekit Beta 30</title><published>2026-10-12T16:12:43+08:00</published><updated>2026-10-12T22:55:55+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Yesterday I was extremely excited to see the latest big update (Beta 30 &amp;amp; 31) to Indiekit, the Micropub server + client I use in conjunction with Hugo …</summary><content type="html"><![CDATA[<h1 id="indiekit-beta-30">Indiekit Beta 30<a href="#indiekit-beta-30" class="heading-anchor" title="Permalink to #Indiekit Beta 30">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Yesterday I was extremely excited to see the <a href="https://github.com/getindiekit/indiekit/releases" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">latest big update</span></a> (Beta 30 &amp; 31) to Indiekit, the Micropub server + client I use in conjunction with <a href="https://gohugo.io/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Hugo</span></a> for this site. Lots of QoL updates and bugfixes. I want to thank <a href="https://indieweb.org/User:Paulrobertlloyd.com" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Paul</span></a>, <a href="https://rmendes.net/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Ricardo</span></a>, and <a href="https://www.ciccarello.me/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Anthony</span></a> for making Indiekit better.</p>
<p>Having upgraded a few times, I now know the routine to upgrade my server. When I first started I was very lost indeed&hellip; 😅 Here&rsquo;s a quick rundown of how I did it (mainly for myself in case I forget in the future):</p>
<ol>
<li>Update <code>package.json</code> to the latest version in <code>dependencies</code></li>
<li>Double check the version number on <a href="https://www.npmjs.com" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">npmjs</span></a>, e.g., <a href="https://www.npmjs.com/package/@indiekit/post-type-rsvp" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">@indiekit/post-type-rsvp</span></a> for additional plugins</li>
<li>Delete <code>node_modules</code> and <code>package-lock.json</code></li>
<li>Run <code>npm install</code> and <code>npm audit fix</code> (I also run <code>npm ci</code> but I&rsquo;m not sure if that&rsquo;s necessary)</li>
<li>Check <code>dockerfile</code> and see if the Node version is up to date (check current tag, it is <a href="https://hub.docker.com/layers/library/node/26-bookworm-slim/images" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">26.11.1</span></a> as of Oct 12 2026)</li>
<li>Git commit and push changes</li>
<li>Git fetch changes onto server (it&rsquo;s my Raspberry Pi 4B for me)</li>
<li>Do a <code>sudo apt update &amp;&amp; sudo apt upgrade -y</code>, then <code>docker compose down</code> while in the Indiekit directory</li>
<li>Run <code>docker compose build --no-cache</code> and then <code>docker compose up -d</code></li>
<li>Restart server <code>sudo reboot -h now</code></li>
<li>Open the browser and go to server URL, clear cache / cookies to prevent stale states</li>
</ol>
<figure>
  <div class="img-container">
    <a href="/images/notes/indiekit-beta31.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/indiekit-beta31.webp"
           alt="Screenshot of version beta 31 for Indiekit server on Burgeonlab.com." width="515" height="229">
    </a>
  </div><figcaption>Up and running!</figcaption></figure>

<p><a href="https://getindiekit.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Learn more about the project</span></a> or ask questions on the unofficial <a href="https://netsplit.de/channels/?net=libera.chat&amp;chat=indiekit" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">IRC #indiekit channel</span></a> or the <a href="https://indieweb.org/discuss#Join_Discussions" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">#indieweb-dev</span></a> channel.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=indiekit-beta-30">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/1012-1612/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260928234019</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0928-2340/"/><title type="html">Feather Wiki Updates</title><published>2026-09-28T23:40:19+08:00</published><updated>2026-09-28T23:40:19+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Today I updated my Feather Wiki personal brain dump tool (which I have written about here) to the latest version (Goldfinch v1.9.1).
During this …</summary><content type="html"><![CDATA[<h1 id="feather-wiki-updates">Feather Wiki Updates<a href="#feather-wiki-updates" class="heading-anchor" title="Permalink to #Feather Wiki Updates">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Today I updated my Feather Wiki personal brain dump tool (which I have <a href="/feather-wiki-brain-dump-app/"><span class="ext-text">written about here</span></a>) to the latest version (<a href="https://feather.wiki/?page=downloads" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Goldfinch v1.9.1</span></a>).</p>
<p>During this process I checked if there was anything new in the extensions, and noticed a nice upgrade to the editor called <a href="https://suneditor.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">SunEditor</span></a>. It claims to be &ldquo;A lightweight, flexible WYSIWYG editor with zero dependencies.&rdquo; which sounds really appealing to me.</p>
<h2 id="editor-extension">Editor Extension<a href="#editor-extension" class="heading-anchor" title="Permalink to #Editor Extension">&NoBreak;<span class="anchor-link">§</span></a></h2><p>The Feather Wiki <a href="https://feather.wiki/?page=extensions_suneditor_replacement" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">SunEditor-Replacement plugin</span></a> was made by <a href="https://codeberg.org/jcoder/FeatherWikiExamples/src/branch/main/SunEditorExtension.js" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">@jcoder</span></a>. I tried installing it but it threw a lot of errors in the console. Luckily it didn&rsquo;t take too long for me to notice there&rsquo;s <a href="https://github.com/JiHong88/suneditor/releases/tag/3.0.2" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">breaking changes</span></a> from SunEditor v2 &gt; v3, so by pinning the version to the last updated legacy version <a href="https://github.com/JiHong88/suneditor/releases/tag/2.47.12" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">(v2.47.12)</span></a> instead of <code>@latest</code> and everything worked!</p>
<p>So if you&rsquo;re okay with using v2 (legacy SunEditor version), change the source of the CSS and JS.</p>
<p>For example: <code>css.href=&quot;https://cdn.jsdelivr.net/npm/suneditor@latest/dist/css/suneditor.min.css&quot;;</code> to <code>https://cdn.jsdelivr.net/npm/suneditor@2.47.12/dist/css/suneditor.min.css</code>.</p>
<p>But I wanted to see if I could get the latest <a href="https://github.com/JiHong88/suneditor/releases/tag/3.3.3" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">v3.3.3</span></a> working as a Feather Wiki plugin. I was about to give up actually, but I got it to work in the end! There&rsquo;s a handy v2 &gt; v3 <a href="https://suneditor.com/migration" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">migration tool</span></a> on SunEditor and also a reference table for renamed variables.</p>
<h2 id="v3-suneditor-now-supported">V3 SunEditor Now Supported<a href="#v3-suneditor-now-supported" class="heading-anchor" title="Permalink to #V3 SunEditor Now Supported">&NoBreak;<span class="anchor-link">§</span></a></h2><p>What changed:</p>
<ol>
<li>
<p>v2 uses a direct assignment for the event handler: <code>editor.onChange = function (contents, core) { state.edits.content = contents; }</code>. v3 uses a nested object block:</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Js</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-js"><span class="line"><span class="ln">1</span><span class="cl"><span class="nx">events</span><span class="o">:</span> <span class="p">{</span>
</span></span><span class="line"><span class="ln">2</span><span class="cl">	<span class="nx">onChange</span><span class="o">:</span> <span class="kd">function</span> <span class="p">(</span><span class="nx">contents</span><span class="p">)</span> <span class="p">{</span> <span class="p">...</span> <span class="p">}</span>
</span></span><span class="line"><span class="ln">3</span><span class="cl"><span class="p">}</span></span></span></code></pre></div></figure></li>
<li>
<p>Add memory cleanup and deleting removed elements step.</p>
</li>
<li>
<p>Use <code>contents.data || contents</code> to extract the content correctly so Feather Wiki can save the content typed into the SunEditor textarea.</p>
</li>
<li>
<p>I added word and character count to the SunEditor status bar, which means I don&rsquo;t need to have an extra Feather Wiki extension: <a href="https://feather.wiki/?page=extensions_wordcount" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Word Count</span></a>.</p>
</li>
<li>
<p>Instead of CDN/third-party calls, I downloaded the v3.3.3 CSS and JS files to be used offline.</p>
</li>
</ol>
<h2 id="feeling-content">Feeling Content<a href="#feeling-content" class="heading-anchor" title="Permalink to #Feeling Content">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I will make a PR later this week and tell <a href="https://codeberg.org/Alamantus" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Robbie</span></a> about pinning the v2 version on @jcoder&rsquo;s version and a v3 version for those who want the update. (Will link to the plugin code here when it&rsquo;s up.) <a href="/about/#asterism" title="Updates to follow" class="future">⁂</a></p>
<p>Hope I am not the only one who gets to benefit from my troubleshooting session! It&rsquo;s always a nice feeling to get something to work.</p>
<p>Have a great week and see you later this week if you&rsquo;re into personal websites and the IndieWeb as <a href="https://burgeonlab.com/rsvps/2026/0920-2315/"><span class="ext-text">HWC:AP is on this Wednesday</span></a>!</p>
<p>—Naty</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=feather-wiki-updates">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0928-2340/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260926232608</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0926-2326/"/><title type="html">Mid-Autumn Festivities</title><published>2026-09-26T23:26:08+08:00</published><updated>2026-09-26T23:26:08+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Mid Autumn Festival aka Moon Festival (中秋節, zung1 cau1 zit3),is celebrated on August 15 on the lunar calendar (which lands on the Gregorian calendar …</summary><content type="html"><![CDATA[<h1 id="mid-autumn-festivities">Mid-Autumn Festivities<a href="#mid-autumn-festivities" class="heading-anchor" title="Permalink to #Mid-Autumn Festivities">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Mid Autumn Festival aka Moon Festival (中秋節, zung1 cau1 zit3),is celebrated on August 15 on the <a href="https://en.wikipedia.org/wiki/Chinese_calendar" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">lunar calendar</span></a> (which lands on the Gregorian calendar September 25 this year).</p>
<p>It is considered one of the top Chinese holidays—typically in Hong Kong—families gather, eat and gift each other mooncake 🥮 (a sweet pastry, the traditional one has lotus paste and salted egg yolk), observe the full moon on the night with lanterns, guess &ldquo;lantern riddles&rdquo;, visit <a href="https://www.discoverhongkong.com/eng/events/international-lantern-spectacular.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">lantern displays</span></a>, and/or pay a visit to the <a href="https://www.discoverhongkong.com/eng/events/tai-hang-s-fire-dragon-dance.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Fire Dragon Dance</span></a>.</p>
<p>I&rsquo;ve actually never seen the Fire Dragon Dance because I think I&rsquo;ll have a difficult time breathing with the burning fumes of the 12k incense sticks. I&rsquo;d love to photograph the event one day!</p>
<p>May your family be together and complete, like the full moon. Happy Mid-Autumn!</p>
<p>月圓人團圓，祝你中秋節快樂! 🌝</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=mid-autumn-festivities">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0926-2326/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260910002110</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0910-0021/"/><title type="html">Writing Break and WP Migration</title><published>2026-09-10T00:21:10+08:00</published><updated>2026-09-10T00:28:16+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I’m still mentally recovering from Blaugust. 😅 During this writing break, instead of writing words, I’m writing HTML, CSS, JS and even some …</summary><content type="html"><![CDATA[<h1 id="writing-break-and-wp-migration">Writing Break and WP Migration<a href="#writing-break-and-wp-migration" class="heading-anchor" title="Permalink to #Writing Break and WP Migration">&NoBreak;<span class="anchor-link">§</span></a></h1><p>I&rsquo;m still mentally recovering from Blaugust. 😅 During this writing break, instead of writing words, I&rsquo;m writing HTML, CSS, JS and even some TypeScript/React Components (that&rsquo;s for <a href="https://burgeonlab.com/tags/quartz/"><span class="ext-text">Quartz</span></a>, which is <a href="https://stackoverflow.com/questions/56871384/what-is-the-difference-between-ts-and-tsx-extensions-both-are-used-as-extensi" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">confusing as hell</span></a> TBH!)</p>
<h2 id="site-updates">Site Updates<a href="#site-updates" class="heading-anchor" title="Permalink to #Site Updates">&NoBreak;<span class="anchor-link">§</span></a></h2><p>On this site, last week I fixed:</p>
<ul>
<li>Word count calculation mistake on the <a href="https://burgeonlab.com/stats/"><span class="ext-text">statistics page</span></a></li>
<li>Dreaded <a href="https://en.wikipedia.org/wiki/Flash_of_unstyled_content" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">FOUC</span></a> issue (not the first time)
<ul>
<li>Fixed by removing the <code>media=&quot;print&quot; onload=&quot;this.media='all'&quot;</code> trick</li>
</ul>
</li>
<li>New SVG image shortcode (used to add the two SVGs in my <a href="https://burgeonlab.com/blog/blaugust-2026-recap/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Blaugust 2026 recap post</span></a>)
<ul>
<li>This SVG image highlighted a XML bug I had which cut my full-text content short—which is fixed now!</li>
<li>And another XML bug (thanks <a href="https://chrisburnell.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Chris</span></a> for reporting) fixed for full-content disappearing after <code>&lt;figure&gt;</code> code blocks.</li>
</ul>
</li>
<li>Refreshed the RSS/Atom feeds table on <a href="/pages/subscribe"><span class="ext-text">/⁠subscribe</span></a>
<ul>
<li>Found out that my preferred feed reader, FluentReader on macOS has been <a href="https://github.com/yang991178/fluent-reader" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">revived after almost a 3 year hiatus</span></a>!</li>
</ul>
</li>
<li>Saved the <a href="https://keepandroidopen.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">KeepAndroidOpen</span></a> banner script (trimmed unused styles) locally, so it doesn&rsquo;t require third party access.</li>
<li>Fixed date parsing error in <a href="https://schema.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">JSON-LD schema</span></a></li>
<li>Updated my beloved heatmap calendar rather significantly:
<ul>
<li>Instead of just including content over 300 words, it now include <em>all activity</em></li>
<li>Days with multiple entries are depicted with a circle</li>
<li>Moved the calendar to the homepage</li>
<li>New group for very short content (under 100 words)</li>
</ul>
</li>
</ul>
<h3 id="heatmap-calendar">Heatmap Calendar<a href="#heatmap-calendar" class="heading-anchor" title="Permalink to #Heatmap Calendar">&NoBreak;<span class="anchor-link">§</span></a></h3><p>The calendar feature is one of my absolute favorite things on <em>BurgeonLab</em>. ⁂ I actually need to update my <a href="/blog/github-style-heatmap-calendar-widget-visualizing-hugo/"><span class="ext-text">guide</span></a> and share the docs + source code which got abandoned part way. Definitely something I want to accomplish but I have too many things I want to do! 😅</p>
<h2 id="quartz-digital-garden-updates">Quartz Digital Garden Updates<a href="#quartz-digital-garden-updates" class="heading-anchor" title="Permalink to #Quartz Digital Garden Updates">&NoBreak;<span class="anchor-link">§</span></a></h2><p>A big task I&rsquo;m working on in the last few days is to deploy my Quartz digital garden secondary site, as my <a href="/support/#hostinger"><span class="ext-text">Hostinger WordPress plan</span></a> has expired yesterday. I have to admit I left it a bit late; I was ironing out the final kinks.</p>
<p>It is taking longer than expected with my complete lack of experience with TS overrides and custom <code>.TS</code> and <code>.TSX</code> files to <a href="https://quartz.jzhao.xyz/plugins/customogimages" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">automate OG images</span></a>, for example. I don&rsquo;t really like how heavy the backend is with Quartz and as <a href="https://lesleylai.info/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Lesley</span></a> (a fellow Indieweb blogger who also uses Quartz) pointed out, it is not as customizable compared to other static site generators and can lead to repeated headaches from Git merge conflicts every time updates are fetched upstream.</p>
<h3 id="possible-downsides-of-quartz">Possible Downsides of Quartz<a href="#possible-downsides-of-quartz" class="heading-anchor" title="Permalink to #Possible Downsides of Quartz">&NoBreak;<span class="anchor-link">§</span></a></h3><p>This is indeed wise advice as I find both statements very true—I already had one of those Git merge nightmares having not updated for two months&hellip; But alas, I am going to push on because I already changed my mind three times (!?) after <a href="https://burgeonlab.com/notes/2026/0524-175213/"><span class="ext-text">deciding to leave WordPress</span></a>; I was set on <a href="/weeknotes/2026/w13/#wordpress-playground"><span class="ext-text">ClassicPress (with SemPress theme)</span></a> at first, then went to <a href="/weeknotes/2026/w24/#wordpress-to-zensical-project"><span class="ext-text">Zensical</span></a>, and now <a href="https://burgeonlab.com/notes/2026/0709-52431/"><span class="ext-text">Quartz</span></a>.</p>
<h3 id="obsidian-prep">Obsidian Prep<a href="#obsidian-prep" class="heading-anchor" title="Permalink to #Obsidian Prep">&NoBreak;<span class="anchor-link">§</span></a></h3><p>I proceeded to creating a fresh new Obsidian vault for my public digital garden site. Starting from scratch was very refreshing, with no plugins and default settings for everything! It wasn&rsquo;t long before I reinstalled <a href="https://github.com/SilentVoid13/Templater" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Templater</span></a> though as I find the &lsquo;Create note from template&rsquo; hotkey indispensable. I made two new templates with Quartz in mind, where I am trying to create a path of least resistance so that publishing to it will be as simple as possible.</p>
<h3 id="deploying-quartz">Deploying Quartz<a href="#deploying-quartz" class="heading-anchor" title="Permalink to #Deploying Quartz">&NoBreak;<span class="anchor-link">§</span></a></h3><p>What remains is how the site will be deployed. I might rely on <a href="https://builds.sr.ht/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">SourceHut Builds</span></a> like how I deploy this site (on <code>git push</code>) or on some sort of <code>crontab</code> so that it is automated. The Obsidian vault (Markdown content) will likely be synced to my Android mobile device via <a href="https://syncthing.net/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Syncthing</span></a> so that I can access the notes and write anywhere.</p>
<p>But Deployment and CI/CD is not yet the main issue as I&rsquo;m facing some <a href="https://burgeonlab.com/notes/2026/0909-2358/"><span class="ext-text">hosting/routing issues</span></a> which I shared in yesterday&rsquo;s note after migrating the &ldquo;live&rdquo; domain to <a href="/support/#bunnynet"><span class="ext-text">Bunny.net Storage</span></a>.</p>
<p>Anyhow, I hope I can sort it out soon and get into writing mode, as I really look forward to making notes for my new digital garden!</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/quartz-about.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/quartz-about.webp"
           alt="Screenshot of the about page at Naty&#39;s Eclectic Passions. Left sidebar shows directory, center shows About page title with dithered image of the author, right sidebar shows table of contents. The page has a general Quartz layout, with dark mode turned on (with a green/orange/yellow theme)." width="1324" height="703">
    </a>
  </div><figcaption>A peek of what it looks like</figcaption></figure>


<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=writing-break-and-wp-migration">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0910-0021/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260909235807</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0909-2358/"/><title type="html">Bunny Edge Rules for Quartz and New Supporter</title><published>2026-09-09T23:58:07+08:00</published><updated>2026-09-10T00:21:29+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Thank you, kind stranger, who used my Bunny.net referral code on August 30, 2026! You’re my second successful referral to one of my favourite web …</summary><content type="html"><![CDATA[<h1 id="bunny-edge-rules-for-quartz-and-new-supporter">Bunny Edge Rules for Quartz and New Supporter<a href="#bunny-edge-rules-for-quartz-and-new-supporter" class="heading-anchor" title="Permalink to #Bunny Edge Rules for Quartz and New Supporter">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Thank you, kind stranger, who used my <a href="https://bunny.net/?ref=k4vc3x5108" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Bunny.net referral code</span></a> on August 30, 2026! You&rsquo;re my second successful referral to one of my favourite web services. Appreciate you supporting my web hosting fees.</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/bunny-referral-aug26.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/bunny-referral-aug26.webp"
           alt="Screenshot of a line graph showing 1 conversion on August 30 2026" width="391" height="226">
    </a>
  </div><figcaption>Hope you like it as much as I do! 🥰🙏</figcaption></figure>

<h2 id="quartz-ssg-with-bunny-storage">Quartz SSG with Bunny Storage<a href="#quartz-ssg-with-bunny-storage" class="heading-anchor" title="Permalink to #Quartz SSG with Bunny Storage">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I actually just migrated my secondary WordPress site from <a href="/support/#hostinger"><span class="ext-text">Hostinger</span></a> to Bunny Storage and working on getting the routing working because <a href="https://quartz.jzhao.xyz/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Quartz</span></a> outputs its HTML files a particular way which I am not used to (it is in two different formats):</p>
<ol>
<li>Flat <code>.html</code> files for everything e.g. <code>public/about.html</code></li>
<li>Directory <code>index.html</code> for all folder pages e.g. <code>public/blog/index.html</code></li>
</ol>
<p>Since I&rsquo;m not hosting the site on a <a href="https://quartz.jzhao.xyz/hosting#self-hosting" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">web server</span></a> with Nginx or Caddy, this means that I have to rely on Bunny Edge Rules to add some functionality. <a href="https://bunny.net/docs/cdn/edge-rules" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Edge Rules</span></a> was always (and still is to be honest) a bit confusing to me, but they&rsquo;re super useful as they can do things like Override Origin URL (an action) that is triggered by different filters (aka condition).</p>
<p>For example, an Edge rule I have is to add <code>.html</code> suffix to the Origin URL <code>&lt;origin-url&gt;{{path}}.html</code> when it&rsquo;s any page that doesn&rsquo;t have a file extension AND NOT the homepage.</p>
<p>This works for everything except folder directory pages. In the case of the link to the blog archive, going to <code>.com/blog</code> with the above Edge Rule, it will apply the override origin URL and it becomes <code>.com/blog.html</code> which leads to a 404 page not found. The page is actually at <code>.com/blog/index.html</code>.</p>
<p>At the moment, I have only two folder directory pages: <code>/notes</code> and <code>/blog</code>, which is easy enough to add as a Edge Rule first (priority matters) before the &ldquo;Add .html suffix rule&rdquo;. It does the same Action of &ldquo;Override Origin URL&rdquo; but adds <code>/index.html</code> suffix instead of just <code>.html</code>, <code>&lt;origin-url&gt;{{path}}/index.html</code> when the Request URL is either <code>&lt;hostname&gt;/blog</code> or <code>&lt;hostname&gt;/notes</code>.</p>
<p>The problem is that if I eventually develop the digital garden, I will have more than just two directory / folder pages. I wouldn&rsquo;t want to keep modifying the rule just to make sure the directory pages don&rsquo;t 404.</p>
<p>I actually sent a support ticket to see what the Bunny team suggests. Perhaps they will say <a href="https://bunny.net/docs/scripting/middleware/overview" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Middleware scripts</span></a> (which I have zero experience in) or some wildcard directory filter? I certainly hope it can be worked around somehow!</p>

<blockquote class="alert alert-update">
  <p class="alert-heading">
    <span class="alert-icon">
      
      <span class="inline-svg"></span>
    </span>
    
      Update
    
  </p>
  <p>I&rsquo;ve <a href="/blog/how-to-use-bunnycdn-for-quartz-ssg/"><span class="ext-text">written a guide</span></a> on how to fix this issue, with indeed a Middleware Edge script, in the end. Hope it&rsquo;s helpful for future Quartz users.</p>
</blockquote>


<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=bunny-edge-rules-for-quartz-and-new-supporter">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0909-2358/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260907233001</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0907-2330/"/><title type="html">D2 Diagrams Lives On</title><published>2026-09-07T23:30:01+08:00</published><updated>2026-09-08T00:51:24+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">One of my favorite open source tools, D2: Declarative Diagramming, is now under Hack Club! This makes D2 a fully open source and non-profit project. …</summary><content type="html"><![CDATA[<h1 id="d2-diagrams-lives-on">D2 Diagrams Lives On<a href="#d2-diagrams-lives-on" class="heading-anchor" title="Permalink to #D2 Diagrams Lives On">&NoBreak;<span class="anchor-link">§</span></a></h1><p>One of my favorite open source tools, <a href="https://d2lang.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">D2: Declarative Diagramming</span></a>, is now under Hack Club! This makes D2 a fully open source and non-profit project. Thank you <a href="https://github.com/alixander" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Alex</span></a> for making this awesome tool available for everyone in the long run.</p>
<p>I&rsquo;m really thrilled because there was some concern about whether or not this amazing project is still alive over at <a href="https://github.com/d2lang/d2/discussions/2720" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">GitHub discussions</span></a> (similarly on Discord). Sometime last month(?), I remember seeing Alex respond on Discord that he&rsquo;s in the final stages of getting D2 into Hack Club&hellip; and it&rsquo;s finally complete! I appreciate Alex&rsquo;s take on AI in relation to D2 too that he mentions in the announcement (link below). Hope the codebase stays a &ldquo;healthy dose of human&rdquo;.</p>
<p>Personally, I was a tad bit concerned about the future of this project that I have become dependent on. I would have hated if I had to change tools because I&rsquo;ve invested time to learning how D2 works and got my workflow all set up. That&rsquo;s the underlying risk I guess for relying too heavily on any single tool&hellip;</p>
<p>In case you didn&rsquo;t know, there is a <a href="https://d2lang.com/tour/vscode/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">VSCodium / VSCode extension</span></a> and also an <a href="https://github.com/d2lang/d2-obsidian" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Obsidian plugin</span></a> that is handy when testing different styles and working on <code>.D2</code> files as it generates the image in real-time. Coming from <a href="https://mermaid.js.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Mermaid JS</span></a> which is perhaps the more popular diagramming language, I was grateful that both apps I use daily (Obsidian and VSCodium) both have official D2 plugins.</p>
<p>All my <a href="/blog/generate-dynamic-og-images-diagram-with-code-scripts/"><span class="ext-text">Open Graph images</span></a> on this site are created with D2 and I&rsquo;ve started using it instead of Mermaid for flow chart <a href="https://burgeonlab.com/tags/diagrams/"><span class="ext-text">diagrams</span></a> in posts that benefit from a visual representation (⁂ will convert existing diagrams when I have time). I think it is a better tool than Mermaid (especially when Mermaid is pushing AI straight in your face). Not to mention the syntax is easier to grasp! Highly recommend <a href="https://play.d2lang.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">playing</span></a> around with it if you&rsquo;re looking for a diagramming language.</p>
<h2 id="related-links">Related Links<a href="#related-links" class="heading-anchor" title="Permalink to #Related Links">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://d2lang.com/blog/d2-non-profit/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Official D2 Announcement</span></a></li>
<li>Another project, <a href="https://mitchellh.com/writing/ghostty-non-profit" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Ghostty</span></a>, which also got fiscally sponsored by Hack Club</li>
<li><a href="https://hackclub.com/opensource" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Open Source at Hack Club</span></a></li>
<li><a href="https://text-to-diagram.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Comparing diagramming languages</span></a></li>
<li><a href="https://www.idontlikeai.dev/d2-in-action-building-professional-architecture-diagrams-step-by-step/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">D2 in action: Building professional architecture diagrams step-by-step | Gijs Reijn</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=d2-diagrams-lives-on">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0907-2330/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260831235642</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0831-2356/"/><title type="html">Blaugust 2026: Final Word</title><published>2026-08-31T23:56:42+08:00</published><updated>2026-08-31T23:56:42+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">James, a fellow blogger and friend, kindly offered me a chance to guest post on his blog: with words, wonder, so that I could tick off one more task …</summary><content type="html"><![CDATA[<h1 id="blaugust-2026-final-word">Blaugust 2026: Final Word<a href="#blaugust-2026-final-word" class="heading-anchor" title="Permalink to #Blaugust 2026: Final Word">&NoBreak;<span class="anchor-link">§</span></a></h1><p>James, a fellow blogger and friend, kindly offered me a chance to guest post on his blog: <a href="https://jamesg.blog/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">with words, wonder</span></a>, so that I could tick off one more task in the <a href="/notes/2026/joining-blaugust-2026/#community-builder-award"><span class="ext-text">Community Builder award</span></a> list. This means I achieved the goal! I will try to contribute more to the Blaugust community next year for sure. Thank you, James for the opportunity!</p>
<p>If you want to read my guest post, it&rsquo;s on James&rsquo;s site now: <a href="https://jamesg.blog/2026/08/31/chinese-idioms-guest-post" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Chinese Idioms (Guest post by Naty)</span></a>. Do check out all the great writing on his blog while you&rsquo;re there!</p>
<p>This note is definitely the last post of Blaugust2026! Good night y&rsquo;all.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=blaugust-2026-final-word">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0831-2356/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260831193905</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0831-1939/"/><title type="html">Some Thoughts on Advice</title><published>2026-08-31T19:39:05+08:00</published><updated>2026-08-31T21:18:23+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">This post is in response to Blaugust2026 Week 5’s Group Project:
What is the best piece of advice you’ve ever been given? What is the best advice …</summary><content type="html"><![CDATA[<h1 id="some-thoughts-on-advice">Some Thoughts on Advice<a href="#some-thoughts-on-advice" class="heading-anchor" title="Permalink to #Some Thoughts on Advice">&NoBreak;<span class="anchor-link">§</span></a></h1><p><em>This post is in response to Blaugust2026 Week 5&rsquo;s <a href="/notes/2026/joining-blaugust-2026/#group-projects"><span class="ext-text">Group Project</span></a>:</em></p>

<blockquote>
  <p>What is the best piece of advice you&rsquo;ve ever been given? What is the best advice you&rsquo;ve ever given to someone else?</p>

</blockquote>

<h3 id="best-advice-received">Best Advice Received<a href="#best-advice-received" class="heading-anchor" title="Permalink to #Best Advice Received">&NoBreak;<span class="anchor-link">§</span></a></h3><p>It&rsquo;s hard to think of a single piece of advice that overrules all the rest, but here are some that I follow:</p>
<ul>
<li><strong>&ldquo;This too shall pass.&rdquo;</strong>
<ul>
<li>Try to zoom out and look at the big picture once in a while.</li>
</ul>
</li>
<li><strong>&ldquo;You can&rsquo;t rush life; everyone is running on their own individual timeline.&rdquo;</strong>
<ul>
<li>Also, try not to compare yourself to others.</li>
</ul>
</li>
<li><strong>&ldquo;The most trustworthy and reliable friend is yourself.&rdquo;</strong>
<ul>
<li>If you need to vent about someone or something; try writing it down in a journal and reviewing it once you&rsquo;ve calmed down. You never know if one day your &ldquo;best friend&rdquo; might no longer be a friend and now they know all your &ldquo;secrets&rdquo;.</li>
</ul>
</li>
<li><strong>&ldquo;Don&rsquo;t be dependent on others.&rdquo;</strong>
<ul>
<li>Learn to be happy being alone, stay independent, and try to solve your own problems (but ask for guidance when you genuinely need it).</li>
</ul>
</li>
<li><strong>&ldquo;Great achievements come in tiny steps.&rdquo;</strong>
<ul>
<li>Break down big tasks into bite-sized ones and make completing tasks a habit to achieve your goals.</li>
</ul>
</li>
</ul>
<h3 id="best-advice-given">Best Advice Given<a href="#best-advice-given" class="heading-anchor" title="Permalink to #Best Advice Given">&NoBreak;<span class="anchor-link">§</span></a></h3><p>I wouldn&rsquo;t call my advice the &ldquo;best&rdquo; by any means, but I&rsquo;ve given it to more than one person, so I&rsquo;ll share it here:</p>
<ul>
<li><strong>&ldquo;Instead of putting things you want to do in a bucket list, time block them into your calendar.&rdquo;</strong>
<ul>
<li>Seeing the task in your calendar can help motivate you to complete the task.</li>
</ul>
</li>
<li><strong>&ldquo;Make everything important a habit.&rdquo;</strong>
<ul>
<li>Humans are creatures of habit. If you want to accomplish something long term, make it a routine. Use a habit tracker to help you get started with reminders; after about a month, it should become ingrained in your daily routine.</li>
</ul>
</li>
<li><strong>&ldquo;Listen and think before you speak.&rdquo;</strong>
<ul>
<li>Personally, I am more of a listener and I believe the act of listening and thinking is more important than the actual expression.</li>
</ul>
</li>
<li><strong>&ldquo;Step out of your comfort zone often.&rdquo;</strong>
<ul>
<li>It gives us a chance to grow, toughen up, challenges us to problem-solve, and improve as a person.</li>
</ul>
</li>
<li><strong>&ldquo;Remember to love yourself.&rdquo;</strong>
<ul>
<li>Some people (especially carers) forget to look after themselves after giving all their energy loving others.</li>
</ul>
</li>
<li><strong>&ldquo;Check what free resources are available at your local library.&rdquo;</strong>
<ul>
<li>In HK, the public library is free for all citizens and I find the e-resources to be super useful. It is perfect for self-improvement and learning, or even just casual reading. Taking all those short moments in the day, where nothing too productive can be done like queuing or commuting, to read is a great use of time in my opinion! Never stop learning. 📚</li>
</ul>
</li>
</ul>
<h3 id="thoughts-on-advice-in-general">Thoughts on Advice in General<a href="#thoughts-on-advice-in-general" class="heading-anchor" title="Permalink to #Thoughts on Advice in General">&NoBreak;<span class="anchor-link">§</span></a></h3><p>Both giving and taking advice is an art in itself. A giver of advice needs to be mindful of the situation of the receiver, not being forceful, ensuring the advice isn&rsquo;t bad which might make matters worse. A receiver of advice needs to know how to adapt it to their own circumstances, understand that not every piece of advice applies to them, and not to follow advice blindly.</p>
<p>Sometimes though, when a friend comes to you for &ldquo;advice&rdquo;; they might just need a safe space for you to listen empathetically and can work it out themselves. At the end of the day, advice is a very subjective thing, and the quality can be extremely variable based on the amount of life experiences one has had—which is why I tend to err on the conservative side of giving advice: give it only when explicitly asked.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=some-thoughts-on-advice">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0831-1939/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260828212944</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0828-2129/"/><title type="html">Starting Over With the Pi</title><published>2026-08-28T21:29:44+08:00</published><updated>2026-08-28T21:29:44+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Since Oct of last year, I haven’t had time to reinstate my self-hosted apps like Calibre, Miniflux, Navidrome, etc on my little Pi homelab. During …</summary><content type="html"><![CDATA[<h1 id="starting-over-with-the-pi">Starting Over With the Pi<a href="#starting-over-with-the-pi" class="heading-anchor" title="Permalink to #Starting Over With the Pi">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Since <a href="/weeknotes/2026/w15/#refreshing-my-pi"><span class="ext-text">Oct of last year</span></a>, I haven&rsquo;t had time to reinstate my self-hosted apps like <a href="https://calibre-ebook.com/download" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Calibre</span></a>, <a href="https://miniflux.app/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Miniflux</span></a>, <a href="https://www.navidrome.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Navidrome</span></a>, etc on my little Pi homelab. During this time, I missed using Navidrome the most (I resorted to listening only on my Mac); with the only thing running on it being <a href="https://getindiekit.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Indiekit</span></a> with Docker.</p>
<h2 id="neater-installs">Neater Installs<a href="#neater-installs" class="heading-anchor" title="Permalink to #Neater Installs">&NoBreak;<span class="anchor-link">§</span></a></h2><p>But that changed yesterday! After chatting with a new sysadmin friend online, I got a huge surge of motivation to fix my home server to at least what I had before. My previous setup was pretty horrendous to be honest, I didn&rsquo;t know any better, and the whole Pi was in a disarray of software installed either by:</p>
<ul>
<li>direct / bare metal</li>
<li>via <a href="https://dietpi.com/docs/software/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">dietpi-software</span></a></li>
<li>via Docker (using Portainer)</li>
</ul>
<h3 id="docker-management">Docker Management<a href="#docker-management" class="heading-anchor" title="Permalink to #Docker Management">&NoBreak;<span class="anchor-link">§</span></a></h3><p>This time, I am setting up everything in containers with <a href="https://docs.docker.com/compose/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">compose files</span></a>. I am also dropping Portainer for just <a href="https://github.com/jesseduffield/lazydocker" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Lazydocker</span></a> in the meantime. Portainer felt too heavy for me. TBH, I want to try using <a href="https://docs.dokploy.com/docs/core/installation" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Dokploy</span></a> but not sure if it&rsquo;s an overkill doing beginner homelab things on my 8GB Pi (it only requires 2GB RAM and 30GB storage which my Pi meets). <a href="https://github.com/getarcaneapp/arcane" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Arcane</span></a> is also on my radar.</p>
<p>I can&rsquo;t find much on people using Dokploy with Raspberry Pis except for this post by <a href="https://mzunino.com.uy/til/2025/03/dokploy-a-simple-docker-deployment-solution/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Mariano</span></a> (but they didn&rsquo;t specify what spec Pi they have). They also run DietPi so that&rsquo;s nice to know!</p>
<h3 id="homelab-start-page">Homelab Start Page<a href="#homelab-start-page" class="heading-anchor" title="Permalink to #Homelab Start Page">&NoBreak;<span class="anchor-link">§</span></a></h3><p>My choice of dashboard will remain with <a href="https://github.com/bastienwirtz/homer" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Homer</span></a> as I already had the config set and don&rsquo;t want to waste time customizing. I still have about four more services I have to restore—but everything is going well so far. I now know how to use Caddy to manage the services with ports mapping to the individual containers and everything will be available within my Tailnet.</p>
<p>When I tried working on this headless Pi project the first time, I didn&rsquo;t know how to access the server outside from home. With <a href="https://tailscale.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Tailscale</span></a> and <a href="https://caddyserver.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Caddy</span></a> this time round, I&rsquo;m very happy to get access when I&rsquo;m not home!</p>
<h2 id="restoring-files-on-the-pi">Restoring Files on the Pi<a href="#restoring-files-on-the-pi" class="heading-anchor" title="Permalink to #Restoring Files on the Pi">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Back in the day, when I first started messing with the Pi 4B, I was hoping to transfer files directly via USB onto the USB SATA SSD boot drive from my Mac (my primary computer). But super newbie me didn&rsquo;t realize that ext4 is not compatible on Macs. <a href="https://download.samba.org/pub/rsync/rsync.1" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Rsync</span></a> saves the day! With my much better Internet connection now (<a href="/blog/fix-ssh-lag-over-wifi-with-ethernet/"><span class="ext-text">LAN directly from my Mac Mini to the Pi</span></a>), I can very easily copy directories over with no hassle. For example, my top-level music folder was copied over from my Mac to the Pi using: <code>rsync -avz --progress -e &quot;ssh -p &lt;custom_port_num&gt;&quot; &quot;/mac/path/to/music/&quot; username@&lt;pi_IP_address&gt;:/mnt/dietpi_userdata/music/</code>.</p>
<p>Remember to always add an <code>-n</code> (dry run) flag to double-check before running such tasks. Last night, I let it run overnight, and it copied around 200GB of music over—no problem! I was too excited and forgot to check when it finish / how long it took in total though. :P</p>
<p>Other than using <code>rsync</code> I also like using <a href="https://syncthing.net/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Syncthing</span></a>. So I got the Pi and folders setup again so that I have a &ldquo;dropbox&rdquo; folder on my Mac that can quickly share files to the Pi and vice versa.</p>
<h2 id="closing">Closing<a href="#closing" class="heading-anchor" title="Permalink to #Closing">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Self-hosting is a great way to learn and I personally find it extremely rewarding. Being able to run things on hardware you own (or a subscription to a VPS) and having full access and control of where your data lives is incredible. That&rsquo;s the reason I got into it in the first place.</p>
<p>Nowadays, with the <a href="https://en.wikipedia.org/wiki/2025%e2%80%93present_global_memory_supply_shortage" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">RAMpocalypse</span></a>, it doesn&rsquo;t really make sense though to buy a Pi to tinker with since everything is so expensive now. But if you have existing hardware though, I highly recommend you playing with some Docker containers, or even Kubernetes / Ansible if you like that kinda stack more (I don&rsquo;t know much about those, but one day I want to try!) My favourite place to discover services to self-host is this <a href="https://github.com/awesome-selfhosted/awesome-selfhosted" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">awesome-list</span></a>.</p>
<p>If you want to read about my beginnings with homelabbing, see my first post in the <a href="https://burgeonlab.com/series/homelab-beginner/"><span class="ext-text">Homelab Beginner</span></a> series: <a href="/blog/booting-dietpi-from-ssd-on-a-raspberry-pi-4b-8gb/"><span class="ext-text">Booting a Pi with SSD</span></a>.</p>
<p>That&rsquo;s all the updates I have on my homelab situation. I will finish setting up the rest of the services soon and the next thing will probably to try either Arcane or Dokploy to see if the Pi can cope with the extra burden. A nice monitoring app would be nice too, but there are so many to choose from (Grafana, Prometheus, Uptime Kuma)? What is your favourite monitoring dashboard?</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=starting-over-with-the-pi">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0828-2129/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260824010038</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0824-0100/"/><title type="html">Mac Mini 2018 i7 Hand-me-down</title><published>2026-08-24T01:00:38+08:00</published><updated>2026-08-24T01:00:38+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I’m really excited because a mutual friend said they’re willing to give me their retired 2018 Mac Mini (which was originally used for music …</summary><content type="html"><![CDATA[<h1 id="mac-mini-2018-i7-hand-me-down">Mac Mini 2018 i7 Hand-me-down<a href="#mac-mini-2018-i7-hand-me-down" class="heading-anchor" title="Permalink to #Mac Mini 2018 i7 Hand-me-down">&NoBreak;<span class="anchor-link">§</span></a></h1><p>I&rsquo;m really excited because a mutual friend said they&rsquo;re willing to give me their retired 2018 Mac Mini (which was originally used for music production). What&rsquo;s extremely exciting is the fact it&rsquo;s a maxed out model with 64GB DDR4 RAM (I&rsquo;ve never owned a computer with over 16GB of RAM!) with 2TB SSD. Feeling extremely grateful for his generosity. 🥰</p>
<p>Did a quick search to see some issues about the <a href="https://wiki.t2linux.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">T2 security chip</span></a> maybe affecting the installation of Linux though so I need to research a lot more. It won&rsquo;t be in my hands until October, so I have some time. I installed Linux Mint on my old 2012 Macbook Air 13&quot; (maxed out spec) with no issues but that one doesn&rsquo;t have the T2 chip.</p>
<p>Running Linux on Mac hardware has been a wonderful experience on the MBA; although the battery is dead (need to use it plugged in at all times), there&rsquo;s no bulging physically and the system runs super smoothly. Sure there&rsquo;s some fan noise and it gets a bit warm, but if I&rsquo;m just doing some basic web dev stuff like IDE + browser + <code>hugo server</code>, I don&rsquo;t feel any throttling whatsoever with the 8GB RAM.</p>
<p>The Mac Mini M1 2020 I&rsquo;m using for the last few years with 16GB RAM is often hitting yellow memory limits. Perhaps it is the way Apple Silicon works, but I feel 16GB is not enough for me to do photo editing and sometimes my many tabs (hundreds) causes it to hit memory swap. This &ldquo;new&rdquo; 2018 Mac Mini should feel extra powerful with 64GB RAM!</p>
<p>This gift is a dream come true for a person interested in <a href="https://burgeonlab.com/series/homelab-beginner/"><span class="ext-text">self-hosting</span></a>; I can&rsquo;t wait to learn and do much more than the little Raspberry Pi 4B 8GB since the journey started (TBH it&rsquo;s been very good for me and I&rsquo;ve never hit limits). I really like reviving and using old tech hardware because it makes me feel like I&rsquo;m pushing the boundaries of what it is designed to do and reducing e-waste is always a good thing!</p>
<p>Of course, when it arrives, I&rsquo;ll be blogging about it! I&rsquo;m thinking what <a href="https://wiki.t2linux.org/guides/preinstall/#selecting-an-iso" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">distro</span></a> to install/dual-boot&hellip; I am most familiar with <a href="https://www.linuxmint.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Linux Mint</span></a> (Ubuntu-based) and <a href="https://dietpi.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">DietPi OS</span></a> (Debian-based). Is it worth trying a new distro like <a href="https://archlinux.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Arch</span></a>/<a href="https://cachyos.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">CachyOS</span></a> or completely different like <a href="https://nixos.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">NixOS</span></a>?</p>
<p>Just a few weeks ago I was tempted to subscribe to my first VPS (again), but I think with this little powerhouse coming; I will refrain. Do you use any of these or have a preference of distros for running a home server? If you had such hardware, what would you want to self host? I&rsquo;m all ears! 🙏</p>
<h2 id="resources">Resources<a href="#resources" class="heading-anchor" title="Permalink to #Resources">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://github.com/t2linux" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Linux for T2 | GitHub</span></a></li>
<li><a href="https://linhpham.org/blog/2026/installing-using-fedora-apple-macbooks-with-t2/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Installing and Using Fedora on Apple MacBooks with T2 Security Chips</span></a></li>
<li><a href="https://debconf24.debconf.org/talks/107-t2linux-linux-on-20172020-intel-macs-with-t2-security-chip/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">T2Linux: Linux on 2017~2020 Intel Macs with T2 Security Chip </span></a></li>
<li><a href="https://www.sqlpassion.at/archive/2025/07/02/switching-my-2019-macbook-pro-to-linux-the-t2-ubuntu-journey/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Switching My 2019 MacBook Pro to Linux: The T2-Ubuntu Journey</span></a></li>
<li><a href="https://vhs.codeberg.page/post/dual-boot-archlinux-mbp-t2/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Arch Linux on MacBook Pro with T2</span></a></li>
<li><a href="https://youtu.be/PmvMqiVrCow" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">How to install Linux Mint on a T2 Mac Mini 2018 | Youtube</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=mac-mini-2018-i7-hand-me-down">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0824-0100/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260822201205</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0822-2012/"/><title type="html">About the Revamp</title><published>2026-08-22T20:12:05+08:00</published><updated>2026-08-22T20:12:05+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">If you’ve been to my site before—you may have noticed a bit of a change since yesterday.
Last night, I pushed a lot of features and stylistic changes …</summary><content type="html"><![CDATA[<h1 id="about-the-revamp">About the Revamp<a href="#about-the-revamp" class="heading-anchor" title="Permalink to #About the Revamp">&NoBreak;<span class="anchor-link">§</span></a></h1><p>If you&rsquo;ve been to my site before—you may have noticed a bit of a change since yesterday.</p>
<p>Last night, I pushed a lot of features and stylistic changes to my site (over 100 commits?!) It was long overdue and I&rsquo;m feeling happy I got it done <em>(but not too happy it was done in the month of August when I should have been focused more on writing for <a href="https://burgeonlab.com/tags/blaugust2026/"><span class="ext-text">Blaugust</span></a>)</em>. The style choices takes from some of the <a href="/weeknotes/2026/w12/#redesigning-a-forked-hugo-theme"><span class="ext-text">decisions</span></a> made at the beginning of the year. I want to remain true to the current theme because I&rsquo;ve grown to love it.</p>
<p>Even though I didn&rsquo;t get to work the 100% CSS rewrite I keep meaning to do (it&rsquo;s horribly messy &amp; override hell due to previously not forking the Hugo theme), I did manage to cut out a lot of wrong use of selectors, simplify rules, and also worked on repeating myself less in the HTML <a href="https://gohugo.io/templates/embedded/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">partials</span></a> used around the site.</p>
<p><em>I think everything should be working but if anything is broken, I&rsquo;ll be super thankful if you&rsquo;d let me know!</em></p>
<h2 id="features-and-style-changes">Features and Style Changes<a href="#features-and-style-changes" class="heading-anchor" title="Permalink to #Features and Style Changes">&NoBreak;<span class="anchor-link">§</span></a></h2><p>The <a href="/changelog/"><span class="ext-text">changelog</span></a> will be updated soon with before / after screenshots. In the mean time, here are most of the changes, in no particular order:</p>
<ul>
<li>Completely revamp the top section of pages: link to return to previous section, H1, and metadata. Date, tags, word count and read time is now hidden in a details element (with the table of content also in there if the page has TOC turned on)</li>
<li>New arrow icons with pixelated design by <a href="https://pinhead.ink/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Pinhead</span></a></li>
<li>Remove JS dependency for light/dark mode! This was a big change. Now using <a href="https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/At-rules/@media/prefers-color-scheme" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">prefers-color-theme</span></a></li>
<li>Remove drop down menu on top navigation; use an anchor link instead, that opens a details element on the home page which acts like a quick menu</li>
<li>Improve look of <a href="https://burgeonlab.com/stats/#sparklines"><span class="ext-text">sparklines on the stats page</span></a></li>
<li>New <a href="https://burgeonlab.com/404/"><span class="ext-text">404</span></a> page</li>
<li>New layout (2x2 grid) for <a href="https://burgeonlab.com/#latest-weeknotes"><span class="ext-text">latest weeknotes and blog section</span></a> on homepage</li>
<li>New &lsquo;Cite this page&rsquo; link popover instead of distracting share buttons inside the page metadata details element or at the start of the footer (if the page doesn&rsquo;t have have a metadata section)</li>
<li>New simplified <a href="/style-guide/#admonitions"><span class="ext-text">admonition styles</span></a> (reduced a lot of redundant CSS!)</li>
<li>Improve a11y by reducing the colour contrast overall on the site (both themes), from 12 to ~7 <a href="https://developer.mozilla.org/en-US/docs/Web/Accessibility/Guides/Understanding_WCAG/Perceivable/Color_contrast" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">contrast ratio</span></a></li>
<li>Simplify &lsquo;Responses&rsquo; and &lsquo;Support&rsquo; sections</li>
<li>Use page template for single notes (<a href="/notes/2026/joining-blaugust-2026/"><span class="ext-text">example</span></a>)</li>
</ul>
<h2 id="bug-fixes">Bug Fixes<a href="#bug-fixes" class="heading-anchor" title="Permalink to #Bug Fixes">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li>Bullet point now shows at the first row of multi-line list items</li>
<li>&lsquo;Phantom&rsquo; hover styles on mobile fixed with <code>@media (hover: hover) and (pointer: fine)</code></li>
<li><a href="https://web.dev/articles/cls" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Content layout shift (CLS)</span></a> reduced for <a href="/blog/add-appreciation-buttons-to-hugo-with-iine/"><span class="ext-text">iine upvote button</span></a> partial by setting height explicitly</li>
</ul>
<h2 id="pending">Pending<a href="#pending" class="heading-anchor" title="Permalink to #Pending">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li>After removing the JS light/dark mode, I noticed a bit of <a href="https://en.wikipedia.org/wiki/Flash_of_unstyled_content" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">FOUC</span></a>; which will take me some time to figure out the cause</li>
</ul>
<h2 id="closing">Closing<a href="#closing" class="heading-anchor" title="Permalink to #Closing">&NoBreak;<span class="anchor-link">§</span></a></h2><p>What triggered me do do this much change? I gather it was mainly because 1) the drop down menu getting overly long and 2) the great eye opening page <a href="https://burgeonlab.com/likes/2026/0809-1204/"><span class="ext-text">Chris created</span></a> about HTML. I think the 404 page is my favourite change and the second being the minimal metadata + table of contents. What do you like or dislike? <a href="/contact/"><span class="ext-text">Let me know</span></a>! 😉</p>
<p>Now that this is done and dusted, I better get back to Blaugust and catch up before the end of the month!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=about-the-revamp">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0822-2012/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260811180855</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0811-1008/"/><title type="html">Hot Weather Effects</title><published>2026-08-11T18:08:55+08:00</published><updated>2026-08-11T18:08:55+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">The temperatures are stifling, with an ongoing record-breaking heatwave due to the effect of nearby typhoons with temperatures reaching 38°C in some …</summary><content type="html"><![CDATA[<h1 id="hot-weather-effects">Hot Weather Effects<a href="#hot-weather-effects" class="heading-anchor" title="Permalink to #Hot Weather Effects">&NoBreak;<span class="anchor-link">§</span></a></h1><p>The temperatures are stifling, with an ongoing <a href="https://www.theguardian.com/world/2026/aug/10/hong-kong-heat-record-hottest-day-ever-typhoon-dolphin" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">record-breaking</span></a> heatwave due to the effect of nearby typhoons with temperatures reaching 38°C in <a href="https://www.hko.gov.hk/en/wxinfo/dailywx/dailywx.htm" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">some areas of HK</span></a>. Indoor temperature when the AC is off reached 39°C in my room despite cross airflow from fans and opened windows.</p>
<h2 id="air-conditioning">Air Conditioning<a href="#air-conditioning" class="heading-anchor" title="Permalink to #Air Conditioning">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I&rsquo;ve always been a person who tries to reduce air-con use when I can, inspired by the infamous HK meteorologist and environmentalist, the ex-Hong Kong Observatory Director Lam Chiu Ying, who uses only fans to keep his home cool.</p>
<p>Because I tend to get cold easily, being in an air conditioned place for long periods doesn&rsquo;t exactly feel good to me. Fans, windows, and the dehumidifier are my friends. If only <a href="https://time.com/7358285/open-windows-german-luften-house-burping/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">lüften</span></a> would bring in some cooler fresh air in the mornings&hellip; because it doesn&rsquo;t in this kind of weather; the temperatures overnight remain high.</p>
<p>There are huge, undeniable consequences of global warming and climate change. Persistent, unrelenting high temperatures cause damage to the wel-being and health of everyone—both physically and mentally. I hope everyone stays cool, hydrated, and aware of the dangers of the scorching heat!</p>
<h2 id="general-tips">General Tips<a href="#general-tips" class="heading-anchor" title="Permalink to #General Tips">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li>Make use of evaporation to cool down by misting</li>
<li>Try to get some crosswind air flow going</li>
<li>If possible, use a dehumidifier to dry the environment as it helps with evaporation of sweat, cooling the body</li>
<li>Get some reusable ice packs to help the body cool down initially when going to sleep, around the neck, forehead, or under armpits</li>
<li>A fan near the end of the bed that oscillates can help cool the feet/lower extremities</li>
<li>Consider getting some window films that help block heat from entering the home and close the blinds/curtains</li>
<li>Turn off unused electrical appliances as they generate heat</li>
<li>Have a few more cold water showers during the day</li>
<li>Get some isotonic sport drinks or oral rehydration salts for when sweating becomes excessive to replenish salts lost</li>
<li>If you start to have symptoms of heat stroke, please get help immediately—it can be life threatening.</li>
</ul>
<h2 id="further-reading">Further Reading<a href="#further-reading" class="heading-anchor" title="Permalink to #Further Reading">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://www.americanbrainfoundation.org/summer-heat-and-its-effect-on-the-brain/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Summer Heat and Its Effect on the Brain</span></a></li>
<li><a href="https://www.commonwealthfund.org/publications/explainer/2023/mar/how-climate-change-affects-mental-health" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">How Climate Change Affects Our Mental Health, and What We Can Do About It | Commonwealth Fund</span></a></li>
<li><a href="https://oceanservice.noaa.gov/facts/ninonina.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">What are El Niño and La Niña? | National Ocean Service</span></a></li>
<li><a href="https://www.who.int/health-topics/heatwaves/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Heatwaves | WHO</span></a></li>
<li><a href="https://www.nhs.uk/conditions/heat-exhaustion-heatstroke/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Heatstroke and Heat Exhaustion | NHS</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=hot-weather-effects">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0811-1008/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260801235159</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/joining-blaugust-2026/"/><title type="html">Last Minute Decision: Blaugust 2026</title><published>2026-08-01T23:51:59+08:00</published><updated>2026-08-28T23:34:34+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Naty&amp;#39;s introductory note about joining the Blaugust 2026 blogging event for the first time and details about the challenge and how you can join along.</summary><link rel="enclosure" type="image/png" href="https://burgeonlab.com/images/wn-cover/notes_2026_0801-1551.png"/><content type="html"><![CDATA[
  <p><i>[Note: This page contains regularly updated or dynamic content (e.g., guestbook, changelog). Feed readers may show stale versions. <a href="https://burgeonlab.com/notes/2026/joining-blaugust-2026/">View the latest version here</a>.]</i></p><hr>
  <h1 id="last-minute-decision-blaugust-2026">Last Minute Decision: Blaugust 2026<a href="#last-minute-decision-blaugust-2026" class="heading-anchor" title="Permalink to #Last Minute Decision: Blaugust 2026">&NoBreak;<span class="anchor-link">§</span></a></h1><p><em>Less than 30 minutes before August 1st ends (I better write this note quickly!)</em> I have decided to participate in this rather infamous annual blogging event called Blaugust, created by, sadly the late, <a href="https://aggronaut.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">@belghast (Mark Temple)</span></a>.</p>
<p>I&rsquo;m aiming to get at least the Bronze and Community Builder award (see below for a list of awards).</p>
<h2 id="what">What?<a href="#what" class="heading-anchor" title="Permalink to #What?">&NoBreak;<span class="anchor-link">§</span></a></h2><p>During Blaugust, in August, try to write on your blog, every day for all 31 days, or with some sort of regularity, or randomly! This event is about creation and writing, so any post is better than none!</p>
<p>Don&rsquo;t feel too stressed about it; the rules have become more lenient over the years so more people can participate without needing to churn out 1000+ words every day. There&rsquo;s no word limit per se, but for me personally, I&rsquo;ll be aiming for a minimum of 300 words before I count a piece of writing to be part of Blaugust 2026.</p>
<p>If you have no clue where to start, there is actually an official schedule <em>you could use (optionally!)</em> as a guide:</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/blaugust2026-schedule.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/blaugust2026-schedule.webp"
           alt="Schedule for Blaugust 2026." width="720" height="900">
    </a>
  </div></figure>

<p>And if that isn&rsquo;t enough, there are also <a href="https://nerdgirlthoughts.game.blog/2026/07/23/blaugust-2026-calendar-weekly-prompts-group-projects/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">themes/group projects and prompts</span></a> (again optional) provided by Krikket if you&rsquo;re feeling stuck.</p>
<h2 id="why">Why?<a href="#why" class="heading-anchor" title="Permalink to #Why?">&NoBreak;<span class="anchor-link">§</span></a></h2><p>If you want to build up some motivation to start writing on your blog, this is definitely a fun way to get started and to meet fellow bloggers! I am in another year-long challenge called <a href="https://burgeonlab.com/tags/100daystooffload/"><span class="ext-text">100DaysToOffload</span></a>, and that has really given me the excitement and encouragement to just write and forget about the insecurities I have. I think Blaugust will have similar effects and it is a nice way to keep Mark&rsquo;s creation living on despite his absence (RIP @belghast).</p>
<h2 id="how">How?<a href="#how" class="heading-anchor" title="Permalink to #How?">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Sign up with <a href="https://forms.gle/SfUWUMpFQxBFbF9N9" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">this form</span></a> and I&rsquo;ll see you in the Blaugust-sphere! Check out social media tags like <a href="https://fosstodon.org/tags/blaugust2026" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">#blaugust2026</span></a> or <a href="https://fosstodon.org/tags/blaugust" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">#blaugust</span></a> on Mastodon (or Bluesky).</p>
<p>To learn more about the details about this event, check out <a href="https://nerdgirlthoughts.game.blog/2026/07/15/blaugust-2026-is-coming/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Krikket&rsquo;s official post about Blaugust 2026</span></a>.</p>
<h2 id="who">Who?<a href="#who" class="heading-anchor" title="Permalink to #Who?">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Everyone who blogs or writes is invited! Wilhelm / @tagn has a <a href="https://tagn.wordpress.com/2026/08/01/blaugust-2026-beings-do-i-remember-how-to-blaugust/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">list of all the participants</span></a> this year at the bottom of their Welcome to Blaugust entry if you want to check out what others are writing this month. Giving likes, leaving a comment or sharing posts you enjoy is appreciated! Everyone can participate; readers and writers alike.</p>
<h2 id="note-about-ai">Note About AI<a href="#note-about-ai" class="heading-anchor" title="Permalink to #Note About AI">&NoBreak;<span class="anchor-link">§</span></a></h2><p>This blogging event is about writing, creating, and sharing. Using AI for purely content generation is not allowed. Please see <a href="https://nerdgirlthoughts.game.blog/2026/07/15/blaugust-2026-is-coming/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Krikket&rsquo;s &ldquo;Use of AI as a Blaugust Participant&rdquo; section</span></a>.</p>
<h2 id="resources">Resources<a href="#resources" class="heading-anchor" title="Permalink to #Resources">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Some extra links if you want to learn more:</p>
<ul>
<li><a href="https://indiecator.org/blaugust-media-kit/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Media kit for Blaugust 2026</span></a></li>
<li>Another <a href="https://indiecator.org/2026/07/20/blaugust-2026-is-coming/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">informational / welcome post</span></a> by MagiWasTaken</li>
<li>If you use Discord, there&rsquo;s a <a href="https://discord.gg/PApPtzcsQx" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Blaugust Discord</span></a></li>
<li>One of the <a href="https://aggronaut.com/blaugust-prompt-list/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">OG prompt list</span></a> by the creator of Blaugust</li>
<li><a href="https://gamepad.club/@blaugust" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Blaugust Mastodon account</span></a></li>
</ul>
<h2 id="checklist-for-awards">Checklist for Awards<a href="#checklist-for-awards" class="heading-anchor" title="Permalink to #Checklist for Awards">&NoBreak;<span class="anchor-link">§</span></a></h2><p>This is mainly for myself, but feel free to check out what you can achieve and set a goal for yourself! 💪</p>
<h3 id="core-challenge-awards">Core Challenge Awards<a href="#core-challenge-awards" class="heading-anchor" title="Permalink to #Core Challenge Awards">&NoBreak;<span class="anchor-link">§</span></a></h3><ul>
<li><input checked="" disabled="" type="checkbox"> Newbie Blogger Award: Join Blaugust for the very first time by <a href="https://forms.gle/SfUWUMpFQxBFbF9N9" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">signing up</span></a>.</li>
<li><input checked="" disabled="" type="checkbox"> Bronze Award: Publish &gt; 5 blog entries during August 2026.</li>
<li><input checked="" disabled="" type="checkbox"> Silver Award: Publish &gt; 15 blog entries during August 2026.</li>
<li><input disabled="" type="checkbox"> Gold Award: Publish &gt; 25 blog entries during August 2026.</li>
<li><input disabled="" type="checkbox"> Rainbow Diamond Award: Beat the original challenge (publishing 31 blog entries daily during August 2026) or more!</li>
</ul>
<h3 id="community-builder-award">Community Builder Award<a href="#community-builder-award" class="heading-anchor" title="Permalink to #Community Builder Award">&NoBreak;<span class="anchor-link">§</span></a></h3><p>Complete at least 3 to get the Community Build Award:</p>
<ul>
<li><input checked="" disabled="" type="checkbox"> Make a post on your blog on or before August 1st, 2026 inviting other bloggers to participate in Blaugust. Make sure you link the signup form.</li>
<li><input disabled="" type="checkbox"> Make at least 5 posts directly inspired by a post by another Blaugust participant. Each of these posts should link back to the post in question.</li>
<li><input disabled="" type="checkbox"> Engage with other Blaugust participants at least once per week.  Read posts, leave comments, join discussions in the Blaugust Discord and share posts written by others on social media.</li>
<li><input checked="" disabled="" type="checkbox"> Be a guest blogger on another Blaugust participant’s blog – or have someone else guest post on yours! (James invited me to write about <a href="https://jamesg.blog/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Chinese idioms on his blog</span></a> on the last day of Blaugust2026—allowing me to complete the Community Builder Award! 🥰)</li>
<li><input checked="" disabled="" type="checkbox"> At least once in the month of August, join an existing &ldquo;<a href="https://nerdgirlthoughts.game.blog/2026/07/23/blaugust-2026-calendar-weekly-prompts-group-projects/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Group Project</span></a>&rdquo;. Or you can create your own by choosing a topic, find other bloggers, and each post your own take on that topic on the same day. <em>(Note: The Community Builder&rsquo;s group projects are the questions in the weekly hero image/graphic, of which I have transcribed below.)</em></li>
</ul>
<h3 id="group-projects">Group Projects<a href="#group-projects" class="heading-anchor" title="Permalink to #Group Projects">&NoBreak;<span class="anchor-link">§</span></a></h3><ul>
<li><input disabled="" type="checkbox"> Week 1: Tell us all about your very first blog! (Not written in week 1, but the <a href="https://burgeonlab.com/blog/augustory/"><span class="ext-text">AuguStory post</span></a> has a similar theme.)</li>
<li><input disabled="" type="checkbox"> Week 2: If you could have one magical or superpower, what would you choose and use it for?</li>
<li><input disabled="" type="checkbox"> Week 3: What creative endeavour have you always wanted to try, and who do you admire in that field?</li>
<li><input disabled="" type="checkbox"> Week 4: What non-blog related achievement are you particularly proud of, and how did you stay motivated to complete it?</li>
<li><input checked="" disabled="" type="checkbox"> Week 5: What is the best piece of advice you&rsquo;ve ever been given? What is the best advice you&rsquo;ve ever given to someone else? (<a href="https://burgeonlab.com/notes/2026/0831-1939/"><span class="ext-text">Read the entry</span></a>.)</li>
</ul>
<div class="flourish">
<hr class="separator">

</div>
<h2 id="log">Log<a href="#log" class="heading-anchor" title="Permalink to #Log">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I will manually update this chronological list of all the posts I&rsquo;ve written during Blaugust 2026 (list may not be up to date). For the latest Blaugust content, visit the automated <a href="https://burgeonlab.com/tags/blaugust2026/"><span class="ext-text">#blaugust2026 tag page</span></a> or see how Blaugust will affect my <a href="https://burgeonlab.com/stats/#calendar-heatmap"><span class="ext-text">calendar heatmap</span></a>!</p>
<ol>
<li>Aug 1: <a href="https://burgeonlab.com/notes/2026/joining-blaugust-2026/"><span class="ext-text">Last Minute Decision: Blaugust 2026</span></a></li>
<li>Aug 2: <a href="/blog/date-objects-hugo-javascript-node"><span class="ext-text">A Dating Matter: Hugo, Indiekit, and Node</span></a></li>
<li>Aug 3: <a href="/weeknotes/2026/w31/"><span class="ext-text">Weeknote 2026-W31: Blaugust 2026, 32-Bit Café &amp; New Bloggers</span></a></li>
<li>Aug 4: <a href="/costs"><span class="ext-text">Costs: Price of a Personal Site on the Smallweb</span></a></li>
<li>Aug 6: <a href="/html-day/"><span class="ext-text">HTML Day: How to Join the Annual HTML Energy Event</span></a></li>
<li>Aug 8: <a href="https://burgeonlab.com/experiments/html-day-2026/"><span class="ext-text">Two Poems From Yonder</span></a></li>
<li>Aug 11: <a href="https://burgeonlab.com/notes/2026/0811-1008/"><span class="ext-text">Hot Weather Effects</span></a></li>
<li>Aug 15: <a href="https://burgeonlab.com/replies/2026/0815-1438/"><span class="ext-text">Re: The Loss of Links Continues</span></a></li>
<li>Aug 16: <a href="https://burgeonlab.com/rsvps/2026/0816-1609/"><span class="ext-text">RSVP to HWC Asia Pacific: Round 2</span></a></li>
<li>Aug 18: <a href="/blog/inaugural-hwc-ap-recap/"><span class="ext-text">IndieWeb Homebrew Website Club Asia Pacific: Reflections</span></a></li>
<li>Aug 22: <a href="https://burgeonlab.com/notes/2026/0822-2012/"><span class="ext-text">About the Revamp</span></a></li>
<li>Aug 24: <a href="https://burgeonlab.com/notes/2026/0824-0100/"><span class="ext-text">Mac Mini 2018 i7 Hand-me-down</span></a></li>
<li>Aug 25: <a href="https://burgeonlab.com/blog/augustory/"><span class="ext-text">AuguStory: The Story About BurgeonLab</span></a></li>
<li>Aug 27: <a href="https://burgeonlab.com/rsvps/2026/0827-1618/"><span class="ext-text">HWC Asia Pacific: Round 3</span></a></li>
<li>Aug 28: <a href="https://burgeonlab.com/notes/2026/0828-2129/"><span class="ext-text">Starting Over With the Pi</span></a></li>
<li>Aug 31: <a href="https://burgeonlab.com/notes/2026/0831-1939/"><span class="ext-text">Some Thoughts on Advice</span></a></li>
<li>Aug 31: <a href="https://burgeonlab.com/blog/blaugust-2026-recap/"><span class="ext-text">Blaugust 2026 Recap</span></a></li>
<li>Aug 31: <a href="https://burgeonlab.com/notes/2026/0831-2356/"><span class="ext-text">Blaugust 2026: Final Word</span></a></li>
</ol>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=last-minute-decision-blaugust-2026">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/joining-blaugust-2026/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260731124036</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0731-0440/"/><title type="html">One Take Pass</title><published>2026-07-31T12:40:36+08:00</published><updated>2026-07-31T13:12:45+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">The phrase “one take pass” is probably not proper English. It’s a common phrase you’ll hear in Hong Kong for taking any sort of exam or test; meaning …</summary><content type="html"><![CDATA[<h1 id="one-take-pass">One Take Pass<a href="#one-take-pass" class="heading-anchor" title="Permalink to #One Take Pass">&NoBreak;<span class="anchor-link">§</span></a></h1><p>The phrase &ldquo;one take pass&rdquo; is probably not proper English. It&rsquo;s a common phrase you&rsquo;ll hear in Hong Kong for taking any sort of exam or test; meaning to pass the exam on your first try.</p>
<p>If you&rsquo;ve followed my weeknotes (<a href="/weeknotes/2026/w24/#first-driving-lesson"><span class="ext-text">W24</span></a>, <a href="/weeknotes/2026/w30/#driving-update"><span class="ext-text">W30</span></a>), you could work out I&rsquo;ve been having lessons for about 2 months, once per week. Yesterday, I had my last 1.5h lesson and took the driving exam immediately afterwards (properly warmed up). The weather was actually dreadful, squally showers and it got really dark. But I&rsquo;m happy to report that I passed, in the rainy weather! Luckily at the time of the exam, the rain eased off slightly.</p>
<p>I had a few, non-repeated minor mistakes and no major mistake. The rules are: repeating the same minor mistake 3+, or one major mistake is considered as a fail. The examiner was polite and professional which really put me at ease. I also got to drive in silence!</p>
<p>There&rsquo;s always room for improvement though, and I hope to increase my experience while under the probationary year and have signed up for a few top-up lessons in a different area of Hong Kong to add to my bank of experience. Really looking forward to those!</p>
<p>I&rsquo;m relieved to also say I&rsquo;ve switched to another campus for the extra lessons; so <em>adios</em> to my substandard instructor! 👋 He actually continued with his mobile device usage, constant ringing and dinging of notifications, leaving voice messages, and replying calls despite my written request&hellip; ugh. I will be writing a letter of complaint to the HK School of Motoring.</p>
<h2 id="about-the-probationary-year">About the Probationary Year<a href="#about-the-probationary-year" class="heading-anchor" title="Permalink to #About the Probationary Year">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Some random facts about the HK probationary (P) driving licence and general driving in HK:</p>
<ul>
<li>P drivers cannot go over 70 km/h on any road</li>
<li>P drivers cannot drive on the offside lane of expressways/highways (HK drives on the left side of the road, so offside is the right-most lane)</li>
<li>Any minor mistakes caught will lead to an extension of the probationary period by 6 months</li>
<li>A second minor mistake or one major mistake will lead to cancellation of the P licence and retaking the exam</li>
<li>The full driving licence can be issued on the spot at the Traffic Department offices; they are valid for 10 years and cost $900 HKD (~ $115 USD / €100 EUR)</li>
</ul>
<h2 id="treats">Treats<a href="#treats" class="heading-anchor" title="Permalink to #Treats">&NoBreak;<span class="anchor-link">§</span></a></h2><p>To celebrate, I treated myself to a coconut mango drink from <a href="https://www.heytea.com/products" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Heytea</span></a> and a Japanese-style beef hamburger patty lunch (they have free refills of fruit-infused water, soup, rice, and broccoli) at <a href="https://www.timeout.com/hong-kong/restaurants/niku-niku-oh-kome" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">NikuNiku Oh!! Kome</span></a>.</p>
<p>This morning, I celebrated by brewing a special coffee from KAWA (now known as <a href="https://tanat.coffee/en/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">TANAT</span></a>)—El Paraíso #1 Colombia by Diego Samuel Bermudez, a double anaerobic fermentation Castilo from my <a href="https://burgeonlab.com/notes/2026/0720-0452/"><span class="ext-text">freezer</span></a> from 2023! It was just as I remembered; peachy notes and super aromatic (can&rsquo;t go wrong with Finca El Paraíso and Bermudez&rsquo;s coffees). Lastly, my Mom gifted me a new Longchamp backpack too, as a celebratory present for getting my driving licence (thanks Mom!) 🥰</p>
<h2 id="two-sided-driving">Two-sided Driving?<a href="#two-sided-driving" class="heading-anchor" title="Permalink to #Two-sided Driving?">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Here&rsquo;s a rant about a <a href="https://www.td.gov.hk/en/public_services/licences_and_permits/southboundtravel/stfgveiua/index.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">new policy</span></a> announced in mid-2025, where the HK government decided to allow China Mainland cars (which drive on the opposite side of the road!) to enter HK urban areas for up to three days.</p>
<p>Personally I find that baffling as HK roads are vastly different to the roads in the Mainland, the driving laws and rules are completely different (HK driving laws and design are similar to UK as it was under British colonial rule for over 150 years). Road signs are all in Traditional Chinese and English (but Mainland uses Simplified Chinese). Roads are significantly tighter and cramped in HK (it&rsquo;s a very compact/dense city compared to the much bigger Chinese cities).</p>
<p>There&rsquo;s reports and videos of Southbound drivers breaking the rules (perhaps unknowingly, but it&rsquo;s still dangerous and wrong); like driving on the wrong side of the road, entering the roundabout anti-clockwise or getting onto a one-way bridge and they&rsquo;re facing the wrong way.</p>
<p>There&rsquo;s also no immediate distinctive plate on these Southbound cars that allows local HK drivers to identify them, so extra care can be taken when around them. No special colour, shape or syntax. They just have a normal looking licence plate, with the except of starting with two letters (<code>FT</code>) + four digits. But this is not obvious at all as HK has default plates that are usually in the same syntax, e.g. two letters + three or four digits. (There are custom licence plates, i.e., <a href="https://en.wikipedia.org/wiki/Vehicle_registration_plates_of_Hong_Kong#Personalised_Vehicle_Registration_Marks_Scheme" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Personalized Vehicle Registration Marks Scheme</span></a>, but I digress.)</p>
<p>Another issue is EV charging; most of the Southbound Mainland cars are EVs and their charging plug is not the one used in HK charging stations (I think they&rsquo;re trying to fix this by adding support for the Mainland style plugs and building specific charging stations for these Southbound cars.)</p>
<p>HK is a small place and if they continue increasing the daily limit of Mainland cars driving into HK, it will put strain on the local system (lack of parking, charging spots, traffic jams). There was a limit of 100 vehicles per day since the start of this new policy, but <a href="https://news.rthk.hk/rthk/en/component/k2/1827734-20251018.htm" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">just this week</span></a>, the government is pushing for up to 200/day.</p>
<p>Another big issue is autonomous driving, allowed in the Mainland, but not in HK. There has been at least one video captured by locals that one of these Southbound vehicles were on a highway with no hands on the steering wheel.</p>
<p><code>// end rant</code></p>
<h2 id="links">Links<a href="#links" class="heading-anchor" title="Permalink to #Links">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://www.drivingking.hk/tipsfront/detail?id=25" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Tips for the road test (with scoresheet) | Driving King</span></a></li>
<li><a href="https://www.td.gov.hk/filemanager/en/publication/guide%20to%20private%20car%20and%20light%20goods%20vehicle%20driving%20test_eng_202511.pdf" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Guide to the driving test | Traffic Department of Hong Kong (pdf)</span></a></li>
<li><a href="https://www.gov.hk/en/theme/guidebook/transport/driver/drivinglicence/privatecar.htm" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">How to obtain a driving licence (Private Car and Light Goods Vehicle) in HK</span></a></li>
<li><a href="https://sc.mp/5umpe" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Mainland Chinese drivers need to be aware of and respect Hong Kong laws | SCMP</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=one-take-pass">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0731-0440/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260723211004</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0723-1310/"/><title type="html">Another Backend Heavy Day</title><published>2026-07-23T21:10:04+08:00</published><updated>2026-07-23T21:40:49+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I updated almost all the Apache ECharts and Hugo code that generates my favourite page on BurgeonLab: the /⁠stats page. With the new post types I’ve …</summary><content type="html"><![CDATA[<h1 id="another-backend-heavy-day">Another Backend Heavy Day<a href="#another-backend-heavy-day" class="heading-anchor" title="Permalink to #Another Backend Heavy Day">&NoBreak;<span class="anchor-link">§</span></a></h1><p>I updated almost all the <a href="https://echarts.apache.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Apache ECharts</span></a> and Hugo code that generates my favourite page on <em>BurgeonLab</em>: the <a href="https://burgeonlab.com/stats/"><span class="ext-text">/⁠stats</span></a> page. With the new post types I&rsquo;ve added recently: books, replies (separated out from notes), and RSVPs; I noticed some of the data on the graphs being incorrect.</p>
<h2 id="new-features-and-fixes">New Features and Fixes<a href="#new-features-and-fixes" class="heading-anchor" title="Permalink to #New Features and Fixes">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li>When I post more than one thing per day, the counts and data breaks.</li>
<li>The heatmap calendar was not able to show multiple posts per day—but now it can! I made a little simple JS popup (similar to the one when you get when you click on a Mastodon link on my site) that lets you choose which post to read when you click on a day that contains multiple entries.</li>
<li>In the past, the heatmap used to only indicate three post types: pages, weeknotes, posts; but now, I&rsquo;ve included other post types as long as they&rsquo;re over 300 words long (which is a threshold I can manually set). I feel they can belong in the heatmap calendar at that length.</li>
<li>Excluding fenced code blocks from word count on the whole site by creating a custom word count partial. The <a href="https://gohugo.io/methods/page/wordcount/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">default Hugo word count</span></a> includes everything and I feel it&rsquo;s not accurate.</li>
<li>Increased the colour range for the heatmap calendar and updated the word count divisions/groups so it is more obvious visually.</li>
<li>Lots of new stats are added to the <a href="https://burgeonlab.com/stats/#overall-figures"><span class="ext-text">Overall Figures</span></a> section, including:
<ul>
<li>Longest &amp; shortest post</li>
<li>Count all internal and external links</li>
<li>Average links per page (that has more than one link)</li>
<li>Count all image assets</li>
<li>Count pages with images/figures</li>
</ul>
</li>
</ul>
<h2 id="to-do">To-Do<a href="#to-do" class="heading-anchor" title="Permalink to #To-Do">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li>Count all pages with flow diagrams: D2 + Mermaid (I still have to migrate over to D2 fully)</li>
<li>Add another graph (pie chart) that shows the spread of different post types perhaps</li>
<li>Open to suggestions or ideas!</li>
</ul>
<p>Lastly, I got to use <code>git rebase -i HEAD~n</code> (<a href="https://git-scm.com/book/en/v2/Git-Tools-Rewriting-History#_changing_multiple" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">interactive rebase</span></a>) for the first time with no drama! I edited multiple commit messages with ease. I really do enjoy learning and using Git!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=another-backend-heavy-day">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0723-1310/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260722120045</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0722-0400/"/><title type="html">DRY Principle: Hugo Layout Templates</title><published>2026-07-22T12:00:45+08:00</published><updated>2026-07-22T12:29:42+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">DRY stands for Don’t Repeat Yourself.
Although what I did last night doesn’t affect the frontend / look-and-feel of my site, I am pleased to have done …</summary><content type="html"><![CDATA[<h1 id="dry-principle-hugo-layout-templates">DRY Principle: Hugo Layout Templates<a href="#dry-principle-hugo-layout-templates" class="heading-anchor" title="Permalink to #DRY Principle: Hugo Layout Templates">&NoBreak;<span class="anchor-link">§</span></a></h1><p>DRY stands for Don&rsquo;t Repeat Yourself.</p>
<p>Although what I did last night doesn&rsquo;t affect the frontend / look-and-feel of my site, I am pleased to have done something I have been meaning to do for a long time: clean up the multiple repeated layout templates and Hugo conditional code that generates all my <strong>microblog-style content</strong>:</p>
<ul>
<li>likes</li>
<li>replies</li>
<li>notes</li>
<li>RSVPs</li>
<li>and the latest one I added: books</li>
</ul>
<p>This is opposed to <strong>long-form content</strong>:</p>
<ul>
<li>slash pages</li>
<li>weeknotes</li>
<li>blog post/articles</li>
</ul>
<p>And on its own are photos which is managed separately.</p>
<h2 id="templates-and-partials">Templates and Partials<a href="#templates-and-partials" class="heading-anchor" title="Permalink to #Templates and Partials">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Using Hugo&rsquo;s <a href="https://gohugo.io/templates/lookup-order/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">template lookup order</span></a>, I&rsquo;ve switched from section-specific <code>single.html</code> and <code>list.html</code> templates to a default one in the root <code>layouts</code> folder (note: as of <a href="https://gohugo.io/templates/new-templatesystem-overview/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Hugo v0.146.0</span></a>, there is no longer a <code>_default</code> template folder).</p>
<p>This saved a lot of <a href="https://www.geeksforgeeks.org/software-engineering/dont-repeat-yourselfdry-in-software-development/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">repeated code</span></a>; not to mention using a single <a href="https://gohugo.io/templates/embedded/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">partial</span></a> to generate all the entries; along with a smaller shared style sheet for it as well!</p>
<p>I deleted about six or so files, which means I can edit one single file to have changes reflected in all the microblog-style content. Much better than what I was doing of doing mass search and replace. The CSS also uses universal class names instead of post type specific ones, meaning editing styles will be easier too going forward.</p>
<h2 id="new-book-post-type">New Book Post Type<a href="#new-book-post-type" class="heading-anchor" title="Permalink to #New Book Post Type">&NoBreak;<span class="anchor-link">§</span></a></h2><p>In my previous weeknote (<a href="/weeknotes/2026/w29/#data-loss-on-bookwyrm"><span class="ext-text">2026-W29</span></a>), I mentioned working on posting reading / book tracking information on my own site and using a <a href="https://indieweb.org/POSSE" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">POSSE workflow</span></a> instead of relying on a third-party site like Bookwyrm.</p>
<p>I think I got a decent looking version 1 of the book post type! What do you think? What would you want to see when you see a book being tracked?</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/book-entry-v1.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/book-entry-v1.webp"
           alt="Screenshot of a page titled Book Shelf, with an entry that says Naty wants to read Apple in China by Patrick McGee. There&#39;s a photo of the book cover below, and a synopsis. The date is linked (permalink) and a syndicated to (also on:) Bookwyrm is linked." width="784" height="535">
    </a>
  </div><figcaption>There is a cover image (from OpenLibrary) and a synopsis (copied from the publisher or another reliable source).</figcaption></figure>

<p>What&rsquo;s left now is for me to work out the backend with <a href="https://indiebookclub.biz/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">indiebookclub</span></a> and <a href="https://getindiekit.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Indiekit</span></a>!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=dry-principle-hugo-layout-templates">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0722-0400/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260720125246</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0720-0452/"/><title type="html">Brewed a Coffee From 2022</title><published>2026-07-20T12:52:46+08:00</published><updated>2026-07-21T00:53:12+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Today I brewed this special coffee with the Tsubame Kalita Wave 155 (flat bottom dripper) + 1Zpresso ZP6 Special hand grinder (4.8 clicks):
Roaster: …</summary><content type="html"><![CDATA[<h1 id="brewed-a-coffee-from-2022">Brewed a Coffee From 2022<a href="#brewed-a-coffee-from-2022" class="heading-anchor" title="Permalink to #Brewed a Coffee From 2022">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Today I brewed this special coffee with the Tsubame Kalita Wave 155 (flat bottom dripper) + 1Zpresso
ZP6 Special hand grinder (4.8 clicks):</p>
<ul>
<li>Roaster: Manhattan Coffee Roasters (NL)</li>
<li>Name: Sweet Valley</li>
<li>Producer: Cafe Granja La Esperanza (CGLE)</li>
<li>Farm: Potosi</li>
<li>Varietal: Colombia (Caturra and Hybrido de Timor hybrid)</li>
<li>Process: Natural (15 hr fermentation + 72 hr dehumidify)</li>
<li>Roast: Filter</li>
<li>Origin: Colombia</li>
<li>Region: Valle del Cauca</li>
<li>Altitude: 1800 masl</li>
<li>Tasting Notes: red apple, grape, bubblegum</li>
</ul>
<h2 id="can-coffee-be-kept-that-long">Can Coffee Be Kept That Long?<a href="#can-coffee-be-kept-that-long" class="heading-anchor" title="Permalink to #Can Coffee Be Kept That Long?">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Yes! I have the habit of vacuum packing and freezing the coffee I buy in either single doses (if it&rsquo;s a nicer coffee) or roughly five days worth (which I bring back to temperature before opening and storing in a partial vacuum container). I&rsquo;ve been doing this for years, which is why I have a &ldquo;freezer coffee stash&rdquo;.</p>
<p>You can check out what is in my stash via this <a href="https://datastudio.google.com/reporting/2abad762-c3f9-4ee8-9346-ddfd7ef8ae61/page/qgASD" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Data Studio dashboard</span></a> I created a while back. (Note: the remaining coffee value is not accurate as I&rsquo;ve not updated the remaining coffee in the freezer for a while.)</p>

<blockquote class="alert alert-tip">
  <p class="alert-heading">
    <span class="alert-icon">
      
      <span class="inline-svg"></span>
    </span>
    
      Tip
    
  </p>
  <p>Throwing a bag of coffee in the freezer and opening it every day is not a good idea; 1) if the bag has a valve, the freezer can impart flavours into the bag and 2) the repeated opening and closing from a cold environment to room temperature will lead to condensation inside the bag.</p>
<p>Instead, you could split the bag up into reusable containers like glass mason jars or food safe plastic test tubes, reducing the headroom as much as possible, and brewing those by pre-measured doses, or bringing the whole container (sealed) back to room temp before opening.</p>
</blockquote>

<h2 id="one-of-my-favourites-cgle-potosi">One of My Favourites: CGLE Potosi<a href="#one-of-my-favourites-cgle-potosi" class="heading-anchor" title="Permalink to #One of My Favourites: CGLE Potosi">&NoBreak;<span class="anchor-link">§</span></a></h2><p>This particular morning, I decided to dig a bit deeper than usual in my freezer coffee stash and took out the second last dose of Sweet Valley. Colombian coffee is on my personal top 5 origins, and CGLE Potosi coffees are one of the best in my opinion. They&rsquo;re always incredibly juicy and bursting with aroma and fragrance.</p>
<h2 id="coffee-content">Coffee Content<a href="#coffee-content" class="heading-anchor" title="Permalink to #Coffee Content">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Before I started my IndieWeb / personal site journey with <em>BurgeonLab.com</em>; I built up a small following on IG sharing my &ldquo;home barista&rdquo; experiences and speciality coffee discovery.</p>
<p>In my ever-growing to-do list for this site, I want to import all my coffee content from IG, restart my coffee sharing habit on this site under a new slash page like <code>/coffee</code>. Any coffee fans here? If so, give this note <a href="https://burgeonlab.com/notes/2026/0720-0452/"><span class="ext-text">an upvote</span></a> and one rainy afternoon I will tackle this big IG import project&hellip;</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=brewed-a-coffee-from-2022">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0720-0452/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260718104319</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0718-0243/"/><title type="html">Thank you so much, kind stranger, for being my first…</title><published>2026-07-18T10:43:19+08:00</published><updated>2026-07-18T23:20:02+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Thank you so much, kind stranger, for being my first secret patron on Liberapay! I am speechless and so grateful for your generosity and support.
If I …</summary><content type="html"><![CDATA[<p>Thank you so much, kind stranger, for being my first secret patron on <a href="https://liberapay.com/Naty_S/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Liberapay</span></a>! I am speechless and so grateful for your generosity and support.</p>
<p>If I had to guess what it is for, I&rsquo;d put it down to the new <a href="https://burgeonlab.com/tags/homebrew-website-club/"><span class="ext-text">Homebrew Website Club</span></a> event I&rsquo;m initiating in early August 2026 for the Asia/Pacific/Oceania time zone. I will try my absolute best to make it a worthwhile addition to the existing virtual HWCs and make it a safe and fun place for everyone interested to discuss all things IndieWeb.</p>
<p>If it is for the other general content I make, thank you for showing your support! I will continue to write about my experience on the small web and tinkering experiences with tech I come across. Hope it will be interesting and/or useful for someone going through similar paths.</p>
<p>Thanks again! 🥰</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=thank-you-so-much-kind-stranger-for-being-my-first">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0718-0243/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260712152352</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0712-152352/"/><title type="html">Writers and bloggers, does this happen to you?
You sit…</title><published>2026-07-12T15:23:52Z</published><updated>2026-07-13T13:58:54Z</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Writers and bloggers, does this happen to you?
You sit down to write a weeknote or some journal entry, but suddenly, one of the topics becomes really …</summary><content type="html"><![CDATA[<p>Writers and bloggers, does this happen to you?</p>
<p>You sit down to write a weeknote or some journal entry, but suddenly, one of the topics becomes really long and you decide to split that off into its own separate post. You continue with your original piece (back to square one); but it happens again.</p>
<p>I&rsquo;m just trying to write about what happened during my week! Why do I have to go on such long, ranting tangents that it becomes a +1000 word separate entity. 😱 I just don&rsquo;t feel like it fits in and deserves its own post. I probably have less than ten draft posts that came from &ldquo;weeknote spin-offs&rdquo;&hellip; Maybe my soon-to-be digital garden will be a nice place for those personal rambles.</p>
<p>My W28 weeknote after a two-week break is pretty bare now because two long sections become drafts for two separate posts. 😑 It&rsquo;s late, I will finish my three-week missing weeknote tomorrow.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=writers-and-bloggers-does-this-happen-to-you-you-sit">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0712-152352/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260710081200</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0710-0120/"/><title type="html">As an Indiekit supporter and user, I’m really…</title><published>2026-07-10T08:12:00+08:00</published><updated>2026-07-10T13:56:00+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">As an Indiekit supporter and user, I’m really appreciative of Paul for maintaining this open source project. After a short hiatus, he’s back to review …</summary><content type="html"><![CDATA[<p>As an <a href="https://getindiekit.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Indiekit</span></a> supporter and user, I&rsquo;m really appreciative of <a href="https://paulrobertlloyd.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Paul</span></a> for maintaining this open source project. After a short hiatus, he&rsquo;s back to review pull requests and issues!</p>
<p>I made a <a href="https://github.com/getindiekit/indiekit/pull/845" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">PR</span></a> for some Markdown quality-of-life features and I&rsquo;m so happy they&rsquo;re merged and available in the latest <a href="https://github.com/getindiekit/indiekit/releases" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">v1.0.0 Beta 28</span></a>. Hope other users find it more convenient now when using the built-in editor to add Markdown links, as it is now more like how it works for on Obsidian or GitHub.</p>
<p><a href="https://getindiekit.com/contributing" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Contributing</span></a> to open source is really a fun activity for me. Even if you don&rsquo;t have any technical background, there are things one can help with on any project (if coding is not your thing). For example, documentation or just spreading the word! Participating in open source is rewarding and always a learning opportunity. I plan to continue to look for things I can help out with in projects I use.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=as-an-indiekit-supporter-and-user-im-really">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0710-0120/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260709132431</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0709-52431/"/><title type="html">June has flown by it seems, and that means Junited-2026…</title><published>2026-07-09T13:24:31+08:00</published><updated>2026-07-10T00:55:02+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">June has flown by it seems, and that means Junited-2026 has come to an end. This initiative by Robert has got me reading a lot more blogs this month …</summary><content type="html"><![CDATA[<p>June has flown by it seems, and that means <a href="/junited-2026"><span class="ext-text">Junited-2026</span></a> has come to an end. This initiative by <a href="https://www.robertbirming.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Robert</span></a> has got me reading a lot more blogs this month (and I actually missed two weeknotes&hellip;) I&rsquo;d thoroughly enjoyed discovering new bloggers and was in a &ldquo;consuming mode&rdquo; for most the month. Fellow readers who discovered posts from my list and original authors of posts I shared approached me too; which was very cool!</p>
<p>Last month, I&rsquo;ve been trying to get my old site, <em>EclecticPassions.net</em>, revamped with a new static generator. Originally I was set on using <a href="https://zensical.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Zensical</span></a>, but after doing multiple &ldquo;hacky&rdquo; workarounds for features not available or not planned; I decided to switch to <a href="https://quartz.jzhao.xyz/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Quartz</span></a> instead, which is more &ldquo;built for the job&rdquo; of managing a digital garden.</p>
<p>But it was a much bigger challenge than using Zensical. It uses Node/npx/npm and the backend is lingo I have zero experience in, like React type components, TypeScript, etc. I&rsquo;m one for challenges, but it was almost a bit too much! The only good thing about LLMs was I managed to use tools like DeepWiki to help me figure out how to write custom TS overrides to get what I wanted.</p>
<p>I even created two custom Quartz plugins during the process and I&rsquo;m quite happy to get it working the way I want.</p>
<ul>
<li><a href="https://github.com/eclecticpassions/metadata-row" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Custom metadata and property display</span></a></li>
<li><a href="https://github.com/eclecticpassions/image-to-figure-caption" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Support Markdown image and caption as figure and fig caption</span></a></li>
</ul>
<p>Hopefully I&rsquo;ll wrap my head around imports, exports, components, and TypeScript a bit more as I continue to build on my secondary site/digital garden with this new tool.</p>
<p>Lastly, I&rsquo;m trying to explore more examples of public digital gardens before I decide how to organize my files, like using tags and bidirectional linking instead of relying on a more traditional folder structure.</p>
<p>Here are some examples of digital gardens I&rsquo;ve come across so far in my research:</p>
<ul>
<li><a href="https://notes.hamatti.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://notes.hamatti.org/</span></a></li>
<li><a href="https://www.andrewscaife.com/p/home.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://www.andrewscaife.com/p/home.html</span></a></li>
<li><a href="https://p1xelgarden.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://p1xelgarden.com/</span></a></li>
<li><a href="https://joshuarodrigues.dev/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://joshuarodrigues.dev/</span></a></li>
<li><a href="https://garden.patsitive.co.nz/start-here/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://garden.patsitive.co.nz/start-here/</span></a></li>
<li><a href="https://hermitage.utsob.me/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://hermitage.utsob.me/</span></a></li>
<li><a href="https://be-far.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://be-far.com/</span></a></li>
<li><a href="https://notes.lesleylai.info/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://notes.lesleylai.info/</span></a></li>
<li><a href="https://kaishaoshao.github.io/docs/showcase/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://kaishaoshao.github.io/docs/showcase/</span></a></li>
<li><a href="https://garden.maryseph.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://garden.maryseph.com/</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=june-has-flown-by-it-seems-and-that-means-junited-2026">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0709-52431/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260622225421</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0622-145421/"/><title type="html">Troubleshooting Technical Errors</title><published>2026-06-22T22:54:21+08:00</published><updated>2026-06-23T23:17:52+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Yesterday, my Indiekit docker failed to start on my Pi. I also couldn’t run npm audit fix despite reviewing and accepting npm approve-scripts --all. …</summary><content type="html"><![CDATA[<h1 id="troubleshooting-technical-errors">Troubleshooting Technical Errors<a href="#troubleshooting-technical-errors" class="heading-anchor" title="Permalink to #Troubleshooting Technical Errors">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Yesterday, my Indiekit docker failed to start on my Pi. I also couldn&rsquo;t run <code>npm audit fix</code> despite reviewing and accepting <code>npm approve-scripts --all</code>.</p>
<p>As a beginner Node.js user, I am still very inexperienced. I tried removing the <code>package.lock</code>,  <code>node_modules/</code> and <code>npm install</code> from scratch but that didn&rsquo;t fix it.</p>
<p>Maybe it is due to the Node version being pinned to version 22? Or was it the installation of <code>sharp</code> in the Dockerfile that caused it to break after updating the npm packages? I now have <code>RUN npm ci --omit=optional --no-audit</code> instead of <code>RUN npm ci --include=optional --no-audit &amp;&amp; npm install --platform=linux --arch=arm64 sharp</code>.</p>
<p>In the end, I managed to fix it with the help of duck.ai (Claude Haiku 4.5) as I couldn&rsquo;t work it out myself&hellip; but I am not sure what caused it.</p>
<p>Then, another failure came to my attention: a cron script that backs up all the content associated with Indiekit had been failing:</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Txt</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-txt"><span class="line"><span class="ln">1</span><span class="cl">git@codeberg.org: Permission denied (publickey).
</span></span><span class="line"><span class="ln">2</span><span class="cl">fatal: Could not read from remote repository.
</span></span><span class="line"><span class="ln">3</span><span class="cl">Please make sure you have the correct access rights
</span></span><span class="line"><span class="ln">4</span><span class="cl">and the repository exists.</span></span></code></pre></div></figure><p>It backs up the content store (Codeberg Git repo), media store (S3 bucket), and MongoDB database. I fixed the cron clone/fetch by forcing the mirror to use the HTTPS repo URL with an access token (and non-interactive Git). I updated the mirror’s origin to the HTTPS token URL, then ran git fetch from cron without SSH.</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Bash</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash"><span class="line"><span class="ln">1</span><span class="cl"><span class="c1"># Force mirror to use HTTPS and not SSH</span>
</span></span><span class="line"><span class="ln">2</span><span class="cl"><span class="k">if</span> <span class="o">[</span> -d <span class="s2">&#34;</span><span class="nv">$REPO_MIRROR</span><span class="s2">/.git&#34;</span> <span class="o">]</span><span class="p">;</span> <span class="k">then</span>
</span></span><span class="line"><span class="ln">3</span><span class="cl"> git -C <span class="s2">&#34;</span><span class="nv">$REPO_MIRROR</span><span class="s2">&#34;</span> remote set-url origin <span class="s2">&#34;</span><span class="nv">$REPO_URL</span><span class="s2">&#34;</span>
</span></span><span class="line"><span class="ln">4</span><span class="cl"><span class="k">fi</span>
</span></span><span class="line"><span class="ln">5</span><span class="cl">
</span></span><span class="line"><span class="ln">6</span><span class="cl"><span class="c1"># Non-interactive fetch</span>
</span></span><span class="line"><span class="ln">7</span><span class="cl">git -C <span class="s2">&#34;</span><span class="nv">$REPO_MIRROR</span><span class="s2">&#34;</span> fetch origin</span></span></code></pre></div></figure><p>Oh, and a handy tool that helped me set the time for the cronjob was <a href="https://crontab.guru/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">crontab.guru</span></a>.</p>
<p>As much as I hate generative AI for all the slop; LLMs has aided me in solving technical backend difficulties such as these and I usually learn a thing or two during troubleshooting this way.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=troubleshooting-technical-errors">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0622-145421/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260620130328</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0620-5328/"/><title type="html">Homebrew Website Club: Eastern June 17 2026</title><published>2026-06-20T13:03:28+08:00</published><updated>2026-06-20T20:07:28+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Last Thursday, David (an IndieWeb regular) couldn’t make it due to an emergency. Luckily James, another regular, caught me before I went to bed the …</summary><content type="html"><![CDATA[<h1 id="homebrew-website-club-eastern-june-17-2026">Homebrew Website Club: Eastern June 17 2026<a href="#homebrew-website-club-eastern-june-17-2026" class="heading-anchor" title="Permalink to #Homebrew Website Club: Eastern June 17 2026">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Last Thursday, <a href="https://david.shanske.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">David</span></a> (an <a href="https://indieweb.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">IndieWeb</span></a> regular) couldn&rsquo;t make it due to an emergency. Luckily <a href="https://jamesg.blog/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">James</span></a>, another regular, caught me before I went to bed the night before to tell me the technical details on how to host the remote Zoom meeting. It was a success; luckily no technical difficulties, and we had a good turnout with a good old chat about all things websites! (Thanks too, to <a href="https://vanderwal.net/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Thomas</span></a>, for being co-host!)</p>
<p>Some of the topics we went through:</p>
<ul>
<li>Blog data analytics and visualization tools</li>
<li>Data capture workflows</li>
<li>Webmention server for static sites</li>
<li>WordPress classic vs block editor</li>
</ul>
<p>If you want more details about what we chatted about, check the notes/minutes link at <a href="https://events.indieweb.org/2026/06/homebrew-website-club-eastern-C4Wqn2UksQbJ" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">HWC: Eastern June 17 2026</span></a>.</p>
<h2 id="what-is-homebrew-website-club">What Is Homebrew Website Club?<a href="#what-is-homebrew-website-club" class="heading-anchor" title="Permalink to #What Is Homebrew Website Club?">&NoBreak;<span class="anchor-link">§</span></a></h2><p><a href="https://indieweb.org/Homebrew_Website_Club" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Homebrew Website Club (HWC)</span></a> welcomes anyone who has even an inkling of curiosity about the IndieWeb or anything related to building a personal site. HWC events are every week, alternating between the Pacific and Eastern time zones on a Wednesday (or Thursday depending on time zone).</p>
<p>To see the upcoming events, check out the <a href="https://events.indieweb.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">IndieWeb events</span></a> page. I invite you to join, we welcome newcomers! There will be a zoom link on the event page around 15 minutes before the event starts.</p>
<h2 id="my-indieweb-experiences">My IndieWeb Experiences<a href="#my-indieweb-experiences" class="heading-anchor" title="Permalink to #My IndieWeb Experiences">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I&rsquo;ve been attending these remote IndieWeb meetups for nearly half a year and I&rsquo;m really grateful for the volunteers who keep it going.  Which is why I&rsquo;m trying to step up and give back to the community whenever I can. I am trying to improve my moderating skills—thanks for putting up with me!</p>
<p>Everyone is really approachable and friendly, talented in their own way, and inspirational. If you&rsquo;re reading this, curious, or have any questions about this community; please feel free to <a href="/contact/"><span class="ext-text">reach out to me</span></a> or say hi on the main <code>#indieweb</code> <a href="https://chat.indieweb.org" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">chat channel</span></a>—someone will reply! Read <a href="https://indieweb.org/discuss" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Join #indieweb Discussions</span></a> to learn more about how discussions work.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=homebrew-website-club-eastern-june-17-2026">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0620-5328/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260616000251</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0615-16251/"/><title type="html">A feature I didn’t know existed in VS Codium saved my…</title><published>2026-06-16T00:02:51+08:00</published><updated>2026-06-16T00:07:03+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">A feature I didn’t know existed in VS Codium saved my day! I was working on a untracked Git file (the zensical.toml configuration file) and …</summary><content type="html"><![CDATA[<p>A feature I didn&rsquo;t know existed in <a href="https://vscodium.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">VS Codium</span></a> saved my day! I was working on a untracked Git file (the <code>zensical.toml</code> configuration file) and accidentally, the whole file was overwritten and ctrl+z didn&rsquo;t work. I thought my config was lost for good!</p>
<p>Luckily there&rsquo;s a thing called &ldquo;Local History&rdquo;:</p>
<ul>
<li>Open command palette</li>
<li>Choose <code>Local History: Find Entry to Restore</code></li>
<li>Choose the file you want to recover</li>
<li>Choose the latest entry to recover from</li>
<li>Copy contents back to active file</li>
</ul>
<p>I believe this is also accessible under <code>Timeline View</code>.</p>
<p>See the <a href="https://github.com/microsoft/vscode-docs/blob/vnext/release-notes/v1_66.md#local-history" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Release Notes</span></a> for more information on this feature when it was first released.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=a-feature-i-didnt-know-existed-in-vs-codium-saved-my">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0615-16251/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260612184232</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0612-104232/"/><title type="html">digiKam MySQL Database Upgrade Woes</title><published>2026-06-12T18:42:32+08:00</published><updated>2026-06-12T20:11:18+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Ever since I left Adobe Lightroom in mid-2025, I’ve been using digiKam from KDE for digital asset management (DAM). I quite like using it to manage my …</summary><content type="html"><![CDATA[<h1 id="digikam-mysql-database-upgrade-woes">digiKam MySQL Database Upgrade Woes<a href="#digikam-mysql-database-upgrade-woes" class="heading-anchor" title="Permalink to #digiKam MySQL Database Upgrade Woes">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Ever since I left Adobe Lightroom in mid-2025, I&rsquo;ve been using <a href="https://www.digikam.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">digiKam</span></a> from KDE for digital asset management (DAM). I quite like using it to manage my extensive library of photographs (+100k images). But almost every time there&rsquo;s a version upgrade, the <a href="https://docs.digikam.org/en/setup_application/database_settings.html#the-mysql-internal-server" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">internal MySQL database</span></a> breaks.</p>
<h2 id="database-options">Database Options<a href="#database-options" class="heading-anchor" title="Permalink to #Database Options">&NoBreak;<span class="anchor-link">§</span></a></h2><p>There are three database options for digiKam: SQLite, Internal MySQL, Remote MySQL. I have always chosen internal MySQL as apparently SQLite doesn&rsquo;t do well for libraries over 100k photos. But I can never get MySQL to work seamlessly on the get-go and it breaks <em>every single time</em> when it&rsquo;s time to upgrade either the database or digiKam itself.</p>
<h2 id="not-again">Not Again<a href="#not-again" class="heading-anchor" title="Permalink to #Not Again">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I upgraded to digiKam v9.2.0 yesterday, lo and behold, the database broke again. I tried everything I could (with limited database knowledge) but could not get it fixed like the previous three or four times. I made notes each time when I troubleshoot, but the fixes I wrote down didn&rsquo;t work this time. Previous issues include UNIX socket problems and <code>mariadb</code> from Homebrew was conflicting; but I checked it all this time and could not get the database to upgrade successfully.</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/digikam-db-error.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/digikam-db-error.webp"
           alt="Screenshot of error when upgrading MySQL database of digikam." width="441" height="244">
    </a>
  </div><figcaption>Very frustrating because there is nothing to actually set or configure in the database popup other than the paths for the four needed executables of mariadb/mysql</figcaption></figure>

<h2 id="trying-sqlite">Trying SQLite<a href="#trying-sqlite" class="heading-anchor" title="Permalink to #Trying SQLite">&NoBreak;<span class="anchor-link">§</span></a></h2><p>I have decided to give SQLite a try despite being over the <a href="https://docs.digikam.org/en/setup_application/database_settings.html#database-type-criteria" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">100k suggested limit</span></a>. <a href="https://www.sqlite.org/wal.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Write-ahead logging (WAL mode)</span></a> is turned on and I&rsquo;m now waiting for the new database to be built. It&rsquo;s over two hours by now and it&rsquo;s past the 50% mark.</p>
<p>Fingers crossed that this will be last time I waste time on the digiKam database.</p>
<h2 id="additional-links">Additional Links<a href="#additional-links" class="heading-anchor" title="Permalink to #Additional Links">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://mail.kde.org/pipermail/digikam-users/2025-March/037085.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://mail.kde.org/pipermail/digikam-users/2025-March/037085.html</span></a></li>
<li><a href="https://mail.kde.org/pipermail/digikam-users/2021-July/032479.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://mail.kde.org/pipermail/digikam-users/2021-July/032479.html</span></a></li>
<li><a href="https://linuxvox.com/blog/what-is-the-correct-location-of-mysql-sock-file-on-linux/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://linuxvox.com/blog/what-is-the-correct-location-of-mysql-sock-file-on-linux/</span></a></li>
<li><a href="https://rt-wiki.bestpractical.com/wiki/MysqlSocketConfiguration" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://rt-wiki.bestpractical.com/wiki/MysqlSocketConfiguration</span></a></li>
<li><a href="https://discuss.pixls.us/t/uninstalled-and-re-installed-mariadb-digikam-cant-connect-to-re-installation/38813" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://discuss.pixls.us/t/uninstalled-and-re-installed-mariadb-digikam-cant-connect-to-re-installation/38813</span></a></li>
<li><a href="https://stackoverflow.com/questions/27918764/cannot-load-from-mysql-proc-the-table-is-probably-corrupted/30224954#30224954" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://stackoverflow.com/questions/27918764/cannot-load-from-mysql-proc-the-table-is-probably-corrupted/30224954#30224954</span></a></li>
<li><a href="https://stackoverflow.com/questions/5376427/cant-connect-to-local-mysql-server-through-socket-var-mysql-mysql-sock-38" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://stackoverflow.com/questions/5376427/cant-connect-to-local-mysql-server-through-socket-var-mysql-mysql-sock-38</span></a></li>
<li><a href="https://dev.mysql.com/doc/mysql-shell/9.7/en/mysql-shell-connection-socket.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://dev.mysql.com/doc/mysql-shell/9.7/en/mysql-shell-connection-socket.html</span></a></li>
<li><a href="https://www.supertechcrew.com/improving-speed-digikam-using-mysql/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://www.supertechcrew.com/improving-speed-digikam-using-mysql/</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=digikam-mysql-database-upgrade-woes">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0612-104232/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260612132940</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0612-52940/"/><title type="html">Regular expression (Regex) is a skill I wish I have a…</title><published>2026-06-12T13:29:40+08:00</published><updated>2026-06-12T20:12:33+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html"> https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions https://www.rexegg.com/regex-quickstart.php </summary><content type="html"><![CDATA[<p>Regular expression (Regex) is a skill I wish I have a better grasp on; but I&rsquo;m slowly learning! For example, I often find myself searching for a particular string pattern to replace it with something else. Today, I learnt how to search for this pattern (Markdown bullet points):</p>
<ol>
<li>The start of a new line (<code>^</code>)</li>
<li>Dash (<code>-</code>)</li>
<li>Space (<code>\s</code>)</li>
<li>Alphabet following the space (<code>[a-zA-Z]</code>)</li>
</ol>
<p>Which makes the search string:</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Txt</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-txt"><span class="line"><span class="ln">1</span><span class="cl">^-\s([a-zA-Z])</span></span></code></pre></div></figure><p>The <code>( )</code> bracket around <code>[a-zA-Z]</code> is to capture the matching section and using it later as <code>$1</code> for the first group, <code>$2</code> for the second, etc.</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/regex-before.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/regex-before.webp"
           alt="Screenshot of VS Codium&#39;s search and replace fields highlighting the search pattern." width="602" height="196">
    </a>
  </div></figure>

<p>My aim is to change the bullet points into Markdown checkboxes. The string to do that is:</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Txt</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-txt"><span class="line"><span class="ln">1</span><span class="cl">- [ ] $1</span></span></code></pre></div></figure><p>This changes the bullet to a checkbox and the captured group in the <code>( )</code> is replaced by the original.</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/regex-after.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/regex-after.webp"
           alt="Screenshot of VS Codium&#39;s search and replace fields highlighting the replaced pattern." width="604" height="207">
    </a>
  </div></figure>

<p>Maybe there&rsquo;s some plugin to do this in a click, but I enjoy learning things in real life scenarios.</p>
<h2 id="resources">Resources<a href="#resources" class="heading-anchor" title="Permalink to #Resources">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions</span></a></li>
<li><a href="https://www.rexegg.com/regex-quickstart.php" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">https://www.rexegg.com/regex-quickstart.php</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=regular-expression-regex-is-a-skill-i-wish-i-have-a">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0612-52940/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260610232304</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0610-15234/"/><title type="html">Maintaining My Own Brew Tap</title><published>2026-06-10T23:23:04+08:00</published><updated>2026-06-11T10:41:12+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">No, not beer; but for Homebrew, the package manager which I have used for over five years…? I don’t know how I lived without it before!
I have decided …</summary><content type="html"><![CDATA[<h1 id="maintaining-my-own-brew-tap">Maintaining My Own Brew Tap<a href="#maintaining-my-own-brew-tap" class="heading-anchor" title="Permalink to #Maintaining My Own Brew Tap">&NoBreak;<span class="anchor-link">§</span></a></h1><p>No, not beer; but for <a href="https://brew.sh/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Homebrew</span></a>, the package manager which I have used for over five years&hellip;? I don&rsquo;t know how I lived without it before!</p>
<p>I have decided to maintain my own tap for the first time because of the deprecations that will come into action later this year in around September 2026. These deprecations are for macOS software that has not signed or notarized (i.e. paid Apple) to meet the macOS Gatekeeper requirements. <a href="https://github.com/orgs/Homebrew/discussions/6482" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Issue #6482</span></a> gives more background information.</p>

<blockquote>
  <p>I&rsquo;m not entirely sure if this is the right way to do this, so treat this as a personal tinkering log, not a guide per se.</p>

</blockquote>

<h2 id="steps-ive-taken">Steps I&rsquo;ve Taken<a href="#steps-ive-taken" class="heading-anchor" title="Permalink to #Steps I&amp;rsquo;ve Taken">&NoBreak;<span class="anchor-link">§</span></a></h2><ol>
<li>Since brew taps are just Git repos, I created one on <a href="https://codeberg.org/burgeonlab/homebrew-gatekeeper-bypass" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Codeberg</span></a> and copied all the ruby cask files that have the deprecation warning from the official Homebrew Cask, and removed the line <code># disable! date: &quot;2026-09-01&quot;, because: :fails_gatekeeper_check</code>.</li>
<li>Initialize the repo with the files in step 1, <code>Casks/*.rb</code>, and push to remote.</li>
<li>Since I&rsquo;m not using GitHub, the following command is used to add a custom tap in the terminal: <code>brew tap git-username/homebrew-name-of-your-tap https://codeberg.org/git-username/homebrew-name-of-your-tap.git</code></li>
<li>Brew will warn that this tap is not trusted. To trust a tap, run <code>brew trust git-username/homebrew-name-of-your-tap</code>.</li>
<li>Tell Homebrew to use the new tap as the source of the soon-to-be deprecated casks, e.g. run <code>brew reinstall --cask git-username/homebrew-name-of-your-tap/cask-name</code>. This will explicitly tell Homebrew to install the cask using the new tap instead of the official cask tap. Repeat for all casks with deprecated warning.</li>
<li>Once the cask is officially deprecated, running <code>brew install --cask cask-name</code> should pull the <code>.rb</code> file from your custom maintained tap without the explicit custom tap path.</li>
<li>Run <code>brew tap</code> to see a list of all installed taps and run <code>brew doctor</code> to check if the warning, <code>Some installed casks are deprecated or disabled. You should find replacements for the following casks</code>, is resolved after switching to the custom tap.</li>
</ol>
<h2 id="manually-keeping-casks-updated">Manually Keeping Casks Updated<a href="#manually-keeping-casks-updated" class="heading-anchor" title="Permalink to #Manually Keeping Casks Updated">&NoBreak;<span class="anchor-link">§</span></a></h2><p>It&rsquo;s now up to me to update the <code>.rb</code> files, so I&rsquo;ve gathered the XML feeds of the release pages and turned on notifications in my feed reader. This will remind me to update the <code>version</code> number and <code>sha256</code> manually, which will in turn update the tap with the latest cask details ready for tapping.</p>
<p>I&rsquo;m using <a href="https://www.rssrssrssrss.com" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">rssrssrssrss</span></a> to combine the feeds into <a href="https://www.rssrssrssrss.com/api/merge?feeds=NoIgFgLhAODOBcB6RBjA9gEwKYCMsCcBzAOjSMQBsBLHfLAdzQoDNEdYBPWANkToqwBDWFljF8sWCAA04KHCSJ6y4hiqEqAa0EBbUuSoA7bAA9iJnRRlyYCZBohgArjmLodiDIPyaIgnAIAtGSEnt6&#43;-gJ8WALCosSCEGg61pC2ig7Oru6IAPL4uoKBAJKGEASCKBBUAG5YiAAKVCYxZIXRsSJiicmp8naImS5uyYgAjjqa45MA&#43;klMOGgmHUJdCUkpsmkK9lSOwzk1VIIUgZo4iEcngYROVCtx3RsgALpAA" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">one</span></a>:</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Txt</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-txt"><span class="line"><span class="ln">1</span><span class="cl">https://codeberg.org/librewolf/bsys6/releases.rss
</span></span><span class="line"><span class="ln">2</span><span class="cl">https://www.digikam.org/index.xml
</span></span><span class="line"><span class="ln">3</span><span class="cl">https://github.com/darktable-org/darktable/releases.atom
</span></span><span class="line"><span class="ln">4</span><span class="cl">https://github.com/Orama-Interactive/Pixelorama/releases.atom
</span></span><span class="line"><span class="ln">5</span><span class="cl">https://github.com/qmk/qmk_toolbox/releases.atom
</span></span><span class="line"><span class="ln">6</span><span class="cl">https://github.com/vial-kb/vial-gui/releases.atom</span></span></code></pre></div></figure><p>To update the <code>sha256</code> value, either check directly in the release if it has been provided there, if not, use <code>shasum -a 256 /path-to-dmg</code>.</p>
<p>Lastly, run the usual <code>xattr -dr com.apple.quarantine /Applications/software.app</code> command to bypass macOS&rsquo;s Gatekeeper. (A step can probably be added to the <code>.rb</code> file to do this automatically—but I am used to running this manually after upgrades so it doesn&rsquo;t bother me too much.)</p>
<h2 id="resources">Resources<a href="#resources" class="heading-anchor" title="Permalink to #Resources">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://docs.brew.sh/How-to-Create-and-Maintain-a-Tap" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Homebrew: How to Create and Maintain a Tap</span></a></li>
<li><a href="https://docs.brew.sh/Deprecating-Disabling-and-Removing" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Homebrew: Deprecating, Disabling and Removing</span></a></li>
<li><a href="https://kristoffer.dev/blog/guide-to-creating-your-first-homebrew-tap/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Creating Your First Homebrew Tap: A Complete Guide | Kristoffer</span></a></li>
<li><a href="https://jonathanchang.org/blog/maintain-your-own-homebrew-repository-with-binary-bottles/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Maintain your own Homebrew repository, with binary bottles | Jonathan Chang</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=maintaining-my-own-brew-tap">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0610-15234/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260604191432</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0604-111432/"/><title type="html">Hong Kong Open Source Conference 2026</title><published>2026-06-04T19:14:32+08:00</published><updated>2026-06-04T19:22:05+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I’m attending an in-person event this weekend related to my one of my passions for the very first time; open source! Came across the HKOSCon on …</summary><content type="html"><![CDATA[<h1 id="hong-kong-open-source-conference-2026">Hong Kong Open Source Conference 2026<a href="#hong-kong-open-source-conference-2026" class="heading-anchor" title="Permalink to #Hong Kong Open Source Conference 2026">&NoBreak;<span class="anchor-link">§</span></a></h1><p>I&rsquo;m attending an in-person event this weekend related to my one of my passions for the very first time; open source! Came across the HKOSCon on Mastodon via <a href="https://fosstodon.org/@sammyfung" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">@sammyfung</span></a>, the founder of <a href="https://opensource.hk/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Open Source Hong Kong</span></a>.</p>
<p>I&rsquo;m not sure what to expect but I&rsquo;m excited! It&rsquo;s held in an area of HK I&rsquo;m not familiar with (which is always nice as I like to visit new areas).</p>
<p>Looking forward to the <a href="https://hkoscon.org/2026/timetable/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">talks</span></a> lined up; especially the one titled, <a href="https://hkoscon.org/2026/topic/wordpress-hugo-and-astro-pick-the-best-open-source-cms/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">WordPress, Hugo and Astro - pick the best open-source CMS</span></a>, by Tony Tsui. It&rsquo;s held in Cantonese so I have no clue if I can catch on because I don&rsquo;t think I know any web dev terms in Cantonese! 😆 Should be a fun and eye-opening experience nonetheless.</p>
<p>Maybe I&rsquo;ll get to meet some general tech enthusiasts like myself!</p>
<p>Tickets are free (on <a href="https://www.eventbrite.hk/e/hong-kong-open-source-conference-2026-tickets-1987799450667" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Eventbrite</span></a>) but it&rsquo;s this Saturday!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=hong-kong-open-source-conference-2026">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0604-111432/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260530221235</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0530-141235/"/><title type="html">My WordPress Replacement: Zensical</title><published>2026-05-30T22:12:35+08:00</published><updated>2026-05-31T16:56:28+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">In the last few days, I’ve been experimenting with a new SSG (Zensical) as a replacement for my secondary site that’s still running WordPress—the CMS …</summary><content type="html"><![CDATA[<h1 id="my-wordpress-replacement-zensical">My WordPress Replacement: Zensical<a href="#my-wordpress-replacement-zensical" class="heading-anchor" title="Permalink to #My WordPress Replacement: Zensical">&NoBreak;<span class="anchor-link">§</span></a></h1><p>In the last few days, I&rsquo;ve been experimenting with a new SSG (<a href="https://zensical.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Zensical</span></a>) as a replacement for my <a href="https://eclecticpassions.net" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">secondary site</span></a> that&rsquo;s still running WordPress—the CMS I learnt to create my first website. Once the migration is over, I won&rsquo;t have to manage a dynamic website any more. Hurray, static sites for the win!</p>
<p>Ever since I created <em>BurgeonLab</em>, I considered multiple times if previous blog content should be merged into this one—I still haven&rsquo;t. Those posts were written long before I knew about the IndieWeb, when I was still discovering the world of blogging (and constantly pestered by SEO plugins while writing in the WP editor 🤮).</p>
<p>This migration is long-overdue as just seeing the WP admin dashboard is a burden to me, not to mention actually managing a dynamic website. By switching to Zensical, the barrier to actually write something is much lower; plus I get to be comfortable in my IDE and Markdown.</p>
<h2 id="justifying-another-site">Justifying Another Site<a href="#justifying-another-site" class="heading-anchor" title="Permalink to #Justifying Another Site">&NoBreak;<span class="anchor-link">§</span></a></h2><p>In recent months, two friends asked if I wrote anything &ldquo;understandable for the layman&rdquo; and is less technical after I sent them to this site. I wish I could have pointed them somewhere that is well maintained and user-friendly to non-techies.</p>
<p>Despite the difference in mindset and the stage I&rsquo;m in as a blogger while developing <em>EclecticPassions</em>; I think it deserves a revival and refresh for the purpose of using it as a general-audience site that shall not be littered with tech jargon! And also try out <a href="https://maggieappleton.com/garden-history" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">digital gardening</span></a>.</p>
<p>Having only a single website identity feels somewhat limiting to me. I guess it&rsquo;s just the way I am—there are many sides to me and I like to be able to express that via websites! Having a second site is also my excuse to use learn another CMS while keeping Hugo my main CMS of choice.</p>
<p>I look forward to sharing the live site soon!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=my-wordpress-replacement-zensical">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0530-141235/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260525015213</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0524-175213/"/><title type="html">I thought my secondary blog (with WordPress backend)…</title><published>2026-05-25T01:52:13+08:00</published><updated>2026-05-25T01:57:25+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I thought my secondary blog (with WordPress backend) wouldn’t auto-update, but I think I missed the setting on Hostinger. So sadly my site is now …</summary><content type="html"><![CDATA[<p>I thought my secondary blog (with WordPress backend) wouldn&rsquo;t auto-update, but I think I missed the setting on Hostinger. So sadly my site is now running the new <a href="https://wordpress.org/news/2026/05/armstrong/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">7.0 with AI features</span></a> 🤮. I immediately added the <a href="https://manualdousuario.net/en/disable-ia-wordpress-7-0/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">disable AI features</span></a> line to <code>config.php</code>.</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/disable-wp-ai.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/disable-wp-ai.webp"
           alt="Screenshot of config.php from wordpress to disable ai features from version 7.0 update" width="675" height="101">
    </a>
  </div><figcaption>They didn&rsquo;t even bother giving us an option to switch it off</figcaption></figure>

<p>I&rsquo;ll be switching to a WordPress alternative later this year when my plan expires in a few months time; so it won&rsquo;t be too long before I say goodbye to WP for good.</p>
<p>Some non-Hugo alternatives I am considering:</p>
<ul>
<li><a href="https://www.classicpress.net/get-classicpress/#switch-to-classicpress" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">ClassicPress</span></a> with <a href="https://notiz.blog/projects/sempress/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">SemPress theme</span></a></li>
<li><a href="https://docs.astro.build/en/concepts/why-astro/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Astro</span></a></li>
<li><a href="https://docs.getpelican.com/en/latest/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Pelican</span></a></li>
<li>A docs generator?</li>
<li>A personal wiki?</li>
<li>Or something completely different?!</li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=i-thought-my-secondary-blog-with-wordpress-backend">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0524-175213/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260523185727</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0523-105727/"/><title type="html">Signing Git Commits</title><published>2026-05-23T18:57:27+08:00</published><updated>2026-05-24T10:14:34+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Getting a verified lock icon for my signed Git commits took longer than expected! It’s all set up now in the end via SSH keys (and not GPG keys). …</summary><content type="html"><![CDATA[<h1 id="signing-git-commits">Signing Git Commits<a href="#signing-git-commits" class="heading-anchor" title="Permalink to #Signing Git Commits">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Getting a verified lock icon for my <a href="https://git-scm.com/book/en/v2/Git-Tools-Signing-Your-Work" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">signed Git commits</span></a> took longer than expected! It&rsquo;s all set up now in the end via SSH keys (and not GPG keys).</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/ssh-git-commit-sign.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/ssh-git-commit-sign.webp"
           alt="Screenshot of some commits in a repo on Codeberg called burgeonlab/gists with a green lock depicting the Git commit is verified" width="481" height="557">
    </a>
  </div><figcaption>Happy to learn how to start using signed Git commits</figcaption></figure>

<h2 id="gpg-didnt-work">GPG Didn&rsquo;t Work<a href="#gpg-didnt-work" class="heading-anchor" title="Permalink to #GPG Didn&amp;rsquo;t Work">&NoBreak;<span class="anchor-link">§</span></a></h2><p>During my email migration from Tuta to Mailbox.org, I started getting the hang of the idea of GPG keys. So I tried to start using it to sign my Git commits but it didn&rsquo;t work out in the end because I think these have to match:</p>
<ul>
<li>The GPG key&rsquo;s UID</li>
<li>The email on the hosted Git repository account (e.g. GitHub, Codeberg)</li>
<li>The local <code>git config --global user.email</code></li>
</ul>
<p>As I&rsquo;m using a different email for privacy purposes (spam prevention) in Git commits, it failed to verify on the new Codeberg repo. Creating a new SSH key pair just for signing commits worked in the end!</p>
<h2 id="new-gist-repository">New Gist Repository<a href="#new-gist-repository" class="heading-anchor" title="Permalink to #New Gist Repository">&NoBreak;<span class="anchor-link">§</span></a></h2><p>My new <a href="https://codeberg.org/burgeonlab/gists" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Gist repo</span></a> is now up on Codeberg!</p>
<p>I&rsquo;ve been meaning to get something like this started for a while. It&rsquo;s where I will store and keep code snippets I share up-to-date, especially useful as a resource for code-heavy, how-to posts. Decided to use this in the meantime instead of a paste bin service like OpenGist.</p>
<p>⁂ I will be updating my blog posts in due course to include a link to this repo.</p>
<h2 id="resources">Resources<a href="#resources" class="heading-anchor" title="Permalink to #Resources">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://opengist.io/docs/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">OpenGist</span></a></li>
<li><a href="https://dev.to/bad-logic/git-keeping-your-email-safe-in-public-repositories-16cg" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Git: Keeping your email safe in public repositories | Dev.to</span></a></li>
<li><a href="https://tobywf.com/2026/01/ditch-gnupg-signing-commits-with-ssh/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Ditching GPG/GnuPG by signing commits with SSH keys | Toby</span></a> — This post is useful, recommend it if you&rsquo;re also looking to use SSH instead of GPG keys for signing Git commits.</li>
<li><a href="https://oscarchou.com/posts/troubleshoot/gpg-signing-failed-inappropriate-ioctl-for-device/#root-cause-simple-explanation" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">[Git/GPG] Fix the &ldquo;Inappropriate ioctl for device&rdquo; Error when Signing GPG Keys | Oscar Chou</span></a> — While trying to set up GPG for signing, this error came up <code>gpg: signing failed: Inappropriate ioctl for device</code>. This post provided the fix.</li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=signing-git-commits">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0523-105727/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260513121843</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0513-41843/"/><title type="html">Hantavirus and Andes virus 101</title><published>2026-05-13T12:18:43+08:00</published><updated>2026-05-13T12:25:47+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">As a trained medical professional, I feel the need to inform and raise awareness of the latest MV Hondius (cruise ship) hantavirus outbreak in early …</summary><content type="html"><![CDATA[<h1 id="hantavirus-and-andes-virus-101">Hantavirus and Andes virus 101<a href="#hantavirus-and-andes-virus-101" class="heading-anchor" title="Permalink to #Hantavirus and Andes virus 101">&NoBreak;<span class="anchor-link">§</span></a></h1><p>As a trained medical professional, I feel the need to inform and raise awareness of the latest MV Hondius (cruise ship) hantavirus outbreak in early May 2026.</p>
<p>Here is a quick rundown of facts about hantavirus in general, and the specific human-to-human transmissible strain called Andes virus involved in the current outbreak.</p>
<h2 id="general-facts-about-hantavirus">General facts about hantavirus<a href="#general-facts-about-hantavirus" class="heading-anchor" title="Permalink to #General facts about hantavirus">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li>
<p>Hantavirus comes primarily from rodents (but also seen, less commonly, in moles, shrews, and bats)</p>
</li>
<li>
<p>It is a <em>group</em> of viruses that cause disease in humans transmitted by:</p>
<ul>
<li>Contact with infected rodent secretions (urine, faeces, saliva)</li>
<li>Consuming food/water contaminated with said secretions</li>
<li>Bitten/scratched by an infected rodent</li>
</ul>
</li>
<li>
<p>There are two &ldquo;typical&rdquo; hantavirus clinical presentations:</p>
<ol>
<li>
<p>Hantavirus Cardiopulmonary Syndrome (HCPS) affects the heart and lungs and is the strain seen in North, Central and South America (which is the one currently involved in the May 2026 outbreak)</p>
</li>
<li>
<p>Haemorrhagic Fever with Renal Syndrome (HFRS) affects the kidneys mainly, and is seen in Europe and Asia (there&rsquo;s a higher incidence rate, i.e. more people get infected per year, but it has a lower fatality rate of around 12%)</p>
</li>
</ol>
</li>
</ul>
<h2 id="andes-virus">Andes virus<a href="#andes-virus" class="heading-anchor" title="Permalink to #Andes virus">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li>
<p>Most hantaviruses are not person-to-person transmissible (that we know of), except for a family called <strong>Andes virus</strong> which is found in South America, and is known to be transmissible between humans causing the more severe disease form, HCPS</p>
</li>
<li>
<p>Fatality rate of Andes virus is around 35-50% (so it&rsquo;s quite severe)</p>
</li>
<li>
<p>There is no targeted antiviral treatment or vaccine available for Andes virus, only supportive care</p>
</li>
</ul>
<h3 id="transmission">Transmission<a href="#transmission" class="heading-anchor" title="Permalink to #Transmission">&NoBreak;<span class="anchor-link">§</span></a></h3><ul>
<li>
<p>Person-to-person transmission of Andes virus is primarily by:</p>
<ul>
<li>Close contact / family clusters</li>
<li>Saliva and bodily fluids (e.g. via kissing, sharing utensils/drinks/vapes/shisha aka hookah/cigarettes, handling contaminated bedding)</li>
<li>Airborne droplets (coughing and sneezing)</li>
<li>Breast milk</li>
<li>Via the placenta from mother to fetus</li>
<li>Sexual partners (higher chance of transmission compared to non-sexual partners)</li>
<li>Touching a surface contaminated by virus (e.g. an infected person&rsquo;s saliva from a sneeze) and then touching your mouth, nose or eyes</li>
</ul>
</li>
<li>
<p>Incubation period (the time between exposure to an infection and the start of symptoms, in which the infection could be transmissible to others) of Andes virus is long; up to 42 days</p>
</li>
<li>
<p>Hantavirus can last on surfaces for up to 10 days in room temperature and more than 18 days in low temperatures (e.g. 4 °C)</p>
</li>
</ul>
<h3 id="prevention">Prevention<a href="#prevention" class="heading-anchor" title="Permalink to #Prevention">&NoBreak;<span class="anchor-link">§</span></a></h3><ul>
<li>
<p>Hantavirus can be inactivated by proper cleaning using:</p>
<ul>
<li>Heat (sustained 30 min at 60°C)</li>
<li>Detergents</li>
<li>UV radiation</li>
<li>Organic solvents (i.e. 70% ethanol)</li>
<li>Hypochlorite solutions (i.e. bleach)</li>
</ul>
</li>
<li>
<p>Other measures to reduce chance of infection:</p>
<ul>
<li>Wash your hands with soap <strong>thoroughly (minimum 20 seconds) and frequently!</strong></li>
<li>Wear a mask in crowded or in areas with poor air circulation/enclosed spaces (e.g. public transport) or when you are sick</li>
<li>If you work in areas where there are are rodent infestations, wear protective equipment like face coverings and respirators</li>
<li>Stay at home if you are sick, visit the doctor if you are having trouble breathing or have prolonged fever</li>
<li>Cover your mouth when sneezing or coughing when possible with a tissue and dispose of properly</li>
<li>Avoid touching your eyes, nose or mouth without washing your hands first</li>
<li>Follow rodent control protocols: store food properly and cut off water sources, maintain a clean environment, remove possible shelter or nesting areas, seal rodent entry points to buildings</li>
<li>Be extra cautious when dealing with rodent excretions by first wetting the area with a bleach solution before wiping it up to prevent the virus from becoming airborne (i.e. do not sweep or vacuum rodent droppings)</li>
</ul>
</li>
</ul>
<h2 id="sources">Sources<a href="#sources" class="heading-anchor" title="Permalink to #Sources">&NoBreak;<span class="anchor-link">§</span></a></h2><ul>
<li><a href="https://www.who.int/news-room/fact-sheets/detail/hantavirus" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Hantavirus | WHO</span></a></li>
<li><a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC7426369/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Biodefense Implications of New-World Hantaviruses | PubMed Central</span></a></li>
<li><a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC7101103/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Person-to-Person Transmission of Andes Virus in Hantavirus Pulmonary Syndrome, Argentina, 2014 | PubMed Central</span></a></li>
<li><a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC10459939/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Zoonotic Hantaviridae with Global Public Health Significance | PubMed Central</span></a></li>
<li><a href="https://pmc.ncbi.nlm.nih.gov/articles/PMC5794350/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Outbreak of Seoul Virus Among Rats and Rat Owners — United States and Canada, 2017 | PubMed Central</span></a></li>
<li><a href="https://www.sciencedirect.com/science/article/abs/pii/S016817021400029X?via%3Dihub" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Hantaviruses and cardiopulmonary syndrome in South America | ScienceDirect</span></a></li>
<li><a href="https://www.clinicalmicrobiologyandinfection.org/article/S1198-743X%2815%2900536-4/fulltext" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Hantavirus infections | Clinical Microbiology and Infection</span></a></li>
<li><a href="https://en.wikipedia.org/wiki/Orthohantavirus" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Orthohantavirus | Wikipedia</span></a></li>
<li><a href="https://en.wikipedia.org/wiki/Hantavirus_infection" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Hantavirus infection | Wikipedia</span></a></li>
<li><a href="https://en.wikipedia.org/wiki/Andes_virus" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Andes virus | Wikipedia</span></a></li>
<li><a href="https://www.msdmanuals.com/home/infections/arboviruses-arenaviruses-filoviruses/hantavirus-infection" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Hantavirus Infection | MSD Manual</span></a></li>
<li><a href="https://www.cdc.gov/healthy-pets/rodent-control/index.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Controlling Wild Rodent Infestations | CDC</span></a></li>
<li><a href="https://www.cdc.gov/hygiene/about/cleaning-and-disinfecting-with-bleach.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Cleaning and Disinfecting with Bleach | CDC</span></a></li>
<li><a href="https://dph.illinois.gov/topics-services/diseases-and-conditions/diseases-a-z-list/diseases/hantavirus.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Hantaviruses | DPH Illinois</span></a></li>
<li><a href="https://www.myhsn.co.uk/top-tip/what-is-the-andes-strain-of-hantavirus-and-can-it-pass-human-to-human/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">What is the Andes Strain of Hantavirus | My HSN UK</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=hantavirus-and-andes-virus-101">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0513-41843/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260512210805</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0512-1385/"/><title type="html">Fixed Mac Mini M1 (2020) Disk Corruption</title><published>2026-05-12T21:08:05+08:00</published><updated>2026-05-13T09:38:51+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Hurray!
Before The drive corruption warning is fixed after first turning off FileVault and repairing the Macintosh-HD volume via the terminal in …</summary><content type="html"><![CDATA[<h1 id="fixed-mac-mini-m1-2020-disk-corruption">Fixed Mac Mini M1 (2020) Disk Corruption<a href="#fixed-mac-mini-m1-2020-disk-corruption" class="heading-anchor" title="Permalink to #Fixed Mac Mini M1 (2020) Disk Corruption">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Hurray!</p>
<figure>
  <div class="img-container">
    <a href="/images/notes/diskutil-corrupt.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/diskutil-corrupt.webp"
           alt="Screenshot of the logs in First Aid Disk Utility on Mac showing a corruption in disk3s1 volume and needs to be repaired." width="455" height="430">
    </a>
  </div><figcaption>Before</figcaption></figure>

<p>The drive corruption warning is fixed after first turning off FileVault and repairing the Macintosh-HD volume via the terminal in Recovery Mode.</p>
<ol>
<li>
<p>Find the name of the disk to fix, mine is <code>disk3</code>.</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Bash</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash"><span class="line"><span class="ln">1</span><span class="cl">diskutil list
</span></span><span class="line"><span class="ln">2</span><span class="cl">diskutil unmountDisk /dev/disk3</span></span></code></pre></div></figure></li>
<li>
<p>Run repairs with flags: <code>-T</code> for tree node repair, <code>-o</code> for repair over allocations, and <code>-W</code> for treating warnings as errors.</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Bash</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-bash"><span class="line"><span class="ln">1</span><span class="cl">fsck_apfs -ToW /dev/disk3s3</span></span></code></pre></div></figure></li>
<li>
<p>Restart, run the First Aid again on the AFPS Data volume and the errors should be gone. xattr messages related to snapshots will be gone when the snapshots are removed. (To <a href="https://eclecticlight.co/2022/02/10/managing-snapshots-how-to-stop-them-eating-free-space/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">remove snapshots</span></a>, go to View in Disk Utility &gt; Show AFPS Snapshots and delete the old ones if you have a lot.)</p>
</li>
<li>
<p>Turn FileVault back on.</p>
</li>
</ol>
<figure>
  <div class="img-container">
    <a href="/images/notes/diskutil-fixed.webp" target="_blank" rel="noopener noreferrer"
       class="clickable-image">
      <img src="/images/notes/diskutil-fixed.webp"
           alt="Screenshot of the logs in First Aid Disk Utility on Mac showing the corruption is fixed." width="464" height="433">
    </a>
  </div><figcaption>After</figcaption></figure>

<p>Kinda happy I don&rsquo;t need to reinstall the system. And thanks again to <a href="https://fosstodon.org/@adamsdesk/116547139085937273" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Adam</span></a> who kindly helped out!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=fixed-mac-mini-m1-2020-disk-corruption">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0512-1385/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260507171551</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0507-91551/"/><title type="html">Skipped Weeknote and Mac Disk Corruption</title><published>2026-05-07T17:15:51+08:00</published><updated>2026-05-08T00:15:07+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I’m feeling poorly myself for the past week (have an appointment tomorrow with the doctor), so unfortunately my weeknote for 2026-W18 will be …</summary><content type="html"><![CDATA[<h1 id="skipped-weeknote-and-mac-disk-corruption">Skipped Weeknote and Mac Disk Corruption<a href="#skipped-weeknote-and-mac-disk-corruption" class="heading-anchor" title="Permalink to #Skipped Weeknote and Mac Disk Corruption">&NoBreak;<span class="anchor-link">§</span></a></h1><p>I&rsquo;m feeling poorly myself for the past week (have an appointment tomorrow with the doctor), so unfortunately my weeknote for 2026-W18 will be cancelled. Not only am I not feeling well, my Mac Mini is also acting up, reporting that the primary data volume is corrupt and needs to be repaired.</p>
<p>What triggered me to do a scan in Disk Utility was Dictionary kept crashing. Disk Utility&rsquo;s <a href="https://support.apple.com/en-gb/102611" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">First Aid</span></a> claims there&rsquo;s corruption and will try to fix it, and that it is OK (fixed); but repeating the scan results in the same three messages.</p>
<p>Relevant logs:</p>
<figure class="code-block"><figcaption class="code-header">
<span class="code-lang">Txt</span> 
<button class="highlight-copy-btn">
  
</button>
</figcaption><div class="highlight"><pre tabindex="0" class="chroma"><code class="language-txt"><span class="line"><span class="ln">1</span><span class="cl">The volume Macintosh HD - Data was formatted by newfs_apfs (2235.0.13) and last modified by apfs_kext (2332.140.13).
</span></span><span class="line"><span class="ln">2</span><span class="cl">warning: inode (id 57148693): Resource Fork xattr is missing or empty for compressed file
</span></span><span class="line"><span class="ln">3</span><span class="cl">The volume /dev/rdisk3s1 was found to be corrupt and needs to be repaired.
</span></span><span class="line"><span class="ln">4</span><span class="cl">Performing deferred repairs.
</span></span><span class="line"><span class="ln">5</span><span class="cl">The volume /dev/rdisk3s1 appears to be OK.
</span></span><span class="line"><span class="ln">6</span><span class="cl">File system check exit code is 0.</span></span></code></pre></div></figure><p>I&rsquo;ve already tried running the relevant <code>fsck_apfs</code> commands in Recovery Mode, but that results in another error: <code>failed to enable crypto I/O mode for container /dev/rdisk3: invalid argument</code>. So my next step will be to try again after turning off FireVault. If that also fails, I will inevitably have to <a href="https://support.apple.com/en-gb/102664" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">&ldquo;Erase All Content and Settings&rdquo;</span></a>.</p>
<p>Oh and I already ran a hardware <a href="https://support.apple.com/en-us/102550" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">diagnostic scan</span></a> and it doesn&rsquo;t report any hardware issues—so at least that&rsquo;s a good sign. My conspiracy theory is Apple wants me to upgrade to Tahoe so it&rsquo;s giving me these issues. 🤣</p>
<p>Here&rsquo;s a few relevant links if you are have similar issues:</p>
<ul>
<li><a href="https://forums.macrumors.com/threads/disk-utility-errors-first-aid.2395199/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Disk Utility Errors - First Aid | MacRumors</span></a></li>
<li>The Eclectic Light Co. is a site by Dr. Howard Oakley and there&rsquo;s often lots of good articles about Macs, like this one that goes through how to <a href="https://eclecticlight.co/2025/06/17/when-and-how-should-you-run-first-aid-in-disk-utility/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">use Disk Utility correctly</span></a> and useful apps like <a href="https://eclecticlight.co/mints-a-multifunction-utility/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Mints</span></a>, which can help you check inode IDs. Highly recommend this blog for Mac users.</li>
</ul>
<p>Hope it doesn&rsquo;t require a repair&hellip; 🤞</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=skipped-weeknote-and-mac-disk-corruption">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0507-91551/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260430184551</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0430-104551/"/><title type="html">Adding Features to Open Source Projects</title><published>2026-04-30T18:45:51+08:00</published><updated>2026-05-01T10:30:03+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Ever since setting up Indiekit for adding Micropub capabilities to my Hugo blog, I have only used its web UI to post notes, photos, and likes (haven’t …</summary><content type="html"><![CDATA[<h1 id="adding-features-to-open-source-projects">Adding Features to Open Source Projects<a href="#adding-features-to-open-source-projects" class="heading-anchor" title="Permalink to #Adding Features to Open Source Projects">&NoBreak;<span class="anchor-link">§</span></a></h1><p>Ever since setting up <a href="https://getindiekit.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Indiekit</span></a> for adding <a href="https://indieweb.org/Micropub" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Micropub</span></a> capabilities to my Hugo blog, I have only used its web UI to post notes, photos, and likes (haven&rsquo;t tried other <a href="https://indieweb.org/Micropub/Clients" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">clients</span></a> yet). The interface is not bad, but one thing that that bugs me is how links are handled in the text field. I am so used to directly pasting in URLs into highlighted text and have it automatically become a Markdown link (like in Obsidian / VS Codium / GitHub).</p>
<h2 id="improving-indiekits-markdown-links">Improving Indiekit&rsquo;s Markdown Links<a href="#improving-indiekits-markdown-links" class="heading-anchor" title="Permalink to #Improving Indiekit&amp;rsquo;s Markdown Links">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Not only is this not a feature on Indiekit; it was quite clunky. Here&rsquo;s how it goes now: (1) select the link text, (2) click on the editor toolbar &lsquo;Create link&rsquo; button or <code>ctrl+k</code> keyboard shortcut, (3) the selected text will remain selected and a <code>[ ]</code> will be appended to the beginning and end with <code>(https://)</code> attached, (4) now move the cursor to the bracket, (5) delete the <code>https://</code>, and lastly (6) paste the link from the clipboard. This will generate a <code>[selected text](https://link-i-want-to-share.com)</code>.</p>
<p>For me that was too much. I want to be able to: (1) select the text and (2) <code>ctrl+v</code>. Finished. Or if I want to use the button, (1) select text, (2) press create link button, and (3) <code>ctrl+v</code> (cursor is already inside the empty <code>()</code> so it just pastes correctly in one go). Done.</p>
<p>And that&rsquo;s what I did! I created a <a href="https://github.com/getindiekit/indiekit/pull/845/changes" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">PR</span></a> that was relatively simple (I did require some guidance from <code>qwen2.5-coder</code> in Ollama) and didn&rsquo;t take that many lines of code. I hope <a href="https://paulrobertlloyd.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Paul</span></a> will merge it so the feature can be used by others. Or else, I will need to learn how to &ldquo;install&rdquo; (? I don&rsquo;t know the right term for this) the feature so I can have it in my Indiekit server.</p>
<p>I&rsquo;m still quite new to contributing to FOSS projects, but I will try my best to learn and contribute back to projects I use and love! (Which reminds me I need to update / revamp my <a href="/contributions/"><span class="ext-text">/⁠contributions</span></a> page&hellip;)</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=adding-features-to-open-source-projects">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0430-104551/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260430142401</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0430-6241/"/><title type="html">Improvements for Code Blocks and Snippets Demos</title><published>2026-04-30T14:24:01+08:00</published><updated>2026-05-01T18:50:17+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I’m currently writing a post on how to use a Bash script with Termux. In the past, when I have code snippets / code blocks present in the post, I will …</summary><content type="html"><![CDATA[<h1 id="improvements-for-code-blocks-and-snippets-demos">Improvements for Code Blocks and Snippets Demos<a href="#improvements-for-code-blocks-and-snippets-demos" class="heading-anchor" title="Permalink to #Improvements for Code Blocks and Snippets Demos">&NoBreak;<span class="anchor-link">§</span></a></h1><p>I&rsquo;m currently writing a post on how to use a Bash script with Termux. In the past, when I have code snippets / code blocks present in the post, I will make comments <strong>inside</strong> the code. This results in an utter mess of code + comments mixed together (I can&rsquo;t unsee it now).</p>
<p>A few weeks ago at a Homebrew Website Club, <a href="https://rossabaker.com/configs/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Ross</span></a> mentioned a term I&rsquo;ve not heard before called <a href="https://en.wikipedia.org/wiki/Literate_programming" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">literate programming</span></a>, which got me thinking on how to improve my code-heavy posts/guides. <em>(Thanks Ross for introducing it to me.)</em></p>
<p>I will eventually go back to all the posts that have comments in the code, clean it up for a &ldquo;ready-to-run&rdquo; version, and offer explanations separately if required.</p>
<h2 id="paste-bins">Paste Bins<a href="#paste-bins" class="heading-anchor" title="Permalink to #Paste Bins">&NoBreak;<span class="anchor-link">§</span></a></h2><p>Another thing I&rsquo;m thinking of implementing is improved ways for sharing code. I think a Pastebin service (similar to GitHub Gists) would be a good option (although originally I was thinking of creating a Git repo to store all my code examples). <a href="https://chrisburnell.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Chris</span></a> told me about <a href="https://github.com/thomiceli/opengist" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">OpenGist</span></a>, which is an open source version of GitHub Gist and it is the way to go as I am not happy to rely on GitHub. This means it will be easier to manage the shared snippets and keep them updated than being in code blocks within Markdown posts.</p>
<p>I&rsquo;ll be grateful if anyone has any feedback or experience regarding this topic, thanks!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=improvements-for-code-blocks-and-snippets-demos">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0430-6241/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260425125036</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0425-45036/"/><title type="html">Unfortunately I have my first driving lesson today (in…</title><published>2026-04-25T12:50:36+08:00</published><updated>2026-07-10T18:28:22+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Unfortunately I have my first driving lesson today (in the simulator) clashing with my first ever IndieWebCamp event. The 2-day event is an in-person …</summary><content type="html"><![CDATA[<p>Unfortunately I have my first driving lesson today (in the simulator) clashing with my first ever IndieWebCamp event. The 2-day event is an in-person event, with remote participation available. It&rsquo;s held at Düsseldorf.</p>
<p>I&rsquo;m really excited to see the presentations and demos from the talented and cool humans part of this community! I hope to get some tasks done myself during the camp probably on Day 2; namely starting the Instagram import I&rsquo;ve been meaning to work on since the start of the year.</p>
<p>Relevant Links:</p>
<ul>
<li><a href="https://time.is/D%c3%bcsseldorf" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Local Time</span></a></li>
<li><a href="https://events.indieweb.org/2026/04/-indiewebcamp-d%c3%bcsseldorf-ewHCZehNA3gg" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Event Page</span></a></li>
<li><a href="https://indieweb.org/2026/D%c3%bcsseldorf" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Event Wiki Page</span></a></li>
<li><a href="https://etherpad.indieweb.org/2026-04-25-iwc-dus" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Day 1 Etherpad (collaborative notes)</span></a></li>
<li><a href="https://etherpad.indieweb.org/2025-04-26-iwc-dus" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Day 2 Etherpad</span></a></li>
<li><a href="https://chat.indieweb.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">IRC Chat</span></a></li>
<li><a href="https://feed.city/c/dan/l/IWC&#43;DUS&#43;2026" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Feed of Participants by Dan</span></a></li>
</ul>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=unfortunately-i-have-my-first-driving-lesson-today-in">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0425-45036/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260422175505</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0422-9555/"/><title type="html">This is the first time I’m using my new Pi Docker…</title><published>2026-04-22T17:55:05+08:00</published><updated>2026-04-22T21:31:33+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">This is the first time I’m using my new Pi Docker version of the Indiekit Micropub server while I’m out! Wrote about my journey in the latest weeknote …</summary><content type="html"><![CDATA[<p>This is the first time I&rsquo;m using my new Pi Docker version of the <a href="https://github.com/getindiekit/indiekit" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Indiekit Micropub</span></a> server while I&rsquo;m out! Wrote about my journey in the latest <a href="/weknotes/2026/w16/"><span class="ext-text">weeknote</span></a> if you&rsquo;re interested.</p>
<p>And tomorrow is another <a href="https://events.indieweb.org/2026/04/homebrew-website-club-eastern-onNTNillQ5qA" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">IndieWeb Homebrew Website Club</span></a>; where I&rsquo;ll be a stand-in moderator for the first time. 😊 The more, the merrier—I&rsquo;d love to see new faces!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=this-is-the-first-time-im-using-my-new-pi-docker">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0422-9555/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260417214636</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0417-214636/"/><title type="html">Came across a site called DI.Day. It’s currently only…</title><published>2026-04-17T21:46:36+08:00</published><updated>2026-04-17T21:46:52+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Came across a site called DI.Day. It’s currently only available in Deutsch, with English possibly coming soon. It purposes that every first Sunday of …</summary><content type="html"><![CDATA[<p>Came across a site called <a href="https://di.day/de" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">DI.Day</span></a>. It&rsquo;s currently only available in Deutsch, with English possibly coming soon. It purposes that every first Sunday of the month is “Digital Independence Day”, where people are encouraged to break free from Big Tech.</p>
<p>The artwork and designs are bold and welcoming, and of course, I’m very appreciative of the information and educational nature of the site. I came across it on Mastodon when <a href="https://mastodon.social/@bearly_creative/116404295603024546" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">@bearina</span></a> shared she did some de-googling!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=came-across-a-site-called-di.day.-its-currently-only">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0417-214636/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260411183833</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0411-103833/"/><title type="html">Despite the disruption message still on status.sr.ht,…</title><published>2026-04-11T18:38:33+08:00</published><updated>2026-05-24T10:21:50+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Despite the disruption message still on status.sr.ht, SourceHut has been back up for me today. So I took the chance to implement what I worked on in …</summary><content type="html"><![CDATA[<p>Despite the disruption message still on <a href="https://status.sr.ht/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">status.sr.ht</span></a>, SourceHut has been back up for me today. So I took the chance to implement what I <a href="https://burgeonlab.com/notes/2026/0408-3421/"><span class="ext-text">worked on</span></a> in the local <code>bin/bash</code> script a few days ago, into a version that works on the <code>alpine/latest</code> CI runner which uses <code>bin/sh</code>. I didn&rsquo;t know this before—there&rsquo;s two different <a href="https://www.geeksforgeeks.org/computer-networks/difference-between-sh-and-bash/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">command-line shells</span></a>, <code>sh</code> is the original using POSIX and <code>bash</code> which is the one with more features (which I use on the Mac).</p>
<p>I&rsquo;m really chuffed to have implemented a much leaner <a href="https://man.sr.ht/builds.sr.ht/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">build manifest</span></a> for my continuous integration (CI) workflow. I reduced the build log verbosity significantly with <code>-quiet</code> or <code>-silent</code> flags, continued to use <code>set +x</code> to disable command logging and <a href="https://man.sr.ht/builds.sr.ht/#keeping-your-secrets-a-secret" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">protect secrets</span></a> from being exposed, and used a Makefile successfully for the first time!</p>
<p>Will try to make a post on it in the future—I&rsquo;m behind in terms of my finishing a few draft posts lately&hellip; Anyway, happy to learn about sh shell and Makefiles!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=despite-the-disruption-message-still-on-status.sr.ht">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0411-103833/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260409085755</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0409-85755/"/><title type="html">I use Mermaid diagrams occasionally on my Hugo blog. It…</title><published>2026-04-09T08:57:55+08:00</published><updated>2026-04-14T11:36:03+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I use Mermaid diagrams occasionally on my Hugo blog. It came with the theme I had so I learnt to use it. Just now as I was working on a draft post, I …</summary><content type="html"><![CDATA[<p>I use <a href="https://mermaid.js.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Mermaid diagrams</span></a> occasionally on my Hugo blog. It came with the <a href="https://github.com/hugo-theme-anubis2/hugo-theme-anubis2" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">theme I had</span></a> so I learnt to use it. Just now as I was working on a draft post, I decided to make a diagram, and found out nothing was rendering at all for the whole site. I am not sure when/what caused it, but I couldn&rsquo;t fix it quickly last night, so I resorted to using their latest ESM JS via CDN for now.</p>
<p>There&rsquo;s a new release about a week ago, <a href="https://github.com/mermaid-js/mermaid/releases/tag/mermaid@11.14.0" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">version 11</span></a>.</p>
<p>I always try to serve resources locally, but I don&rsquo;t think saving just the <code>mermaid.esm.min.mjs</code> is working for me; there are lots of chunk files? 🤔 I&rsquo;m not familiar with #Javascript and #ESM. I guess I have to use <a href="https://www.jsdelivr.com/package/npm/mermaid" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">cdn.sdelivr.net</span></a> version for now only on pages with the <code>mermaid = true</code> parameter&hellip;</p>
<p>Maybe I need to look into using <a href="https://d2lang.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">D2</span></a> as an alternative. I already use it for <a href="https://burgeonlab.com/blog/generate-dynamic-og-images-diagram-with-code-scripts/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">generating OG images</span></a>. I wonder what it requires to run on the front-end or maybe I should just use the .SVG or .PNG output.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=i-use-mermaid-diagrams-occasionally-on-my-hugo-blog.-it">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0409-85755/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260408114201</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0408-3421/"/><title type="html">My blog relies on SourceHut (aka sr.ht) Git repo and…</title><published>2026-04-08T11:42:01+08:00</published><updated>2026-05-24T10:16:40+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">My blog relies on SourceHut (aka sr.ht) Git repo and Builds (their continuous integration/CI, like GitHub Actions). They’ve been down for around two …</summary><content type="html"><![CDATA[<p>My <a href="https://burgeonlab.com" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">blog</span></a> relies on <a href="https://sourcehut.org/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">SourceHut</span></a> (aka sr.ht) Git repo and Builds (their continuous integration/CI, like GitHub Actions). They&rsquo;ve been <a href="https://status.sr.ht/issues/2026-04-06-ddos-attack/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">down</span></a> for around two days and I couldn&rsquo;t deploy my site to my static host, <a href="https://bunny.net/?ref=k4vc3x5108" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Bunny Storage</span></a> (this is my affiliate link, I really like them, thanks for your support!)</p>
<p>This triggered me to create a local script that runs all the fetch and build steps as an alternative pathway to uploading my <code>/public</code> folder to Bunny.net directly from my Mac. It works! I took the chance to upgrade the upload method from SFTP to HTTP API too, which is more secure.</p>
<p>Once SourceHut is back up, I will also update my <code>build.yml</code> to use a Makefile, which will be a first for me—it should make the YAML a lot cleaner and the CI logs much shorter.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=my-blog-relies-on-sourcehut-aka-sr.ht-git-repo-and">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0408-3421/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260326005827</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0325-165827/"/><title type="html">After discovering TiddlyWiki from @jbaty, I went ahead…</title><published>2026-03-26T00:58:27+08:00</published><updated>2026-05-24T10:16:04+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">After discovering TiddlyWiki from @jbaty, I went ahead to give FeatherWiki (a lightweight version of TW) a spin as a personal brain-dump bin. I really …</summary><content type="html"><![CDATA[<p>After discovering <a href="https://tiddlywiki.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">TiddlyWiki</span></a> from <a href="https://baty.net/posts/2026/03/four-blogs-and-a-wiki/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">@jbaty</span></a>, I went ahead to give <a href="https://feather.wiki/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">FeatherWiki</span></a> (a lightweight version of TW) a spin as a personal brain-dump bin. I really like how it&rsquo;s just a lightweight, 58kb HTML file!</p>
<p>I used it on Android but failed to get it working due to Android Storage Access Framework (SAF) limitations. I ended using the amazing <a href="https://wiki.termux.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Termux</span></a> (<a href="/blog/hugo-on-android-with-termux/"><span class="ext-text">once again</span></a>) to run <a href="https://frippery.org/busybox/httpd.html" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Busybox&rsquo;s httpd</span></a>, automate the whole process of opening, serving, and saving back to my <a href="https://syncthing.net/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Syncthing</span></a> directory with a Bash script (security hardened browsers don&rsquo;t allow selecting download destination easily). It&rsquo;s running surprisingly smooth.</p>
<p>One downside I thought of immediately is that all the entries will be in one single file, not individual notes/entries. But there&rsquo;s a <a href="https://feather.wiki/?page=extensions_import-export" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">plugin</span></a> for that!</p>
<p><strong>Update:</strong> The post on <a href="/blog/feather-wiki-brain-dump-app/"><span class="ext-text">how I use Feather Wiki</span></a> is up!</p>
<p>It was really satisfying to get it working. Do you use a Wiki software for blogging or other uses? Let me know!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=after-discovering-tiddlywiki-from-@jbaty-i-went-ahead">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0325-165827/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260314175203</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0314-9523/"/><title type="html">I haven’t used Indiekit to post anything recently!…</title><published>2026-03-14T17:52:03+08:00</published><updated>2026-03-18T00:10:12+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">I haven’t used Indiekit to post anything recently! Quick update on the blog: I’ve been busy working on my new Hugo theme redesign—learnt to use Git …</summary><content type="html"><![CDATA[<p>I haven&rsquo;t used Indiekit to post anything recently! Quick update on the blog: I&rsquo;ve been busy working on my new Hugo theme redesign—learnt to use Git branches, forked the Anubis2 theme code so I could squash unused/overriding CSS rules, trying to redesign the theme to make it more a11y-friendly, etc. I think I&rsquo;ll miss my current theme; but I will still push on with the redesign.</p>
<p>On an unrelated note, it&rsquo;s the second F1 race this weekend (China) and I decided to create a <a href="https://cryptpad.disroot.org/sheet/#/2/sheet/view/cbWglbv&#43;ITBuh-7vioazteFjfrMb8EmoxJKXzJwJSlQ/embed/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">spreadsheet</span></a> to track my F1 Fantasy progress for the first time! I recommended some <a href="/weeknotes/2026/w10/#formula-1-2026"><span class="ext-text">leagues</span></a> to join if you&rsquo;re interested.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=i-havent-used-indiekit-to-post-anything-recently">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0314-9523/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260219122828</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0219-42828/"/><title type="html">At today’s IndieWeb Homebrew Website Club: Pacific…</title><published>2026-02-19T12:28:28+08:00</published><updated>2026-02-19T12:28:28+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">At today’s IndieWeb Homebrew Website Club: Pacific event, we covered lots of different topics—RSS, ATProto, poll platforms, CMSes, databases, upvotes, …</summary><content type="html"><![CDATA[<p>At today&rsquo;s IndieWeb <a href="https://events.indieweb.org/2026/02/homebrew-website-club-pacific-Bj9jWBNYSpTG" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Homebrew Website Club: Pacific</span></a> event, we covered lots of different topics—RSS, ATProto, poll platforms, CMSes, databases, upvotes, YAML, etc . During the event, something <a href="https://banjomagpi.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">@fractalkitty</span></a> and <a href="https://joelchrono.xyz/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">@joelchrono</span></a> said alerted me to two relatively &ldquo;serious&rdquo; bugs on my site (thanks you two!)</p>
<ol>
<li>Pagefind search was broke because of a new BunnyCDN edge rule I added for appending trailing slash to all URLs (forgot to exclude <code>/pagefind/*</code>)</li>
<li>My <a href="https://burgeonlab.com/posts/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">blog archive</span></a> list hid my <a href="https://burgeonlab.com/#top-ten" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Top 10 posts</span></a> which uses Hugo&rsquo;s front matter <code>weight = 1</code> parameter.</li>
</ol>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=at-todays-indieweb-homebrew-website-club-pacific">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0219-42828/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20260117121100</id><link rel="alternate" href="https://burgeonlab.com/notes/2026/0117-4110/"/><title type="html">Halfway during my Indiekit setup, I decided to use this…</title><published>2026-01-17T12:11:00+08:00</published><updated>2026-01-26T00:30:46+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">Halfway during my Indiekit setup, I decided to use this opportunity to start using Codeberg with Gitea plugin as my content store instead of staying …</summary><content type="html"><![CDATA[<p>Halfway during my <a href="https://getindiekit.com/" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Indiekit</span></a> setup, I decided to use this opportunity to start using Codeberg with <a href="https://getindiekit.com/plugins/stores/gitea" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">Gitea plugin</span></a> as my content store instead of staying on GitHub. Although I had already moved all my personal repos (like my blogs&rsquo; source code and CI to SourceHut already in 2025), I want to start using Codeberg as my main Git host (Gitea/Forgejo has a lot more integration support than SourceHut).</p>
<p>Using Codeberg for the first time was painless compared to learning SourceHut; it looks and feels similar to GitHub. I did unfortunately experienced, two nights in a row, of Codeberg server downtime, but both lasted less than 30m I&rsquo;d say. I think it will only get better as Codeberg gets more popular from <a href="https://fosstodon.org/tags/giveupgithub" target="_blank" class="ext-link" rel="noopener noreferrer"><span class="ext-text">#GiveupGithub</span></a> movement.</p>
<p>Getting back to Indiekit—having the content store (the place where Indiekit Markdown files are stored) separate from my Hugo source code meant I had to figure out a way to get the .md files from Codeberg &gt; SourceHut.</p>
<p>I worked out a relatively simple way of doing it in both CI and local without using Git Submodules or Git Subtree (which was a bit confusing). This note will test if it is working in SourceHut Builds CI&hellip; Sorting this last hurdle means I will be able to start writing my guide!</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=halfway-during-my-indiekit-setup-i-decided-to-use-this">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2026/0117-4110/#responses">other methods</a>.</i></p>
]]></content></entry><entry><id>tag:burgeonlab.com,2026:/notes/20251225111500</id><link rel="alternate" href="https://burgeonlab.com/notes/2025/1225-3150/"/><title type="html">This is a test note published using Indiekit. It…</title><published>2025-12-25T11:15:00+08:00</published><updated>2026-02-16T23:12:22+08:00</updated><author><name>Naty S</name><email>naty@eclecticpassions.net</email></author><summary type="html">This is a test note published using Indiekit. It includes tags.</summary><content type="html"><![CDATA[<p>This is a test note published using Indiekit. It includes tags.</p>

<hr />
<p><i>Visit <a href="https://burgeonlab.com/">BurgeonLab.com</a> for the latest content (XML feeds are not updated in real-time). <a href="https://burgeonlab.com/subscribe/">Topic-specific feeds</a> are available. Thanks for keeping feeds alive! 🤓 <a href="mailto:naty@eclecticpassions.net?subject=this-is-a-test-note-published-using-indiekit.-it">Reply to this post by email</a> or use <a href="https://burgeonlab.com/notes/2025/1225-3150/#responses">other methods</a>.</i></p>
]]></content></entry></feed>