这个项目能做什么

Lunchbox 是一个跨平台应用程序,设计为游戏浏览器、收藏管理器和模拟器前端。它使用 Rust 配合 CXX-Qt 和 QML 构建,提供原生桌面体验,区别于此前基于 Electron 的旧版本。该软件遵循“获取优先”的架构,在模拟功能之外优先考虑游戏收藏的管理与获取。 主要功能包括: - **原生 Qt 前端**:利用 Rust 和 QML 在 Windows、macOS 和 Linux 上实现高性能和原生外观。它支持大型游戏库的虚拟化视图、加速滚动,以及包括窗口位置和筛选器在内的持久状态管理。 - **Couch Mode**:一种全屏、针对键盘和手柄优化的界面,适用于在电视上进行客厅游戏。它能在重启后保留游戏选择,支持平台和收藏选择器,并包含用于空闲显示的 Attract Mode。它还处理缓存媒体播放,并通过声明式 `.lunchbox-theme` 包进行主题定制。 - **游戏管理与获取**:集成 qBittorrent,通过种子或磁力链接下载游戏。它支持用于精选获取的 Minerva 捆绑索引,并允许用户添加自定义种子源。系统在下载前审查文件选择,处理多碟套装,并管理导入过程,支持暂停、恢复和重试。 - **元数据与游戏库工具**:提供对标题、描述、类型和自定义字段的广泛元数据编辑。它可以从 IGDB 或 ScreenScraper 获取在线元数据,并由用户审核。功能包括基于标签和规则的智能收藏、针对区域发行的区域/版本处理,以及“More Like This”推荐引擎。 - **模拟器集成**:发现已安装的独立模拟器(如 RetroArch、DOSBox、MAME)和核心。它支持复杂的启动配置,包括 eXoDOS/eXoWin3x/eXoWin9x 归档,这些归档会在本地准备和缓存。它处理包括激光影碟(Hypseus/Daphne)和街机系统在内的多种媒体类型。 - **手柄支持**:使用 GilRs 实现跨平台手柄输入,支持热插拔、模拟死区和重新映射。它包含一个布局规则求解器,用于在不同硬件布局上校准模拟器映射。 - **设置与便携性**:允许配置 ROM 存储、种子客户端和媒体提供程序。支持导出便携式 `.lunchbox-profile` 备份,其中包含收藏状态和主题,但不包括 ROM 和密钥等敏感数据。配置文件在恢复时会进行验证以确保完整性。 该应用程序将目录身份与获取提供分离,确保下载的内容不会改变核心游戏库结构,除非由用户明确管理。它旨在为 PC 游戏爱好者提供一个稳健、安全且功能丰富的环境。