Created attachment 17395 [details] GPG Public key Псевдоним: maks1ms Почта для пересылки: maxim@slipenko.com Ментор: Алексей Шабалин <shaba@altlinux.org> Цель: Научиться собирать пакеты.
Created attachment 17396 [details] SSH Public key
Ключи выглядят ОК, для продолжения процедуры потребуется подтверждение ментора.
Принимаю кандидата.
кандидат готов начать вступление
glebfm@, похоже пора уже мне на 2.3, больше месяца на 2.0 нахожусь.
ssh ключ на gitery.alt зарегистрирован. Адрес для пересылки создан. T/J/S -> 2.3.
Кандидат готов собирать пакеты. Прошу предоставить доступ к gyle.alt.
ssh ключ на gyle.alt зарегистрирован. Пакет alt-gpgkeys обновлён. Адрес подписан на devel@. T/J/S -> 3.6.
Кандидат готов собирать пакеты в сизиф. Прошу призвать рецензента.
https://git.altlinux.org/tasks/391697/ jfyi, для сборки модуля под ядро не нужно пересобирать ядро в этом же задании. ps. Да и стоит ли форкать модули рази изменения .gear/km-karch
(Ответ для Vitaly Chikunov на комментарий #10) > https://git.altlinux.org/tasks/391697/ > > jfyi, для сборки модуля под ядро не нужно пересобирать ядро в этом же > задании. Пересобирал из-за "error: incompatible gcc/plugin versions".
Призван рецензент (rider@) для независимой оценки готовности кандидата. T/J/S -> 4.2.
Всё посмотрел, к тому что собрано вопросов не возникло. Но пакеты в основном на go, нет C/C++ библиотек - непонятно освоил ли кандидат SharedLibsPolicy (один из самых сложных для понимания новичками моментов).
rider@, прошу проверить таск, который связан с Shared Libs Policy: https://packages.altlinux.org/ru/tasks/403806/
В задании ошибка, нельзя допускать переименования libxml2 -> libxml2_2 для legacy библиотеки. Лучше оставить как было (libxml2) и она умрёт со временем сама, когда будут пересобраны все клиенты. если клиенты все пересобираются в задании, то legacy библиотека уже не нужна
И ещё лучше не перегружать спекфайл дополнительными условиями, т.к. сompat библиотека делается крайне редко, то проще и чище удалить из specfile для неё всё лишнее и сделать её отдельной веткой.
а с этим условиям compat спек получается перегружен, дополнительные проверки. Плюс если встретятся вложенные условия то какие-то парсеры specfile могут поломаться (на примере сизифного add_changelog)
Требование перести legacy библиотеку в другой пакет было моё. Так эе было моим требованием добавить переменные compat. Поэтому Максим все сделал правильно. Пакет сопровождать дальше мне, поэтому и требования выставляю я.
(Ответ для Alexey Shabalin на комментарий #18) > Требование перести legacy библиотеку в другой пакет было моё. Так эе было > моим требованием добавить переменные compat. Поэтому Максим все сделал > правильно. > Пакет сопровождать дальше мне, поэтому и требования выставляю я. а зачем ты сразу учишь плохому ? ;) моя задача посмотреть что сделал кандидат и я реагирую не на то, что ты попросил а то что он сделал, в данном случае основная проблема (libxml2 -> libxml2_2) - ошибка, которая почти однозначно приведёт к проблемам с обновлением пакета (Obsoletes вижу, но лучше всё-равно не рисковать). В данном случае прекрасный повод такой ошибки избежать, за счёт смены soname у пакета.
я считаю наоборот, что твои рекомендации приведут к проблемам, и ты учишь плохому.
и что делать будем ?
(In reply to Alexey Shabalin from comment #20) > я считаю наоборот, что твои рекомендации приведут к проблемам, Уточни, пожалуйста, к каким именно проблемам. > и ты учишь плохому. Обоснуй, пожалуйста.
Видимо я был не прав. Отзываю свои предыдущие требования. Максим, сделай: - не надо переименовывать libxml2 -> libxml2_2 для legacy библиотеки - не перегружай спекфайл дополнительными условиями.
(Ответ для Alexey Shabalin на комментарий #23) > Видимо я был не прав. Отзываю свои предыдущие требования. > Максим, сделай: > - не надо переименовывать libxml2 -> libxml2_2 для legacy библиотеки > - не перегружай спекфайл дополнительными условиями. rider@, я обновил таск. Прошу проверить.
+Obsoletes: libxml2-python < %epoch:%version, python-modules-%rname < %epoch:%version Вот этот артефакт на мой взгляд можно убрать из пакета - это очень старая история. При этом Provides выглядит полезным, т.к. возможно какие-то сторонние пакеты такое хотят. $ find /mnt/ftp/pub/distributions/ALTLinux/ -type f -name 'libxml2-python*' /mnt/ftp/pub/distributions/ALTLinux/2.3/Compact/ALTLinux/RPMS.contrib/libxml2-python-2.6.7-alt1.i586.rpm /mnt/ftp/pub/distributions/ALTLinux/2.4/Master/ALTLinux/RPMS.main/libxml2-python-2.6.11-alt1.i586.rpm /mnt/ftp/pub/distributions/ALTLinux/updates/Master/2.4/i586/RPMS.updates/libxml2-python-2.6.11-alt1.1.i586.rpm /mnt/ftp/pub/distributions/ALTLinux/updates/Master/2.2/i586/RPMS.updates/libxml2-python-2.4.30-alt2.1.i586.rpm /mnt/ftp/pub/distributions/ALTLinux/updates/Compact/2.3/i586/RPMS.updates/libxml2-python-2.6.7-alt1.1.i586.rpm /mnt/ftp/pub/distributions/ALTLinux/2.2/Master/Mandrake/RPMS/libxml2-python-2.4.30-alt1.i586.rpm
не совсем понятно зачем вводится два макроса rname и pkgname с одинаковым значением. В спеке используется только rname 4 %define rname libxml2 5 %define abiversion 16 6 7 %define pkgname %rname 8 %define libname %{rname}_%abiversion 9 10 Name: %pkgname
всё остальное сделано хорошо. спасибо. Из legacy библиотеки примерно понятно зачем вводится макрос pkgname, но т.к. он нигде кроме name не используется, то я бы прямо в name написал libxml2_%abiversion для Legacy пакета, а в основном пакете в Name: libxml2 (без макроса rname) - будет чуть читабельнее,а дублирование слова libxml2 меня не смущает, т.к. смена имени не такая частая операция. +%define pkgname %{rname}_%abiversion +%define libname %rname + +Name: %pkgname
(Ответ для Anton Farygin на комментарий #25) > +Obsoletes: libxml2-python < %epoch:%version, python-modules-%rname < > %epoch:%version > > Вот этот артефакт на мой взгляд можно убрать из пакета - это очень старая > история. При этом Provides выглядит полезным, т.к. возможно какие-то > сторонние пакеты такое хотят. (Ответ для Anton Farygin на комментарий #27) > всё остальное сделано хорошо. спасибо. > > Из legacy библиотеки примерно понятно зачем вводится макрос pkgname, но т.к. > он нигде кроме name не используется, то я бы прямо в name написал > libxml2_%abiversion для Legacy пакета, а в основном пакете в Name: libxml2 > (без макроса rname) - будет чуть читабельнее,а дублирование слова libxml2 > меня не смущает, т.к. смена имени не такая частая операция. Исправил эти замечания.
(Ответ для Maxim Slipenko на комментарий #28) > > Исправил эти замечания. Спасибо. задание можно коммитить.
(Ответ для Anton Farygin на комментарий #13) > Всё посмотрел, к тому что собрано вопросов не возникло. > Но пакеты в основном на go, нет C/C++ библиотек - непонятно освоил ли > кандидат SharedLibsPolicy (один из самых сложных для понимания новичками > моментов). Если с libxml2 я справился, то есть ли ещё какие-то замечания? Или мне необходимо предоставить ещё задания с SharedLibsPolicy? (если да, то сколько?) Сейчас просто мне не совсем очевидно, что мне осталось сделать, чтобы успешно завершить Join.
К кандидату нет вопросов, он отлично разобрался в сборке пакетов под ALT Linux и готов к самостоятельной работе в ALT Linux Team.
Пользователь добавлен в группу мейнтейнеров. Желаю удачного мейнтейнерства!