summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorCallum Parsey2023-06-24 12:48:15 +0930
committerCallum Parsey2023-06-24 12:48:15 +0930
commitf7fc7cf28a86d308be3c4b26b60889f1db486ccd (patch)
tree6f50b2c19aadab6052323bd8b166196e895065b8
parent71cef010b26b753ef567b935d8c4317e44e728cc (diff)
downloadaur-f7fc7cf28a86d308be3c4b26b60889f1db486ccd.tar.gz
Update to 0.7.2, clean up to meet guidelines
I've made a bunch of changes to the `PKGBUILD` script to make it more closely meet the Arch Linux packaging guidelines. - The package description is now less than 100 characters in length. It should be below 80 according to the guidelines, but my understanding is that since this is a modification of an official Arch package, it should include the official package's description. - The `license` has been changed from `LGPL2` to `LGPL2.1`. The former is not listed in `/usr/share/licenses/common` which produces an error in `namcap`. And the latter is more correct anyway. - `gcc` and `make` have been removed from `makedepends` because we are allowed to assume that all `base-devel` packages are already installed. `git` has also been removed from `makedepends` because it is not needed during the actual package build process (only to clone the AUR Git repository). - Inversely, I've added all transient dependencies (dependencies which would otherwise automatically be pulled by `pacman` due to it being a dependency further down the tree) to `depends` as per recent guidelines and `namcap` output. This means that, in addition to the top-level dependencies `libolm`, `qt5-multimedia` and `qtkeychain-qt5` we also need to explicitly specify `gcc-libs`, `glibc` and `openssl` (and `qt5-base` but that was already present). I am honestly yet to see any other AUR package which explicitly lists `glibc` as a dependency, and interestingly enough the official `libquotient` package doesn't list it either, but as far as I can tell from reading BBS/Wiki packages, I am indeed supposed to do this. See https://bbs.archlinux.org/viewtopic.php?id=249846 - Added the soname (`libQuotient.so=0.7-64`) to `provides` to help packages which look for sonames instead of Arch package names. The soname is generated from the first two digits of `pkgver`. - Switched from `sha512sums` to `sha256sums` so that I can just copy the source checksum from the official Arch package when updating. - Adjusted `source` to use `pkgver` so that bumping `pkgver` is enough to cause the new source version to be downloaded instead of the old. - Use `cmake -B <build dir> -S <source dir>` instead of manually creating directories, as per the CMake packaging guidelines. - Use `cmake --build` and `cmake --install` instead of manually calling `make` as per the CMake packaging guidelines - Remove `CMAKE_INSTALL_LIBDIR` because it is no longer needed (I don't know if it was ever needed at all) - Change `CMAKE_BUILD_TYPE` from `Release` to `None` as per the CMake packaging guidelines. This causes CMake to use the system-provided build settings (i.e. those specified in `/etc/makepkg.conf`) verbatim, without adding additional optimisations or debugging information. - Note that the CMake changes listed above have already been applied to the official `libquotient` package. - Use `pkgver` when accessing the source directory directly, again so that only `pkgver` has to be updated to make the new version work.
-rw-r--r--.SRCINFO19
-rw-r--r--PKGBUILD44
2 files changed, 29 insertions, 34 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 48362c00ec22..94c2208972cd 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,22 +1,23 @@
pkgbase = libquotient-encryption
- pkgdesc = A Qt5 library to write cross-platform clients for Matrix, with experimental encryption support enabled
- pkgver = 0.7.1
+ pkgdesc = A Qt library to write cross-platform clients for Matrix (with experimental encryption support)
+ pkgver = 0.7.2
pkgrel = 1
url = https://github.com/quotient-im/libQuotient
arch = x86_64
arch = aarch64
- license = LGPL2
- makedepends = git
+ license = LGPL2.1
makedepends = cmake
- makedepends = make
- makedepends = gcc
+ depends = gcc-libs
+ depends = glibc
+ depends = libolm
+ depends = openssl
depends = qt5-base
depends = qt5-multimedia
depends = qtkeychain-qt5
- depends = libolm
provides = libquotient
+ provides = libQuotient.so=0.7-64
conflicts = libquotient
- source = libquotient-encryption.tar.gz::https://github.com/quotient-im/libQuotient/archive/refs/tags/0.7.1.tar.gz
- sha512sums = 88819cafb49712d53c692008be69ea1fc01ca1ac6aedc15696eba2f830956660d185fb07273d50c7dc3e9208314ac24838746d5d9e70b3aad7fccbd15fd7c545
+ source = https://github.com/quotient-im/libQuotient/archive/0.7.2/libquotient-encryption-0.7.2.tar.gz
+ sha256sums = 62ff42c8fe321e582ce8943417c1d815ab3f373a26fa0d99a5926e713f6a9382
pkgname = libquotient-encryption
diff --git a/PKGBUILD b/PKGBUILD
index 046ea891c000..76751b643e12 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,37 +1,31 @@
+# Maintainer: Callum Parsey <callum@neoninteger.au>
+# Contributor: [object Object] <objekt-Objekt@proton.me>
+
pkgname=libquotient-encryption
-pkgver=0.7.1
+pkgver=0.7.2
pkgrel=1
-pkgdesc="A Qt5 library to write cross-platform clients for Matrix, with experimental encryption support enabled"
+pkgdesc="A Qt library to write cross-platform clients for Matrix (with experimental encryption support)"
arch=(x86_64 aarch64)
url="https://github.com/quotient-im/libQuotient"
-license=("LGPL2")
-depends=("qt5-base" "qt5-multimedia" "qtkeychain-qt5" "libolm")
-makedepends=("git" "cmake" "make" "gcc")
-provides=("libquotient")
+license=("LGPL2.1")
+depends=("gcc-libs" "glibc" "libolm" "openssl" "qt5-base" "qt5-multimedia" "qtkeychain-qt5")
+makedepends=("cmake")
+provides=("libquotient" "libQuotient.so=${pkgver%.*}-64")
conflicts=("libquotient")
-source=("${pkgname}.tar.gz::https://github.com/quotient-im/libQuotient/archive/refs/tags/0.7.1.tar.gz")
-sha512sums=("88819cafb49712d53c692008be69ea1fc01ca1ac6aedc15696eba2f830956660d185fb07273d50c7dc3e9208314ac24838746d5d9e70b3aad7fccbd15fd7c545")
-
-prepare() {
- mkdir -p "build"
-}
+source=("https://github.com/quotient-im/libQuotient/archive/${pkgver}/${pkgname}-${pkgver}.tar.gz")
+sha256sums=("62ff42c8fe321e582ce8943417c1d815ab3f373a26fa0d99a5926e713f6a9382")
build() {
- cd "build"
- cmake ../"libQuotient-0.7.1" \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_INSTALL_LIBDIR=lib \
- -DCMAKE_BUILD_TYPE=Release \
- -DBUILD_SHARED_LIBS=1 \
- -DQuotient_ENABLE_E2EE=ON
+ cmake -B build -S "libQuotient-${pkgver}" \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=None \
+ -DBUILD_SHARED_LIBS=1 \
+ -DQuotient_ENABLE_E2EE=ON
- make -j $(nproc)
+ cmake --build build
}
package() {
- cd "build"
- make -j $(nproc) DESTDIR="${pkgdir}" install
-
- cd "../libQuotient-0.7.1"
- install -Dm 644 "README.md" "${pkgdir}/usr/share/doc/${pkgname}/README.md"
+ DESTDIR="${pkgdir}" cmake --install build
+ install -Dm 644 "libQuotient-${pkgver}/README.md" "${pkgdir}/usr/share/doc/${pkgname}/README.md"
}