summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: 32919e750685f9423b791a95d5c5b7d8fe0c20aa (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
# Maintainer: Carl Smedstad <carl.smedstad at protonmail dot com>
# Contributor: yustin <#archlinux-proaudio@libera.chat>
# Contributor: kiasoc5 <kiasoc5 at tutanota dot com>
# Contributor: xantares

pkgname=stargate
pkgver=24.02.2
_commit=43dfd5ccd676fde64ab61d524573903b769c5e2d
pkgrel=2
pkgdesc="Innovation-first digital audio workstation (DAW), instrument and effect plugins, wave editor"
license=(GPL-3.0-only)
arch=(x86_64 aarch64)
url="https://github.com/stargatedaw/stargate"
depends=(
  alsa-lib
  fftw
  gcc-libs
  glibc
  libsndfile
  portaudio
  portmidi
  python
  python-distro
  python-jinja
  python-mido
  python-numpy
  python-psutil
  python-pymarshal
  python-pyqt6
  python-rtmidi
  python-wavefile
  python-yaml
  qt6-svg
  rubberband
)
makedepends=(
  git
  jq
  libsbsms
)
checkdepends=(python-pytest)
optdepends=(
  'ffmpeg'
  'lame'
  'vorbis-tools'
)
source=(
  "git+$url.git#commit=$_commit"
  "git+https://github.com/spatialaudio/portaudio-binaries.git"
  "git+https://github.com/stargatedaw/stargate-soundtouch.git"
  "git+https://github.com/stargatedaw/stargate-sbsms.git"
)
sha256sums=(
  'SKIP'
  'SKIP'
  'SKIP'
  'SKIP'
)

_archive="$pkgname"

pkgver() {
  cd "$_archive"

  git describe --tags | sed 's/release-//'
}

prepare() {
  cd "$_archive"

  git submodule init
  git config submodule.src/vendor/portaudio-binaries.url "$srcdir/portaudio-binaries"
  git config submodule.src/vendor/soundtouch.url "$srcdir/stargate-soundtouch"
  git config submodule.src/vendor/sbsms.url "$srcdir/stargate-sbsms"
  git -c protocol.file.allow=always submodule update
}

build() {
  cd "$_archive/src"

  # for non-x86 architectures
  PLAT_FLAGS="$CFLAGS" make all
}

check() {
  cd "$srcdir/$_archive/src"

  # Deselected test fails with AssertionError, unsure why
  pytest --override-ini="addopts=" test/ \
    --deselect test/sglib/models/daw/routing/test_midi.py
}

package() {
  cd "$_archive/src"

  DESTDIR=$pkgdir make install
}