Paul's Site of Stuff Zola 2024-07-29T21:16:00+00:00 https://paulwilde.uk/atom.xml BatMon 2024-07-29T21:16:00+00:00 2024-07-29T21:16:00+00:00 Unknown https://paulwilde.uk/ponderings/batmon/ <p>A simple battery monitor tool that can notify you on battery status changes for FreeBSD.<br /> Inspired by but in no way similar to <a href="https://github.com/electrickite/batsignal">batsignal</a> - inspiring the basic function only. Written in pure <a href="https://paulwilde.uk/ponderings/batmon/https/nim-lang.org">Nim</a>.</p> <h2 id="requirements">Requirements</h2> <h3 id="run-requirements">Run Requirements</h3> <ul> <li><code>apm</code></li> <li><code>notify-send</code></li> </ul> <h3 id="build-requirements">Build Requirements</h3> <ul> <li><code>nim</code></li> <li><code>nimble</code></li> </ul> <h2 id="installation">Installation</h2> <p>To install into your <code>.nimble/bin</code> directory</p> <pre data-lang="sh" style="background-color:#212121;color:#eeffff;" class="language-sh "><code class="language-sh" data-lang="sh"><span style="color:#82aaff;">git clone https://codeberg.org/pswilde/batmon </span><span style="color:#89ddff;">&amp;&amp; </span><span style="color:#82aaff;">cd batmon </span><span style="color:#82aaff;">nimble install </span></code></pre> <h2 id="running">Running</h2> <pre data-lang="sh" style="background-color:#212121;color:#eeffff;" class="language-sh "><code class="language-sh" data-lang="sh"><span style="font-style:italic;color:#4a4a4a;"># To run the daemon server notifier, just run: </span><span style="color:#82aaff;">batmon</span><span style="color:#89ddff;"> -</span><span style="color:#f78c6c;">d </span><span> </span><span style="font-style:italic;color:#4a4a4a;"># To run once and just show battery level, run: </span><span style="color:#82aaff;">batmon</span><span style="color:#89ddff;"> -</span><span style="color:#f78c6c;">o </span></code></pre> <h2 id="using">Using</h2> <p>When importing Batmon as a module you have access to the <code>get_battery_status()</code> procedure which will return a <code>Battery</code> object you can use elsewhere.</p> <h3 id="battery-type">Battery Type</h3> <pre data-lang="nim" style="background-color:#212121;color:#eeffff;" class="language-nim "><code class="language-nim" data-lang="nim"><span style="color:#c792ea;">type </span><span> </span><span style="color:#ffcb6b;">Battery</span><span>* = </span><span style="color:#c792ea;">object </span><span> status*: </span><span style="color:#ffcb6b;">Status </span><span> charge*: </span><span style="font-style:italic;color:#c792ea;">float </span><span> </span><span style="color:#ffcb6b;">Status</span><span>* = </span><span style="color:#c792ea;">enum </span><span> </span><span style="color:#ffcb6b;">High</span><span>, </span><span> </span><span style="color:#ffcb6b;">Low</span><span>, </span><span> </span><span style="color:#ffcb6b;">Critical</span><span>, </span><span> </span><span style="color:#ffcb6b;">Charging</span><span>, </span><span> </span><span style="color:#ffcb6b;">Unknown </span></code></pre> <p>Also, you have access to the notification handler module, where you can build and send your own notifications:</p> <pre data-lang="nim" style="background-color:#212121;color:#eeffff;" class="language-nim "><code class="language-nim" data-lang="nim"><span style="color:#c792ea;">var</span><span> n = </span><span style="color:#82aaff;">newNotification</span><span>(</span><span style="color:#c3e88d;">&quot;Title&quot;</span><span>, </span><span style="color:#c3e88d;">&quot;Body&quot;</span><span>, urgency = </span><span style="color:#ffcb6b;">Normal</span><span> , timeout = </span><span style="color:#f78c6c;">5000</span><span>) </span><span style="color:#c792ea;">discard</span><span> n.</span><span style="color:#82aaff;">send</span><span>() </span></code></pre> TootInstall 2024-07-29T14:18:00+00:00 2024-07-29T14:18:00+00:00 Unknown https://paulwilde.uk/ponderings/tootinstall-concept/ <h2 id="tootinstall-concept">TootInstall Concept</h2> <h3 id="status-of-this-memo">Status of this Memo</h3> <p>This memo defines a conceptual protocol for software build and install scripts for varying platforms published via Fediverse (ActivityPub i.e Mastodon, et al) posts.</p> Wholesome Errors 2024-02-02T00:00:00+00:00 2024-02-02T00:00:00+00:00 Unknown https://paulwilde.uk/ponderings/errors/ <p>Your Friendly Error Code Index Inspirational instructions for dealing with unhelpful error codes</p> <pre data-lang="sh" style="background-color:#212121;color:#eeffff;" class="language-sh "><code class="language-sh" data-lang="sh"><span style="color:#82aaff;">ERROR</span><span style="color:#89ddff;"> -</span><span style="color:#f78c6c;">41</span><span style="color:#82aaff;">: Failure! </span></code></pre> <p>Wouldn’t it be great if there was something to tell you what to do about this error?! Wouldn’t it be great if it said</p> <pre data-lang="sh" style="background-color:#212121;color:#eeffff;" class="language-sh "><code class="language-sh" data-lang="sh"><span style="color:#82aaff;">ERROR</span><span style="color:#89ddff;"> -</span><span style="color:#f78c6c;">41</span><span style="color:#82aaff;">: Sit by a lake </span></code></pre> <p>instead?</p> Gemini.css 2023-02-22T20:57:13+00:00 2023-02-22T20:57:13+00:00 Unknown https://paulwilde.uk/ponderings/geminicss/ <p>Gemini.css is an <em>almost</em> classless CSS style for making Gemini-like HTML pages.</p> <p>For a Gemini.css demonstration, go to <a href="https://geminicss.paulwilde.uk">geminicss.paulwilde.uk</a>.</p> Nemini 2023-02-20T12:57:13+00:00 2023-02-20T12:57:13+00:00 Unknown https://paulwilde.uk/ponderings/nemini/ <p>'/nɛmɪnaɪ/' Nem-in-eye</p> <h3 id="a-simple-gemini-server">A simple Gemini server</h3> <p>Nemini is a simple Gemini server with static file serving, virtual host and alias support. "Simple" in the way it is, hopefully, simple to configure and use with minimal knowledge of web servers in general.</p> AI Search 2023-02-16T14:40:00+00:00 2023-02-16T14:40:00+00:00 Paul Wilde https://paulwilde.uk/ponderings/freshgpt/ <p>This is a story all about how<br /> Your query got twist-turned upside down<br /> And I'd like to show an answer just sit right there<br /> It might not be fully accurate but I don't care</p> Why I have turned off my BirdsiteLIVE instance 2022-12-21T11:36:00+00:00 2022-12-21T11:36:00+00:00 Unknown https://paulwilde.uk/ponderings/turning-off-birdsitelive/ <p>Hello. How are you? I am fine.<br /> <br /> You may know me from a few places, but likely on the Fediverse as the person that maintains a BirdsiteLIVE instance with the url <a href="https://birdsite.wilde.cloud">birdsite.wilde.cloud</a>.</p> Keyoxide Verification 2022-11-17T11:44:27+00:00 2022-11-17T11:44:27+00:00 Unknown https://paulwilde.uk/verify/keyoxide/ <p>[Verifying my keyoxide cryptographic key: 85633E30514CC1932E4268460ED12CF710BC42CA]</p> SQL Haiku 2022-10-26T22:40:00+00:00 2022-10-26T22:40:00+00:00 Paul Wilde https://paulwilde.uk/ponderings/sql-haiku/ <pre data-lang="sql" style="background-color:#212121;color:#eeffff;" class="language-sql "><code class="language-sql" data-lang="sql"><span style="color:#c792ea;">SELECT</span><span> haiku </span><span style="color:#c792ea;">FROM </span><span>tableHaikus </span><span style="color:#c792ea;">WHERE</span><span> LEFT(name, </span><span style="color:#f78c6c;">3</span><span>) </span><span style="color:#89ddff;">LIKE &#39;</span><span style="color:#c3e88d;">SQL</span><span style="color:#89ddff;">&#39;</span><span>; </span></code></pre> Fortieth 2022-09-24T15:45:22+00:00 2022-09-24T15:45:22+00:00 Paul Wilde https://paulwilde.uk/ponderings/fortieth/ <p>'Twas the morning after the fortieth<br /> And all through the house<br /> Not a creature was stirring<br /> Except the one making the coffee and Alkaseltzer</p> <p>'Twas the morning after the morning after the fortieth<br /> And all through the house<br /> The creatures were starting to stir but generally still uncomfortable and underperforming</p> <p>'Twas the morning after the morning after the morning after the fortieth<br /> And all through the house<br /> The creatures were stirring<br /> Even the mouse!<br /> It scurried up the staircase<br /> Squeaking the old well known phrase<br /> "Warning! Duration of hangover is proportionate to age!"</p> wm_tools 2022-05-08T16:25:13+01:00 2022-05-08T16:25:13+01:00 Unknown https://paulwilde.uk/ponderings/wm-tools/ <h1 id="a-selection-of-information-output-tools-for-dmenu">A selection of information output tools for dmenu</h1> <p>These are a selection of independant tools for displaying various information about system status in dmenu. Some of them i.e. <code>volume</code> have options (up, down, mute...) which are selectable options in dmenu.</p> thisisnotmy.email 2021-11-13T16:17:59+00:00 2021-11-13T16:17:59+00:00 Unknown https://paulwilde.uk/ponderings/thisisnotmyemail/ <p>I run the <a href="https://thisisnotmy.email">thisisnotmy.email</a> email service.</p> <h2 id="what-s-it-all-about">What's it all about?</h2> <p>Don’t you hate it when people, businesses, random telephone callers, etc. ask you for your email address out of the blue under the ruse of “providing you a better service”? It's early days but I'm hoping to be able to offer <em>something</em> for people to use eventually.</p> Peanut Butter Recipe 2021-11-13T14:15:22+00:00 2021-11-13T14:15:22+00:00 Unknown https://paulwilde.uk/ponderings/peanut-butter/ <p>This is the easiest thing in the world.</p> <ol> <li>Dry-fry (no oil etc.) the peanuts in the large frying pan for about 10 mins or for as long as it takes for the peanuts to become golden brown. <ul> <li>This will encourage the oils in the peanuts to release - which is exactly what we want!</li> </ul> </li> <li>Put the now-roasted peanuts into the blender and blend. <ul> <li>Blend, blend, blend and blend some more.</li> <li>There will be a point when you think nothing's happening and the small bits of peanut are just moving around the blender, or just stuck in place. Give the stuck pieces a nudge with a spatula and get back to blending.</li> <li>Blend, blend, blend even more until, eventually, the mixture starts to bind together and turn into a thick solid mass.</li> <li>Keep blending and the mixture will loosen up become a lovely, smooth, peanut butter.</li> </ul> </li> <li>Spoon out into a suitable container and allow to cool (or just eat it there and then, I won't judge you).</li> </ol> <p>Top Tips =</p> <ul> <li>If you prefer a chunky peanut butter, save some of the roasted peanuts back and only put them into the blended mixture at the end with a bit of a stir - lovely!</li> </ul> I Use … 2021-08-17T11:04:14+01:00 2021-08-17T11:04:14+01:00 Unknown https://paulwilde.uk/ponderings/toolsiuse/ <p>In the interest of sharing interesting information, I thought I'd create this page to list some of my favourite software packages and tools.<br /> This list is by no means complete as, if you're like me you'll understand, I use hundreds of software packages.</p> <p>For PC/Laptop :</p> <ul> <li>Operating System <ul> <li><a href="https://archlinux.org">Arch Linux</a></li> <li><a href="https://github.com/baskerville/bspwm">bspwm</a></li> </ul> Mailautoconf 2021-08-17T10:49:13+01:00 2021-08-17T10:49:13+01:00 Unknown https://paulwilde.uk/ponderings/mailautoconf/ <h3 id="a-simple-configurable-autodiscover-autoconfig-service-for-distributed-and-self-hosted-services">A simple, configurable autodiscover/autoconfig service for distributed and self-hosted services.</h3> <h3 id="what-is-mailautoconf">What is MailAutoConf?</h3> <p>MailAutoConf is autodiscover/autoconfig web server for self-hosted mail services which do not have their own autodiscover service.</p> St Skeletor's Day 2021-08-03T16:53:20+01:00 2021-08-03T16:53:20+01:00 Unknown https://paulwilde.uk/ponderings/skeletor/ <p>St Skeletor's Day<br /> February 15th<br /> Every Year</p> Ross Rates 2021-04-06T21:12:57+01:00 2021-04-06T21:12:57+01:00 Unknown https://paulwilde.uk/ponderings/rossrates/ <p>Rate Stuff with Ross, quite simple.</p> Basic Dough Recipe 2021-04-01T11:41:38+01:00 2021-04-01T11:41:38+01:00 Unknown https://paulwilde.uk/ponderings/basicdough/ <p>If you have a bread maker:</p> <ol> <li>add the water, salt, sugar, herbs, oil, flour and yeast/sourdough starter <strong>IN THAT ORDER</strong> to the bread maker's container. <ul> <li>You <em>must</em> add them in that order, or at least water first else the mixture will not mix correctly.</li> </ul> </li> <li>set the bread maker to its "dough" setting and set it going - job done!<br /> (P.S. you can just use this same recipe as a regular bread too - just set the bread maker to the regular "bread" mode)</li> <li>At this point I normally transfer the dough to a suitable container and cover it to let it rise.</li> </ol> <p>Without a bread maker:</p> <ol> <li>add the flour, salt, sugar, herbs and yeast/sourdough starter to the large mixing bowl and dry mix them all together.</li> <li>form a well in the middle of the flour mixture and slowly pour in the water bit by bit, mixing the flour mixture into the water as you go</li> <li>continue to mix the flour and water mixture, you're going to need to use your hands, but give it a good mix until everything is mixed together well. <ul> <li>you want the dough to still be a bit wet, so if it's dry, add a bit more water</li> </ul> </li> <li>dust the large chopping board with flour and turn out the wet-ish dough ball onto the board.</li> <li>Knead the dough, <em>a lot!</em> Just keep kneading, adding more flour if necessary. <ul> <li>As you knead you'll noticed the dough ball become more smooth and springy, but it will also feel "stronger"</li> </ul> </li> <li>Once the ball is nice and firm, but still springy, place it into a suitable container and cover to let it rise.</li> </ol> <p>After a few hours of rising time (longer if you're using sourdough starter) your dough will, hopefully, have risen enormously. You can now use it. I'll be adding recipes for <a href="/recipes/">pizzas</a>, <a href="/recipes/">naans</a> and other things that use this dough here, eventually.</p> Unphonetic ABC 2021-04-01T11:05:46+01:00 2021-04-01T11:05:46+01:00 Unknown https://paulwilde.uk/ponderings/unphoneticabc/ <p>A website directory of all words that can be associated with their letters by <em>not</em> sounding as their corresponding letter should do.</p> Bedford & Co 2021-04-01T10:54:15+01:00 2021-04-01T10:54:15+01:00 Unknown https://paulwilde.uk/ponderings/bedfordandco/ <p>Simple single page website for a local accountancy business. Has additional Vue.js implementation for news and exchange rates updates.</p> Wilde IT 2021-04-01T10:47:49+01:00 2021-04-01T10:47:49+01:00 Unknown https://paulwilde.uk/ponderings/wildeit/ <p>A local IT business website detailing available services. Our business website.</p> The Lost Tin Opener Society 2021-03-31T22:20:31+01:00 2021-03-31T22:20:31+01:00 Unknown https://paulwilde.uk/ponderings/ltos/ <p>A spoof single page animation website of a secret society dedicated to finding all lost tin openers.</p> Noisy Faces 2021-03-31T17:22:16+01:00 2021-03-31T17:22:16+01:00 Unknown https://paulwilde.uk/ponderings/faces/ <p>Just a very silly website with an animated face making sounds.<br /> Yeah, just that really. (The image is <em>not</em> me)</p> The Geese Webpage 2021-03-31T10:05:31+01:00 2021-03-31T10:05:31+01:00 Unknown https://paulwilde.uk/ponderings/geesewildecloud/ <p>Starting life as a (sort of inappropriate) parody of a certain popular dating website the geese website was made as a bit of fun and to please minor obsession with geese.</p> About Me 2021-03-29T10:19:20+01:00 2021-03-29T10:19:20+01:00 Unknown https://paulwilde.uk/aboutme/ <p>Hello,<br /> This is my website which will contain my general thoughts, utterings, maybe my opinions, possibly some tech stuff I find interesting, some of the recipes I cook and want to remember the ingredients of and a bit of artwork I draw for fun and I in no way claim to be a good artist in any way.</p> <h3 id="some-things-about-me-i">Some things about me. I :</h3> <ul> <li>am an IT Professional. <ul> <li>I run my own <a href="https://wilde-it.co.uk">IT Business</a> that provides IT consulting, assistance and procurement services to local businesses (Devon, South West UK).</li> </ul> </li> <li>am an Open Source advocate/evangelist. <ul> <li>I try to use Open Source products in my personal and working life as often as possible.</li> </ul> </li> <li>am data privacy conscious. <ul> <li>I believe we shouldn't pay for products or services with our personal data and "marketability"</li> <li>I don't use the mainstream social media services. You shouldn't either.</li> </ul> </li> <li>use <a href="https://archlinux.org">Arch Linux</a> btw …</li> </ul> <h3 id="some-information-about-this-site-it">Some information about this site. It :</h3> <ul> <li>was created using <a href="https://getzola.org">Zola</a></li> <li>is built with efficiency in mind; It's small and light and quick to view.</li> <li>uses no JavaScript (except a little bit for <a href="https://plausible.io">Plausible Analytics</a>, forgive me).</li> <li>runs on an <a href="https://caddyserver.com">Caddy</a> server on top of a <a href="https://rockylinux.org">Rocky Linux</a> VPS provided by <a href="https://ovh.com">OVH</a>.</li> <li>was written using the <a href="https://neovim.io/">Neovim</a> text editor on a <a href="https://www.pcspecialist.co.uk/">PC Specialist</a> laptop running <a href="https://archlinux.org">Arch Linux</a></li> </ul>