summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: cb24c9868af8c8c6d9a84b2cc8cc9d70a64c5132 (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
# Maintainer:  Vitalii Kuzhdin <vitaliikuzhdin@gmail.com>

_pkgname="m8c"
pkgname="${_pkgname}-bin"
pkgver=2.2.3+355
_pkgver_tag="${pkgver%+*}"
_pkgver_build="${pkgver##*+}"
pkgrel=1
pkgdesc="A UI for the M8 and M8 Headless portable music DAWs"
arch=(
  'x86_64'
)
url="https://github.com/laamaa/${_pkgname}"
license=(
  'MIT'
)
depends=(
  'glibc'
  'libserialport'
  'sdl3'
)
makedepends=(
  'gendesk'
  'patchelf'
)
provides=(
  "${_pkgname}=${_pkgver_tag}"
)
conflicts=(
  "${_pkgname}"
)
_pkgsrc="${_pkgname}-${pkgver}"
source=(
  "${_pkgname}-${_pkgver_tag}-AUDIOGUIDE.md::${url}/raw/refs/tags/v${_pkgver_tag}/AUDIOGUIDE.md"
  "${_pkgname}-${_pkgver_tag}-README.md::${url}/raw/refs/tags/v${_pkgver_tag}/README.md"
  "${_pkgname}-${_pkgver_tag}-LICENSE::${url}/raw/refs/tags/v${_pkgver_tag}/LICENSE"
)
source_x86_64=(
  "${_pkgname}-${_pkgver_tag}-x86_64.AppImage.zip::${url}/releases/download/v${_pkgver_tag}/${_pkgname}-v${_pkgver_tag}-linux-x86_64.AppImage.zip"
)
sha256sums=('f30c3ff6bcf5e230375664dc6286bd39a3e66c925975ba9e0ddbc366c0ec6652'
            '61f5d7282a39c43e75d034818cf25decdd27a008b82e96d8a87efce3c9e03ccd'
            '5c62289a8358388d0e7e459e8ece240c9b3c4af5915539c60e0fe65c76bac6b8')
sha256sums_x86_64=('23c049957092dab992d884c10eabddff2d03f77dcaccccf4523cde6c81756726')

pkgver() {
  local filename build_number
  filename="$(bsdtar -tf "${_pkgname}-${_pkgver_tag}-${CARCH}.AppImage.zip" | grep -E '^m8c-.*-x86_64\.AppImage$')"
  build_number="$(echo "${filename}" | sed -E 's/^m8c-(.*)-x86_64\.AppImage$/\1/')"
  printf '%s+%s' "${_pkgver_tag}" "${build_number}"
}

build() {
  cd "${srcdir}"
  gendesk -f -n \
    --pkgname "${_pkgname}" \
    --pkgdesc "${pkgdesc}" \
    --categories 'Audio'

  chmod +x "${_pkgname}-${_pkgver_build}-${CARCH}.AppImage"
  ./"${_pkgname}-${_pkgver_build}-${CARCH}.AppImage" --appimage-extract > /dev/null
  rm -rf "${_pkgsrc}-${CARCH}"
  mv -f "squashfs-root" "${_pkgsrc}-${CARCH}"

  cd "${_pkgsrc}-${CARCH}/usr/bin"
  patchelf --remove-rpath "${_pkgname}"
}

package() {
  cd "${srcdir}"
  install -vDm644 "${_pkgname}.desktop" "${pkgdir}/usr/share/applications/${_pkgname}.desktop"

  install -vDm644 "${_pkgname}-${_pkgver_tag}-AUDIOGUIDE.md" "${pkgdir}/usr/share/doc/${_pkgname}/AUDIOGUIDE.md"
  install -vDm644 "${_pkgname}-${_pkgver_tag}-README.md"     "${pkgdir}/usr/share/doc/${_pkgname}/README.md"
  install -vDm644 "${_pkgname}-${_pkgver_tag}-LICENSE"       "${pkgdir}/usr/share/licenses/${_pkgname}/LICENSE"

  cd "${_pkgsrc}-${CARCH}"
  install -vDm644 "gamecontrollerdb.txt" "${pkgdir}/usr/lib/${_pkgname}/gamecontrollerdb.txt"
  install -vDm644 "icon.svg" "${pkgdir}/usr/share/pixmaps/${_pkgname}.svg"

  cd "usr/bin"
  install -vDm755 "${_pkgname}" "${pkgdir}/usr/lib/${_pkgname}/${_pkgname}"

  install -vd "${pkgdir}/usr/bin" "${pkgdir}/usr/share/${_pkgname}"
  ln -vsf "/usr/lib/${_pkgname}/${_pkgname}" "${pkgdir}/usr/bin/${_pkgname}"
  ln -vsf "/usr/lib/${_pkgname}/gamecontrollerdb.txt" "${pkgdir}/usr/share/${_pkgname}/gamecontrollerdb.txt"
}