50 lines
1.3 KiB
Bash
50 lines
1.3 KiB
Bash
|
|
#!/usr/bin/env bash
|
||
|
|
set -euo pipefail
|
||
|
|
|
||
|
|
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)"
|
||
|
|
cd "$ROOT_DIR"
|
||
|
|
|
||
|
|
VERSION="${1:-}"
|
||
|
|
if [[ -z "$VERSION" ]]; then
|
||
|
|
VERSION="$(sed -n "s/.*version[[:space:]]*:[[:space:]]*'\\([^']*\\)'.*/\\1/p" meson.build | head -n1)"
|
||
|
|
fi
|
||
|
|
if [[ -z "$VERSION" ]]; then
|
||
|
|
echo "Could not determine version (pass as first arg)" >&2
|
||
|
|
exit 1
|
||
|
|
fi
|
||
|
|
|
||
|
|
ARCH="$(dpkg --print-architecture)"
|
||
|
|
PKG="kordophone"
|
||
|
|
|
||
|
|
STAGE="$(mktemp -d)"
|
||
|
|
trap 'rm -rf "$STAGE"' EXIT
|
||
|
|
|
||
|
|
PKGROOT="$STAGE/pkgroot"
|
||
|
|
mkdir -p "$PKGROOT/DEBIAN"
|
||
|
|
|
||
|
|
BUILD_DIR="$STAGE/build"
|
||
|
|
meson setup "$BUILD_DIR" --prefix=/usr
|
||
|
|
ninja -C "$BUILD_DIR"
|
||
|
|
DESTDIR="$PKGROOT" ninja -C "$BUILD_DIR" install
|
||
|
|
|
||
|
|
INSTALLED_SIZE_KB="$(du -sk "$PKGROOT/usr" | awk '{print $1}')"
|
||
|
|
|
||
|
|
cat >"$PKGROOT/DEBIAN/control" <<EOF
|
||
|
|
Package: ${PKG}
|
||
|
|
Version: ${VERSION}
|
||
|
|
Section: net
|
||
|
|
Priority: optional
|
||
|
|
Architecture: ${ARCH}
|
||
|
|
Maintainer: James Magahern <james@magahern.com>
|
||
|
|
Installed-Size: ${INSTALLED_SIZE_KB}
|
||
|
|
Depends: libgtk-4-1, libadwaita-1-0, libglib2.0-0, libgee-0.8-2, libsecret-1-0, kordophoned (>= 1.0.0)
|
||
|
|
Description: GTK4/Libadwaita client for Kordophone
|
||
|
|
A GTK4/Libadwaita Linux client for the Kordophone client daemon.
|
||
|
|
EOF
|
||
|
|
|
||
|
|
OUT_DIR="$ROOT_DIR/dist/deb"
|
||
|
|
mkdir -p "$OUT_DIR"
|
||
|
|
OUT_DEB="${OUT_DIR}/${PKG}_${VERSION}_${ARCH}.deb"
|
||
|
|
dpkg-deb --root-owner-group --build "$PKGROOT" "$OUT_DEB"
|
||
|
|
echo "$OUT_DEB"
|