From e63ddca6eadc783ade3165d399e223dc481d7b65 Mon Sep 17 00:00:00 2001 From: rain Date: Sun, 21 Jun 2026 18:25:21 -0400 Subject: [PATCH] Add Maple Mono NF font install to bootstrap - Arch: paru -S maplemono-nf-cn (AUR package, installed via Chaotic-AUR) - Debian: download MapleMono-NF.zip from subframe7536/Maple-font v7.9 release, extract to ~/.local/share/fonts, run fc-cache - Idempotent: skips if fc-list already shows Maple Mono NF - Pinned to v7.9 (20.6MB); bump MAPLE_FONT_VERSION when upgrading Also documented in README that the default Maple Mono NF in nvim init.lua will Just Work on every box thanks to the bootstrap. --- run_once_20-install-user-packages.sh.tmpl | 34 +++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/run_once_20-install-user-packages.sh.tmpl b/run_once_20-install-user-packages.sh.tmpl index 6882464..b9efc8b 100755 --- a/run_once_20-install-user-packages.sh.tmpl +++ b/run_once_20-install-user-packages.sh.tmpl @@ -116,6 +116,40 @@ else log "tpm already installed" fi +# --------------------------- Maple Mono NF font ---------------------------- +# nvim init.lua references "Maple Mono NF". Install it so the default font works. +# Pin Maple-font version. Bump manually if a release breaks things. +MAPLE_FONT_VERSION="v7.9" + +if fc-list 2>/dev/null | grep -qi "Maple Mono NF"; then + log "Maple Mono NF already installed" +else +{{ if eq .os_family "arch" -}} + log "installing maplemono-nf-cn from AUR (via paru)" + paru -S --needed --noconfirm maplemono-nf-cn +{{ else if eq .os_family "debian" -}} + log "downloading MapleMono-NF.zip from subframe7536/Maple-font $MAPLE_FONT_VERSION" + FONT_DIR="$USER_HOME/.local/share/fonts/maple-mono-nf" + mkdir -p "$FONT_DIR" + TMP_ZIP="$(mktemp /tmp/maple-font.XXXXXX.zip)" + if curl -fL --retry 3 \ + "https://github.com/subframe7536/Maple-font/releases/download/${MAPLE_FONT_VERSION}/MapleMono-NF.zip" \ + -o "$TMP_ZIP"; then + log "extracting font files" + unzip -q -o "$TMP_ZIP" -d "$FONT_DIR" + rm -f "$TMP_ZIP" + log "running fc-cache" + fc-cache -fv >/dev/null + else + log "WARNING: failed to download Maple Mono NF — nvim will warn about missing font" + log "manual install: https://github.com/subframe7536/Maple-font" + rm -f "$TMP_ZIP" + fi +{{ else -}} + log "WARNING: font install not configured for os_family={{ .os_family }}" +{{ end -}} +fi + # --------------------------- set zsh as default shell --------------------- USER_SHELL="$(getent passwd "$(whoami)" | cut -d: -f7)" if [[ "$USER_SHELL" != "$(command -v zsh)" ]]; then