Posts

Tiny House 1: The Building Bug Bites Again

The little cabin I bought last May is too small to host guests. The only possible space that could have been used for that purpose is taken up by a seven-foot grand piano. You gotta have priorities.

Read more →

January 9, 2025

Using tesseract with xsane

Xsane is the standard image scanning program for Linux Mint. One useful feature is the ability to convert a scanned image to text. After you scan an image, use “ABCDEF” button in the Viewer to save the image as a text file. By default, Xsane uses a program called gocr to for the OCR conversion. Because I prefer to use tesseract for OCR, I wrote a small wrapper script to emulate the behavior of gocr. Then in xsane Preferences / Setup, in the OCR tab, I changed the OCR command to the full path of my script.

Read more →

November 9, 2024

Double-Page Mode in Neoreader on Boox Tab X

The Boox Tab X is a large e-ink tablet running Android. It’s a good platform for running Mobilesheets , a very capable sheet music app. But it is also a good platform for reading ebooks, using its built-in Neoreader app. Because the screen on the Tab X is so large (approx. 13 inches), it is practical to view books in Neoreader in double-page mode, simulating the appearance of an open book with two visible facing pages. I first figured out how to enable the double-page view by accident, but immediately forgot how to do it, and spent an embarrassingly long time figuring it out a second time.

Read more →

October 23, 2024

Blocking Koha Attacks With iptables

Our library’s Koha installation has been subject to unfriendly attacks by servers in China that are apparently associated with Alibaba. The symptom is that Koha becomes very slow, and the top command on the server shows that Koha is using 100% of all CPUs.

Read more →

April 5, 2024

Self-hosting a CalDAV service

One of the common uses of Google’s “free” services is the appointment calendar. Similar services are provided by other vendors, but as part of my effort to free myself from Big Tech, I decided to host a CalDAV service on my own Ubuntu 22.04 server. There are two parts to hosting CalDAV: a server and a web client.

Read more →

December 30, 2023

Running a Linux Server for Fun and Non-Profit

For the last couple of months, I’ve gradually been weaning myself from some Big Tech services, and reimplementing these services on my own Linux VPS (virtual private server) on Linode, running Ubuntu Server 22.04.

Read more →

November 10, 2023

Publishing source code with Cgit

As part of my continuing work to free myself from Big Tech, I recently moved most of my source code repositories from Gitlab to Cgit on my own server. There’s nothing particularly wrong with services like Gitlab or Github, but they are far more powerful than I need. My source code projects are a one-man show; virtually nobody else is interested in them. So I don’t need all of the fancy collaboration tools offered by the big Git sites.

Read more →

November 9, 2023

Clonezilla and Windows 7

I manage the computers at our local library, and unfortunately, most of these run Windows – Windows 7, to be specific. This operating system can be terribly slow at times, on our slightly old desktop computers that use hard disks instead of SSDs. When booting, it often takes Windows a minute or two have a fully working desktop, and you have to watch a spinning hourglass during that time. Also, when Windows puts itself to sleep after some idle time, the wake-up process is so slow and disk-intensive that you might as well go to lunch while waiting for it.

Read more →

November 5, 2023

Implementing the xBrowserSync API

For about a year, I’ve used the Brave browser, mostly due to its built-in ad blocking and its bookmark sync feature. I have been using Brave on four different devices (three Linux laptops and one Android phone running GrapheneOS), so the bookmark sync feature is very useful. But this article on the privacy features of numerous browsers is rather scathing about Brave. So I decided to try Ungoogled-Chromium , along with the uBlock Origin and uMatrix extensions.

Read more →

November 4, 2023

Put Brave Browser Cache in RAM

The Brave browser is constantly writing large amounts of data to its cache, which is a concern when your storage device is an SSD. The solution is to put Brave’s cache on a RAM disk, i.e., a tmpfs device on Linux. Some Linux distros, like Arch, mount /tmp as tmpfs, but Linux Mint 21 does not.

Read more →

October 10, 2023