summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: ae5c7c19f0f5440654f166c851d7376ad325fcac (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
# Maintainer: Vasil Bakalov <jens300304@gmail.com>
pkgname=danser
url="https://github.com/Wieku/danser-go"
pkgver=0.6.5
pkgrel=1
pkgdesc="Dancing visualizer of osu! maps and custom osu! client written in Go."
arch=('any')
license=('MIT')
source=(
    "https://github.com/Wieku/danser-go/archive/refs/tags/${pkgver}.tar.gz"
)
sha256sums=(
    'c89a032bd00d0a726812bab513f230ecdf9de131bc327c7ba750c8d5ff1fc357'
)
depends=(
    'libyuv'
    'ffmpeg'
)
makedepends=(
    'xorg-server-devel'
    'go>=1.17'
    'gcc'
)

build() {
    cd "${srcdir}/danser-go-${pkgver}"

    go build \
        -trimpath \
        -buildmode=pie \
        -mod=readonly \
        -modcacherw \
        -ldflags "-linkmode external -extldflags \"${LDFLAGS}\"" \
        .
}

package() {
    cd "${srcdir}/danser-go-${pkgver}"
    mkdir -p "${pkgdir}/opt/danser" "${pkgdir}/usr/bin"
    chmod 777 "${pkgdir}/opt/danser"
    install -Dm755 libbass.so libbass_fx.so libbassmix.so "${pkgdir}/opt/danser"
    # i hate install i hate install i hate in-
    cp -r "assets" "${pkgdir}/opt/danser/assets"
    chmod 755 "${pkgdir}/opt/danser/assets"

    install -Dm755 danser-go "${pkgdir}/opt/danser/${pkgname}"

    install -Dm644 LICENSE "${pkgdir}/usr/share/licenses/${pkgname}/LICENSE"

    ln -s "/opt/danser/${pkgname}" "${pkgdir}/usr/bin/${pkgname}"
}