Решил написать свой мультизагрузчик. Возможно, он похож на тот, что поставляется с комплектом MineOS, так что в целом является неплохой заменой стандартного биоса.
Установка:
Для OpenOS, просто запустите эту команду:
wget -f https://raw.githubusercontent.com/BrightYC/Cyan/master/installer.lua /tmp/installer.lua && /tmp/installer.lua
Для MineOS же есть приложение в местном AppMarket, под названием Cyan BIOS. Там тоже довольно элементарно.
Исходники лежат тут: https://github.com/BrightYC/Cyan
Что он может?
Возможность загрузки/доступа к загрузчику по "белому" списку
Lua-интерпретатор
Возможность подключения компонентов "на лету"
Возможность отформатировать/переименовать файловую систему
Загрузка по интернету
Доступ по белому списку:
Ограничивает возможность управления биосом (на программном уровне), так же, если установить require user input, биос будет ждать нажатие от пользователя в белом списке.
Shell:
Позволяет выполнять некий код "на лету". Имплементированы следующие функции:
print(...)
proxy(componentName: string): component proxy or nil
sleep([timeout: number])
Демонстрация:
P.S Огромное спасибо @Fingercomp за лекцию по экранированию символов.