Ventoy
Ventoy - это инструмент с открытым исходным кодом для создания загрузочного USB-накопителя для файлов ISO/WIM/IMG/VHD(x)/EFI.
Ventoy может быть установлен на флэш-накопитель USB, локальный диск, SSD (NVMe) или SD-карту, и он будет загружаться
непосредственно из выбранных добавленных файлов .iso, .wim, .img, .vhd(x) или .efi. Ventoy не извлекает файлы образов на USB
накопитель, а использует их напрямую. Можно разместить несколько ISO-образов на одном устройстве и выбрать образ для загрузки
из меню, отображаемого сразу после загрузки Ventoy. Поддерживаются стили разделов MBR и GPT, устаревший BIOS x86 и различные
методы загрузки UEFI (включая сохранение). Можно использовать ISO-файлы размером более 4 ГБ. Ventoy поддерживает загрузку и
установку ISO-файлов различных операционных систем, включая Windows 7 и выше, Debian, Ubuntu, CentOS, RHEL, Deepin, Fedora и
более сотни других дистрибутивов Linux, различные версии UNIX, VMware, Citrix XenServer и т.д.
Установка
Скачайте zip архив или клонируйте с помощью инструмента git clone.
Распкуйте архив. Вы получите portable программу (подобие как на windows)
Войдите в полученную папку /portable/opt/ventoy-1.0.97
и запустите программу двойным кликом или в терминале ./VentoyGUI.x86_64
для qt команда будет ./VentoyGUI.x86_64 –qt5
Если вы хотите чтобы в системном меню появился значок Ventoy,
то просто совместите папки из архива opt и usr с папками в файловой системе
Скачать
Войдите, чтобы скачать файлы релиза
rpm
src.rpm
Краткая инструкция как я собирал rpm (ROSA FRESH GNOME 2021.1)
Что должно быть в системе для сборки rpm-пакета
sudo dnf install gcc gcc-c++ rpmrebuild rpm-build rpmdevtools rpmlint dnf-utils git
Вводим в терминал для построения древа сборки (Создаётся в домашней папке)
rpmdev-setuptree
Создаём файл .spec и кладём в папку rpmbuild/SPECS (Можно найти похожий .spec в исходном пакете и немного изменить его
Установим зависимости, которые необходимы для сборки (BuildRequires)
sudo yum-builddep rpmbuild/SPECS/имя файла.spec
Готовим архив и помещаем его в каталог rpmbuild/SOURCES (Обращаем внимание на имя архива, оно должно совпадать. Если есть patch, то помещаем и его в каталог. Я в строку Source0 вставил скопированную ссылку на ZIP или можно на GIT, в конце ссылки написал расширение архива .zip. В строку %autosetup -p1 -n вставил имя папки после распаковки архива. Если при сборке видите сообщение
replace master/core/efuse/rtw_efuse.c? [y]es, [n]o, [A]ll, [N]one, [r]ename:
или
нет такого каталога/исходника
то значит не угодали с именем.
И собираем rpm (Двоичный пакет)
rpmbuild -bb rpmbuild/SPECS/имя файла.spec
или src.rpm (Исходный пакет)
rpmbuild -ba rpmbuild/SPECS/имя файла.spec
Если она пройдет (в терминале)
(none): E: badness 51 exceeds threshold 49, aborting.
1 packages and 0 specfiles checked; 2 errors, 339 warnings.
ошибка: Ошибка проверки пакета «/usr/bin/rpmlint -f /home/turik02/rpmbuild/SOURCES/rtl8188fu.rpmlintrc /home/turik02/rpmbuild/RPMS/x86_64/rtl8188fu-0.1-1-rosa2021.1.x86_64.rpm »
то мы должны найти RPM-пакет в каталоге rpmbuild/RPMS/x86_64 или SRC.RPM в rpmbuild/SRPMS.
Если будет
Ошибки сборки пакетов:
Ошибка проверки пакета «/usr/bin/rpmlint -f /home/turik02/rpmbuild/SOURCES/rtl8188fu.rpmlintrc /home/turik02/rpmbuild/RPMS/x86_64/rtl8188fu-0.1-1-rosa2021.1.x86_64.rpm »
или
Ошибки сборки пакетов:
Неверный код возврата из /var/tmp/rpm-tmp.tkM2Si (%prep)
то нет.
Можно получить SPEC путём модификации RPM. Для этого в терминале
rpmrebuild -enp имя.x86_64.rpm
Откроется редактор nano. Вверху есть путь (пример .tmp/rpmrebuild.22220/work/spec.2). Не закрывая терминал, заходим в папку и копируем наш файл. Затем можно закрыть терминаал.