[devel] поддержка пакетов в git

Dmitriy M. Maslennikov =?iso-8859-1?q?maslennikovdm_=CE=C1_gmail=2Ecom?=
Чт Сен 25 12:29:19 MSD 2008


24 сентября 2008 г. 21:28 пользователь Damir Shayhutdinov
<lost404 на gmail.com> написал:
>> Еще раз. Если у нас есть репазиторий, то в changelog'е у нас изменения
>> пакета в этом репозитории. Если у нас просто пакет, то changelog
>> теряет смысл, поскольку неизвестно из какого он репозитория.
> Обоснуйте.
>
>> Поэтому я и задаюсь вопросом, если репозиторий так важен для changeloga, то
>> почему он находится в пакете?
> Откуда тезис "репозиторий так важен для changeloga"?
По-моему вы настолько сизифоцентричны, что просто не понимаете, что я
имею в виду возможность сборки пакета для Альта, но не для Сизифа(4.0,
4.1 и т. д.), а просто так для себя, для знакомого, для организации,
для стороннего репозитория. Так вот, если я собрал для себя пакет
foo-0.0.1-alt1, потом, пересобирал его, получил некоторый
foo-X.X.X-altX. Он накопил историю в changelog. Теперь этот пакет
собрал кто-то другой в Сизиф. Там пакет тоже развивается и тоже
накапливается историю. Теперь представляем человека, который сначала
взял у меня сторонний пакет, а затем обновляется и apt предлагает ему
обновить его из сизифа, так как там версия оказалась больше. Он
смотрит в changelog в надежде узнать, а стоит ли его обновлять, но что
он узнает из того, совсем другого changelog'а? Да абсолютно неверную
информацию да и только. Информация там описывает изменения пакета в
Сизифе, а у него то он был не оттуда. Именно поэтому я говорю, что
changelog пакета абсолютно бесполезен, если не известно, историю из
какого репозитария он описывает. А если у нас rpm пакет не лежащий в
репозитарии вообще, то его changelog -- это вообще некоторый
абстрактный текст, который вообще ничего конкретного не говорит,
поскольку нет никакой гарантии, что ссылки на пакеты в changelog имеют
в виду пакеты из архива Сизифа, а не из личного архива сборщика. При
этом и версии и релизы могут совпадать, то есть это вообще практически
бесполезная информация. Полезным может являться только описание пакета
со ссылкой на исходники и информацией о примененных патчах, что есть
описание пакета.

>> Еще раз. Если у вас стоит пакет из официального репозитория и вы
>> пытаетесь его обновить, то changelog содержит интересную для вас
>> информацию. Если же у вас самосборный пакет или пакет из другого
>> репозитория, то он теряет всякий смысл. именно поэтому changelog --
>> это именно своийство конкретного репозитория, а не пакета самого по
>> себе, поскольку changelog описывает изменения, которых нет у пакета в
>> отрыве от репозитория.
> Этот подход в корне ошибочен и опровергается простым фактом того, что
> например пакеты могут быть в разных репозитариях.
> И что возможно например перекладывать пакеты из Сизифа в бранч.
Думайте шире. Пакет из Сизифа может быть переложен из этого самого
Сизифа в репозитарий имени Васи Пупкина. При этом запись о том, что в
такой то версии был поправлен такой то баг становиться вызывающе
неверной, так как пакет с этой версией в репозитарии Васи Пупкина
вообще такого бага не содержал.

>> Вот именно, но только в случае если у вас только один репозитарий.
>> Если у вас есть пакет в котором что-то глючит, а друг вам приносит на
>> флешке пакет(тот же самый но совсем от другого сборщика) и уверяет,
>> что там этого глюка нет, то changelog для вас абсолютно бесполезен.
> Прошу прощения, но вы говорите о несоотвествии changelog и пакета? Это
> проблема конкретного сборщика.
Я говорю, что сборщиков может быть много. И у каждого своя история --
история сборки пакета в конкретный репозитарий.

> Вы под словом репозитарий подразумеваете дистрибутив? Определитесь с
> терминологией.
Под репозиторием я понимаю набор пакетов со средствами к их установке
и обновлению.

>> Нет я так не думаю. Я думаю что есть великое множество пакетов,
>> собранных разными людьми, для разных целей, с разными требованиями и
>> разным результатом.
> В одном репозитарии?
Зачем в одном? Вон сколько сторонних репозиториев у Debian'а или у
SuSe. На Сизифе свет клином не сошелся. Хотя пока Альт сильно отстает
по этому параметру (честно говоря я никакого стороннего репозитория
кроме Лакостиса не знаю, бранчи не в счет, people и daedalus
практически не используются и ничего полезного не содержат -- одни
эксперименты)

>> Дело даже не в драйверах, а в том, что автоматика по определению
>> правильного драйвера отказала, это раз, открытого драйвера для nvidia
>> с 3D в Сизифе нет, это два. Так что можно было хотя бы решить эти два
>> вопроса. А до их решения откатить пакет. А то вот мне пришлось
>> отрубить всю автоматику и настраивать вручную. И я не знаю, работает
>> ли она сейчас. Поскольку ее проверка совсем не то, чем я хочу
>> заниматься ежедневно.
> На мой взгляд, когда меняется ABI - автоматика тут вообще побоку.
Видимо мы не поняли друг друга. Под автоматикой я имел сервис
x11_autosetup, который упрямо выставлял мне неработающий драйвер. И
это прекрасно известно и нечего пенять на ABI, просто надо починить
этот сервис, чтобы он хотя бы драйвер nv проставлял.

> Я вам сочувствую, но в результате этого обсуждения мне стало понятно,
> почему вы не дорастете.
> Боюсь вы просто не слушаете того, что вам говорят.
Offtop: ну почему в девеле так часто и быстро переходят на личности???
Ну я то спокойный, а сколько уже ругани тут было. Вопрос конечно
риторический.

>> Не понимаю, как пакеты установленные у пользователя мешают нормальной
>> работе репозитория.
> Намекну: зачем нужен Serial?
Отвечу, что затем, чтобы поднять версию.
Спрошу: а зачем для этого пересобирать пакет?

>> Про "--short-circuit" я знаю. Только hasher и Incominger так не умеют.
> Hasher умеет hsh-shell и hsh-run
То есть, сначала вы советуете использовать --chort-circuit, точнее
категорично заявляете, что я про него не знаю. А затем говорите, что я
его должен использовать через ж... По-моему уметь, и давать
возможность -- это разные вещи. Вот когда я смогу писать gear-hsh -bb
--short-circuit, вот тогда и соглашусь, что инструменты научились это
делать.

Тем не менее это все равно жуткий оверхед. Представьте, что вы
собираете игрушку уровня doom3 -- несколько гигабайт данных. И после
сборки заметили, что и вас один символ в %post скрипте не правильный
(опечатка), сильно вам поможит --short-circuit?

-- 
Dmitriy M. Maslennikov
rlz на etersoft.ru
rlz на altlinux.org
maslennikovdm на gmail.com
master на armory.ru


Подробная информация о списке рассылки Devel