summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 476b1648c0c9f5e8eb9e561c591feb889b43ae31 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Maintainer: Misha <mishakmak at gmail dot com>
pkgname=orca-desktop-git
pkgver=r1370.61a3731
pkgrel=1
pkgdesc='Electron GUI for the Orca live-coding environment'
arch=('x86_64')
url='https://github.com/hundredrabbits/Orca'
license=('MIT')
depends=('electron')
makedepends=('git' 'npm')
optdepends=('pilot-git')
provides=("${pkgname%-git}")
conflicts=("${pkgname%-git}" "${pkgname%-git}-bin")
source=("${pkgname%-git}::git+$url.git")
sha256sums=('SKIP')

pkgver() {
    cd "$srcdir/${pkgname%-git}"
    ( set -o pipefail
      git describe --long 2>/dev/null | sed 's/\([^-]*-g\)/r\1/;s/-/./g' ||
      printf "r%s.%s" "$(git rev-list --count HEAD)" "$(git rev-parse --short HEAD)"
    )
}

build() {
    cd "$srcdir/${pkgname%-git}/desktop"
    
    HOME="$srcdir/.electron-gyp" npm install
    HOME="$srcdir/.electron-gyp" npx electron-packager . "${_pkgname}" --platform=linux  --arch=x64 --out build/ --overwrite --icon=icon.ico 
}

package() {
    cd "$srcdir/${pkgname%-git}/desktop"
    
    install -dm755 "${pkgdir}/opt/${pkgname%-git}"
    mv build/Orca-linux-x64/* "${pkgdir}/opt/${pkgname%-git}" 

    install -dm755 "${pkgdir}/usr/bin"
    ln -s "/opt/${pkgname%-git}/Orca" "${pkgdir}/usr/bin/${pkgname%-git}"
    
    install -Dm644 icon.png "$pkgdir/usr/share/icons/hicolor/512x512/apps/${pkgname%-git}.png"
    install -Dm644 icon.svg "$pkgdir/usr/share/icons/hicolor/scalable/apps/${pkgname%-git}.svg"
   
    install -Dm644 /dev/stdin "$pkgdir/usr/share/applications/${pkgname%-git}.desktop" <<END
[Desktop Entry]
Name=Orca Desktop
Comment=Electron Live-coding GUI for Orca
Exec=${pkgname%-git} %U
Terminal=false
Type=Application
Icon=${pkgname%-git}
StartupWMClass=${pkgname%-git}
END
}