trexio/helpers-debian
Evgeny Posenitskiy 34629c7d97
Update Debian files (#100)
* Change debian files to avoid conflicts when packaging
2022-09-27 13:54:54 +02:00
..
patches Update Debian files (#100) 2022-09-27 13:54:54 +02:00
source Update Debian files (#100) 2022-09-27 13:54:54 +02:00
README.Debian Update Debian files (#100) 2022-09-27 13:54:54 +02:00
README.md Update Debian files (#100) 2022-09-27 13:54:54 +02:00
README.source Update Debian files (#100) 2022-09-27 13:54:54 +02:00
changelog Update Debian files (#100) 2022-09-27 13:54:54 +02:00
compat Update Debian files (#100) 2022-09-27 13:54:54 +02:00
control Update Debian files (#100) 2022-09-27 13:54:54 +02:00
copyright Update Debian files (#100) 2022-09-27 13:54:54 +02:00
libtrexio-dev.install Update Debian files (#100) 2022-09-27 13:54:54 +02:00
libtrexio0.install Update Debian files (#100) 2022-09-27 13:54:54 +02:00
rules Update Debian files (#100) 2022-09-27 13:54:54 +02:00
watch Update Debian files (#100) 2022-09-27 13:54:54 +02:00

README.md

Debian packages from Autotools project

Following the debian guide.

Requirements

  • debmake
  • debuild
  • debhelper
  • dh-autoreconf

First release

  1. Download and extract the Autotools-produced distribution tarball (e.g. trexio-2.1.0.tar.gz)
  2. cp trexio-2.1.0.tar.gz libtrexio_2.1.0.orig.tar.gz > important for step 4
  3. cd trexio-2.1.0
  4. debmake

This will create debian folder with some pre-filled templates, which have to be checked and modified according to your project (e.g. prepend lib for library packages).

Release updates

This relies on the previously created and modified templates in the debian directory.

  1. debuild > this creates the debian packages in the parent directory, i.e. one level higher than trexio-2.1.0/ directory
  2. dpkg -f libtrexio_2.1.0-1_amd64.deb pre-depends depends recommends conflicts break

Note for maintainers: to battle-test your build process, it can be a good idea to run debuild in a chroot environment as opposed to the host. For example, pbuilder can be used to create an isolated chroot and to build a debian package within it (see pdebuild wrapper command).

Make

TREXIO supplies make debian_from_dist rule to produce a libtrexio debian package. It relies on specifications in the debian/ folder. This rule should be executed in the source code distribution (extracted from the tarball) and not in the GitHub repo clone. It also requires the tarball distribution (e.g. trexio-2.1.0.tar.gz) to be present in the parent directory.