Как применить упаковку для libvirt, чтобы собрать пакет из версии git?

Как применить упаковку для libvirt, чтобы собрать пакет из версии git?

Я пытаюсь работать надпатч к libvirt для включения томов хранения Ceph/RBD.

Я хотел бы протестировать свой код сейчас. Я хотел бы сделать это как пакет (или даже Launchpad PPA), чтобы я мог аккуратно удалить его.

Очевидно, кто-то уже проделал работу по созданию пакетов libvirt для Ubuntu и Debian.

Как взять ветку git и собрать ее в пакет, используя упаковку, используемую официальным пакетом Ubuntu?

Бонусные баллы, если мы сможем получить что-то вроде вывода

git describe --abbrev=7 --always --tags

в качестве версии, поэтому я могу в конечном итоге получить как версию (4.0.0), так и тег git (gfd7cb8c) в номере версии, так что более новые версии действительно будут выглядеть новыми для apt.

решение1

Да, вы можете использовать файлы упаковки из дистрибутива (Ubuntu/Debian).

  1. Создайте исходный архив из вашего репозитория и переименуйте его правильно.

    <packagename>_<version>.orig.tar.gz
    

    Корневая папка внутри архива должна <packagename>-<version>содержать все исходное дерево.

    Затем извлеките его.

  2. Загрузите файл упаковки Debian .debian.tar.zxс сайта:

    https://packages.ubuntu.com/bionic/libvirt-bin

    Извлеките его и поместите debianпапку в <packagename>-<version>папку из предыдущего шага.

  3. Откройте терминал в <packagename>-<version>папке, затем соберите исходный пакет Debian.

    # if needed
    dch
    debuild clean
    # build source package only
    debuild -S
    
  4. Загрузите его в PPA, который создаст для вас бинарные пакеты.

Связанный контент