RSSAmplifier

Blog

Notes from the Library

spwhitton

spwhitton.nameRSS feed ↗10 posts

Latest posts

dgit-as-a-service retrospective

We recently launched tag2upload , aka cloud dgit or dgit-as-a-service . This was something of a culmination of work I’ve been doing since 2016 towards modernising Debian workflows, so I thought I’d write a short personal retrospective. When I started contributing to Debian in 2015, I was not impressed with how packages were represented in Git by most package maintainers, and wanted a pure Git…

Southern Biscuits with British ingredients

I miss the US more and more, and have recently been trying to perfect Southern Biscuits using British ingredients. It took me eight or nine tries before I was consistently getting good results. Here is my recipe. Ingredients 190g plain flour 60g strong white bread flour 4 tsp baking powder ¼ tsp bicarbonate of soda 1 tsp cream of tartar (optional) 1 tsp salt 100g unsalted butter 180ml buttermilk,…

sway-completing-read

I finally figured out how to have an application launcher with my usual Emacs completion keybindings: This is with Icomplete. If you use another completion framework it will look different. Crucially, it’s what you are already used to using inside Emacs, with the same completion style (flex vs. orderless vs. …), bindings etc.. Here is my Sway binding: bindsym p exec i3-dmenu-desktop \…

Eight years in Tucson

I spent eight years doing teaching and research in Philosophy at the University of Arizona, in Tucson, Arizona, from 2015 to 2023. I now have a love for America and its people, even though I am not sure I could ever live there again. Americans would say that Tucson is an outlier, an odd post-frontier town which is not reflective of the rest of the nation’s cities. And I only really visited New…

dissertmake

Ian suggested I share the highly involved build process for my doctoral dissertation , which I submitted for examination earlier this year. Beyond just compiling a PDF from Markdown and LaTeX sources, there are just two, simple-seeming goals: produce a PDF that passes PDF/A validation, for long term archival, and replace the second page with a scanned copy of the page after it was signed by the…

consfigurator 1.3.0

I’ve just realised Consfigurator 1.3.0, with some readtable enhancements. So now instead of writing (firewalld:has-policy "athenet-allow-fwd" #>EOF><?xml version="1.0" encoding="utf-8"?> <policy priority="-40" target="ACCEPT"> <ingress-zone name="trusted"/> <egress-zone name="internal"/> </policy> EOF) you can write (firewalld:has-policy "athenet-allow-fwd" #>>~EOF>> <?xml version="1.0"…

Always running Emacs under gdb

The emacsclient(1) program is used to connect to Emacs running as a daemon. emacsclient(1) can go in your EDITOR/VISUAL environment variables so that you can edit things like Git commit messages and sudoers files in your existing Emacs session, rather than starting up a new instances of Emacs. It’s not only that this is usually faster, but also that it means you have all your session state…

reprepro-rebuilder

I’ve come up with a new reprepro wrapper for adding rebuilds of existing Debian packages to a local repository: reprepro-rebuilder . It should make it quicker to update local rebuilds of existing packages, patched or unpatched, working wholly out of git. Here’s how it works: Start with a git branch corresponding to the existing Debian package you want to rebuild. Probably you want dgit clone foo .…

Setting up a single-board desktop replacement with Consfigurator

The ThinkPad x220 that I had been using as an ssh terminal at home finally developed one too many hardware problems a few weeks ago, and so I ordered a Raspberry Pi 4b to replace it. Debian builds minimal SD card images for these machines already, but I wanted to use the usual ext4-on-LVM-on-LUKS setup for GNU/Linux workstations. So I used Consfigurator to build a custom image. There are two key…

gnus+notmuch

I’d like to share some pointers for using Gnus together with notmuch rather than notmuch together with notmuch’s own Emacs interface, notmuch.el. I set about this because I recently realised that I had been poorly reimplementing lots of Gnus features in my init.el, primarily around killing threads and catching up groups, supported by a number of complex shell scripts. I’ve now switched over, and…