today's howtos
-
TecMint ☛ How to Fix “bash: curl: command not found” Error
In this tutorial, you will learn what this error means, and how to install the curl command across all major Linux distributions to fix it.
-
DJ Adams ☛ Quick conversion of multiple values using with_entries in jq
This blog post demonstrates how powerful the combination of jq's to_entries and from_entries can be, and show how with_entries is a great extension of that.
-
Lawrence Tratt ☛ Some Reflections on Writing Unix Daemons
Unix daemons are programs which run in the background, performing tasks on our behalf indefinitely. Daemons are somewhat mysterious, easily overlooked, programs of a kind few of us have experience in writing.
In this post I’m going to describe some of the things I’ve learnt in the course of writing and maintaining 3 daemons (extsmail, snare, and pizauth) over 15 years. I’m going to start, however, with a brief overview of what daemons are, and how we get them up and running, as it will make the later parts of the post easier to understand.
-
Terence Eden ☛ A simple(ish) guide to verifying HTTP Message Signatures in PHP
Mastodon makes heavy use of HTTP Message Signatures. They're a newish almost-standard which allows a server to verify that a request made to it came from the person who sent it.
This is a quick example to show how to verify these signatures using PHP. I don't claim that it covers every use-case, and it is no-doubt missing some weird edge cases. But it successfully verifies messages sent by multiple Fediverse servers.
-
Trevor Morris ☛ CSS for Laravel without Node
I have been building websites using Laravel for years. In that time I have used the built-in solutions for managing frontend assets. For a long time, Laravel Mix – an elegant wrapper for webpack – was the preferred method for compiling, minifying and manipulating CSS, JavaScript and image assets, optimising them for the frontend. Even when developing non-Laravel-based websites – such as with Eleventy – I still reached for the familiar Mix solution.
-
TuMFatig ☛ Build a Unison package for Synology DSM
For reasons, I’m turning my Synology DS918+ on and start using it again. One thing I need is files synchronization with my OpenBSD laptop. There is no Synology Drive client for OpenBSD so I’ll keep using Unison . But there is no Unison client / server binary for DSM 7.2.1-69057 Update 4.
Here’s how to compile and install the Unison File Synchronizer for Synology DSM 7.2.
-
Juha-Matti Santala ☛ Search, Webmentions and microformats
Inspired by a Youtube video by Coding in Public, I decided to add a search function to my site. It’s actually something I’ve wanted to have for a long time but given this is a purely static, generated site, I hadn’t found a good option. I didn’t want to build something that would rely on 3rd party APIs or anything like that because I want to keep my dependencies as small as possible.
From that video however, I learned about a tool called Pagefind that makes it possible to generate the search after the build and then made available in the website.
-
University of Toronto ☛ Our probably-typical (lack of) machine inventory situation
The core reason that we have wound up with many different lists of machines is that we use many different tools and systems that need to have lists of machines and each of them has a different input format and input sources. It's technically possible to generate all of these different lists of machines for different programs and tools from some single master source, but by and large you get to build, manage, maintain both the software for the master source and the software to extract and reformat all of the machine lists for the various programs that need them. In many cases (certainly in ours), this adds extra work over just maintaining N lists of machines for N programs and subsystems.
-
OSTechNix ☛ Why Aliasing rm Command is a Bad Practice in Linux