# Quick guide to ahtiports `/etc/apk/repositories` points to a local index of packages at `/var/ahtiports/packages/ports`. Packages we are maintaining ourselves are pinned to that repository, meaning that no other updates on other repositories are considered. The `ahtiports` user may build new packages based on the information in this repository. Whilst the `ahtiports` user may also be used to test and commit changes to this repository, it is recommended to test the build with your local user such that the pristine package index is not disturbed until we are sure that a package actually works. ## Prerequisites Your user needs to be in the `abuild` group. ## Updating a package First, clone this repo on any Alpine system (or ahti, of course). For a general overview on Alpine packaging, see [Creating an Alpine package](https://wiki.alpinelinux.org/wiki/Creating_an_Alpine_package). Make your changes to the package in question, then create the checksums and build the package: ``` $ abuild checksum $ abuild -r ``` Your package will be placed into `~/packages`. If the build succeeded, you may clean any temporary files using `abuild clean` and then commit your changes and push them to this repository. You may also try using the `abump` tool. ## Placing a package in the local index Switch to the `ahtiports` user: ``` $ sudo -iu ahtiports ``` This repository is available in `~/ports`. Pull your changes and then build the package with `abuild -r`. The package is now available in `/var/ahtiports/packages/ports` and will be visible to `apk`. A normal system upgrade will pick it up.