Образи desktop
Feature registry OpenFactory включає multiple desktop environments і desktop applications. Оберіть desktop explicitly; generic desktop request commonly означає GNOME, тоді як desktop-kde, desktop-xfce і інші named features обирають різні sessions, де base supports them.
Desktop settings живуть під os.desktop_settings і use snake_case. Багато fields реалізовані через GNOME settings, тому не варто assume, що вони affect KDE, Xfce або інший desktop. Desktop-specific feature modules на кшталт KDE favorites або layout features own деяку non-GNOME behavior.
Canonical settings example
{
"os": {
"features": ["desktop", "firefox"],
"desktop_settings": {
"color_scheme": "prefer-dark",
"gtk_theme": "Yaru-dark",
"icon_theme": "Yaru",
"cursor_theme": "Adwaita",
"cursor_size": 24,
"wallpaper_sources": ["attachment:wallpaper-file-id"],
"wallpaper_selection": "first",
"wallpaper_mode": "zoom",
"favorite_apps": [
"firefox.desktop",
"org.gnome.Terminal.desktop"
],
"fonts": {
"interface_font": "Ubuntu 11",
"document_font": "Sans 11",
"monospace_font": "Ubuntu Mono 13"
},
"power": {
"idle_delay": 600,
"sleep_inactive_ac_timeout": 0,
"sleep_inactive_ac_type": "nothing",
"lid_close_ac_action": "suspend"
}
}
}
}Older fields на кшталт desktop, accentColor, favorites, screenBlankTimeout або suspendOnIdle , не canonical schema. Вони можуть ігноруватися під час normalization.
Wallpapers and assets
Prefer previously uploaded attachment або інший reviewed, immutable asset. HTTPS wallpaper URLs fetch під час image creation і can change або fail. Для external icon themes або fonts use asset_sources з simple installed name і, для archive/file inputs, SHA-256, коли supported.
Do not place copyrighted або personally identifying imagery у public image без required rights і consent.
Favorites are desktop-file IDs
Favorites must name installed .desktop entries, not product display names. Installing kdenlive, for example, не guarantee, що ID є kdenlive.desktop на every distribution. Inspect /usr/share/applications у target guest і verify launcher opens intended application.
Verification
At minimum, test:
- intended display manager і session start;
- actual session identity (GNOME, Plasma, Xfce, and so on);
- requested packages і application launchers;
- wallpaper і theme на first real user session;
- favorites після shell has loaded;
- screen lock і power behavior; та
- installer-launch behavior, якщо image meant to be installable.
Package inventory cannot detect wrong desktop session. Include GUI smoke test і inspect captured evidence.
Cross-desktop boundary
Do not combine generic GNOME і KDE features casually. Коли prompt names KDE Plasma, require desktop-kde і KDE-specific configuration; коли names GNOME, require GNOME desktop feature і GNOME settings. Якщо multiple sessions intentional, test default selection і each supported login path separately.