Что бы вы изменили в UIRD

Что по вашему мнению следует переделать в UIRD, если взяться его глобально переписывать. Скажем к версии 3.0 :slight_smile:
Это сообщение в терминологии форума - wiki. Предлагаю дописывать сюда все, что будет принято в результате обсуждения.

  1. Разбор параметров в массив на основе дерева фс.

Я бы разделил лайвкитлиб на две части, на то, что нужно выполнить в начале uird-init и конкретно библиотеку функций.
Переделал разбор параметров полностью. Все параметры разбираются за раз и записываются в файл построчно в виде ключ=“значение доп.пар доп.пар”, то есть сразу разбирать :: и сразу uuid_label_to_dev.
Для параметров без значения записывать ключ=yes, то есть если yes то включено, если любой другой вариант включая отсутствие, то выключено.
И проверять потом не дергая каждый раз cmdline_value, cmdline_parameter, а просто значение переменных.
Для uird.scan нужно будет просто заново записать этот файл своими значениями и
source файл.

Убрал бы алиасы, вместо этого можно дать возможность заменить префикс “uird.” на свой или на “” даже.

Еще предлагаю переделать штуку для дебага, которая в нужном месте останавливает уирд-инит и переходит в дебаг режим. Сама по себе полезная вещь. Но когда нужна хрен вспомнишь как называется тот шаг на котором надо остановить.
Предлагаю привязывать к параметрам уирд. Можно даже встроить в cmdline_value. Тупо если запрошенный параметр соответствует указанному в уирд.степс - останавливать.

Надо переписать uird.scan, чтоб полностью создавал весь конфиг. Сейчас предполагается, что дефолтный MagOS, а там может что угодно быть.

Не совсем понятно, что хочется.

Планы на UIRD 3.0, то что мелкими правками не сделать, и то что может совместимость сломать. Наговариваю все подряд, а там постмотрим чего делать чего нет.

Продолжим. Предлагаю:

  • выпилить за ненадобностью uird.sgn
  • у нас есть параметры, которые применяются в разных местах: scantimeout, find_params может еще что. Можно устанавливать значения этих переменных сразу после разбора параметров, а потом дать возможность их.изменять. Типа такого:
    uird.from=/MagOS::scantimeout=1

А если у кого-то используется? На 4pda один пользователь спрашивал по этому поводу. Я ему привел несколько вариантов, он выбрал вариант с sgn, потому что остальные не понял ) Так что как минимум у одного точно используется. Да пусть будет, не мешает же.

Ок. Думал с уирд он вообще никому не нужен. Тут же стопицот способов указать где искать модули.

sgn не надо выпиливать. Это нормальный якорь :slight_smile:

Пусть живет.
Но вообще выпиливать тоже надо. Всегда только добавлять не правильно. Сокращать, оптимизировать и т.д. необходимо.

Надо придумать для UIRD’а набор тестовых загрузок на основе магоса. Чтоб после изменений можно было проверить что отвалилось. Особенно сложно с сетевыми параметрами. Что можно сделать?

mkuird собирает уирд с правами 600. Слегка напрягает) Нельзя поменять на 644?

Это дракут так делает наверное. Безопасность и все такое. Мне тоже мешает, пару раз уже архивировал под юзером, и опаньки, уирда в архиве нет :slight_smile:
Где настраивается не знаю, можно чмод в мкуирд сделать. Тут как Антон скажет :slight_smile:

Я бы еще убрал создание ссылок в мнт для совместимости со старыми скриптами. Если в магос это до сих пор нужно можно перенести в преинит скрпипты.

1 лайк

Предлагаю немного переделать режимы. Привести к такому виду:
clean, clear - без изменений.

  • uird.mode=mount - все что можно смонтировать, папки, разделы, img и.тд. В том числе то, что stea.61 предложил. То есть приблизительный аналог сегодняшнего changes, но без сохранения в модуль. Само название changes мне кажется не удачным, моунт лучше отражает смысл. Но можно оставить как синоним для тех кто привык.
  • uird.mode=toxzm - тут и machines и сохранение в один модуль, зависимо от того, что в uird.changes. Логика такая, если в uird.changes имя модуля, то в него и сохраняем, если имя папки, то по алгоритму machines действуем.
    Либо, как вариант, оставить мод=machines как сейчас и добавить еще один мод=toxzm для сохранения в конкретный модуль.
    Такие режимы, имхо, логичнее.
    З.Ы. Конечно не нужно уирд с этими изменениями прям завтра в сборку пихать. Подождем до смены платформы.

toxzm как-то не универсально выглядит. Модуль может быть и .pfs, и .sfs, и .sqfs, и т. д.

tosquash?
tomod?

Мне вообще to не нравится.

uird.mode=machines
uird.mode=machines::/path/to/folder
uird.mode=mount::/MagOS-Data/changes.img
uird.mode=mount::/MagOS-Data/changes.img::discard
uird.mode=mount::/MagOS-Data/changes
uird.mode=squashfs::/MagOS-Data/save.xzm

А вообще тут слово mode не совсем подходит на мой взгляд. Лучше uird.changes=mount::/MagOS-Data/changes.img
uird.mode=clean трансформировать в uird.changes=""
А uird.mode=clear в uird.clear
Но опять же, если uird.changes=mount::/MagOS-Data/changes.img, то зачем слово mount, уирд сам должен понять что имг монтируется.
Думаю можно вообще избавиться от режимов. Вопрос ведь только в том сохранять или нет, и, если да, то куда сохранять.
Просто наброски) Ничего серьезного ))

В общем надо очень хорошо подумать. Но в общем и целом режимы мне кажутся лишними. Просто лишняя запись в cmdline. Это удобно только для конфига, когда можно задать ченджезы по умолчанию и включать сохранение режимами.

Короче говоря оставить как есть, да и не париться :smile:
Можно только добавить changes для модулей, чтоб вылечить freemedia для сохранения в модуль. Но как известно Антон против ))