From ed28a7d3b4390bd57638baecfb495deb4bbee743 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Fri, 25 Sep 2026 01:32:50 +0100 Subject: Add hacking instructions. --- HACKING.md | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 HACKING.md (limited to 'HACKING.md') diff --git a/HACKING.md b/HACKING.md new file mode 100644 index 0000000..b2a56ef --- /dev/null +++ b/HACKING.md @@ -0,0 +1,35 @@ +# Set up development environment + +Drop into a development environment using `guix shell`. +``` +guix shell -Df guix.scm +``` + +# Build the website + +``` +guix build -L .guix -f guile-xapian-website.scm +``` + +# Make a release +## Bump version +Bump version in `configure.ac`. +## Tag a release +Tag (annotated and signed; use the -ase flags to `git tag`) a release `vx.x.x` putting news into the tag message. +## Create a release tarball, test it, and sign it +``` +cp $(guix build -L .guix -f .guix/guile-xapian-distribution.scm) guile-xapian-x.x.x.tar.lz +guix build -L .guix --with-source=guile-xapian=guile-xapian-x.x.x.tar.lz -e '(@@ (guile-xapian-package) guile-xapian)' +guix build -L .guix --with-source=guile2.2-xapian=guile-xapian-x.x.x.tar.lz -e '(@@ (guile-xapian-package) guile2.2-xapian)' +gpg --detach-sign --armor guile-xapian-x.x.x.tar.lz +``` +## Publish release tarball +Add release tarball and signature to website. +## Update Guix package +## Publicize +Publicize on +- [guile-xapian public inbox](mailto:guile-xapian@systemreboot.net) +- [guile-user mailing list](mailto:guile-user@gnu.org) +- the fediverse + +A mail template is available in `release-email.scm`. If you have your default mail client configured correctly, you can simply run `./release-email.scm` to open your mail client with the announcement e-mail filled in. -- cgit 1.4.1