On Mon, May 31, 2021 at 12:57:47PM +0200, Mark Kettenis wrote:

> > +option             FONT_SPLEEN8x16
> > +option             FONT_SPLEEN12x24
> > +option             FONT_SPLEEN16x32
> > +option             FONT_SPLEEN32x64
> > +
> >  option             RAMDISK_HOOKS
> >  option             MINIROOTSIZE=7360
> >  
> > Does this look reasonable?
> 
> I would skip some sizes.  8x16 is readable on any screen size where
> 12x24 would be picked.  And maybe 16x32 is good enough for 4K screens
> as well?

Right, the 16x32 variant is small but readable on my 27" 4k monitor, so
it sounds reasonable to skip the 32x64 version for now. For the 12x24
version I agree that it's not stricly necessary, just more comfortable.
> 
> > If it does and if we want to go this way, I can try to build a release
> > and check if MINIROOTSIZE must be bumped on RAMDISK_CD. Then we could do
> > the same for i386, armv7 and arm64.
> 
> I'm all for it, but last time this came up Theo didn't like it and
> suggested adding code to scale up the fonts instead.  I really don't
> think you want to upscale the 8x16 font to 32x64.  But if we add the
> 16x32 font, upscaling that to 32x64 for the really big screens might
> be an option and a reasonable compromise?

Indeed, if we want to go this way, I believe upscaling the 16x32 version
to 32x64 would give good enough results on 4k screens.

> But figuring out how much things grow by adding the 16x32 font would
> be a good start.

So I built three miniroot images using the same source tree, and
results are below. There was no need to bump MINIROOTSIZE.

Result of running df -h on mounted vnode disks:

/dev/vnd0a     4.3M    4.1M    146K    97%    /mnt0
/dev/vnd1a     4.3M    4.1M    146K    97%    /mnt1
/dev/vnd2a     4.3M    4.1M    146K    97%    /mnt2

Sizes (in bytes) of compressed kernels extracted from miniroot images:

-r-xr-xr-x  1 root  wheel  4215406 Jun  1 14:47 bsd (baseline)
-r-xr-xr-x  1 root  wheel  4217267 Jun  1 15:33 bsd (+Spleen 16x32)
-r-xr-xr-x  1 root  wheel  4218986 Jun  1 20:26 bsd (+Spleen 12x24 and 16x32)

Size difference from baseline:

With Spleen 16x32:           +1861 bytes
With Spleen 12x24 and 16x32: +3580 bytes

I would be fine with adding only the 16x32 version, but still provided
numbers for the 12x24 in case we decide the size difference is small
enough for its addition to be worthwhile.

Reply via email to