Fork of Arch Linux devtools from https://git.archlinux.org/devtools.git
Go to file
Jelle van der Waa 8190a22480
feat(release): always generate a .SRCINFO file on release
When releasing a package always generate a .SRCINFO file so we can build
tooling based upon these files instead of having to parse bash in a
non-bash language.

Some tests have shown around 30 seconds or generating the metadata on
packages like thunderbird. The implementation in makepkg becomes semi
slow for some split packages that provide a huge number of individual
packages, but it seems reasonably fast so we can instead have a uniform
state of always providing .SRCINFO files.

Signed-off-by: Levente Polyak <anthraxx@archlinux.org>
2023-09-04 23:41:00 +02:00
config config: update pacman configs for new repository layout 2023-05-20 00:08:13 +02:00
contrib chore: fix spelling mistake packge -> package 2023-07-06 15:30:49 +02:00
doc chore: fix spelling mistake packge -> package 2023-07-06 15:30:49 +02:00
src feat(release): always generate a .SRCINFO file on release 2023-09-04 23:41:00 +02:00
test/bin test: added pkgctl devel wrapper for convenient development testing 2023-05-20 00:08:11 +02:00
.gitignore build: command to build packages inside a clean chroot 2023-05-20 00:08:11 +02:00
.gitlab-ci.yml build: enable gitlab-ci 2022-04-28 19:10:59 +02:00
LICENSE Add GPL-3.0 license file 2021-10-29 09:16:05 +02:00
Makefile fix(make): use correct version variable for release target 2023-07-05 18:45:54 +02:00
README.md chore(doc): add missing dependency on fakeroot 2023-06-08 00:31:35 +02:00

README.md

Devtools - development tools for Arch Linux

This repository contains tools for the Arch Linux distribution for building and maintaining official repository packages.

Building

When building official distro packages the BUILDTOOLVER needs to be set to the exact label of the release package in order to allow to detect the exactly used devtools version. This is required for reproducible builds to fetch the according files like makepkg.conf.

BUILDTOOLVER="${pkgver}-${pkgrel}-${arch}" make all

Development

For local development testing, there is a convenience wrapper for pkgctl that will automatically build the project and proxy all calls to the local build directory:

./test/bin/pkgctl --help

Releasing

  1. bump the version in the Makefile
  2. Commit everything as Version $(date +"%Y%m%d")
  3. Create a new tag git tag -s $(date +"%Y%m%d")
  4. Push changes
  5. Upload the source tarball with make dist upload
  6. Update the package

Dependencies

Runtime Dependencies

  • arch-install-scripts
  • awk
  • bash
  • binutils
  • coreutils
  • diffutils
  • fakeroot
  • findutils
  • grep
  • jq
  • ncurses
  • openssh
  • parallel
  • rsync
  • sed
  • systemd
  • util-linux
  • bzr
  • git
  • mercurial
  • subversion

Development Dependencies

  • asciidoc
  • make
  • shellcheck

License

Devtools is licensed under the terms of the GPL-3.0-or-later (see LICENSE).