LinuxForum.Fans
Тема

Разработка ПО

Автор: gnomsi 15 сообщений 2240 просмотров
#174293

Хочу сделать программу под Linux,возник вопрос, как же при таком большом разнообразии менеджеров пакетов производить обновления. Должно ли быть взаимодействие с менеджерами пакетов, с помощью api или еще чего нибудь, или просто достаточно кидать новую версию в репозиторий и старая заменяется на новую?И еще как я понял придется на стороне программы делать какой то супер костыль который будит "приделывать" обновления?


Или всё совсем не так?Просветите на данный вопрос :rolleyes: .

#174302

способ для ленивых: открываете исходники, кому надо - сам соберёт пакет и поделится со всеми остальными. :cool: (потом можете этот пакет повесить на видном месте и тогда [смотрите дальше].)

более человеческий способ: делаете ебилд для генту и собираете пакеты для пары дистрибутивов, выкладываете их в каком-нить видном месте и ждёте, пока ментейнеры дистрибутивов заметят их и добавят в свои репозитарии. Тут возможны варианты: они сами могут пересобрать пакеты, вы можете их просить добавить итп... smile

тяжёлый и почти никому не нужный способ: самому поддерживаете свой репозитарий для каждого дистрибутива и оверлей для генты, при обновлении добавлять туда пакет с новой версией. но ради одной небольшой программки этим заниматься скорей всего не стоит... :o

gnomsi написал:
или просто достаточно кидать новую версию в репозиторий и старая заменяется на новую?

именно так.

gnomsi написал:
И еще как я понял придется на стороне программы делать какой то супер костыль который будит "приделывать" обновления?

не понял, зачем?

#174322

Мне просто казалось, что если будут идти обновления из репозитория то программа все забудит что в ней было до этого.....
А что такое ебилд генты? :rolleyes:
Я просто на ней не сижу.

#174326

Ну те получается что в генте можно написать скрипт который будит создавать пакет для определенных дистрибутивов?Я правильно понял? :o

#174327
gnomsi написал:
Ну те получается что в генте можно написать скрипт который будит создавать пакет для определенных дистрибутивов?Я правильно понял? huh

Теоретически — да.

text
man ebuild
...
rpm    Builds a RedHat RPM package from the files in the temporary install directory.  At the moment,  the  ebuild's  dependency
              information is not incorporated into the RPM.
...

...но информация о зависимостях не будет помещаться в созданный RPM-пакет.

#174328

Мне кажется что rpm пакет можно сделать и на fedore, если в генте не получится. А как же быть с .deb и тп пакетами?

#174331

gnomsi, не обращайте внимания... я просто пошутил, что мол про гентушников не забывайте smile ... в принципе ебилды годятся только для генты и являются стандартным методом установки, управления пакетыми и сборкой из исходников.

в любом случае, под каждый дистрибутив пакет, скорей всего, придётся отдельно собирать...

#174332

Какая красота удобная.

#174334
Fat-Zer написал:
gnomsi, не обращайте внимания... я просто пошутил, что мол про гентушников не забывайте smile ... в принципе ебилды годятся только для генты и являются стандартным методом установки, управления пакетыми и сборкой из исходников.

в любом случае, под каждый дистрибутив пакет, скорей всего, придётся отдельно собирать...

Я то же об этом подумал, а можно еще держать машину виртуальную с дистрибутивами основными и собирать на них пакеты. Но это мне кажется будит совсем аморально wink

#174338

вот это ещё можно попробовать: http://linuxforum.ru/viewtopic.php?id=14134

gnomsi написал:
Я то же об этом подумал, а можно еще держать машину виртуальную с дистрибутивами основными и собирать на них пакеты. Но это мне кажется будит совсем аморально wink

ИМХО так и делают в серьёзных местах, заодно тестят быстренько...

#174342

Не знал что так делают серьеные дяди,стоит задуматься.

#174416

В итоге что я понял из данной дискусии:
1)Менеджеры пакетов сами все обовляют, что разработчику не надо париться поповоду внедрения костыля для обновления.
2)Надо завести пару дистрибутивов, у которых разные бинарники (.deb,.rpm и тп).
И всё, или есть ещё какие то секреты? :rolleyes:

#182857
gnomsi написал:
В итоге что я понял из данной дискусии:
1)Менеджеры пакетов сами все обовляют, что разработчику не надо париться поповоду внедрения костыля для обновления.
2)Надо завести пару дистрибутивов, у которых разные бинарники (.deb,.rpm и тп).
3)И всё, или есть ещё какие то секреты? :rolleyes:

1) да нихрена. :(
если маинтейнер не озаботился, ПМ нихрена не сделает. но это не проблема разработчика.
2) ну заведите...
3) не надо расстраиваться. если ваша прога кому-то нужна, её и без вас встроят. Если она конечно под GPL.

Войдите или зарегистрируйтесь, чтобы ответить.