Как создать файл .deb с зависимостью?

9

У меня есть игра, созданная с использованием инфраструктуры LÖVE, и я хочу упаковать ее в .debфайл, чтобы ее можно было легко установить другими и легко найти, например, через панель Unity.

У меня также есть фреймворк LÖVE, love_0.7.2.debкоторый я тоже хочу как-то в файле deb.

Файлы, которые у меня есть:

game_icon.png
game .desktop
the_game.love
love_0.7.2.deb

Может ли кто-нибудь объяснить мне, как это сделать?

Jeggy
источник

Ответы:

11

Для того чтобы один пакет зависел от другого, вам нужно указать отношение в debian/controlфайле. Вы можете прочитать о синтаксисе этого файла в Ubuntu Packaging Guide . Оставшаяся часть этого руководства, вероятно, будет полезна, предоставляя вам обзор программ упаковки для Ubuntu.

Вкратце, ваш debian/controlфайл может выглядеть примерно так:

Source: my-game
Section: devel
Priority: optional
Maintainer: Jane Doe <packager@example.com>
Standards-Version: 3.9.3
Build-Depends: debhelper (>= 7)
Homepage: http://www.gnu.org/software/hello/

Package: my-game
Architecture: any
Depends: ${shlibs:Depends}, love (>= 0.7.2)
Description: a game made with the LÖVE framework
 This game is really amazing.
 .
 It has many features.

Особенно обратите внимание на строку:

Зависит: $ {shlibs: Зависит}, любовь (> = 0.7.2)

andrewsomething
источник
Я никогда не создавал файл deb раньше. Я создал это сейчас speedyshare.com/3qhHQ/not-pacman.tar.gz . Это выглядит правильно? если так, как я могу сделать это в файл deb?
Джегги
@Jeggy Начните с уже предложенного руководства по упаковке. Если у вас есть конкретный вопрос, пожалуйста, задайте новый вопрос. Кроме того, упаковка не всегда очень простая задача и сама по себе работа. Очень «простые для компиляции» приложения, как правило, также просты в упаковке (например ./confgure && make && make install, приложения, использующие GNU Autotools), довольно легко. У Debhelper есть много эвристики в этих очень общих случаях.
gertvdijk