(set-face-attribute 'default nil :font "Noto Sans Mono CJK JP") just results in error with the backtrace below on android. Device: Xiaomi Pad 5 MIUI Version: MIUI Pad Global 14.0.5 14.0.5.0(TKXMIXM) Android Version: 13 TKQ1.221013.002 Emacs Binary: emacs-30.0.50-29-arm64-v8a.apk https://sourceforge.net/projects/android-ports-for-gnu-emacs/files/ Font: ~/fonts/NotoSansMonoCJKjp-VF.ttf https://www.google.com/get/noto/help/cjk/ Sans/Variable/TTF/Mono/NotoSansMonoCJKjp-VF.ttf (emacs-version) 30.0.50 (build 1, aarch64-unknown-linux-android29) Here is the backtrace. Debugger entered--Lisp error: (wrong-type-argument char-or-string-p nil) internal-set-lisp-face-attribute(default :font "Noto Sans Mono CJK JP" 0) set-face-attribute(default nil :font "Noto Sans Mono CJK JP") (progn (set-face-attribute 'default nil :font "Noto Sans Mono CJK JP")) eval((progn (set-face-attribute 'default nil :font "Noto Sans Mono CJK JP")) t) elisp--eval-last-sexp(t) eval-last-sexp(t) eval-print-last-sexp(nil) funcall-interactively(eval-print-last-sexp nil) call-interactively(eval-print-last-sexp nil nil) command-execute(eval-print-last-sexp)