桌面图像
OpenFactory 的功能注册表包括多个桌面环境和桌面应用程序。明确选择桌面;通用 desktop 请求通常意味着 GNOME,而 desktop-kde、desktop-xfce 和其他命名功能则选择基础支持的不同会话。
桌面设置位于os.desktop_settings下并使用snake_case。许多字段是通过 GNOME 设置实现的,因此不应假定它们会影响 KDE、Xfce 或其他桌面。特定于桌面的功能模块(例如 KDE 收藏夹或布局功能)拥有一些非 GNOME 行为。
规范设置示例
{
"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"
}
}
}
}desktop、accentColor、favorites、screenBlankTimeout 或 suspendOnIdle 等较旧的字段不是规范模式。在标准化过程中可以忽略它们。
壁纸和资源
更喜欢以前上传的附件或其他经过审查的不可变资产。 HTTPS 壁纸 URL 在图像创建过程中获取,可能会更改或失败。对于外部图标主题或字体,请使用asset_sources 和简单的安装名称,对于存档/文件输入,请使用 SHA-256(如果支持)。
未经必要的权利和同意,请勿将受版权保护或个人识别的图像放置在公共图像中。
收藏夹是桌面文件 ID
收藏夹必须命名已安装的 .desktop 条目,而不是产品显示名称。例如,安装 kdenlive 并不能保证其 ID 在每个发行版上都是 kdenlive.desktop。检查目标来宾中的/usr/share/applications并验证启动器打开预期的应用程序。
验证
至少,测试:
- 预期的显示管理器和会话启动;
- 实际会话身份(GNOME、Plasma、Xfce 等);
- 请求的软件包和应用程序启动器;
- 第一个真实用户会话的壁纸和主题;
- 外壳加载后的收藏夹;
- 屏幕锁定和电源行为;和
- 如果映像是可安装的,则安装程序启动行为。
程序包清单无法检测到错误的桌面会话。包括 GUI 冒烟测试并检查捕获的证据。
跨桌面边界
不要随意组合通用的 GNOME 和 KDE 功能。当提示名为 KDE Plasma 时,需要 desktop-kde 和 KDE 特定配置;当它命名为 GNOME 时,需要 GNOME 桌面功能和 GNOME 设置。如果有意多个会话,请分别测试默认选择和每个支持的登录路径。