Installing UEFI Firmware on ARM SBCs
EDK2 UEFI на ROCK 5 ITX+
Плата ROCK 5 ITX+ (RK3588, 32 ГБ eMMC, два M.2, PoE) удобна, но слот microSD сбоку мешает быстро менять ОС. Вместо корпуса и удлинителя решено прошить SPI-память UEFI-фирмой EDK2-RK3588 и грузить образы с USB.
EDK2-RK3588
Проект поставляет PC-образный UEFI для плат на RK3588, обещая загрузку Windows, Linux, BSD и ESXi. На ROCK 5 ITX+ фирма не стартует ни с microSD, ни с eMMC — требуется запись во встроенный SPI-флеш.
Процесс
- Загружаем Armbian 25.2.2 Noble Gnome (kernel 6.1).
- В браузере скачиваем последний релиз
rock-5-itxс GitHub EDK2-RK3588. - Прошиваем SPI командой
rockchip_spi_update(предварительно сделав дамп оригинала). - Перезагружаемся, выбираем в UEFI нужный USB-накопитель и ставим любой ARM-дистрибутив.
Результат
Теперь ОС можно менять без открытия корпуса и вынимания карты — достаточно вставить флешку и выбрать её в меню UEFI.
Комментарии (34)
- U-Boot уже умеет достаточно UEFI, чтобы запускать Linux/BSD без родного прошивочного слоя.
- Участники хотят отказаться от «SD-карт-флешалок» и получить единый стандарт загрузки, но ARM-вендоры медленно внедряют SystemReady.
- Основные проблемы ARM: отсутствие единой среды загрузки и надёжного механизма авто-обнаружения железа; «ванильные» образы дистрибутивов почти никогда не стартуют без доработки.
- Кто-то предлагает усилить IEEE 1275/Open Firmware вместо UEFI, другие считают UEFI «безумием», но всё же лучше произвола каждого SoC.
- В RISC-V для серверов UEFI уже обязателен по спецификации, чего пока не скажешь о большинстве ARM-плат.
Mosh Mobile Shell
Mosh — мобильная оболочка, заменяет SSH.
- Роуминг: меняйте сеть (Wi-Fi, LTE, Ethernet) — соединение живёт.
- Сон и обрывы: ноут спит, связь пропадает — Mosh ждёт и возобновляет.
- Без задержки: локальный эхо-ввод, предсказания подчёркиваются при плохой связи.
- Простота: не требует root, работает как обычный процесс, логинится через SSH, затем переключается на UDP.
- UTF-8: единственная кодировка, чинит юниксовые баги.
- Control-C: UDP-протокол не блокирует буферы, всегда прерывает процесс.
Поддерживаются GNU/Linux, BSD, macOS, Solaris, Android, Chrome, iOS.
Комментарии (64)
- Mosh по-прежнему решает проблему «роуминга» и высокой латентности, но многие перешли на SSH поверх WireGuard/Tailscale.
- Часть пользователей жалуется на баги рендеринга, отсутствие проброса портов и OSC52, а также на замороженную разработку.
- Альтернативы: Eternal Terminal, shpool, wezterm, а также анонсируемый Rust-проект на WebRTC.
- На iOS популярен ShellFish (с tmux и интеграцией Files), Blink Shell теряет позиции.
- Для мобильных/спутниковых каналов Mosh всё ещё «спасательный круг», но кто-то предпочитает просто «терпеть» дропы через tmux/screen.
We rewrote the Ghostty GTK application 🔥 Горячее 💬 Длинная дискуссия
Ghostty GTK-часть переписана с нуля
Проект завершён: Linux/BSD-версия теперь полностью использует GObject из Zig и проверена Valgrind.
Что изменилось
- Zig-структуры обёрнуты в GObject; память управляется счётчиками ссылок.
- При обновлении конфига старый объект освобождается автоматически, когда исчезают ссылки.
- Появились сигналы, свойства, действия GTK и современные UI-файлы Blueprint.
- Новые виджеты добавляются быстрее (анимированная рамка, вкладки в заголовке и т.д.).
Valgrind Каждый коммит прогонялся под Valgrind.
- Потребовался большой suppression-файл (в основном GTK/драйверы).
- Найдены: утечка и неопределённое обращение в Zig-коде, ошибка
WeakRefв GTK, которые иначе вызывали редкие краши.
Комментарии (194)
- Ghostty переписывает GUI на GTK/Zig, столкнувшись с проблемами GObject и управления памятью.
- Участники обсуждают, что GTK навязывает свою ООП-модель и счётчики ссылок, что сложно сочетать с Zig/Rust.
- Некоторые считают GTK не «родной» на Linux и предлагают Vala, Qt или собственный UI.
- Пользователи жалуются на баги прокрутки, копирования, nano и отсутствие поиска.
- Автор признаёт выбор GTK компромиссом ради кроссплатформенности и «родного» вида.