rgb565— включена по умолчанию; DRM-буферы RGB565 вместо XRGB8888.pc— собственное окно менеджера на X11.drm— владение дисплеем через DRM/KMS.diagnostics— все пассивные сборщики и интерактивный тест контроллеров.io-monitor— наблюдение за записью на файловую систему комплекта.diag-perf— CPU/потоки и доступные частоты во время игры.diag-memoryиdiag-klog— память и ограниченный журнал ядра.diag-display— показатели вывода IGUI и самого менеджера.diag-input— показатели ввода и интерактивный тест контроллеров.diag-uart— разовый пассивный снимок учётного состояния UART0 в Linux.diag-memdump— дамп памяти при выходе, отдельно от обычной диагностики.
Каждый сборщик подключает общий diag-cycle для сегментов и экспорта.
Пассивные сборщики включаются автоматически составом сборки, не параметрами запуска.
Без диагностических features отчёты не собираются и не экспортируются.
Активных UART/GPIO-проб в iman нет.
Сегменты, команды и ограничения.
runtime— проверенные файлы, запуск ELF и RAM-ресурсы.session— жизненный цикл и обработка IPC-команд.emulation— настройки RetroArch, BIOS, переназначение управления и параметры ядер.diagnostics— сборщики и ограниченные отчёты.display— DRM/PC, владение дисплеем и заставки.input_test— тест контроллеров и кандидаты профилей.
Статический предпросмотр заставки — Cargo example
splash_preview с feature drm; выдаёт PPM в stdout без обращения к устройствам.
Оконный предпросмотр
использует обычный менеджер с feature pc.
Из каталога iman:
cargo test --locked -- --test-threads=1
cargo test --locked --all-features -- --test-threads=1
cargo check --locked --no-default-features --all-targetsДля синтетических дочерних программ нужен python3.12 в PATH.
Тесты проверяют версию и находят абсолютный путь интерпретатора;
привязки к /usr/bin нет.
Тестовые конфигурации и профиль контроллера синтетические и находятся в самом iman.
Проверки отсчётов используют подменяемые монотонные часы; процессы и локальный IPC
проверяются в изолированных временных каталогах. Тесты не требуют
реальной SD, NOR, DRM или геймпадов и не подтверждают работу на ARM-устройстве.
Для аппаратного запуска нужна отдельно собранная совместимая цепочка компонентов.
GitHub Actions задаёт те же host-проверки
на Ubuntu 24.04 с Rust 1.85.0/stable и Python 3.12. Отдельная задача проверяет
компиляцию ARMv7 musl с drm,rgb565,diagnostics,diag-memdump, без запуска тестов на устройстве.
Workflow реагирует на push, pull request и ручной запуск; автоматической публикации нет.