Как сделать упаковку Debian для создания двух пакетов с исходным исходным архивом?

Извлеките этот файл в /usr/share/icons/your.current.icon.theme/categories/24, затем снова запустите системные настройки Gnome.

http://ubuntuone.com/1si6OVYcMVmDe5uJwBDz3L [!d1 ]

14
задан 15 December 2010 в 07:35

10 ответов

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian/package.install. Вот пример пакета, над которым я работал, воображение (ветвь bzr).

Сначала нам нужно создать пакет в воображении (ветвь bzr) . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all. Также обратите внимание, что воображение зависит от imagination-common (= ${source:Version}).

Затем мы создаем файл debian/imagination.install. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec:.

usr/bin/
usr/lib/
/usr/share/applications/imagination.desktop

Нам нужно создать файл debian/imagination-common.install. Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

/usr/share/doc/
/usr/share/icons/
/usr/share/imagination/
/usr/share/locale/

man dh_install описывает, что на самом деле происходит здесь:

, возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что означает «правильные каталоги сборки пакетов», так это то, что к концу процесса сборки все, что будет в полученном foo.deb, будет найдено в src/debian/foo. Файлы, которые попадут в foo-data.deb, будут найдены в src/debian/foo-data. Поскольку debian/rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 25 May 2018 в 23:58
  • 1
    Спасибо огромное! Очень четкое объяснение и прекрасно работает. – Nathan Osman 15 December 2010 в 09:41

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian/package.install. Вот пример пакета, над которым я работал, воображение (ветвь bzr).

Сначала нам нужно создать пакет в воображении (ветвь bzr) . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all. Также обратите внимание, что воображение зависит от imagination-common (= ${source:Version}).

Затем мы создаем файл debian/imagination.install. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec:.

usr/bin/ usr/lib/ /usr/share/applications/imagination.desktop

Нам нужно создать файл debian/imagination-common.install. Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

/usr/share/doc/ /usr/share/icons/ /usr/share/imagination/ /usr/share/locale/

man dh_install описывает, что на самом деле происходит здесь:

, возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что означает «правильные каталоги сборки пакетов», так это то, что к концу процесса сборки все, что будет в полученном foo.deb, будет найдено в src/debian/foo. Файлы, которые попадут в foo-data.deb, будут найдены в src/debian/foo-data. Поскольку debian/rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 25 July 2018 в 22:44

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian/package.install. Вот пример пакета, над которым я работал, воображение (ветвь bzr).

Сначала нам нужно создать пакет в воображении (ветвь bzr) . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all. Также обратите внимание, что воображение зависит от imagination-common (= ${source:Version}).

Затем мы создаем файл debian/imagination.install. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec:.

usr/bin/ usr/lib/ /usr/share/applications/imagination.desktop

Нам нужно создать файл debian/imagination-common.install. Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

/usr/share/doc/ /usr/share/icons/ /usr/share/imagination/ /usr/share/locale/

man dh_install описывает, что на самом деле происходит здесь:

, возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что означает «правильные каталоги сборки пакетов», так это то, что к концу процесса сборки все, что будет в полученном foo.deb, будет найдено в src/debian/foo. Файлы, которые попадут в foo-data.deb, будут найдены в src/debian/foo-data. Поскольку debian/rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 31 July 2018 в 10:42

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian/package.install. Вот пример пакета, над которым я работал, воображение (ветвь bzr).

Сначала нам нужно создать пакет в воображении (ветвь bzr) . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all. Также обратите внимание, что воображение зависит от imagination-common (= ${source:Version}).

Затем мы создаем файл debian/imagination.install. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec:.

usr/bin/ usr/lib/ /usr/share/applications/imagination.desktop

Нам нужно создать файл debian/imagination-common.install. Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

/usr/share/doc/ /usr/share/icons/ /usr/share/imagination/ /usr/share/locale/

man dh_install описывает, что на самом деле происходит здесь:

, возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что означает «правильные каталоги сборки пакетов», так это то, что к концу процесса сборки все, что будет в полученном foo.deb, будет найдено в src/debian/foo. Файлы, которые попадут в foo-data.deb, будут найдены в src/debian/foo-data. Поскольку debian/rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 31 July 2018 в 11:46

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian/package.install. Вот пример пакета, над которым я работал, воображение (ветвь bzr).

Сначала нам нужно создать пакет в воображении (ветвь bzr) . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all. Также обратите внимание, что воображение зависит от imagination-common (= ${source:Version}).

Затем мы создаем файл debian/imagination.install. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec:.

usr/bin/ usr/lib/ /usr/share/applications/imagination.desktop

Нам нужно создать файл debian/imagination-common.install. Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

/usr/share/doc/ /usr/share/icons/ /usr/share/imagination/ /usr/share/locale/

man dh_install описывает, что на самом деле происходит здесь:

, возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что означает «правильные каталоги сборки пакетов», так это то, что к концу процесса сборки все, что будет в полученном foo.deb, будет найдено в src/debian/foo. Файлы, которые попадут в foo-data.deb, будут найдены в src/debian/foo-data. Поскольку debian/rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 2 August 2018 в 04:10

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian / package.install . Вот пример пакета, над которым я работал, imagination (ветвь bzr) .

Сначала нам нужно создать пакет в debian / control . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all . Также обратите внимание, что воображение Зависит от imagination-common (= $ {source: Version}) .

Затем мы создаем debian / imagination.install файл. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec: .

  usr / bin / usr / lib / / usr /  share / applications / imagination.desktop  

Нам нужно создать файл debian / imagination-common.install . Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

  / usr / share / doc / / usr / share / icons / / usr / share / imagination  / / usr / share / locale /  

man dh_install описывает, что на самом деле происходит здесь:

возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что это означает правильные каталоги сборки пакетов "заключается в том, что к концу процесса сборки все, что будет в результате foo.deb , будет найдено в src / debian / foo . Файлы, которые попадут в foo-data.deb , будут найдены в src / debian / foo-data . Поскольку debian / rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 4 August 2018 в 20:14

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian / package.install . Вот пример пакета, над которым я работал, imagination (ветвь bzr) .

Сначала нам нужно создать пакет в debian / control . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all . Также обратите внимание, что воображение Зависит от imagination-common (= $ {source: Version}) .

Затем мы создаем debian / imagination.install файл. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec: .

  usr / bin / usr / lib / / usr /  share / applications / imagination.desktop  

Нам нужно создать файл debian / imagination-common.install . Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

  / usr / share / doc / / usr / share / icons / / usr / share / imagination  / / usr / share / locale /  

man dh_install описывает, что на самом деле происходит здесь:

возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что это означает правильные каталоги сборки пакетов "заключается в том, что к концу процесса сборки все, что будет в результате foo.deb , будет найдено в src / debian / foo . Файлы, которые попадут в foo-data.deb , будут найдены в src / debian / foo-data . Поскольку debian / rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 6 August 2018 в 04:15

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian / package.install . Вот пример пакета, над которым я работал, imagination (ветвь bzr) .

Сначала нам нужно создать пакет в debian / control . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all . Также обратите внимание, что воображение Зависит от imagination-common (= $ {source: Version}) .

Затем мы создаем debian / imagination.install файл. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec: .

  usr / bin / usr / lib / / usr /  share / applications / imagination.desktop  

Нам нужно создать файл debian / imagination-common.install . Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

  / usr / share / doc / / usr / share / icons / / usr / share / imagination  / / usr / share / locale /  

man dh_install описывает, что на самом деле происходит здесь:

возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что это означает правильные каталоги сборки пакетов "заключается в том, что к концу процесса сборки все, что будет в результате foo.deb , будет найдено в src / debian / foo . Файлы, которые попадут в foo-data.deb , будут найдены в src / debian / foo-data . Поскольку debian / rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 7 August 2018 в 22:19

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian / package.install . Вот пример пакета, над которым я работал, imagination (ветвь bzr) .

Сначала нам нужно создать пакет в debian / control . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all . Также обратите внимание, что воображение Зависит от imagination-common (= $ {source: Version}) .

Затем мы создаем debian / imagination.install файл. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec: .

  usr / bin / usr / lib / / usr /  share / applications / imagination.desktop  

Нам нужно создать файл debian / imagination-common.install . Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

  / usr / share / doc / / usr / share / icons / / usr / share / imagination  / / usr / share / locale /  

man dh_install описывает, что на самом деле происходит здесь:

возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что это означает правильные каталоги сборки пакетов "заключается в том, что к концу процесса сборки все, что будет в результате foo.deb , будет найдено в src / debian / foo . Файлы, которые попадут в foo-data.deb , будут найдены в src / debian / foo-data . Поскольку debian / rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 10 August 2018 в 10:29

Это место, где я всегда находил недостающую документацию. Я в значительной степени узнал, как это работает, глядя на то, как это делается в других пакетах. Как и в большинстве случаев в упаковке Debian, есть несколько способов сделать это. Я считаю, что самый простой способ - использовать файлы debian / package.install . Вот пример пакета, над которым я работал, imagination (ветвь bzr) .

Сначала нам нужно создать пакет в debian / control . Сейчас есть три строфы. Один для исходного пакета и по одному для каждого двоичного пакета. Обратите внимание, что пакет foo-data должен быть Architecture: all . Также обратите внимание, что воображение Зависит от imagination-common (= $ {source: Version}) .

Затем мы создаем debian / imagination.install файл. Это содержит конкретные файлы или пути, которые мы хотим закончить в пакете воображения. Для этого пакета мы хотим, чтобы все зависимые от архитектуры файлы. Файл рабочего стола включен, так как ему нужно сказать с двоичным кодом, который он вызывает в своей строке Exec: .

  usr / bin / usr / lib / / usr /  share / applications / imagination.desktop  

Нам нужно создать файл debian / imagination-common.install . Это будет содержать все независимые от архитектуры файлы, изображения, переводы, документы и т. Д.

  / usr / share / doc / / usr / share / icons / / usr / share / imagination  / / usr / share / locale /  

man dh_install описывает, что на самом деле происходит здесь:

возможно, у вас есть большой пакет, который создает несколько бинарных пакетов. Вы можете использовать Upstream Makefile, чтобы установить все это в debian / tmp, а затем использовать dh_install для копирования каталогов и файлов оттуда в соответствующие каталоги сборки пакетов.

Что это означает правильные каталоги сборки пакетов "заключается в том, что к концу процесса сборки все, что будет в результате foo.deb , будет найдено в src / debian / foo . Файлы, которые попадут в foo-data.deb , будут найдены в src / debian / foo-data . Поскольку debian / rules по существу является только Makefile, вы можете начать представлять себе другие способы получения одного и того же результата.

14
ответ дан 13 August 2018 в 16:55
  • 1
    Спасибо огромное! Очень четкое объяснение и прекрасно работает. – Nathan Osman 15 December 2010 в 09:41

Другие вопросы по тегам:

Похожие вопросы: