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

79 lines
2.7 KiB
Markdown
Raw Normal View History

2021-07-26 14:57:11 -04:00
# 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
2021-08-11 18:29:32 -04:00
**WARNING!** I no longer use Ubuntu regularly on my main devices, but the
packages will continue to be maintained and updated as needed. Please file an
issue/ write to the mailing list if there are any issues.
2021-07-26 14:57:11 -04:00
2021-08-11 18:29:32 -04:00
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. If you would like to add
it, run the following:
2021-07-26 14:57:11 -04:00
```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)
2021-08-11 18:29:32 -04:00
- [Wiki: how aptpkg.earne.link works](aptpkg-hosted)
### How it works
We use reprepo, namely these commands:
- `cd /var/www/aptpkg/ubuntu`
- `sudo reprepo -Vb . createsymlinks`
- `sudo reprepo -Vb . export`
- `sudo reprepo -Vb . includeb hirsute incoming/*.deb && sudo rm incoming/*.deb`
- `sudo reprepo clearvanished`
2021-07-26 14:57:11 -04:00
## 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)
2021-08-11 18:29:32 -04:00
# 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`.