Compare commits

...

2 commits

Author SHA1 Message Date
leafee98 dec5faa54b add section, priority and homepage properties 2023-08-02 22:18:56 +08:00
leafee98 175943aa4d fix: no compress with gzip when creating deb 2023-08-02 21:21:13 +08:00
3 changed files with 20 additions and 11 deletions

View file

@ -1,9 +1,12 @@
#/usr/bin/env bash
pkgname="makedeb"
pkgver=0.0.1.0.g34537bd
pkgver=0.0.2.0.g175943a
pkgrel=1
arch="all"
pkgcommit=""
section="utils" # https://www.debian.org/doc/debian-policy/ch-archive.html#s-subsections
priority="optional" # https://www.debian.org/doc/debian-policy/ch-archive.html#s-priorities
pkgdesc="A painless selfhost git service."
url="https://git.leafee98.com/leafee98/makedeb"
maintainer="Leafee98 <me@leafee98.com>"

View file

@ -22,6 +22,8 @@ Every string in array `source` should be like `<actual_file_name>::<download_url
- `pkgver`: package's version, if need to extract version from source, use function `pkgver`
- `pkgrel`: debian package reference, it should increase by one every build
- `pkgdesc`: package's description
- `section`: default `misc` if not specified
- `priority`: default `optional` if not specified
- `url`: packages upstream url
- `maintainer`: maintainer's contect information

24
makedeb
View file

@ -75,14 +75,18 @@ function debian_control {
local install_size="$(du --block-size=1K --summarize ${pkgdir} | cut -d $'\t' -f 1)"
local fv="$(get_full_version)"
cat << EOF | envsubst
Package: ${pkgname}
Version: ${fv}
Architecture: all
Maintainer: ${maintainer}
Installed-Size: ${install_size}
Description: ${pkgdesc}
EOF
echo "Package: ${pkgname}"
echo "Version: ${fv}"
echo "Architecture: ${arch}"
echo "Maintainer: ${maintainer}"
echo "Installed-Size: ${install_size}"
echo "Homepage: ${url}"
[[ -n "${section:=misc}" ]] && echo "Section: ${section}"
[[ -n "${priority:=optional}" ]] && echo "Priority: ${priority}"
echo "Description: ${pkgdesc}"
}
function generate_deb {
@ -93,9 +97,9 @@ function generate_deb {
local control_tgz="${tmpdir}/control.tar.gz"
local debian_binary="${tmpdir}/debian-binary"
tar --exclude="./DEBIAN" -C "${pkgdir}" -cf "${data_tgz}" .
tar --gzip --exclude="./DEBIAN" -C "${pkgdir}" -cf "${data_tgz}" .
tar -C "${pkgdir}/DEBIAN" -cf "${control_tgz}" .
tar --gzip -C "${pkgdir}/DEBIAN" -cf "${control_tgz}" .
echo 2.0 > "${debian_binary}"