From 329d6e3fbc5a09a9bc8800bd8a5d239dec1a3d24 Mon Sep 17 00:00:00 2001 From: Jakub Ružička Date: Tue, 6 Apr 2021 18:13:16 +0200 Subject: add apkg-powered upstream packaging for deb, rpm Files in a single new distro/ dir allow apkg to build BIRD packages for various distros directly from upstream sources as well as from upstream archives. Please see distro/README.md for more detail as well as apkg docs: https://apkg.rtfd.io I've used these files to build bird-2.0.8 on all currently supported releases of following distros: * Debian * Ubuntu * Fedora * CentOS * openSUSE Please note that latest apkg with accumulated fixes for bird is needed: https://gitlab.nic.cz/packaging/apkg/-/merge_requests/35 --- distro/README.md | 69 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 distro/README.md (limited to 'distro/README.md') diff --git a/distro/README.md b/distro/README.md new file mode 100644 index 00000000..ac1a75b0 --- /dev/null +++ b/distro/README.md @@ -0,0 +1,69 @@ +# BIRD upstream packaging sources + +This distro/ directory contains packaging sources initially copied from Debian +and Fedora downstream repos. + +Files in this directory follow [apkg] conventions and apkg can be used to +create BIRD packages for various distros directly from upstream sources as +well as from upstream archives. + +[apkg]: https://apkg.rtfd.io + + +## Create (source) package from current repo commit + +Following command should build source package for current distro directly +from current repo state - run at top bird directory: + + apkg srcpkg + +or build native packages directly: + + apkg build + +or in case of disposable VM/container you can use faster direct host build + + apkg build -Hi + +tools/make-dev-archive script is in charge of creating archive from source. + + +## Create (source) package from upstream release + +Following commands can be used to clone upstream repo, download current upstream +archive (tarball), and build Debian, Ubuntu, Fedora, CentOS, or OpenSUSE +source package (depending on host system) using files in bird/distro: + + git clone https://gitlab.nic.cz/labs/bird + cd bird + apkg get-archive + apkg srcpkg -a pkg/archives/upstream/bird-2.0.8.tar.gz + +To create native packages instead use `build`: + + apkg build -a pkg/archives/upstream/bird-2.0.8.tar.gz + +Or to build packages directly in case of a disposable VM/container (faster, modifies system): + + apkg build -Hi -a pkg/archives/upstream/bird-2.0.8.tar.gz + + +## Build packages in openSUSE Build Service (OBS) + +tools/make-obs script can be used on Debian-based system to create OBS +source package in pkg/obs directory ready to be uploaded: + + cd bird + apkg get-archive + ./tools/make-obs + # result in pkg/obs + +You can also supply (upstream) archive to build from: + + # or to use specified archive + ./tools/make-obs pkg/archives/upstream/bird-2.0.8.tar.gz + + +## More Info + +Please see [apkg docs][apkg]. -- cgit v1.2.3