This repository has been archived on 2022-10-26. You can view files and clone it, but cannot push or open issues/pull-requests.
aptpkg-wiki/index.md

2.5 KiB

aptpkg

Subscribe to this mailing list for low-volume updates, warnings, and releases to aptpkg and 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:

curl -fsSL https://git.sr.ht/~earnestma/aptpkg-pkgs/blob/main/add.sh | sudo -E bash -

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.

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 <email@example.org>

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.