summarylogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.SRCINFO22
-rw-r--r--PKGBUILD70
-rw-r--r--riot-desktop.desktop10
-rw-r--r--riot-desktop.sh6
4 files changed, 108 insertions, 0 deletions
diff --git a/.SRCINFO b/.SRCINFO
new file mode 100644
index 000000000000..f0cbd8577aad
--- /dev/null
+++ b/.SRCINFO
@@ -0,0 +1,22 @@
+pkgbase = riot-desktop
+ pkgdesc = A glossy Matrix collaboration client for the desktop.
+ pkgver = r3963.cf5cf025
+ pkgrel = 1
+ url = https://riot.im
+ arch = any
+ license = Apache
+ makedepends = git
+ makedepends = npm
+ depends = electron
+ conflicts = riot-desktop
+ conflicts = riot-web
+ backup = etc/riot/config.json
+ source = riot-desktop-git::git://github.com/vector-im/riot-web.git
+ source = riot-desktop.desktop
+ source = riot-desktop.sh
+ md5sums = SKIP
+ md5sums = SKIP
+ md5sums = SKIP
+
+pkgname = riot-desktop-git
+
diff --git a/PKGBUILD b/PKGBUILD
new file mode 100644
index 000000000000..025befb713cc
--- /dev/null
+++ b/PKGBUILD
@@ -0,0 +1,70 @@
+# Maintainer: Marcel Radzio <info@nordgedanken.de>
+pkgbase=riot-desktop
+pkgver=r3963.cf5cf025
+pkgrel=1
+pkgname=riot-desktop-git
+pkgdesc="A glossy Matrix collaboration client for the desktop."
+arch=('any')
+url="https://riot.im"
+_url="https://github.com/vector-im/riot-web"
+license=('Apache')
+depends=('electron')
+makedepends=('git' 'npm')
+conflicts=('riot-desktop' 'riot-web')
+backup=("etc/riot/config.json")
+source=('riot-desktop-git::git://github.com/vector-im/riot-web.git'
+ "${pkgbase}.desktop"
+ "${pkgbase}.sh")
+md5sums=('SKIP'
+ 'SKIP'
+ 'SKIP')
+
+pkgver() {
+ cd "$srcdir/${pkgname}"
+
+ printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
+}
+
+prepare() {
+ cd "$srcdir/${pkgname}"
+ sed -i 's@https://riot.im/download/desktop/update/@null@g' electron_app/riot.im/config.json
+}
+
+build() {
+ cd "$srcdir/${pkgname}"
+ npm install --cache "${srcdir}/npm-cache"
+ npm run build --cache "${srcdir}/npm-cache"
+}
+
+package() {
+ cd "$srcdir/${pkgname}"
+ install -d "${pkgdir}"/{usr/share/webapps,etc/webapps}/riot
+
+ cp -r webapp/* "${pkgdir}"/usr/share/webapps/riot/
+ install -Dm644 config.sample.json -t "${pkgdir}"/etc/webapps/riot/
+ ln -s /etc/webapps/riot/config.json "${pkgdir}"/usr/share/webapps/riot/
+ echo "${pkgver}" > "${pkgdir}"/usr/share/webapps/riot/version
+
+ cd electron_app
+ npm install --cache "${srcdir}/npm-cache"
+ cd ..
+
+ install -d "${pkgdir}"{/usr/lib/riot/electron_app,/etc/webapps/riot}
+
+ ln -s /usr/share/webapps/riot "${pkgdir}"/usr/lib/riot/webapp
+ ln -s /etc/riot/config.json "${pkgdir}"/etc/webapps/riot/config.json
+
+ install -Dm644 package.json -t "${pkgdir}"/usr/lib/riot
+ cp -r electron_app/src "${pkgdir}"/usr/lib/riot/electron_app/
+ cp -r electron_app/node_modules "${pkgdir}"/usr/lib/riot/electron_app/
+ install -Dm644 electron_app/img/riot.png -t "${pkgdir}"/usr/lib/riot/electron_app/img
+ install -Dm644 electron_app/riot.im/config.json -t "${pkgdir}"/etc/riot
+
+ install -Dm644 "${srcdir}"/${pkgbase}.desktop "${pkgdir}"/usr/share/applications/riot.desktop
+ install -Dm755 "${srcdir}"/${pkgbase}.sh "${pkgdir}"/usr/bin/riot-desktop
+
+ install -Dm644 src/skins/vector/img/logos/riot-logo.svg "${pkgdir}"/usr/share/icons/hicolor/scalable/apps/riot.svg
+ for i in 16 24 48 64 96 128 256 512; do
+ install -Dm644 electron_app/build/icons/${i}x${i}.png "${pkgdir}"/usr/share/icons/hicolor/${i}x${i}/apps/riot.png
+ done
+}
diff --git a/riot-desktop.desktop b/riot-desktop.desktop
new file mode 100644
index 000000000000..812299213e11
--- /dev/null
+++ b/riot-desktop.desktop
@@ -0,0 +1,10 @@
+[Desktop Entry]
+Name=Riot
+Comment=A feature-rich client for Matrix.org
+Exec="/usr/bin/riot-desktop"
+Terminal=false
+Type=Application
+Icon=riot
+StartupWMClass="Riot"
+Categories=Network;InstantMessaging;Chat;IRCClient
+
diff --git a/riot-desktop.sh b/riot-desktop.sh
new file mode 100644
index 000000000000..ce3af5826325
--- /dev/null
+++ b/riot-desktop.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+
+# Original by Bruno Pagani (a.k.a. ArchangeGabriel) <archange@archlinux.org>
+
+electron /usr/lib/riot/ $@
+