IPB

Здравствуйте, гость ( Вход | Регистрация )

> Mkimage-Profiles и DistroNavigator, О gui для m-p
Поделиться
ИВК
сообщение 7.5.2015, 16:25
Сообщение #1


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 10147
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Выделено из темы "Git"

Цитата(Michael Shigorin @ 7.5.2015, 14:15) *
А какая правка, можете патч показать или прислать почтой?

Файл conf.d/desktop.mk:
Код
25c25,28
< distro/tde: distro/.desktop-network +tde; @:
---
> distro/tde-t7: distro/.desktop-network +tde; @:
> distro/tde-p7: distro/.desktop-network +tde; @:
> distro/tde-t6: distro/.desktop-network +tde; @:
> distro/tde-p6: distro/.desktop-network +tde; @:


Навигатору нужно, чтобы в названии проекта был указан бранч, чтобы автоматически находить файлы профилей именно для данного бранча (при работе с проектами, который создаёт сам пользователь из Навигатора, это уж совершенно необходимо). В m-p-d в главном Makefile.in я из-за этого заменил строчки типа
Код
tde-mini.cd: | use-tde-mini install2 main install-cd.@IMAGETYPE@

на подобные этой:
Код
tde-mini-@BRANCH<>cd: | use-tde-mini-@BRANCH@ install2 main install-cd.@IMAGETYPE@

а к именам файлов в profiles/pkg/lists добавил "-t7" и т.п., чтобы каждый из них можно было изменять, не трогая другие. Профили одного и того же дистра для разных бранчей должны быть сразу чётко и единообразно отделены друг от друга, иначе программа в них запутается.
Вообще, едва ли не бОльшая часть моих правок в m-p-d как раз с бранчами и связана. Если в m-p решить данную проблему как-то радикально, то потребность во всякого рода хаках сразу резко уменьшится.


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения
 
Открыть новую тему
Ответов
ИВК
сообщение 8.5.2015, 14:34
Сообщение #2


Профессионал
*******

Группа: Глоб. Модератор
Сообщений: 10147
Регистрация: 22.6.2009
Вставить ник
Цитата
Из: Онега
Пользователь №: 1352
Страна: Россия
Город: Не указан
Пол: Муж.



Репутация: 30


Я никоим образом не держусь за ту реализацию работы с m-p, которая сейчас есть в программе. Она просто черновая, сделанная по принципу "чтоб видно было, что это вообще как-то работает" smile.gif И переделать её можно довольно быстро. Очевидно для меня и то, что копипастить целые профили для каждого бранча - варварство, а на деле надо делать иначе; но я же графическим интерфейсом занимаюсь, а не самими профилями, потому у меня с ними бардак.
Посмотрим, как выглядит работа со сборочной системой с точки зрения Навигатора, что ему мешает.
Допустим, человек решил собирать тот же tde.iso и на t7 и на p6. Понятно, что состав пакетов для разных бранечей может быть немного различаться. Поэтому создаются два проекта, отличающиеся тем, что у каждого свой список пакетов, которые надо добавить к общему tde-профилю или исключить из него. Навигатор должен предоставить юзеру возможность редактировать эти два проекта (фактически - всего лишь два упомянутых бранч-специфичных списка) раздельно и потом собрать на их основе два разных образа. И это всё. Как именно реализована такая возможность в m-p - Навигатору без разницы. Какие крючки будут торчать из m-p для этого - к тем я и прицеплю gui.
Второе. Есть такая вот проблема (в m-p-d; просто не вникал ещё, как с этим в m-p). К примеру, в m-p-d описание дистрибутива в Makefile.in:
Код
lxde-desktop-lite.cd: | use-lxde-lite ...

То есть сам дистр - lxde-desktop-lite, а use- у него - просто lxde-lite; и т.п. Для сравнения: у дистрибутива-t7.cd и основной файл профиля называется distrocreator-t7, и в use-mk.in он под тем же названием фигурирует, и в configure.ac. Это очень важно для Навагатора, ему гораздо проще работать, когда уже по названию дистрибутива можно элементарно вычислить всё остальное, что к нему относится. Нельзя ли сделать так, чтобы у каждого дистрибутива, который будет в Навигаторе в числе базовых, с этим было (хотя бы для Навигатора; это с помощью симлинков, наверное) такое же единообразие, как в примере с distrocreator'ом? Тогда добавлять в Навигатор поддержку новых базовых дистрибутивов станет очень просто.
И третье. Всё-таки основное назначение программы - собирать пользовательские дистрибутивы. Поэтому ключевой момент в ней - создание нового проекта на основе базового (или ранее созданного пользовательского же). А значит, нужно определиться с двумя вещами: какую именно информацию юзер должен вводить при создании нового проекта и какие команды должна выполнять программа при нажатии кнопки "Создать проект". Под это и сделаю секцию создания проекта в m-p.
Вот три основных вопроса. Если с ними разобраться, то дело в основном сделано. Останутся второстепенные детали типа проблемы с брендингом, работы с дополнительными группами пакетов и т.п.


--------------------
Не пью, не курю, не смотрю телевизор, не пользуюсь Windows
Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Сообщений в этой теме


Ответить в эту темуОткрыть новую тему
( Гостей: 1 )
Пользователей: 0

 



RSS Текстовая версия Сейчас: 13.7.2025, 2:20