Как мне создать локальный форк пакета debian?

8

Я хочу поддерживать локальную ветвь пакета debian. Мне нужно исправить ошибку, которая в конечном итоге будет исправлена ​​в официальном пакете, но не на некоторое время.

Как создать пакет .deb и как его использовать, чтобы локально использовать исправление ошибок?

Данный пакет содержит несколько файлов сценариев.

Джон Макали
источник

Ответы:

8

Это зависит от того, доступен ли общедоступный репозиторий git или subversion. Если это так, то, вероятно, имеет смысл использовать git для создания ветки официального репо.

В противном случае, если повезет, пакет использует что-то вроде dpatch или quilt, так что вы можете просто сохранить патч в debian / patches /.

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

При сборке пакетов Debian убедитесь, что у вас установлены пакеты build-essential и devscripts.

Чтобы внести изменения, запустите

# apt-get source foo

Затем перейдите в каталог foo-1.2.3 и внесите изменения.

Тогда беги

# debuild -us -uc -b

который создаст пакет. Это либо создаст сразу, либо сообщит вам зависимости, которые вам необходимо установить, прежде чем пытаться снова. Пакеты сборки окажутся в каталоге над исходным кодом.

Я настоятельно рекомендую изменить номер версии пакета в файле debian / changelog, чтобы вы не путали ваш локально собранный пакет с оригинальным. Вы можете посмотреть на инструмент dch, чтобы упростить редактирование этого файла.

Дэвид Пашли
источник