Date: Wednesday, September 21, 2016 @ 08:13:01 Author: tensor5 Revision: 190091
addpkg: caprine 1.5.0-1 Added: caprine/ caprine/repos/ caprine/trunk/ caprine/trunk/PKGBUILD caprine/trunk/caprine.desktop caprine/trunk/caprine.js -----------------+ PKGBUILD | 59 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ caprine.desktop | 9 ++++++++ caprine.js | 29 ++++++++++++++++++++++++++ 3 files changed, 97 insertions(+) Added: caprine/trunk/PKGBUILD =================================================================== --- caprine/trunk/PKGBUILD (rev 0) +++ caprine/trunk/PKGBUILD 2016-09-21 08:13:01 UTC (rev 190091) @@ -0,0 +1,59 @@ +# $Id$ +# Maintainer: Nicola Squartini <tens...@gmail.com> + +pkgname=caprine +pkgver=1.5.0 +pkgrel=1 +pkgdesc='Unofficial Facebook Messenger app' +arch=('any') +url='https://github.com/sindresorhus/caprine' +license=('MIT') +depends=('electron') +makedepends=('npm') +source=("${pkgname}-${pkgver}.tar.gz::${url}/archive/${pkgver}.tar.gz" + 'caprine.desktop' + 'caprine.js') +sha256sums=('84f06f119ef0bc76d21200a08d62335351b55dd856edd1392e2a6e33b7761e3e' + 'ddb693c06b0d4adf41c799fd4d97c2d9c106669034f69f7af53a63cc45911a97' + '76bc862279afe9250554b8b6cdafde529648285e72b6a88d75403ef6b29c571c') + +build() { + cd ${pkgname}-${pkgver} + + npm install --production +} + +package() { + cd ${pkgname}-${pkgver} + + appdir=/usr/lib/${pkgname} + + install -d "${pkgdir}"${appdir} + cp -r * "${pkgdir}"${appdir} + + hicolordir=/usr/share/icons/hicolor + install -dm755 "${pkgdir}"${hicolordir}/{1024x1024,scalable}/apps + ln -s $(realpath -m --relative-to=${hicolordir}/1024x1024/apps ${appdir}/static/Icon.png) \ + "${pkgdir}"${hicolordir}/1024x1024/apps/${pkgname}.png + ln -s $(realpath -m --relative-to=${hicolordir}/scalable/apps ${appdir}/media/Icon.svg) \ + "${pkgdir}"${hicolordir}/scalable/apps/${pkgname}.svg + + install -Dm755 "${srcdir}"/${pkgname}.js "${pkgdir}"/usr/bin/${pkgname} + install -Dm644 "${srcdir}"/${pkgname}.desktop \ + "${pkgdir}"/usr/share/applications/${pkgname}.desktop + + install -dm755 "${pkgdir}"/usr/share/licenses/${pkgname} + ln -s $(realpath -m --relative-to=/usr/share/licenses/${pkgname} ${appdir}/license) \ + "${pkgdir}"/usr/share/licenses/${pkgname} + + # Clean up + find "${pkgdir}"${appdir} \ + -name "package.json" \ + -exec sed -e "s|${srcdir}/${pkgname}-${pkgver}|${appdir}|" \ + -i {} \; \ + -or -name ".*" -prune -exec rm -r '{}' \; \ + -or -name "bin" -prune -exec rm -r '{}' \; \ + -or -name "example" -prune -exec rm -r '{}' \; \ + -or -name "examples" -prune -exec rm -r '{}' \; \ + -or -name "test" -prune -exec rm -r '{}' \; +} Property changes on: caprine/trunk/PKGBUILD ___________________________________________________________________ Added: svn:keywords ## -0,0 +1 ## +Id \ No newline at end of property Added: caprine/trunk/caprine.desktop =================================================================== --- caprine/trunk/caprine.desktop (rev 0) +++ caprine/trunk/caprine.desktop 2016-09-21 08:13:01 UTC (rev 190091) @@ -0,0 +1,9 @@ +[Desktop Entry] +Type=Application +Name=Caprine +GenericName=IM Client +Comment=Unofficial Facebook Messenger app +Icon=caprine +Exec=caprine +Categories=GTK;InstantMessaging;Network; +StartupNotify=true Added: caprine/trunk/caprine.js =================================================================== --- caprine/trunk/caprine.js (rev 0) +++ caprine/trunk/caprine.js 2016-09-21 08:13:01 UTC (rev 190091) @@ -0,0 +1,29 @@ +#!/usr/bin/electron + +const name = 'caprine'; + +const {app} = require('electron'); +const fs = require('fs'); +const path = require('path'); + +// Change command name. +const fd = fs.openSync('/proc/self/comm', fs.constants.O_WRONLY); +fs.writeSync(fd, name); +fs.closeSync(fd); + +// Remove first command line argument (/usr/bin/electron). +process.argv.splice(0, 1); + +// Set application paths. +const appPath = path.join(path.dirname(__dirname), 'lib', name); +const packageJson = require(path.join(appPath, 'package.json')); +const productName = packageJson.productName; +app.setAppPath(appPath); +app.setDesktopName(name + '.desktop'); +app.setName(productName); +app.setPath('userCache', path.join(app.getPath('cache'), productName)); +app.setPath('userData', path.join(app.getPath('appData'), productName)); +app.setVersion(packageJson.version); + +// Run the application. +require('module')._load(appPath, module, true);