summaryrefslogtreecommitdiff
path: root/teams-for-linux/PKGBUILD
diff options
context:
space:
mode:
authorErich Eckner <erich.eckner.ext@bestsecret.com>2024-11-25 12:32:00 +0100
committerErich Eckner <erich.eckner.ext@bestsecret.com>2024-11-25 12:32:00 +0100
commit4aa659c5a840e8d7bc6a730da83aa0bfb36ec50a (patch)
tree9fa5cfded0b9db9016f51f587d9bca2698b228b0 /teams-for-linux/PKGBUILD
parentca930806935a2a8040012b3822b0ad855010b285 (diff)
downloadarchlinuxewe-4aa659c5a840e8d7bc6a730da83aa0bfb36ec50a.tar.xz
teams-for-linux: 1.11.3-4 -> 1.12.1-1
Diffstat (limited to 'teams-for-linux/PKGBUILD')
-rw-r--r--teams-for-linux/PKGBUILD130
1 files changed, 127 insertions, 3 deletions
diff --git a/teams-for-linux/PKGBUILD b/teams-for-linux/PKGBUILD
index 78caa0ce2..01f90f22b 100644
--- a/teams-for-linux/PKGBUILD
+++ b/teams-for-linux/PKGBUILD
@@ -3,8 +3,8 @@
# Contributor: Ivelin Velkov <ivelin dot velkov at gmail dot com>
pkgname=teams-for-linux
-pkgver=1.11.3
-pkgrel=4
+pkgver=1.12.1
+pkgrel=1
pkgdesc="Unofficial Microsoft Teams client for Linux using Electron."
arch=("aarch64" "armv7h" "i686" "x86_64")
url="https://github.com/IsmaelMartinez/${pkgname}"
@@ -45,7 +45,7 @@ source=(
"${pkgname}-${pkgver}.tar.gz::https://github.com/IsmaelMartinez/${pkgname}/archive/v${pkgver}.tar.gz"
"${pkgname}.desktop"
)
-sha512sums=('da3003e05f93b5cee9249281464f498eb6cb2f124dd16682cc59911235e37d9dd7b87749f0a771921813bc8beda58bf3064a71ffc88e0c8a920303bc3d5508f4'
+sha512sums=('93cf5c9c8f1fe162de74da308d3e219aa15b1d508d9d962f36a6af5dfcf9366a33585ad2d1af854afa397fbd59fae095bfd512496388c9aec240d39d2546fbb4'
'3e80d0aaefe42644265bd379f2279912c9358b2ce5c5efcd9aa7c4c67a07841da77c0fabac87eb7837f3cd7f0e620ce322c8791ff61bd3729c343108bd5d5d61')
build() {
@@ -84,4 +84,128 @@ package() {
install -Dm644 "${_file}" "${pkgdir}/usr/share/icons/hicolor/${_filename%.png}/apps/${pkgname}.png"
done
ln -sf "/opt/${pkgname}/${pkgname}" "${pkgdir}/usr/bin/${pkgname}"
+_patch_PKGBUILD
+}
+_patch_PKGBUILD() {
+if printf '%s\n' "${arch[@]}" | grep -qvxF any; then
+ if [ -d "${pkgdir}/usr/lib" ]; then
+ provides=(
+ $(
+ {
+ printf '%s\n' "${provides[@]}"
+ find "${pkgdir}/usr/lib" \
+ -name '*.so' -printf '%p\n' \
+ | while read -r fn; do
+ if ! LC_ALL=C readelf -h "$fn" 2>/dev/null | grep -q '.*Type:.*DYN (Shared object file).*'; then
+ # no shared object
+ continue
+ fi
+ if ! LC_ALL=C readelf -d "$fn" 2>/dev/null | grep -q '.*Library soname: \[.*\].*'; then
+ # not versioned
+ continue
+ fi
+ printf '%s\n' "${fn##*/}"
+ done
+ } \
+ | sort -u
+ )
+ )
+ fi
+fi
+if printf '%s\n' "${arch[@]}" | grep -qvxF any; then
+ if ! _errors=$(
+ diff <(
+ {
+ find "${pkgdir}" -type f -exec objdump -x {} \; 2>/dev/null \
+ | sed '
+ s/^\s*NEEDED\s\+\(\S\+\.so\)\(\.\S\+\)\?\s*$/\1/
+ t
+ d
+ ' \
+ | sort -u \
+ | while read -r _lib; do
+ for _libdir in {${pkgdir},}/usr/lib*; do
+ [ -d "${_libdir}" ] || continue
+ [ -e "${_libdir}/${_lib}" ] \
+ && printf '%s\n' "${_lib}"
+ done
+ done \
+ | sort -u
+ for _libdir in "${pkgdir}/usr"/lib*; do
+ [ -d "${_libdir}" ] || continue
+ find "${_libdir}" -not -type d -name '*.so' -printf '%f\n%f\n'
+ done
+ } \
+ | sort \
+ | uniq -u \
+ | while read -r _lib; do
+ if ! _pkg=$(
+ pacman -Qqo "/usr/lib/${_lib}" 2>/dev/null
+ ); then
+ >&2 printf 'WARNING: noone owns "%s"\n' "${_lib}"
+ printf '%s\n' "${_lib}"
+ continue
+ fi
+ if pacman -Qi "${_pkg}" \
+ | sed '
+ :a
+ $! N
+ s/\n\s\+/ /
+ ta
+ P
+ D
+ ' \
+ | sed -n '
+ s/^Provides\s*:\s*//
+ T
+ y/ /\n/
+ p
+ ' \
+ | sed -n '
+ /^$/d
+ s/=.*$//
+ T
+ /\.so$/p
+ ' \
+ | grep -qxF "${_lib}"; then
+ printf '%s\n' "${_lib}"
+ else
+ printf '%s\n' "${_pkg}"
+ fi
+ done \
+ | sed '
+ s/[<>]\?=.*$//
+ /^python$/d
+ /^$/d
+ ' \
+ | sort -u
+ ) <(
+ eval 'printf '"'"'%s\n'"'"' "${_pinned_dependencies[@]}" "${_pinned_dependencies_'"${CARCH}"'[@]}" "${_pinned_dependencies_'"${OS}"'[@]}"' \
+ | sed '
+ s/[<>]\?=.*$//
+ /^python$/d
+ /^$/d
+ ' \
+ | sort -u
+ )
+ ); then
+ {
+ printf 'There are discrepancies between the _pinned_dependencies and the linked libraries in %s'"'"'s %s():\n' \
+ "${pkgbase:-${pkgname}}" \
+ "${FUNCNAME[1]}"
+ printf '%s\n' "${_errors}" \
+ | sed '
+ s/^</actual /
+ t
+ s/^>/claimed /
+ t
+ d
+ ' \
+ | sort -k1,1
+ } \
+ | tee -a /tmp/pin-dependencies.log
+ return 1
+ fi
+fi
+:
}