# aptpkg Subscribe to [this mailing list](https://lists.sr.ht/~earnestma/aptpkg-announce/) for low-volume updates, warnings, and releases to `aptpkg` and `aptpkg.earne.link`. ## aptpkg.earne.link This archive contains my packages generated from the aptpkg-pkgs repo mainly for my own use. It currently targets Ubuntu 21.04 ("Hirsute Hippo") amd64, although it will probably work on other distributions/ versions (I use Pop!_OS). If you would like to add it, run the following: ```sh curl -fsSL https://git.sr.ht/~earnestma/aptpkg-pkgs/blob/main/add.sh | sudo -E bash - ``` ### Links - [Git repository](https://git.sr.ht/~earnestma/aptpkg-pkgs) - [Mailing list for patches](https://lists.sr.ht/~earnestma/aptpkg-pkgs) - [Issue tracker](https://todo.sr.ht/~earnestma/aptpkg-pkgs) - [Wiki: how aptpkg.earne.link works](aptpkg-hosted) ### How it works We use reprepro, namely these commands: - `cd /var/www/aptpkg/ubuntu` - `sudo reprepro -Vb . createsymlinks` - `sudo reprepro -Vb . export` - `sudo reprepro -Vb . includedeb hirsuite incoming/*.deb && sudo rm incoming/*.deb` - `sudo reprepro clearvanished` ## aptpkg itself Easily create Debian packages. ### Links - [Git repository](https://git.sr.ht/~earnestma/aptpkg) - [Mailing list for patches](https://lists.sr.ht/~earnestma/aptpkg-devel) - [Issue tracker](https://todo.sr.ht/~earnestma/aptpkg) # build file reference Feel free to take a peek at the `aptpkg-pkgs` repository. The `build` file is a shell(?) file loaded in by `aptpkg` and should be located in its own folder which is named the program. The first line should be a comment: `# Maintainer: Name or User Name ` There are currently two types of things aptpkg can process: 1. `type=deb`: Debian packages which are simply downloaded from the URL and checked 2. `type=file`: Get (a) file(s), check, and execute the `steps` function This should be defined after `name`, `version`, and `rev` - which is only useful when `type=file` and should be set to zero after each version update. `url` should contain the upstream application's source code/ homepage, and `description` should be similar to what has been provided by them. `source` contains the URL to download and `sha512sums` contains the output to be verified after. In the `steps` function (for `type=file`), you can use the following variables and functions: - `$builddir` - `cin-bin` to `install` a binary - `cin-file` to `install` a file You can also place maintenance files along `build`: `preinst`, `postinst`, `prerm`, and `postrm`.