Happy New Year, 2026

A short note to wish all my readers, regulars and just-passing alike, a very happy 2026. I shall likely be off-line for much of January and early-to-mid-February, given my editing responsibilities for the Ralph Vaughan Williams Society's Journal, but I hope to keep the software coming nonetheless.

2025/12/31 18:46 · hjr · 0 Comments

Christmas News

My apologies to readers for basically not having posted anything over the Christmas period and not even getting around to wishing anyone a Happy Christmas! :-( The unfortunate truth was that I woke up on the morning of December 20th basically unable to move. I've no idea why, but perhaps I'd slept at an awkward angle or something: my neck would spasm in excruciating pain if I did so much as try to talk. Two days in bed, immobile, brought some relief… but the problem still hasn't entirely resolved itself a week and a bit later. I am at least moving around, able to cook the Christmas lunch and get plastered at the local watering hole, though: so things are looking up!

A new version of Giocoso will probably be released on schedule sometime on December 31st, but my enforced bed-rest has meant less ability to code than I'd have liked, so I might push the release date back a day or two.

It's going to be an interesting release, though, because a long-standing speed/screen refresh issue has finally been resolved. The problem is that Giocoso draws its various screen elements at specific positions in the terminal by means of making calls to the external (i.e., non-Bash) tput utility. It works fine… but every call-out to tput requires a context switch on the CPU and is thus relatively expensive in compute resources. On PCs with slightly under-powered CPUs (such as my Raspberry Pi 4 that I use as my music player, or the 2015 iMac I'm now using as my daily driver) the consequence was that every change of the terminal contents would produce notable “flashing” as the screen was laboriously re-drawn. It looked pretty ugly.

And then I started watching Dave Eddy's YouTube channel! The man is a wicked genius at Bash scripting (and other stuff, but his Bash skills are extraordinary) and in his latest Christmas video, specifically around the 32 minutes mark, he happened to mention in passing that he'd written a purely-Bash implementation of much of the tput utility's functionality. Since it's all done within the same Bash session, there's no CPU context switching and the functionality is thus implemented with much greater efficiency than before. His code was therefore swiftly copied and pasted into assorted parts of Giocoso… and the transformation has been immediately, obvious and impressive. The thing finally runs much more effectively and without the 'flashing' during screen re-draws. It's an amazing little tweak, for which I can't thank Dave enough… though he does get a formal copyright acknowledgement in the code comments inside giocoso3.sh!

In the New Year, I'll be busy editing my second edition of the Ralph Vaughan Williams Society Journal, due out before the end of February, so coding is likely to take a back seat during that period. The promised new version of Semplice that (mostly!) runs on macOS will thus have to wait until after that's all done: maybe some time in March, then.

By way of a bit of catch-up, I can't help but report on this, which happened in November:

That's me, fourth from the right, looking directly at the camera, singing on the stage of the Snape Maltings Concert Hall! A lifetime's dream come true, basically :-) The occasion was a 'Ceremony of Carols from Scratch', wherein a complete bunch of amateurs came together to sight-read and rehearse Benjamin Britten's great work from the 1940s, A Ceremony of Carols, and then to give a performance later in the afternoon. I so rarely get to sing these days that the occasion would have been great fun even if it had taken place in someone's backyard. To be able to do it on that particular concert platform, however: amazing!

Now is also about the time that I do a 'year in review' of my music playing. The charts tell their own story: this year, I've played fewer recordings (by number) than in any year since 2018. That's because, in my efforts to drive down the number of recordings in my collection that hadn't been played at least once by Giocoso, I spent the first half of the year playing lengthy works by the likes of Wagner and Verdi. Few in number, but lengthy in terms of minutes of play-time: that's why you'll also see that the 'Play Durations by Year' graph shows me playing 3,875+ hours of music this year …almost matching last year's play durations and comfortably exceeding the duration of music listened to in any of the other previous four years. That many hours, by the way, equates to 161 days: I was basically listening to music for 44% of the year!

My top composers this year have been (with hours of play-time shown next to each composer name):

Johann Sebastian Bach526
Richard Wagner400
Ludwig van Beethoven330
George Frideric Handel314
Giuseppe Verdi271
Wolfgang Amadeus Mozart263
Antonio Vivaldi120
Joseph Haydn92
Gioachino Rossini81
Benjamin Britten54

Britten squeaks into the list this year because of his November 22nd birthday… everyone else is there because of the 'drive to play everything once' playing campaign. I have found, since that goal was achieved on October 14th, that I'm now playing a huge number of different composers once more, which is much more pleasant. I have Giocoso set up to prevent a composer's works being replayed more than once per month and to restrict play durations to less than 90 minutes: the number of variety of relatively short compositions played have therefore rocketed in the past three months, which has been a delight.

Given the names in the 'top composers of 2025' list, it shouldn't be a surprise what were the most common genres to be played this year (again, with hours played shown in the second column):

Opera1388
Oratorio466
Symphonic388
Choral351
Keyboard324
Concerto221
Orchestral151
Chamber80
Quartet58
Film - Theatre - Radio53

Most of that huge opera listening was thanks to just two lads from 1813: Wagner and Verdi. They're going to be rare pleasures in 2026, given that the need to play them at least once has now passed and the desire to play them again is tempered by the realisation that you're into a multi-hour-long bout of melodrama and emotional excess if you once start playing anything of theirs!

Perhaps the biggest news from 2025 from the deepest recesses of musical Lincolnshire is that I have abandoned Linux as my daily driver and switched to, er, <cough> macOS. Yup: I don't particularly like Apple's software, but their hardware is lovely and the retina screens from even a decade ago are pleasing to my ageing eyes. I'm really hoping that in the New Year I shall finally summon up the wherewithall to go purchase a modern Apple Silicon iMac from the Apple store in Cambridge. It will involve eye-watering amounts of cash… and I hate the built-in obsolescence timer that means anything you buy now will cease to receive official support in just a handful of years. I had been contemplating a move from Linux to BSD at some point: Linux developers have been doing weird things of late (Wayland, anyone?!) and though I've been using it exclusively since 2012, I've basically had enough of it. Apple's macOS is essentially BSD under the hood, with a very weird userland on top of it! I can cope, I think. I just need the bank balance to expand to accommodate the new fashion!

Anyway, that's it from me for 2025: see you again soon in the New Year, I hope. Entirely incidentally, bonus points to anyone who can examine the thumbnail to this post and work out why AI is very artificial and definitely not intelligent!!

2025/12/28 17:09 · hjr · 0 Comments

Giocoso Version 3.32 Released

A day later than anticipated, I've just released Giocoso Version 3.32. It contains some significant new features, including support for Kitty graphics for terminals that can't display album artwork using sixel graphics; a terrible logic bomb I created back in 3.30 affecting the way the time bar worked that is now fixed; a new installer that looks better and performs more efficiently; and support (somewhat rudimentary!) for running on macOS.

Administration Menu Option 1 should get you the update, without major issue.

Edited to add: documentation is progressing well, with new pages regarding installation on Windows 11 now nearly complete.

2025/12/11 21:23 · hjr · 0 Comments

Whisper it quietly...

Seasoned visitors to my website, under whatever domain name it inhabits, will know my love of Linux and my loathing of all things Windows and Apple. Don't click on the thumbnail to this blog post, therefore, unless you are sitting down with a bottle of smelling salts handy.

I am a creature of impulse, sometimes, and when I was up in the loft getting down the Christmas decorations for this year's outing, I spotted a 2015 21.5“ iMac sitting forlornly in a spiderweb-encrusted corner and thought… why not? So down it came too, and its Debian installation was wiped and the machine restored to its El Capitan original OS, swiftly updated to the latest officially-supported release of Monterey. It looks nice enough: in fact, the retina screen makes text look gorgeous though twenty one and a half inches of screen real estate seems somewhat underwhelming. It's not a bad computer, though: i5 at 3.1GHz and 16GB RAM are decent enough. It's real drawback is the spinning rust hard disk that makes everything quite slow to load: an upgrade to an SSD would certainly improve things on that score. The star of the show is undoubtedly the retina screen, which makes text look stunning, as previously mentioned. I still find MacOS a complete mystery, though: perhaps unsurprisingly, as I must have spent at most… 16 hours or so using it in my entire life.

Anyway, a few years ago, I made Giocoso Version 2 run on MacOS for some reason or other that I now can't recall: I never bothered trying to get Giocoso Version 3 to run on it, however. The thumbnail to this post tells you, however, that after a day or so spent futzing around with things, I have been able to get Giocoso Version 3.32 (the one due to be released early in December 2025) running on it. I don't entirely know whether it is worth having done so, as everyone who loves Apple will have long since moved on from Intel Macs to the Apple Silicon variety that I don't possess (and am unlikely ever to do so). But the job is done anyway: impulse is like that sometimes!

This may delay the release of Version 3.32 a little: I mentioned last time that I was thinking of releasing it a week earlier than its planned December 10th release date… but the code changes I've implemented to get things on MacOS now need testing back on Linux, to make sure I didn't break anything there. So I think the release date reverts back to December 10th after all. All zero of the thousands not clamouring to run Giocoso on their Macs will be grateful, I suppose!

2025/11/30 09:28 · hjr · 0 Comments

Rethinking Support

I've been thinking for some time of revamping the support I offer for my three bits of software: there are simply too many distros to be testing all three on all of them! So instead, I've decided on a “tiered support” structure, allowing to focus my efforts on distros I actually use for real, on real hardware, and offering a lesser form of support for running on other distros that I only ever virtualise or have barely heard of.

  • Tier 1 will be comprehensively tested on real hardware, using distros I actually use for real every day.
  • Tier 2 will be tested for installation and basic functionality using only virtual hardware.
  • Tier 3 will not be tested usually, but if specific issues or bugs are raised with me via email, I'll spin up virtual machines on an ad-hoc basis and get issues sorted.
  • Tier 4 will not generally be tested at all. Things should work but you're basically on your own should issues ever arise.

Putting specific names to the various tiers, then, we have:

  • Tier 1: Full Support: AlmaLinux 9 and 10, Raspberry Pi OS, Fedora, Linux Mint
  • Tier 2: Partial Support: Debian, EndeavourOS, Ubuntu
  • Tier 3: Some Support: OpenSuse Leap & Tumbleweed, GeckoLinux, Arch, Manjaro, Garuda Linux, Devuan, Linux Mint Debian Edition, Peppermint OS, MX Linux, AntiX Linux, Pop! OS, Linux Lite, Zorin OS, Elementary OS, KDE Neon, Tuxedo OS, Nobara, Ultramarine
  • Tier 4: Unsupported: Windows, macOS

Two big casualties are apparent in this new plan: Arch and OpenSuse. Arch is just too fast-moving for me to keep up and is, in any case, never installed in standardised way, which makes supporting it practically impossible. OpenSuse is dropped as a tier 1 platform because it's peculiar and literally no-one I know of uses it as a desktop OS.

Ubuntu and Debian also take a bit of a hit: I loathe Ubuntu's use of snaps and several other features of its 'not invented here' approach to OS development; and Debian is probably a bit too slow-moving and out-of-date to be anyone's primary choice of desktop distro. Nevertheless, it's not that I won't test my software on them at all, but the tests won't be real-world, extensive usage tests. I'm also restricting myself from here out to testing on Long Term Support (LTS) editions of Ubuntu only. Currently, that means 22.04 and 24.04. Imminently, it will also include 26.04… but I won't support running anything on a xx.10 non-LTS release.

The numerous 'minor' distros that proliferate endlessly are all now in Tier 3. Distros like Peppermint Linux, MX Linux, Devuan, Pop! OS, Zorin, Tuxedo and Linux Mint Debian Edition and so on all get some sort of support because their parents (usually Ubuntu or Debian) are in more supported tiers above them. If I'm notified of specific bugs or irregularities in the operation of my software on such 'niche distros', I'll be more than happy to spin up a virtual machine and try to sort the issue out: but I won't generally or routinely test on these distros any more.

The move of Windows to Tier 4 status is occasioned by the end of official support for Windows 10 and the fact that I don't own any hardware that can officially run Windows 11 (and refuse to have a mandatory Microsoft account to use Windows 11 even if I had the hardware!) I know my software will run on these platforms, because if my software runs on 'real' Linux, it will run just fine on the same distros running under the Windows Subsystem for Linux… but I can't really support that platform if I can't myself run it in an officially supported manner. So Windows moves to the “it ought to work, good luck” tier! I'll certainly look at issues if they're brought to my attention, but it will be on a 'best effort' basis only.

On the plus side of the ledger, AlmaLinux gets tier 1 support: it's a free-of-cost clone of Red Hat Enterprise Server, so support for it also applies to Rocky Linux, which is another clone of the same thing. I use AlmaLinux 9 to run Niente and this website; I use AlmaLinux 10 in a virtual environment only. I'll do thorough testing on both versions, though. Raspberry Pi OS also gets tier 1 status because I now use a Pi 4 as my main music player PC and a Pi 3B+ as a secondary player in the summer house. I don't own a Pi 5 yet, so I can't claim things will definitely work on that platform, but they should do.

Fundamentally, then: I'll still offer help and support for running my stuff on any Linux distro. But there will now be just a handful of distros on which I guarantee things will work. There'll be a handful of distros where things have been tested enough to give me confidence things will work -but there might be some edge cases my testing misses. There'll then be a swathe of distros where ad hoc support will be available, but very little pre-release testing will have taken place. And then there's Windows!

Documentation updates will soon take place for Giocoso, Semplice and Niente to reflect this new approach.

Incidentally, the next version of Giocoso (version 3.32) is likely to be released around December 4th, a week earlier than anticipated: it's been in daily use here for a coupld of weeks and there have been no issues, so holding back an extra week seems a bit pointless. Watch this space, I guess…

2025/11/25 17:19 · hjr · 0 Comments

<< Newer entries | Older entries >>

  • blog.txt
  • Last modified: 2025/10/02 15:27
  • by hjr