blob: d0b682109291475e70ed2a43217d52ff48a091b9 (
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
|
pkgname=companion
pkgver=2.1.3
pkgrel=2
pkgdesc="Control software for the Elgato Streamdeck with a focus on broadcasting."
arch=('i386' 'x86_64')
url="https://github.com/bitfocus/companion"
license=('custom')
depends=('libvips' 'libxss' 'gconf' 'gtk3')
makedepends=('nvm' 'git')
install=companion.install
source=("${pkgname}::git+https://github.com/bitfocus/companion.git#tag=v${pkgver}"
"50-bitfocus-companion.rules"
"bitfocus-companion.desktop")
sha256sums=('SKIP'
'c0e7cd1f730a7b4381e654b53f6fdd1c06911b2593bdfe07bba5e198fc61d5d9'
'65289895360dae94dd710e6804709c1e3f95e6bc275b1621cb88eb8a7cbd348f')
_ensure_local_nvm() {
# let's be sure we are starting clean
which nvm >/dev/null 2>&1 && nvm deactivate && nvm unload
export NVM_DIR="${srcdir}/.nvm"
# The init script returns 3 if version specified
# in ./.nvrc is not (yet) installed in $NVM_DIR
# but nvm itself still gets loaded ok
source /usr/share/nvm/init-nvm.sh || [[ $? != 1 ]]
export PATH="$(npm bin):${PATH}"
}
prepare() {
_ensure_local_nvm
nvm install 14
npm install -g node-gyp
npm install -g yarn
}
build() {
_ensure_local_nvm
cd "${srcdir}/${pkgname}"
git submodule init
git submodule update
rm -Rf node_modules bitfocus-skeleton/node_modules lib/module/*/node_modules
npm install
npm install --prefix bitfocus-skeleton
rm -Rf node_modules/sharp/node_modules
npm install --prefix node_modules/sharp --production
for module in lib/module/*/; do
grep '"dependencies"' ${module}package.json > /dev/null 2>&1 && (
echo ${module}
yarn --cwd ${module}
echo ""
)
done
rm -rf electron-output
npx electron-builder --linux dir
}
package() {
cd "${srcdir}"
builddir="${pkgname}/electron-output/linux-unpacked"
# Licenses
install -Dm644 "${pkgname}/LICENSE.md" -t "${pkgdir}/usr/share/licenses/${pkgname}/"
install -Dm644 "${builddir}/LICENSE.electron.txt" -t "${pkgdir}/usr/share/licenses/${pkgname}/"
install -Dm644 "${builddir}/LICENSES.chromium.html" -t "${pkgdir}/usr/share/licenses/${pkgname}/"
# Companion
install -d "${pkgdir}/usr/lib/bitfocus-companion"
cp -R "${builddir}"/* "${pkgdir}/usr/lib/bitfocus-companion"
# Install bin symlink
install -d "${pkgdir}/usr/bin"
ln -sv "/usr/lib/bitfocus-companion/companion" "${pkgdir}/usr/bin/companion"
# udev rules
install -Dm644 50-bitfocus-companion.rules -t "${pkgdir}/etc/udev/rules.d/"
# Desktop file
install -Dm644 bitfocus-companion.desktop -t "${pkgdir}/usr/share/applications/"
# Icon
install -Dm644 "${pkgname}/assets/icon.png" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/bitfocus-companion.png"
}
|