# abchr There are various build chains surrounding Alpine. Most solutions use containerization, QEMU, and other technologies; meanwhile I just wanted a simple way to build packages and install development utilities without shitting up my production system. `abchr` is an attempt to create a simple solution to my simple problem. It isn't very flexible, requires root access for chroot, and won't allow you to (easily) build for multiarch, but it works. ## Installation 1. Create a directory and 3 subdirectories named `bin`, `alpine`, and `aports`. Your tree should look like this: ``` + abchr + bin + alpine + aports ``` 2. Clone the repo to the `bin` directory. 3. Run `abchr-newchroot $(id -u)` to populate the `alpine` directory with a new installation of Alpine Linux. This processes downloads the latest `apk-tools-static` into the chroot and installs the basic packages necessary for a build environment. It also creates a user in the chroot with its UID set to the first argument of the script. Having this be your own UID is optimal as it lets you manupulate the chroot files easily. 4. To ensure everything worked, run `abchr abuild -h`. You should see the help text for `abuild`, which should be installed in the chroot. ## Usage The `abchr` command simply sets up the chroot and starts whatever program is specified in the arguments as-is. There are some exceptions, meant for ease-of- use; run `abchr -h` to see what the script is capable of.