aboutsummaryrefslogtreecommitdiffstats
path: root/openspec/changes/archive/2026-09-24-add-jetbrains-mono-nerd-font/specs
diff options
context:
space:
mode:
authorGravatar Tom van der Lee <tom@vanderlee.com>2026-09-24 13:34:58 +0000
committerGravatar Tom van der Lee <tom@vanderlee.com>2026-09-24 13:34:58 +0000
commita70a7e5ed46e6671a64c94698f70ceb210eff7cd (patch)
treee8050b592a7d1f6b5d2cdd66ab052b5e9a31659b /openspec/changes/archive/2026-09-24-add-jetbrains-mono-nerd-font/specs
parent096e82ca45a5360b4b2dd084e0fb1a937a227a69 (diff)
downloaddesktop-flake-a70a7e5ed46e6671a64c94698f70ceb210eff7cd.tar.gz
desktop-flake-a70a7e5ed46e6671a64c94698f70ceb210eff7cd.tar.bz2
desktop-flake-a70a7e5ed46e6671a64c94698f70ceb210eff7cd.zip
Provision the JetBrains Mono Nerd Font via the shared home profile
Ghostty and Neovim both render glyphs (statusline icons, file-tree icons) that need a Nerd Font, and no font was previously provisioned at all. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Diffstat (limited to 'openspec/changes/archive/2026-09-24-add-jetbrains-mono-nerd-font/specs')
-rw-r--r--openspec/changes/archive/2026-09-24-add-jetbrains-mono-nerd-font/specs/fonts/spec.md26
1 files changed, 26 insertions, 0 deletions
diff --git a/openspec/changes/archive/2026-09-24-add-jetbrains-mono-nerd-font/specs/fonts/spec.md b/openspec/changes/archive/2026-09-24-add-jetbrains-mono-nerd-font/specs/fonts/spec.md
new file mode 100644
index 0000000..e57f124
--- /dev/null
+++ b/openspec/changes/archive/2026-09-24-add-jetbrains-mono-nerd-font/specs/fonts/spec.md
@@ -0,0 +1,26 @@
1## Purpose
2
3Provisions typefaces through the shared home-manager profile, starting with the JetBrains Mono Nerd Font, so that glyph-dependent terminal and editor UIs render correctly wherever that profile is activated.
4
5## ADDED Requirements
6
7### Requirement: JetBrains Mono Nerd Font is provisioned via the shared home profile
8The shared home-manager profile SHALL include the JetBrains Mono Nerd Font as a package, available wherever that profile is activated and the underlying package supports the current system.
9
10#### Scenario: Font available after activation
11- **WHEN** the shared home profile is activated on a system for which the JetBrains Mono Nerd Font package is supported
12- **THEN** the font is installed and resolvable by name by font-aware applications, without any additional manual installation step
13
14### Requirement: The font package is skipped, not failed, on unsupported systems
15On a system for which the JetBrains Mono Nerd Font package has no supported build, the package SHALL be omitted from the provisioned package set rather than causing profile evaluation or activation to fail.
16
17#### Scenario: Unsupported system excluded without failure
18- **WHEN** the shared home profile is evaluated on a system for which the JetBrains Mono Nerd Font package has no supported build
19- **THEN** the font package is excluded from the provisioned set and the rest of the profile evaluates and activates successfully
20
21### Requirement: The font is discoverable by fontconfig-based applications
22On a Linux activation of the shared home profile, fontconfig SHALL be configured to discover fonts installed through the profile's packages, so that fontconfig-based applications (including the terminal and editor provisioned elsewhere in this profile) can resolve the JetBrains Mono Nerd Font by name.
23
24#### Scenario: Font resolvable via fontconfig after activation
25- **WHEN** the shared home profile is activated on a Linux system, whether standalone or as part of a NixOS host
26- **THEN** a fontconfig-based application can enumerate and select the JetBrains Mono Nerd Font by name without additional manual font-cache configuration