{
  lib,
  pkgs,
  config,
  ...
}:
let
  # Starting with kernel 6.8, the console font is set in the kernel automatically to a 16x32 font:
  # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=dfd19a5004eff03755967086aa04254c3d91b8ec
  oldKernel = lib.versionOlder config.boot.kernelPackages.kernel.version "6.8";
in
{
  # Just set the console font, don't mess with the font settings
  console.font = lib.mkIf oldKernel (
    lib.mkDefault "${pkgs.terminus_font}/share/consolefonts/ter-v32n.psf.gz"
  );
  console.earlySetup = lib.mkIf oldKernel (lib.mkDefault true);
}