Why I'm still using the "Certainly Something" addon for Firefox

My Firefox addons haven't changed recently ( they've been the samefor a few years now , somewhat to mysurprise). This includes my continued use of Certainly Something .What is odd about this is that if you look at the source repositoryfor Certainly Something ,it notes that the addon was integrated into Firefox 72 (and theseparate version is no longer maintained). I've known about thisfor a while, but I keep on with Certainly Something installed, andI even keep using


Third party Emacs packages that I use (as of November 2023)

My current Emacs configuration seems to have more or less settleddown, so much like I do with Firefox ,I want to write down my current third party packages and what Ifeel about them, so that I can come back to it later and see howthings have changed over time. This is in no particular order exceptperhaps partly historical.

Currently I'm using Emacs 29.1 everywhere, which means I have somethings built in (although I'm not using Emacs 29.1'


Using argparse in my Python programs encourages me to add options to them

Today, for reasons outside the scope of this entry, I updated oneof my very old little Python utilities to add some features andmove it to Python 3 in the process. This program was so old it wasusing getopt , soas part of updating it I switched it over to argparse , which is what Iuse in all of my modern programs. The change was positive in avariety of ways, but one of the things it did was it immediatelycaused me to add some more command line options.


My first Django database migration worked fine

We have a long standing Django application ,using SQLite as the database layer because that's easy and all weneed at our tiny scale. For as long as we've had the applicationI've not so much as breathed on its database schema (which is tosay its model), because the thought of trying to do any sort ofdatabase migration was a bit scary. For reasons outside the scopeof this entry, we recently decided that it was time to add somefields to our application model


Setting up an IPv6 gateway on an Ubuntu 22.04 server with WireGuard

Recently we enabled IPv6 on one of our networks here (for initialtesting purposes), but not the network that my office workstation is on. Naturally I decided that I wanted my officeworkstation to have IPv6 anyway, by using WireGuard to tunnel IPv6to it from an IPv6 enabled Ubuntu 22.04 server on that network. Formy sins, I also decided to do this the more or less proper way,which is to say through systemd-networkd ,instead of through hand-


WireGuard and the question of link-local IPv6 addresses

Suppose, not hypothetically , that you aresetting up a WireGuard tunnel to extend IPv6 connectivity to amachine that is (still) on an IPv4-only subnet. One part of IPv6in general is link-local addresses , which arerequired for the IPv6 Neighbor Discovery Protocol (NDP) and areused for other things. However, under Linux WireGuard interfacesdisable automatic kernel link local generation ,leaving either your higher level software or you to configure them.So the obvious question is whether you should


Amanda and deciding between server and client compression

We use Amanda for our backups, whichdelegates the actual creation of backup blobs (tar archives or whathave you) and their restoration to other programs like tar ( althoughit can be clever about dealing with them ).One of the things that Amanda can do with these blobs is compressthem. This compression can be done with different compressors , and it can be performed on either theAmanda backup server or on the client that is being backed up(provided that you have the necessary programs on each of them)


Amanda has clever restores from tar archives (sometimes)

Yesterday I wrote an entry about how the Amanda backup systemreads all the way through tar archives on restores . Except, it turns out, this is onlypartially true, because under some circumstances Amanda willthoroughly optimize restores from tar archives (and possibly otherarchive formats). When everything is lined up right, what you'llobserve is that Amanda reads only the data being actually restored,however little or much it is, and as a result restores of smallfiles out of large backups can be quite fast.


The Amanda backup system completely reads tar archives on restores

Amanda is the backup system that we use, and have used for years.Strictly speaking, you could say that Amanda is a backup schedulingand storage management system, in that the actual backups are madeby existing tools such as tar , placing it on one side of thedivide between backup systems about how much they know about whatthey're storing . Inpractice this usually doesn't matter; you do backups through Amandaand normally you do restores through Amanda as well, with Amandaautomatically running the underlying tools


Go modules and the domain expiry problem

Every programming language with aspirations of having a usablesystem for third party packages has some sort of a namespace problem.Today, Tony Arcieri posted something about Rust's package namespaceissues , which causedme to think about Go's approach to the problem . The concisesummary is that Go outsources the problem to other people by makingpackage names be URLs. Filippo Valsorda noted that this doesn'tsolve the domain expiration problem , which istrue.

The 'domain expiration problem' is that domains (and URLs on