Script to create Termux package repos.
In Termux, install with
pkg install termux-apt-repo and execute
termux-apt-repo [-h] [--use-hard-links] input output [dist] [comp] positional arguments: input folder where .deb files are located output folder with repository tree dist name of distribution folder. deb files are put into output/dists/distribution/component/binary-$ARCH/ comp name of component folder. deb files are put into output/dists/distribution/component/binary-$ARCH/ optional arguments: -h, --help show this help message and exit --use-hard-links use hard links instead of copying deb files. Will not work on an android device -s --sign sign repo with GPG key
When using outside Termux (the script should work on most Linux
distributions), install with
pip3 install termux-apt-repo.
All the .deb files in the first directory will be published to a newly created APT repository in the second directory (which will be deleted if it exists, so take caution).
Publishing the generated folder
The published folder can be made available at a publicly accessible
$REPO_URL using any method:
- By running termux-apt-repository on a web server directly.
- Using rsync:
rsync --delete -r <apt-repository-directory> your.host:path/to/folder.
- Creating a zip or tar file and unpacking it at a web server.
- Any other creative way.
It can also be published using e.g. GitHub pages.
Accessing the repository
With the created
<apt-repository-directory> available at
$REPO_URL, users can access repo by creating a file:
containing the single line:
deb [trusted=yes] $REPO_URL $dist $comp
[trusted=yes] is needed if the repo has not been signed with a gpg key.
To sign it, pass
--sign argument. The signing key then has to be imported by
the user to make apt trust it.