67 lines
2.2 KiB
Bash
67 lines
2.2 KiB
Bash
# Template file for 'mattermost-desktop'
|
|
pkgname=mattermost-desktop
|
|
version=4.6.0
|
|
revision=1
|
|
archs="x86_64* i686*"
|
|
wrksrc="desktop-${version}"
|
|
# electron-builder needs GNU tar
|
|
hostmakedepends="git p7zip jq nodejs-lts-10 python libicns GraphicsMagick xz tar"
|
|
makedepends="libnotify-devel electron7"
|
|
depends="electron7"
|
|
short_desc="Team messaging app, an open source Slack alternative"
|
|
maintainer="Orphaned <orphan@voidlinux.org>"
|
|
license="Apache-2.0"
|
|
homepage="https://mattermost.com/"
|
|
distfiles="https://github.com/mattermost/desktop/archive/v${version}.tar.gz"
|
|
checksum=ee1ff93120ed0d296c293950fd00cbd9dcc36a4f5085e1f3abf9c48ccc1e7ce0
|
|
nocross=yes
|
|
|
|
if [ "$XBPS_LIBC" = "musl" ]; then
|
|
hostmakedepends+=" gcompat" #XXX: ugly af
|
|
# Npm fetches a bunch of binaries that are lined against glibc
|
|
# refuses to use the system one
|
|
# this also kinda limits the amount of support host archs for the build
|
|
# can partly fixed by adding some host deps so these tools can be built
|
|
# from source. In short npm packages are a busted mess that shouldn't exist
|
|
fi
|
|
|
|
do_configure() {
|
|
case "${XBPS_TARGET_MACHINE#-musl}" in
|
|
x86_64*) sed -i 's/--ia32//g' package.json ;;
|
|
i686*) sed -i 's/--x64//g' package.json ;;
|
|
esac
|
|
|
|
# Prepend to system electron in order to avoid an unneeded download.
|
|
local electronDist="/usr/lib/electron7"
|
|
local electronVersion="$(<"$electronDist"/version)"
|
|
jq '{"electronDist": $electronDist, "electronVersion": $electronVersion} + .' \
|
|
--arg electronDist "$electronDist" \
|
|
--arg electronVersion "$electronVersion" \
|
|
electron-builder.json > electron-builder-new.json
|
|
mv electron-builder-new.json electron-builder.json
|
|
}
|
|
|
|
pre_build() {
|
|
# XXX: Should probably be done in some kind of npm helper
|
|
export USE_SYSTEM_7ZA="true"
|
|
npm install
|
|
}
|
|
|
|
do_build() {
|
|
export USE_SYSTEM_7ZA="true"
|
|
npm run build
|
|
npm run package:linux
|
|
}
|
|
|
|
do_install() {
|
|
case $XBPS_TARGET_MACHINE in
|
|
x86_64*) cd release/linux-unpacked ;;
|
|
i686*) cd release/linux-ia32-unpacked ;;
|
|
esac
|
|
vmkdir usr/libexec/${pkgname}
|
|
vinstall resources/app.asar 644 usr/libexec/${pkgname}
|
|
vinstall Mattermost.desktop 644 usr/share/applications
|
|
vinstall icon.svg 644 usr/share/icons/hicolor/scalable/apps mattermost-desktop.svg
|
|
vbin ${FILESDIR}/mattermost-desktop.sh mattermost-desktop
|
|
}
|