Automatically build & distribute multi-arch Debian packages
Find a file
rail5 2d5ee82731
Paginated logs page
By default, displaying 10 logs per page
2024-10-13 16:04:22 +08:00
build-farm Build Farm settings page is now fully-functional in autobuild-web 2024-10-09 18:26:58 +08:00
debian Updated changelog 2024-10-12 13:58:42 +08:00
manual Allow only directories as arguments to -L 2024-10-13 14:04:37 +08:00
repository Autobuild now creates a new Debian repo for the user 2024-06-01 16:32:02 +08:00
service Output errors to the socket until we're more production-ready 2024-07-18 16:07:32 +08:00
web Paginated logs page 2024-10-13 16:04:22 +08:00
webconf Run PHP as autobuild user rather than www-data 2024-10-07 12:08:51 +08:00
autobuild Much more sensible way to kill the daemon 2024-10-05 15:23:20 +08:00
autobuild-setup Outsource signing key creation to autobuild daemon 2024-10-12 10:40:35 +08:00
autobuildd Dynamically assign file descriptors to queue files 2024-10-13 14:52:26 +08:00
bell.ogg Replaced bell.wav with bell.ogg 2024-04-27 18:53:56 +08:00
config.toml Removed obsolete setting from config.toml 2024-10-05 20:55:12 +08:00
LICENSE Relicensed under the GNU Affero GPL 2023-12-21 16:17:12 +08:00
README.md Added repository menu screenshots to readme 2024-10-07 18:33:28 +08:00

autobuild

Automatically build & distribute Debian packages

AGPL

What does it do?

This program can automatically:

  • Retrieve Debian package sources from a git repo or .tar.gz archive

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

  • Create GitHub/Forgejo release pages for those packages

  • Create a Debian Repository to distribute packages (which can be hosted either via GitHub Pages or local web server)

  • Push those packages to said Debian Repository

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-signing-key.gpg "https://deb.rail5.org/rail5-signing-key.gpg"
sudo curl -s -o /etc/apt/sources.list.d/rail5.list "https://deb.rail5.org/rail5.list"
sudo apt update
sudo apt install autobuild

Set-up

After installing, run sudo autobuild -s to complete set-up.

Your CONFIG file can be found at /var/autobuild/config.toml

Command-line usage

autobuild --amd64 --i386 --arm64 --package my-debian-package --package my-other-debian-package --github-page
autobuild -123 -p https://github.com/user/my-debian-package -p /path/to/my-other-debian-package.tar.gz -g

The above examples will build your packages "my-debian-package" and "my-other-debian-package" 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.

Autobuild-web

A web interface is provided by the autobuild-web package:

sudo apt install autobuild-web

After installing, it will be available on your web-server at http://your-domain-or.ip/autobuild

Desktop Mobile
build-menu build-menu
log-success log-success
repo-menu repo-menu