Re: создание своего пакета под несколько версий операционок
Простите, тест, а то отлупы сплошные. >> > Проблему понимаю, но решение - не очень. Добавление суффикса, как >> > советует Andrey Jr. Melnikov в соседнем письме достаточно для этого? >> формировать версии так: >> <версия ПО>-<версия пакета>~<версия ОС>
Re: создание своего пакета под несколько версий операционок
Alexander Gerasiovwrote: > Hello Andrey, [skip] > > Проблему понимаю, но решение - не очень. Добавление суффикса, как > > советует Andrey Jr. Melnikov в соседнем письме достаточно для этого? > формировать версии так: > <версия ПО>-<версия пакета>~<версия ОС> > где версия ОС для ubuntu - codename, благо они по алфавиту. Хотя вот > скоро выйдет z и что там дальше я не очень в курсе. > версия ОС для debian - debian<номер>, или, что совсем правильно > bpo<номер>, см инструкцию на backports.d.o Нуу, что будет написано после версии пакета - всёравно. Если вчитаться в https://www.debian.org/doc/debian-policy/ch-controlfields.html#s-f-Version то 1.2.50-1ubuntu2.14.04.2 - будет версия 1.2.50 и версия пакета 1ubuntu2.14.04, у 4:4.8.5+git192-g085f851+dfsg-2ubuntu4.1 - эпоха 4, версия 4.8.5+git192-g085f851+dfsg версия пакета - 2ubuntu4.1. При этом - первых пакет должен жить в дирьке пакет-1.2.50, а второй в пакет-4.8.5+git192-g085f851+dfsg Поэтому, проще для себя держать версии в виде: эпоха:версия-ревизия~локальный_идентификатор.
Re: создание своего пакета под несколько версий операционок
Hello Andrey, On Mon, 3 Apr 2017 08:26:30 +0700 Andrey A Lyubimetswrote: > On 29.03.2017 17:39, Victor Wagner wrote: > > On Wed, 29 Mar 2017 15:29:08 +0700 > > Andrey Lyubimets wrote: > > > >> Навеяно параллельным тредом. > >> Нужно собирать пакет для для двух версий debian и для четырех > >> версий ubuntu, да для двух архитектур (пока ?) > >> > > >> pbuilder + reprepro спасёт отца русской демократии ? > > > > Спасет. Но нужно понимать что нужна какая-то основная архитектура, > > на которой будешь патчить исходники, выполнять большую часть > > отладки и т.д. А потом пересобирать для остальных. > > > > Когда я себе выстраивал подобную систему у меня сборка была > > разделена на два этапа: > > > > 1. Собираем на архитектуре и релизе, совпадающими с хост-системой > > (все равно в pbuilder, чтобы не загрязнять систему dev-пакетами). > > 2. Если там все получилось - запускаем пересборку только > > архитектурно-зависимых пакетов на всем остальном многообразии. > > > > С поддержкой разных релизов еще рекомендуется задуматься над > > поддержкой версионирования. Чтобы потом у юзера при дистапгрейде > > пакет, собранный под предыдущий релиз (с соответсвующими > > зависимостями от библиотек) не зависал. > Проблему понимаю, но решение - не очень. Добавление суффикса, как > советует Andrey Jr. Melnikov в соседнем письме достаточно для этого? формировать версии так: <версия ПО>-<версия пакета>~<версия ОС> где версия ОС для ubuntu - codename, благо они по алфавиту. Хотя вот скоро выйдет z и что там дальше я не очень в курсе. версия ОС для debian - debian<номер>, или, что совсем правильно bpo<номер>, см инструкцию на backports.d.o -- Best regards, Alexander Gerasiov Contacts: e-mail: g...@cs.msu.su Homepage: http://gerasiov.net Skype: gerasiov PGP fingerprint: 04B5 9D90 DF7C C2AB CD49 BAEA CA87 E9E8 2AAC 33F1
Re: создание своего пакета под несколько версий операционок
On 29.03.2017 17:39, Victor Wagner wrote: On Wed, 29 Mar 2017 15:29:08 +0700 Andrey Lyubimetswrote: Навеяно параллельным тредом. Нужно собирать пакет для для двух версий debian и для четырех версий ubuntu, да для двух архитектур (пока ?) pbuilder + reprepro спасёт отца русской демократии ? Спасет. Но нужно понимать что нужна какая-то основная архитектура, на которой будешь патчить исходники, выполнять большую часть отладки и т.д. А потом пересобирать для остальных. Когда я себе выстраивал подобную систему у меня сборка была разделена на два этапа: 1. Собираем на архитектуре и релизе, совпадающими с хост-системой (все равно в pbuilder, чтобы не загрязнять систему dev-пакетами). 2. Если там все получилось - запускаем пересборку только архитектурно-зависимых пакетов на всем остальном многообразии. С поддержкой разных релизов еще рекомендуется задуматься над поддержкой версионирования. Чтобы потом у юзера при дистапгрейде пакет, собранный под предыдущий релиз (с соответсвующими зависимостями от библиотек) не зависал. Проблему понимаю, но решение - не очень. Добавление суффикса, как советует Andrey Jr. Melnikov в соседнем письме достаточно для этого? То есть у меня получалось так, что последняя запись в changelog-е генерируется автоматическии и выглядит как "rebuild for release".
Re: создание своего пакета под несколько версий операционок
Igor Savlookwrote: > On Wed, 2017-03-29 at 18:28 +0300, Andrey Jr. Melnikov wrote: > > Igor Savlook wrote: > > > On Wed, 2017-03-29 at 10:21 -0400, Tim Sattarov wrote: > > > > On 29/03/17 04:29 AM, Andrey Lyubimets wrote: > > > > > > > > > > Гугл подсказывает ещё про sbuild, Open Build Service и fpm > > > > > [github.com/jordansissel/fpm]. Это то, что бегло просмотрел. > > > > > > > > Не надо fpm, слёзно прошу не пользоваться этой говноподелкой. > > > > Все кому не лень ей пользуются для тупого конвертирования из zip > > > > архивов > > > > в пакеты. > > > > > > > А почему тупого, после генерации нельзя отредактировать пакет? > > > Интересно а есть вменяемые debian-way утилиты для генерации > > > debian/* > > > контента? > > > > dh_make ? > > > Про dh_make я знаю я имел ввиду что-то типа fpm (говорят же что он не > вменяем). У всего, что генерит control.tar.gz из уже созданного где-то чужого пакета есть один фатальный недостаток - оно не умеет нормально прописывать зависимости.
Re: создание своего пакета под несколько версий операционок
2017-088 20:46 Igor Savlookwrote: > Про dh_make я знаю я имел ввиду что-то типа fpm (говорят же что он не > вменяем). > checkinstall есть (был, по крайней мере)
Re: создание своего пакета под несколько версий операционок
On 29/03/17 01:46 PM, Igor Savlook wrote: > Про dh_make я знаю я имел ввиду что-то типа fpm (говорят же что он > невменяем). первое что бросается в пакетах сгенерированных fpm: changelog там никакой. просто одна строчка spotify-client (1:1.0.49.125.g72ee7853-111) whatever; urgency=medium * Package created with FPM. -- SpotifyThu, 23 Feb 2017 10:10:33 +
Re: создание своего пакета под несколько версий операционок
On 29/03/17 01:46 PM, Igor Savlook wrote: > Про dh_make я знаю я имел ввиду что-то типа fpm (говорят же что он > невменяем). Если так хочется конвертировать архивы из формата в формат, то лучше уж alien :) (нет у меня доверия поделкам на nodejs, которые написаны на Apple Mac Book, для пользователей Apple Mac Book, чтобы покрыть функционал нужный для линуксоидов)
Re: создание своего пакета под несколько версий операционок
On Wed, 2017-03-29 at 18:28 +0300, Andrey Jr. Melnikov wrote: > Igor Savlookwrote: > > On Wed, 2017-03-29 at 10:21 -0400, Tim Sattarov wrote: > > > On 29/03/17 04:29 AM, Andrey Lyubimets wrote: > > > > > > > > Гугл подсказывает ещё про sbuild, Open Build Service и fpm > > > > [github.com/jordansissel/fpm]. Это то, что бегло просмотрел. > > > > > > Не надо fpm, слёзно прошу не пользоваться этой говноподелкой. > > > Все кому не лень ей пользуются для тупого конвертирования из zip > > > архивов > > > в пакеты. > > > > > А почему тупого, после генерации нельзя отредактировать пакет? > > Интересно а есть вменяемые debian-way утилиты для генерации > > debian/* > > контента? > > dh_make ? > Про dh_make я знаю я имел ввиду что-то типа fpm (говорят же что он не вменяем).
Re: создание своего пакета под несколько версий операционок
Igor Savlookwrote: > On Wed, 2017-03-29 at 10:21 -0400, Tim Sattarov wrote: > > On 29/03/17 04:29 AM, Andrey Lyubimets wrote: > > > > > > Гугл подсказывает ещё про sbuild, Open Build Service и fpm > > > [github.com/jordansissel/fpm]. Это то, что бегло просмотрел. > > > > Не надо fpm, слёзно прошу не пользоваться этой говноподелкой. > > Все кому не лень ей пользуются для тупого конвертирования из zip > > архивов > > в пакеты. > > > А почему тупого, после генерации нельзя отредактировать пакет? > Интересно а есть вменяемые debian-way утилиты для генерации debian/* > контента? dh_make ?
Re: создание своего пакета под несколько версий операционок
On Wed, 2017-03-29 at 10:21 -0400, Tim Sattarov wrote: > On 29/03/17 04:29 AM, Andrey Lyubimets wrote: > > > > Гугл подсказывает ещё про sbuild, Open Build Service и fpm > > [github.com/jordansissel/fpm]. Это то, что бегло просмотрел. > > Не надо fpm, слёзно прошу не пользоваться этой говноподелкой. > Все кому не лень ей пользуются для тупого конвертирования из zip > архивов > в пакеты. > А почему тупого, после генерации нельзя отредактировать пакет? Интересно а есть вменяемые debian-way утилиты для генерации debian/* контента?
Re: создание своего пакета под несколько версий операционок
On 29/03/17 04:29 AM, Andrey Lyubimets wrote: > > Гугл подсказывает ещё про sbuild, Open Build Service и fpm > [github.com/jordansissel/fpm]. Это то, что бегло просмотрел. Не надо fpm, слёзно прошу не пользоваться этой говноподелкой. Все кому не лень ей пользуются для тупого конвертирования из zip архивов в пакеты.
Re: создание своего пакета под несколько версий операционок
Andrey Lyubimetswrote: > Навеяно параллельным тредом. > Нужно собирать пакет для для двух версий debian и для четырех версий ubuntu, > да для двух архитектур (пока ?) > > Ну это ты так сейчас думаешь. А вот когда у тебя этих машин больше 3, да еще > > на разных релизах и архитектурах.. то проще завести pbuilder + reprepro. > pbuilder + reprepro спасёт отца русской демократии ? Частично. Автор pbuilder проживает в каменном веке, про overlayfs он не знает, так что каждый раз будешь ждать пока разверентся tar.xx с базовой системой. В версии не из sid'a - depends-resolver тупой, в версии из sid'a - получше, но всеравно тупит, надо патчить. Для reprepro надо опять-же дописывать суффиксы в версию пакета (как это делается при бэкпорте) иначе не получиться для разных версий и одной архитектуры держать одинаковые пакеты в одном пуле. Для убунты - проще завести ppa, у них там был авто-билдер. Залил туда сорец + diff + dsc - получил на выходе в своем ppa готовую сборку. Или build.log с ошибками. Но будь готов, что в разных системах а) пакеты называются по разному, б) присутствует переход от одного к другому (скажем в jessie надо в build-depends указывать libmariadbclient-dev, чтоб собралось с библиотеками от mariadb, в stretch - надо libmariadbclient-dev-compat [который сам притащит libmariadbclient-dev]) с) разные версии библиотек изредка мешают жить (особенно переход на openssl-1.1.0)
Re: создание своего пакета под несколько версий операционок
On Wed, 29 Mar 2017 15:29:08 +0700 Andrey Lyubimetswrote: > Навеяно параллельным тредом. > Нужно собирать пакет для для двух версий debian и для четырех версий > ubuntu, да для двух архитектур (пока ?) > > > Ну это ты так сейчас думаешь. А вот когда у тебя этих машин больше > > 3, да еще на разных релизах и архитектурах.. то проще завести > > pbuilder + reprepro. > > pbuilder + reprepro спасёт отца русской демократии ? Спасет. Но нужно понимать что нужна какая-то основная архитектура, на которой будешь патчить исходники, выполнять большую часть отладки и т.д. А потом пересобирать для остальных. Когда я себе выстраивал подобную систему у меня сборка была разделена на два этапа: 1. Собираем на архитектуре и релизе, совпадающими с хост-системой (все равно в pbuilder, чтобы не загрязнять систему dev-пакетами). 2. Если там все получилось - запускаем пересборку только архитектурно-зависимых пакетов на всем остальном многообразии. С поддержкой разных релизов еще рекомендуется задуматься над поддержкой версионирования. Чтобы потом у юзера при дистапгрейде пакет, собранный под предыдущий релиз (с соответсвующими зависимостями от библиотек) не зависал. То есть у меня получалось так, что последняя запись в changelog-е генерируется автоматическии и выглядит как "rebuild for release".
Re: создание своего пакета под несколько версий операционок
On Wed, 29 Mar 2017 11:39:00 +0300 Igor Savlookwrote: > > Я использую так systemd-nspawn/docker + sbuild + reprepro. > Первое это чтобы основную систему не загрязнять пакетами > девелоперскими. А что докер уже научилися работать с архитектурами, отличными от amd64?
Re: создание своего пакета под несколько версий операционок
Hello Andrey, On Wed, 29 Mar 2017 15:29:08 +0700 Andrey Lyubimetswrote: > Навеяно параллельным тредом. > Нужно собирать пакет для для двух версий debian и для четырех версий > ubuntu, да для двух архитектур (пока ?) > > > Ну это ты так сейчас думаешь. А вот когда у тебя этих машин больше > > 3, да еще на разных релизах и архитектурах.. то проще завести > > pbuilder + reprepro. > > pbuilder + reprepro спасёт отца русской демократии ? Лучше sbuild. инструкция по настройке в wiki.debian.org, рекомендуется включить ccache и eatmydata. В качестве строражда я использую btrfs-snapshot -- Best regards, Alexander Gerasiov Contacts: e-mail: g...@cs.msu.su Homepage: http://gerasiov.net Skype: gerasiov PGP fingerprint: 04B5 9D90 DF7C C2AB CD49 BAEA CA87 E9E8 2AAC 33F1
Re: создание своего пакета под несколько версий операционок
On Wed, 2017-03-29 at 15:29 +0700, Andrey Lyubimets wrote: > Навеяно параллельным тредом. > Нужно собирать пакет для для двух версий debian и для четырех версий > ubuntu, > да для двух архитектур (пока ?) > > > Ну это ты так сейчас думаешь. А вот когда у тебя этих машин больше > > 3, да еще > > на разных релизах и архитектурах.. то проще завести pbuilder + > > reprepro. > > pbuilder + reprepro спасёт отца русской демократии ? > > Гугл подсказывает ещё про sbuild, Open Build Service и fpm > [github.com/jordansissel/fpm]. Это то, что бегло просмотрел. > > поделитесь опытом - кто чем пользуется для подобной задачи. > Я использую так systemd-nspawn/docker + sbuild + reprepro. Первое это чтобы основную систему не загрязнять пакетами девелоперскими.
создание своего пакета под несколько версий операционок
Навеяно параллельным тредом. Нужно собирать пакет для для двух версий debian и для четырех версий ubuntu, да для двух архитектур (пока ?) > Ну это ты так сейчас думаешь. А вот когда у тебя этих машин больше 3, да еще > на разных релизах и архитектурах.. то проще завести pbuilder + reprepro. pbuilder + reprepro спасёт отца русской демократии ? Гугл подсказывает ещё про sbuild, Open Build Service и fpm [github.com/jordansissel/fpm]. Это то, что бегло просмотрел. поделитесь опытом - кто чем пользуется для подобной задачи.