From: Johnnynator <Johnnynator@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] mattermost-desktop: use system provided electron
Date: Mon, 17 Aug 2020 21:55:40 +0200 [thread overview]
Message-ID: <20200817195540.h_Vs89Pg6xlcLYFy-hHV7Cm1l6Jm1D1_DjNik-sGK3o@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-24332@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 386 bytes --]
There is an updated pull request by Johnnynator against master on the void-packages repository
https://github.com/Johnnynator/void-packages mattermost-desktop
https://github.com/void-linux/void-packages/pull/24332
mattermost-desktop: use system provided electron
@ashpooljh Can you test this?
A patch file from https://github.com/void-linux/void-packages/pull/24332.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-mattermost-desktop-24332.patch --]
[-- Type: text/x-diff, Size: 4459 bytes --]
From 3c1768fb31aaee5e47c7f43295fdae65f229c79d Mon Sep 17 00:00:00 2001
From: John <me@johnnynator.dev>
Date: Mon, 17 Aug 2020 18:47:51 +0200
Subject: [PATCH] mattermost-desktop: use system provided electron
---
.../files/mattermost-desktop.sh | 2 +
.../patches/20-create-desktop-file.patch | 4 +-
srcpkgs/mattermost-desktop/template | 48 +++++++++++++++----
3 files changed, 43 insertions(+), 11 deletions(-)
create mode 100644 srcpkgs/mattermost-desktop/files/mattermost-desktop.sh
diff --git a/srcpkgs/mattermost-desktop/files/mattermost-desktop.sh b/srcpkgs/mattermost-desktop/files/mattermost-desktop.sh
new file mode 100644
index 00000000000..a9e09a37a86
--- /dev/null
+++ b/srcpkgs/mattermost-desktop/files/mattermost-desktop.sh
@@ -0,0 +1,2 @@
+#!/bin/sh
+exec electron7 /usr/libexec/mattermost-desktop/app.asar --disable-dev-mode "$@"
diff --git a/srcpkgs/mattermost-desktop/patches/20-create-desktop-file.patch b/srcpkgs/mattermost-desktop/patches/20-create-desktop-file.patch
index 8cb468d77b9..c83d76f5415 100644
--- a/srcpkgs/mattermost-desktop/patches/20-create-desktop-file.patch
+++ b/srcpkgs/mattermost-desktop/patches/20-create-desktop-file.patch
@@ -10,8 +10,8 @@
+[Desktop Entry]
+Name=Mattermost
+Comment=Mattermost Desktop application for Linux
-+Exec=/usr/bin/mattermost-desktop/mattermost-desktop
++Exec=/usr/bin/mattermost-desktop
+Terminal=false
+Type=Application
-+Icon=/usr/libexec/mattermost-desktop/icon.svg
++Icon=mattermost-desktop
+Categories=Network;InstantMessaging;
diff --git a/srcpkgs/mattermost-desktop/template b/srcpkgs/mattermost-desktop/template
index 9bb3d8dc95f..3fd21ea9e31 100644
--- a/srcpkgs/mattermost-desktop/template
+++ b/srcpkgs/mattermost-desktop/template
@@ -1,36 +1,66 @@
# Template file for 'mattermost-desktop'
pkgname=mattermost-desktop
version=4.5.2
-revision=1
-archs="x86_64 i686"
+revision=2
+archs="x86_64* i686*"
wrksrc="desktop-${version}"
# electron-builder needs GNU tar
-hostmakedepends="git nodejs-lts-10 python libicns GraphicsMagick xz tar"
-makedepends="libnotify-devel"
+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="Artem Zhurikhin <ashpool@xecut.net>"
license="Apache-2.0"
homepage="https://mattermost.com/"
distfiles="https://github.com/mattermost/desktop/archive/v${version}.tar.gz"
checksum=17e32346592d175f091a4f12068e0cfc5cfd20ed7894f88bb5b54b2eb6eac74a
+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 ;;
+ x86_64*) cd release/linux-unpacked ;;
+ i686*) cd release/linux-ia32-unpacked ;;
esac
vmkdir usr/libexec/${pkgname}
- vcopy . usr/libexec/${pkgname}
+ vinstall resources/app.asar 644 usr/libexec/${pkgname}
vinstall Mattermost.desktop 644 usr/share/applications
- vmkdir usr/bin
- ln -s ../libexec/mattermost-desktop ${DESTDIR}/usr/bin/mattermost-desktop
+ vinstall icon.svg 644 usr/share/icons/hicolor/scalable/apps mattermost-desktop.svg
+ vbin ${FILESDIR}/mattermost-desktop.sh mattermost-desktop
}
next prev parent reply other threads:[~2020-08-17 19:55 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-17 16:52 [PR PATCH] " Johnnynator
2020-08-17 16:56 ` [PR REVIEW] " ericonr
2020-08-17 16:57 ` [PR PATCH] [Updated] " Johnnynator
2020-08-17 17:02 ` [PR REVIEW] " ericonr
2020-08-17 17:02 ` ericonr
2020-08-17 17:04 ` Johnnynator
2020-08-17 17:04 ` Johnnynator
2020-08-17 18:35 ` ericonr
2020-08-17 19:55 ` Johnnynator [this message]
2020-08-17 23:27 ` fosslinux
2020-08-27 18:15 ` [PR PATCH] [Merged]: " Johnnynator
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20200817195540.h_Vs89Pg6xlcLYFy-hHV7Cm1l6Jm1D1_DjNik-sGK3o@z \
--to=johnnynator@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).