If you don't have Crohn's disease you can skip this article, it's not relevant to you.

If you have a Microsoft 365 Family subscription, you probably got an email notifiying you of a 30% price increase. This is bullshit and you don't have to pay it. The truth is, you are being silently upgraded to a higher subscription tier with the same name. The new tier includes Copilot AI integration, and that's what you are being charged for on the sly. To avoid the price increase, you can opt out of Copilot integration. Instructions inside.

Tuskfish 2.1 is a feature release that adds an extensible system for creating and managing blocks (the equivalent of 'widgets' in Wordpress or 'modules' in Joomla). Three block types ship by default: A Spotlight block for highlighting a particular piece of content, and 'Recent Content' block that lists the last X pieces of content filtered by tag and type, and custom HTML blocks. The code base has been updated to use recent language features. The minimum PHP version is now 8.3.

A curated collection of spooky stories from the internet. Finding great stories is like panning for gold—you have to sift through a lot of dirt to uncover the gems, but the effort is worth it when you do. Happily, I've done the digging for you. Enjoy.

Stories are by the indicated author/channel.

I thought I had the flu. But on day 5 I opened a fresh bag of coffee beans and stuck my nose in which is normally an "invigorating" experience. I couldn't smell anything. It was as if the bag was empty. After a few moments wondering what the hell was wrong with my coffee, I did a RAT test and found a very, very faint positive.

I started wondering if it knocks out your smell completely, or if it's somehow selective, and could this be used as some kind of proxy diagnostic tool? Anyway, after going through the kitchen draw, this is what I can and can't smell...

I was tempted to call this the "2025 update" but since I usually take leave in December and spend most of it tinkering, quite likely I'll do some of this before new year or at least by the end of January. The next Tuskfish CMS release will be version 2.1. Core functionality will remain unchanged, but I will add support for blocks, and if I can sort out a couple of issues, native multilanguage. Not a crappy hacked up multilanguage, but one that is baked into the core and seamless. I'll be making use of some of the more recent language features in PHP, which will raise the minimum version required to PHP 8.3. Please note that the contemporary versions of PHP are now V8.3 and V8.4, with V8.2 now end of life.

Tuskfish 2.0.8 is an incremental update with a bunch of small fixes and refinements. New features include an alternate compact template option for collections that displays child content as a list, support for a 3rd Yubikey hardware token, and extension of html toggling of content online status extended to admin search results. There are several improvements to the video templates as well: They are now responsive, and alternate selectable templates are available for common aspect ratios including 16:9, 4:3, 21:9 and 1:1.

TLDR: Quick charging technologies can cause problems. The headphones charge reliably over 5 volt connections, but may cease charging if there is an option to negotiate higher voltage charging as found on many recent chargers. Try using an ordinary USB cable without Power Delivery (PD) capabilities, or a charger that won't output more than 5 volts, and charging may be yours again. Also applies to power banks.

Optional support for ImageMagick V6 is now available. This gives much better quality thumbnails than PHP's native GD2 library, but at the cost of some manual configuration. You need to:

  • Have ImageMagic installed on your webserver (most hosting companies provide this).
  • Access to PHP's exec() function must be enabled (it is often disabled by default through the disable_functions setting in php.ini).
  • Swap in an alternative ResizeImage.php trait file (provided).
  • Configure the file path to an sRGB.icc colour profile on your server (you can download one if necessary).
  • Clear the image cache (html/cache), which will cause thumbnails to be rebuilt.

You can adjust the level of compression and sharpening in the trait file method createThumbnailWithExec().

Update 2: I got annoyed and added optional support for ImageMagick V6, some manual configuration is required.

Update: The PECL extension for ImageMagick is broken for PHP 8.3. It has been busted for over a year and nobody seems to give a damn, so this work is shelved until it gets fixed.

I've never been happy with thumbnails generated by PHP's native GD2 library, so I'm adding optional support for ImageMagick in the next release. If ImageMagick is installed, Tuskfish will use it by default, and if not, it will fall back to GD2. ImageMagick is widely available on most, if not all, commercial web hosts.

ImageMagick offers two benefits over GD2:

  • It generates much better quality thumbnails than PHP's native GD2 library. The thumbnails generated by GD2 are a bit fuzzy, and larger images can actually look pretty bad.
  • ImageMagick is aware of colour profiles and will preserve colour space information. GD2 is not only unaware of colour profiles, but actually discards them, which causes colour shifts in images that can render them drab and washed out.

To keep things simple, I will only be supporting the sRGB colour profile, which is the default for the web. You should already be converting your master images in sRGB before using them on websites anyway, because browsers generally will not be able to render other profiles correctly.