Automatically build & distribute multi-arch Debian packages
Go to file
Andrew S. Rightenburg f65c59a414
Updated manual and help menu
2024-05-05 12:40:12 +08:00
build-farm Autobuild setup now has a proper curses display 2024-05-04 15:22:58 +08:00
debian Updated manual and help menu 2024-05-05 12:40:12 +08:00
LICENSE
README.md Updated readme 2024-05-02 15:29:56 +08:00
TODO Updated todo list 2024-05-02 15:32:39 +08:00
autobuild Updated manual and help menu 2024-05-05 12:40:12 +08:00
autobuild-setup Signal trapping for graceful exits in autobuild-setup 2024-05-05 12:10:59 +08:00
bell.ogg
config.toml Added support for creating forgejo release pages 2024-05-03 21:02:17 +08:00

README.md

autobuild

Automatically build & distribute Debian packages

AGPL

What does it do?

This program can automatically:

  • Download Debian package sources from a git repo

  • Launch a virtual QEMU build-farm & build those packages for various architectures

  • Create GitHub release pages for those packages

  • Push those packages to a Debian Repository hosted on GitHub Pages

Autobuild is also used to build & distribute itself.

How do I use it?

Installation

Autobuild can be easily installed via the deb.rail5.org repository:

sudo curl -s -o /etc/apt/trusted.gpg.d/rail5.gpg "https://deb.rail5.org/rail5.gpg"
sudo curl -s -o /etc/apt/sources.list.d/rail5.list "https://deb.rail5.org/debian/rail5.list"
sudo apt update
sudo apt install autobuild

Set-up

After installing, run autobuild -c to edit your configuration, and autobuild -s to complete set-up.

Your CONFIG file (edited with autobuild -c) is where you will tell autobuild where to find your packages, as well as other settings

Usage

autobuild --amd64 --i386 --arm64 --package my-debian-package --package my-other-debian-package --github-page
autobuild -1 -2 -3 -p my-debian-package -p my-other-debian-package -g

The above examples will build your packages "my-debian-package" and "my-other-debian-package" (as you've set them up in the CONFIG file) and then publish them to GitHub Release pages.

autobuild --local -p my-debian-package -o /home/user/

The above example will build your package locally (without using the virtual build farm) and save the resulting build in /home/user

See autobuild --help, autobuild -h, or man autobuild for a list of options and how to use them.