aboutsummaryrefslogtreecommitdiffstats
path: root/openspec/changes/add-gnome-desktop/specs
diff options
context:
space:
mode:
authorGravatar Tom van der Lee <tom@vanderlee.io>2026-09-17 13:18:25 +0200
committerGravatar Tom van der Lee <tom@vanderlee.io>2026-09-17 13:18:25 +0200
commit39c14b0c6420ea1e1604201a1b8891edf24bb280 (patch)
tree4015bd97e5fa29c944fd35050d9ea6f96fb25371 /openspec/changes/add-gnome-desktop/specs
parente91a12c68901d761812a855559331b9a7462a170 (diff)
downloaddesktop-flake-39c14b0c6420ea1e1604201a1b8891edf24bb280.tar.gz
desktop-flake-39c14b0c6420ea1e1604201a1b8891edf24bb280.tar.bz2
desktop-flake-39c14b0c6420ea1e1604201a1b8891edf24bb280.zip
Propose GNOME desktop for NixOS hosts
Planning artifacts only (proposal, spec, design, tasks) — GDM+GNOME, NetworkManager, PipeWire, and CUPS+Avahi printing, applied unconditionally to every NixOS host via modules/nixos/common.nix. Not yet implemented.
Diffstat (limited to 'openspec/changes/add-gnome-desktop/specs')
-rw-r--r--openspec/changes/add-gnome-desktop/specs/gnome-desktop/spec.md33
1 files changed, 33 insertions, 0 deletions
diff --git a/openspec/changes/add-gnome-desktop/specs/gnome-desktop/spec.md b/openspec/changes/add-gnome-desktop/specs/gnome-desktop/spec.md
new file mode 100644
index 0000000..ee932c2
--- /dev/null
+++ b/openspec/changes/add-gnome-desktop/specs/gnome-desktop/spec.md
@@ -0,0 +1,33 @@
1## Purpose
2
3Provides a working GNOME desktop environment, including login, networking, audio, and printing, on every NixOS host built from this flake.
4
5## ADDED Requirements
6
7### Requirement: GNOME is the default desktop on every NixOS host
8Every NixOS host built from this flake's shared system module SHALL boot into a GNOME desktop session via a graphical login manager, without requiring per-host opt-in.
9
10#### Scenario: Graphical login is available after boot
11- **WHEN** a NixOS host built from this flake's shared system module finishes booting
12- **THEN** a graphical login manager is presented, and selecting the default session starts a GNOME desktop
13
14### Requirement: Desktop networking is functional
15The desktop environment SHALL provide working network configuration through its own UI, not require a separate manual networking setup step.
16
17#### Scenario: Network settings are usable from the desktop
18- **WHEN** a user opens the desktop's network configuration UI
19- **THEN** available networks can be viewed and configured without additional manual setup outside the desktop environment
20
21### Requirement: Desktop audio is functional
22The desktop environment SHALL provide working audio output and input, including compatibility with applications expecting a PulseAudio-compatible audio server.
23
24#### Scenario: Audio applications can play sound
25- **WHEN** an application on the desktop attempts to play or capture audio
26- **THEN** the audio server is running and available to handle the request
27
28### Requirement: Printing is supported and printers are discoverable
29The desktop environment SHALL support printing to CUPS-compatible printers, and SHALL be able to discover network printers automatically without requiring the firewall to be manually reconfigured.
30
31#### Scenario: A network printer is discoverable
32- **WHEN** a network printer advertises itself on the local network
33- **THEN** it can be discovered and configured for printing without the host's firewall blocking the discovery traffic