summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 8029a9f2308fbd8d26e58fd6530e4fd14d1c325d (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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
# Maintainer: Sefa Eyeoglu <contact@scrumplex.net>

_pkgname=electronplayer
pkgname=$_pkgname
pkgver=2.0.3
pkgrel=1
pkgdesc="An Electron-based web video player, supporting multiple services"
url="https://github.com/oscartbeaumont/ElectronPlayer"
license=("MIT" "custom")
arch=(any)

depends=(
# Electron dependencies (possibly some not needed)
    "c-ares"
    "ffmpeg"
    "gtk3"
    "http-parser"
    "libevent"
    "libnghttp2"
    "libxslt"
    "libxss"
    "minizip"
    "nss"
    "re2"
    "snappy"

    "glibc"
    "alsa-lib"
)
makedepends=("yarn")
optdepends=(
    "libpulse: For pulseaudio support"
)

provides=("$_pkgname")
conflicts=("$_pkgname-git")

source=(
    "https://github.com/oscartbeaumont/ElectronPlayer/archive/v${pkgver}.tar.gz"
    "${_pkgname}.desktop"
)
sha512sums=("20f8033b849d897ecf05ac354b057d1d599aa63de2f5a98cef347cde7e091f2aa436e01efdddb2b764423b084021c3ba6f512b6b285ddeb8d696dd308dffd710"
            "280a252895e641f4bd009b4acf7f9f42959f0b9d51424ea71bf564600533de3867a652efd9d982643c34907bb5e57fa677e6c73315cb69a2f12dfd52e6f09f03")

prepare() {
    cd "ElectronPlayer-$pkgver"
    yarn --cache-folder "${srcdir}/yarn-cache" 
}

build() {
    cd "ElectronPlayer-$pkgver"
    
    # We are not using system Electron as we need widevinecdm
    # I do not want to force the user to install widevine globally
    
    npx electron-builder --linux dir
    
    # Delete darwin (macOS) widevine libs
    rm -rf "dist/linux-unpacked/resources/app.asar.unpacked/node_modules/electron-widevinecdm/widevine/darwin_x64"
}

package() {
    cd "ElectronPlayer-$pkgver"
    
    install -d "${pkgdir}/opt/${_pkgname}/" "${pkgdir}/usr/bin" "${pkgdir}/usr/share/doc" "${pkgdir}/usr/share/licenses"
    
    cp -r dist/linux-unpacked/* "${pkgdir}/opt/${_pkgname}/"
    chmod +x "${pkgdir}/opt/${_pkgname}/electronplayer"
    
    ln -s "/opt/${_pkgname}/electronplayer" "${pkgdir}/usr/bin/electronplayer"
    
    install -Dm 644 "build/icon.png" "${pkgdir}/usr/share/pixmaps/${_pkgname}.png"
    install -Dm 644 "${srcdir}/${_pkgname}.desktop" "${pkgdir}/usr/share/applications/${_pkgname}.desktop"
    
    install -Dm 644 "README.md" "${pkgdir}/usr/share/doc/${_pkgname}/README.md"
    install -Dm 644 "LICENSE" "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE"
    ln -s "/opt/${_pkgname}/LICENSE.electron.txt" "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE.electron.txt"
    ln -s "/opt/${_pkgname}/LICENSES.chromium.html" "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSES.chromium.html"
}