Calibre News

I follow local news – news from my city – daily via RSS. For anything wider in scope, I find that weekly is the correct cadence. Anything more frequent is generally a waste of time and not conducive to living life. I get my non-local news via Calibre News.

Calibre ships with a large number of recipes, which are Python modules that tell it how to download content from websites. (One can create their own recipes, but I have not bothered to do so.) When a recipe is run, Calibre fetches all content and creates a nicely formatted EPUB. Often the recipe is able to bypass paywalls, making this the best way to freely read online news.

The news functionality has a scheduler which can be used to fetch content from selected recipes in an automated and periodic fashion. It can take some experimentation to figure out what schedule makes sense for which source, as there is not any sort of duplication controls. If the source only posts updates weekly, but you have Calibre scheduled to run the recipe daily, you will end up with 7 identical EPUBs at the end of the week.

Recipes can also be executed via the command line by passing a recipe name and output filename to ebook-convert. This allows you to setup your own scheduler using cron or systemd timers.

$ ebook-convert "The Economist.recipe" .epub

Calibre includes configurable controls for how many issues of a news source you want to store. You can tell it to only keep up to 3 issues, or keep all issues up to 30 days old, for instance.

Once the EPUB is in the library, Calibre takes care of automatically pushing it to connected devices and deleting old files.

The author on these files is set to calibre, causing them to be stored within the library in a calibre/ directory. My library is stored as a git-annex, but unlike all the actual books in my library, I consider these downloads to be ephemeral. I do not want them tracked by git, or pushed to my special remotes. I achieve this by adding calibre/ to my .gitignore file.

Each of the files is tagged with news, so I can easily exclude them from my book searches, or filter the library for only them.

The two recipes I keep scheduled are those for The Economist and Foreign Affairs. The Economist is scheduled for every Friday. Foreign Affairs is scheduled for every 60 days. What this means in practice is that I open Calibre every Friday morning and plug in my eReader. Within a few minutes Calibre will download my weekly news from The Economist, and Foreign Affairs every other month, and sync them to the device. I read those EPUBs over the next week.

Previously I also scheduled downloads for The Diplomat, but I found that The Economist’s Asia coverage was adequate enough for my needs. I’ve also used Calibre to download The Atlantic and Harper’s, but these days I rarely find myself in the mood for long-form articles – I’d rather spend that time reading a book. Foreign Affairs is the exception here, but it is a worthy one. Between the one and the other I am mostly consuming facts, which I gather is not the case for many people.

Excepting the city news in my RSS reader, my news consumption outside of these EPUBs is almost zero. This has been working well for me. I judge my success by the number of memes I do not understand.

Link Log 2025-06-14

Cyber City Odeo 808 - Cyberpunk UI

Red caps and green beards

Living with a Rohloff Hub

News That Stays News

The Nightly

Worm

Take Five (Dave Brubeck, 1964)

At Play in the Fields of the Cows

Link Log 2025-04-23

Oman riding January ‘25

Riding in Saudi Arabia - Part 1

Riding in Saudi Arabia - Part 2

A Brief Rant on the Future of Interaction Design

Food fermentation in space: Opportunities and challenges

Fabulous, Fabulous, Fabulous: An interview with Ty Yorio, Citadel Security Agency

Battery Townsley

Pilot Elite

I’ve been attracted to the form factor of the Kaweco Sport for a while, though the low capacity of the piston converter is a bit of a turn off. Last year when they released the aluminum body piston filler my attraction increased, but those pens cost more than I want to spend. Then at the end of the year they released a resin version of the piston filler for a lower price, and I found a sale with a good discount during the holidays. I bought one.

I like the pen. I especially like to carry it in the sleeve pocket of my MA-1, because I like the idea of living in a world where people walk around with fountain pens in MA-1s. Be the change you want to see in the world. Unfortunately, I scored that Pilot Vanishing Point on eBay at the end of 2023. That has been my daily writer ever since, and purchasing the Kaweco Classic Sport Piston Filler made clear that the Vanishing Point has ruined me for other pens. Specifically, on two points.

First, the Vanishing Point has an 18k gold nib. The Kaweco Sport does not. Kaweco’s steel nib isn’t bad, but it isn’t gold, and when I write with it I often find myself thinking “I could be writing with the VP instead.” It isn’t scratchy, but it isn’t not scratchy.

Second, the cap of the Kaweco Sport screws on. I journal daily, but that’s the only point at which I am sitting down with the intention to write. Any other time I grab a pen during the day it is to jot down some quick note. The clicky clicker of the Vanishing Point is extremely convenient for that. Needing to take the time (and two hands) to unscrew the Kaweco’s cap is comparatively annoying.

But I do really like the form factor of the Kaweco Sport. I wished for a pocket pen with a gold nib and a non-threaded cap. And then the universe opened my eyes to the Pilot E95S. At 4.7” when capped, it is a little longer than the Kaweco’s 4.1”, but it is still pocket sized. And it has a gold nib. And the cap is not threaded. And it is expensive.

So I went searching on eBay for a used one. I looked periodically for a few weeks and nothing turned up for an acceptable price. But the E95S is a modern re-issue of a classic pen called the Elite. Once I figured out that I should search for “Pilot Elite”, a plethora of reasonably priced options appeared. This is how I came to purchase my first vintage fountain pen.

Pocket Pens

The pen is everything I wanted it to be. The Pilot Vanishing Point is still my favorite, but the Elite is a close second.

Removing and posting the cap does take longer than clicking the Vanishing Point, but is still quicker than unscrewing anything, and it is immensely satisfying. All the reviews I read of both the Elite and the E95S mentioned how nice the action of uncapping, capping and posting the pen feels. They weren’t wrong. The taper of the body and the steel structure within the cap – a sort of leaf spring – provides the feeling of a smooth, perfect press fit. It is mildly addicting.

The nib is great, as expected. The Elite was available with both 18k and 14k gold nibs. I bought a 14k in fine, and it feels just as smooth and pleasant as the 18k fine nib in the Vanishing Point. Maybe a hair thinner, which makes me want to use a slightly wetter ink. But my two favorite inks are still Noodler’s Heart of Darkness and Noodler’s Army Air Corp, and I enjoy both inks interchangeably in both pens.

The code at the base of my nib is H977. This means the pen was manufactured in Hiratsuka in September 1977.

There are a few Elites on eBay for $30-40. If the pen is that cheap, it is probably one of the steel nib versions that was made in Korea. The Japanese gold nib versions are more expensive, but I found that if you do not care about a few scratches – which, for a pocket pen, I do not – there are plenty of attractive options in the $50-75 range. I think that’s a great deal for this level of quality. I already want to buy a second.

FMP

It fits in the MA-1, too.

Link Log 2025-04-04

Return to Naoshima

Inside Brian Eno’s Studio

The Age of the Double Sell-Out

The Obsidian Turtle Governs the North

‘vibecoded’ saas are a privacy nightmare

China MiĆ©ville says we shouldn’t blame science fiction for its bad readers

Last Boat Home

Long have I wished for a good quality USB power bank with a switch.

Sometimes I want to leave a device connected to the battery, but powered off. Last November I stopped looking for a power bank and instead bought a couple short cables with switches. I plugged one into one of my trusted Anker power banks, slapped a couple ranger bands on there, and have been living the dream ever since.

USB Rocker Switch

There’s nothing quite as satisfying as a good rocker switch.

Link Log 2025-02-20

Good Sign-Offs

Why Ice Delays Recovery

Alien Romulus - Retro Sci-Fi UI

The hardest working font in Manhattan

Analog vs. Digital? Nah. PC vs. Hardware.

Voters Were Right About the Economy. The Data Was Wrong.

3, 2, 1, Let's Jam.... Bebop Bounty Big Band

Cloning Backup Drives

Continuing with the theme of replacing drives, recently I decided to preemptively replace one of the external drives that I backup to via rsnapshot – or, more specifically, via cryptshot. The drive was functioning nominally, but its date of manufacture was 2014. That’s way too long to trust spinning rust.

rsnapshot implements deduplication via hard links. Were I to just rsync the contents of the old drive to the new drive without any special consideration for the links, it would dereference the links, copying them over as separate files. This would cause the size of the backups to balloon past the capacity of the drive. Rsync provides the --hard-links flag to address this, but I’ve heard some stories about this failing to act as expected when the source directory has a large number of hard links (for some unknown definition of “large”). I’ve been rsnapshotting since 2012 (after a pause sometime after 2006, apparently) and feel safe assuming that my rsnapshot repository does have a “large” number of hard links.

I also do not really care about syncing. The destination is completely empty. There’s no file comparison that needs to happen. I don’t need to the ability to pause partway through the transfer and resume later. Rsync is my default solution for pushing files around, but in this case it is not really needed. I only want to mirror the contents of the old drive onto the new drive, exactly as they exist on the old drive. So I avoided the problem all together and just copied the partition via dd.

Both drives are encrypted with LUKS, so first I decrypt them. Importantly, I do not mount either decrypted partition. I don’t want to risk any modifications being made to either while the copy is ongoing.

$ sudo cryptsetup luksOpen /dev/sda old
$ sudo cryptsetup luksOpen /dev/sdb new

Then I copy the old partition to the new one.

$ sudo dd if=/dev/mapper/old of=/dev/mapper/new bs=32M status=progress

My new drive is the same size as my old drive, so after dd finished I was done. If the sizes differed I would need to use resize2fs to resize the partition on the new drive.

If I was replacing the old drive not just because it was old and I was ageist, but because I thought it may be corrupted, I would probably do this with GNU ddrescue rather than plain old dd. (Though, realistically, if that was the case I’d probably just copy the contents of my other rsnapshot target drive to the new drive, and replace the corrupt drive with that. Multiple backup mediums make life easier.)