aboutsummaryrefslogtreecommitdiffstats
path: root/openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs
diff options
context:
space:
mode:
authorGravatar Tom van der Lee <tom@vanderlee.com>2026-09-24 09:13:19 +0000
committerGravatar Tom van der Lee <tom@vanderlee.com>2026-09-24 09:13:19 +0000
commit8ac87f0b609b8f30b83382d1e4913ddc89e0893e (patch)
treeeff3a1eaedb59adabc7500fee95b2fe1d97f09af /openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs
parent2ec5dfa25cef3c4fea72336e4142e5c3b5981cc3 (diff)
downloaddesktop-flake-8ac87f0b609b8f30b83382d1e4913ddc89e0893e.tar.gz
desktop-flake-8ac87f0b609b8f30b83382d1e4913ddc89e0893e.tar.bz2
desktop-flake-8ac87f0b609b8f30b83382d1e4913ddc89e0893e.zip
Add Ghostty, GNOME Tweaks, and a GNOME dark-mode default
Ghostty joins the cross-platform desktop app list (Linux-only in nixpkgs today, filtered out on darwin by the existing availableOn check). GNOME Tweaks is gated on osConfig.services.desktopManager.gnome.enable rather than plain isLinux, since modules/home/desktop-apps.nix is also consumed by the standalone, non-NixOS tom@linux home-manager profile, which has no GNOME involved. Every NixOS host now also gets a dconf default of org/gnome/desktop/interface color-scheme=prefer-dark, left unlocked so GNOME Settings can still switch back to light mode. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01HngxrvqEzq8oBEBDtrYJyB
Diffstat (limited to 'openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs')
-rw-r--r--openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs/desktop-applications/spec.md21
-rw-r--r--openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs/gnome-desktop/spec.md12
2 files changed, 33 insertions, 0 deletions
diff --git a/openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs/desktop-applications/spec.md b/openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs/desktop-applications/spec.md
new file mode 100644
index 0000000..ccc88e4
--- /dev/null
+++ b/openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs/desktop-applications/spec.md
@@ -0,0 +1,21 @@
1## MODIFIED Requirements
2
3### Requirement: Desktop GUI applications are provisioned via the shared home profile
4The shared home-manager profile SHALL include Slack, Discord, Spotify, teams-for-linux, Firefox, the Bitwarden desktop client, and Ghostty as GUI application packages, available wherever that profile is activated and the underlying package supports the current system. GNOME Tweaks is provisioned per the separate requirement below, since its availability depends on GNOME being enabled rather than on platform support alone.
5
6#### Scenario: GUI app available after activation
7- **WHEN** the shared home profile is activated on a system for which a given desktop application's package is supported
8- **THEN** that application is available without any additional manual installation step
9
10## ADDED Requirements
11
12### Requirement: GNOME Tweaks is provisioned only where GNOME is enabled
13GNOME Tweaks SHALL be included in the provisioned package set only where the GNOME desktop is enabled (every NixOS host built from this flake's shared system module), and SHALL be excluded wherever GNOME is not known to be enabled, including standalone (non-NixOS) home-manager activations of the shared profile.
14
15#### Scenario: Included on a NixOS host with GNOME enabled
16- **WHEN** the shared home profile is activated as part of a NixOS host built from this flake's shared system module, where GNOME is enabled
17- **THEN** GNOME Tweaks is included in the provisioned package set
18
19#### Scenario: Excluded on a standalone activation
20- **WHEN** the shared home profile is activated standalone, not as part of a NixOS system (for example via `home-manager switch` on a non-NixOS machine)
21- **THEN** GNOME Tweaks is not included in the provisioned package set, regardless of the host's operating system
diff --git a/openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs/gnome-desktop/spec.md b/openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs/gnome-desktop/spec.md
new file mode 100644
index 0000000..f9344b4
--- /dev/null
+++ b/openspec/changes/add-ghostty-gnome-tweaks-dark-mode/specs/gnome-desktop/spec.md
@@ -0,0 +1,12 @@
1## ADDED Requirements
2
3### Requirement: GNOME defaults to dark mode
4Every NixOS host built from this flake's shared system module SHALL configure its GNOME desktop session to use dark mode (`color-scheme: prefer-dark`) as the default appearance, while leaving the setting changeable by the user.
5
6#### Scenario: Fresh session uses dark mode
7- **WHEN** a user who has not previously changed the GNOME appearance setting logs into a NixOS host built from this flake's shared system module
8- **THEN** the GNOME desktop session appears in dark mode
9
10#### Scenario: User can still switch to light mode
11- **WHEN** a user opens GNOME Settings' Appearance page on a host built from this flake's shared system module
12- **THEN** the user can select light mode, and that choice takes effect and persists across future logins