A Linux VT loads one font for the whole console, so asking for the 6x8 build (53x40, fourteen rows more) changes what the shell is drawn in too. The new console_font preference (6x12 default, 6x8 the alternative, offered on the PicoCalc only, round-tripping through preferences.yaml on every platform) therefore comes with services/consolefont.py: remember the font the shell had with `setfont -O`, apply the one the preference names, and restore it on every way out -- the menu's finally and an atexit hook, since ^Q and an unhandled error leave by other doors. Verified on the device that setfont -O captures the current font with its unicode table and that feeding it back reproduces it exactly, with no sudo, because the VT is the process's own controlling terminal. Only the interactive menu switches; a scripted run never touches the console it was invited into. Changing the preference on its page applies live. Shipping both fonts needed the licence untangled: the 6x8 base is the Linux kernel's font_6x8 bitmap, GPL-2.0, so its build moves into calculinux-console-font-6x8.sh under that licence with the GPLv2 text beside it in scripts/LICENSE.GPL-2.0. The shared generator stays in the 6x12 script between BEGIN/END markers and the 6x8 script executes that block, so the marks, donors and aliases the font contract pins exist in one place. The produced PSF is a data file the kernel console reads; MeshTerm never links or bundles it, and NOTICE and the hardware manual say so. PrefSpec gains a platforms gate for the page; the labels use an ASCII x because U+00D7 is not in the console font. The 6x8 base has no Cyrillic; the manual says so and the owner accepts it. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
42 lines
2.1 KiB
Plaintext
42 lines
2.1 KiB
Plaintext
MeshTerm
|
|
Copyright 2026 Jean-Pierre Martineau
|
|
|
|
This product includes software developed by Jean-Pierre Martineau
|
|
(https://github.com/jpmartineau/MeshTerm).
|
|
|
|
Licensed under the Apache License, Version 2.0. See the LICENSE file
|
|
for the full terms.
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
Trademark notice: "MeshTerm" and any associated logo are trademarks of
|
|
Jean-Pierre Martineau and are not licensed under the Apache License,
|
|
Version 2.0. The license grants rights to the source code; it does not
|
|
grant permission to use the MeshTerm name, or to represent a modified
|
|
or redistributed copy as the MeshTerm project, except as needed to
|
|
describe the origin of the work (e.g. "based on MeshTerm"). A
|
|
redistributed fork should use its own name.
|
|
|
|
Donation notice: MeshTerm's built-in donation link supports this
|
|
project and its original author. A fork that keeps soliciting
|
|
donations through that link, or through a lookalike of it, without
|
|
clearly redirecting them to itself, is not affiliated with this
|
|
project and is not authorized to do so.
|
|
|
|
--------------------------------------------------------------------------------
|
|
|
|
Device script: scripts/calculinux-console-font-6x8.sh embeds the Linux kernel's
|
|
font_6x8 bitmap (lib/fonts/font_6x8.c) and is therefore licensed GPL-2.0-only,
|
|
as is the console font it builds; its terms are included beside it as
|
|
scripts/LICENSE.GPL-2.0 and are its only license -- the Apache License above
|
|
does not apply to it. Nothing GPL-2.0 reaches the MeshTerm package: that script
|
|
is excluded from the distribution, runs on the device, and produces a PSF data
|
|
file the Linux console driver loads, which MeshTerm neither links nor bundles.
|
|
|
|
Bundled font: meshterm/assets/fonts/CascadiaMonoPL.ttf is Cascadia Mono PL,
|
|
Copyright (c) 2019 - Present, Microsoft Corporation, with Reserved Font Name
|
|
Cascadia Code. It is redistributed here unmodified under the SIL Open Font
|
|
License, Version 1.1, which is included beside it as CascadiaMono-OFL.txt and
|
|
is its only license -- the Apache License above does not apply to it. The
|
|
inclusion of this font does not imply that Microsoft endorses MeshTerm.
|