summarylogtreecommitdiffstats
path: root/PKGBUILD
blob: c5444ba9f748d1d20fed9018546b90c0d95a5696 (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
# Maintainer: katt <magunasu.b97@gmail.com>

pkgname=yt-dlp-git
pkgver=2023.03.03.r3.g4a6272c6d
pkgrel=1
pkgdesc='A youtube-dl fork with additional features and fixes (git)'
arch=(any)
url=https://github.com/yt-dlp/yt-dlp
license=(Unlicense)
depends=(python-certifi)
makedepends=(python-build python-installer python-setuptools python-wheel pandoc git)
checkdepends=(python-pytest)
optdepends=('ffmpeg: for video post-processing'
            'rtmpdump: for rtmp streams support'
            'atomicparsley: for embedding thumbnails into m4a files'
            'aria2: for using aria2 as external downloader'
            'python-mutagen: For embedding thumbnail in certain formats'
            'python-pycryptodomex: For decrypting AES-128 HLS streams and various other data'
            'python-websockets: For downloading over websocket')
provides=("${pkgname%-git}")
conflicts=("${pkgname%-git}")
source=(git+"${url}".git)
sha256sums=('SKIP')

prepare() {
    # Ugly workaround to fix pkgver() reporting nightly.r0(...)
    git -C "${pkgname%-git}" tag -d nightly
}

pkgver() {
    git -C "${pkgname%-git}" describe --long --tags | sed 's/\([^-]*-g\)/r\1/;s/-/./g'
}

build() {
    cd "${pkgname%-git}"
    make pypi-files
    python -m build --wheel --no-isolation
}

check() {
    cd "${pkgname%-git}"
    pytest -v -m "not download"
}

package() {
    cd "${pkgname%-git}"
    python -m installer --destdir="$pkgdir" dist/*.whl
}