forked from marfrit/marfrit-packages
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 243e05ca5e | |||
| a29fe71666 | |||
| b0ffd4d74f | |||
| ab60acd9f4 | |||
| 6a417fcc9d | |||
| 1c77b05f68 | |||
| 051da5e8dc | |||
| a1ff6de652 | |||
| b471847b1c | |||
| 3abfdff943 |
@@ -193,13 +193,33 @@ debian)
|
|||||||
esac
|
esac
|
||||||
|
|
||||||
pkg_name=$(basename "$RECIPE_DIR")
|
pkg_name=$(basename "$RECIPE_DIR")
|
||||||
first_letter="${pkg_name:0:1}"
|
|
||||||
|
|
||||||
url="${REPO_BASE}/debian/pool/main/${first_letter}/${pkg_name}/${pkg_name}_${ver_full}_${file_arch}.deb"
|
# Compare against the canonical Packages index (what apt actually
|
||||||
code=$(http_head "$url")
|
# consults). reprepro refuses lower-version uploads, so checking
|
||||||
if [ "$code" = "200" ]; then
|
# only an exact source-pkgrel URL produces an endless-rebuild trap
|
||||||
|
# whenever source PKGREL has rolled back below pool head. We skip
|
||||||
|
# if pools published version >= source version-tuple.
|
||||||
|
source_full="${ver_full}"
|
||||||
|
if [ -n "${PKGVER#*:}" ] && [ "${PKGVER}" != "${PKGVER#*:}" ]; then
|
||||||
|
# PKGVER had an epoch — keep it for dpkg --compare-versions.
|
||||||
|
source_full="${PKGVER}-${PKGREL}"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# Determine suite: most recipes publish to both bookworm and trixie;
|
||||||
|
# checking trixie is sufficient (changelogs share Distribution).
|
||||||
|
suite="trixie"
|
||||||
|
pkg_arch_label="$file_arch"
|
||||||
|
[ "$file_arch" = "all" ] && pkg_arch_label="all"
|
||||||
|
packages_url="${REPO_BASE}/debian/dists/${suite}/main/binary-arm64/Packages"
|
||||||
|
[ "$file_arch" = "amd64" ] && packages_url="${REPO_BASE}/debian/dists/${suite}/main/binary-amd64/Packages"
|
||||||
|
|
||||||
|
pool_ver=$(set +o pipefail; curl -sS --max-time "$HEAD_TIMEOUT" "$packages_url" 2>/dev/null | awk -v p="$pkg_name" '$1=="Package:" && $2==p {found=1; next} found && $1=="Version:" {print $2; exit}')
|
||||||
|
|
||||||
|
if [ -n "$pool_ver" ] && command -v dpkg >/dev/null && dpkg --compare-versions "$pool_ver" ge "$source_full"; then
|
||||||
|
echo "pool has $pool_ver >= source $source_full" >&2
|
||||||
emit 1
|
emit 1
|
||||||
fi
|
fi
|
||||||
|
echo "pool has $pool_ver, source wants $source_full — build" >&2
|
||||||
emit 0
|
emit 0
|
||||||
;;
|
;;
|
||||||
|
|
||||||
|
|||||||
@@ -906,7 +906,7 @@ jobs:
|
|||||||
# -------------------------------------------------------------------------
|
# -------------------------------------------------------------------------
|
||||||
ffmpeg-v4l2-request-debian:
|
ffmpeg-v4l2-request-debian:
|
||||||
needs: ffmpeg-v4l2-request-aarch64
|
needs: ffmpeg-v4l2-request-aarch64
|
||||||
runs-on: arch-aarch64
|
runs-on: debian-aarch64
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -971,7 +971,12 @@ jobs:
|
|||||||
# -------------------------------------------------------------------------
|
# -------------------------------------------------------------------------
|
||||||
libva-v4l2-request-fourier-debian:
|
libva-v4l2-request-fourier-debian:
|
||||||
needs: libva-v4l2-request-fourier-aarch64
|
needs: libva-v4l2-request-fourier-aarch64
|
||||||
runs-on: arch-aarch64
|
# Native Debian trixie runner — the driver bakes __vaDriverInit_1_<MINOR>
|
||||||
|
# at compile time from <va/va.h>. Building on Arch (libva 2.23) produced
|
||||||
|
# __vaDriverInit_1_23, which trixie's libva 2.22 runtime cannot bind: the
|
||||||
|
# .deb installed but vaInitialize() returned -1 on every host. A native
|
||||||
|
# trixie runner avoids the cross-distro ABI skew entirely.
|
||||||
|
runs-on: debian-aarch64
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -989,9 +994,12 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
set -e
|
set -e
|
||||||
retry() { for i in 1 2 3; do "$@" && return 0; rc=$?; echo "retry $i (exit=$rc)" >&2; sleep $((i*5)); done; return 1; }
|
retry() { for i in 1 2 3; do "$@" && return 0; rc=$?; echo "retry $i (exit=$rc)" >&2; sleep $((i*5)); done; return 1; }
|
||||||
retry pacman -Syu --noconfirm --needed \
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
dpkg openssh rsync curl base-devel git meson ninja pkgconf \
|
retry apt-get update -qq
|
||||||
libva libdrm systemd-libs
|
retry apt-get install -y --no-install-recommends \
|
||||||
|
build-essential meson ninja-build pkg-config \
|
||||||
|
libva-dev libdrm-dev \
|
||||||
|
curl openssh-client rsync ca-certificates git dpkg-dev
|
||||||
|
|
||||||
- name: install hertz deploy ssh key
|
- name: install hertz deploy ssh key
|
||||||
if: steps.skip-check.outputs.skip != '1'
|
if: steps.skip-check.outputs.skip != '1'
|
||||||
@@ -1037,7 +1045,7 @@ jobs:
|
|||||||
# -------------------------------------------------------------------------
|
# -------------------------------------------------------------------------
|
||||||
mpv-fourier-debian:
|
mpv-fourier-debian:
|
||||||
needs: mpv-fourier-aarch64
|
needs: mpv-fourier-aarch64
|
||||||
runs-on: arch-aarch64
|
runs-on: debian-aarch64
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -1123,7 +1131,7 @@ jobs:
|
|||||||
# -------------------------------------------------------------------------
|
# -------------------------------------------------------------------------
|
||||||
daedalus-v4l2-debian:
|
daedalus-v4l2-debian:
|
||||||
needs: claude-his-debian
|
needs: claude-his-debian
|
||||||
runs-on: arch-aarch64
|
runs-on: debian-aarch64
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
@@ -1212,7 +1220,7 @@ jobs:
|
|||||||
# -------------------------------------------------------------------------
|
# -------------------------------------------------------------------------
|
||||||
daedalus-v4l2-dkms-debian:
|
daedalus-v4l2-dkms-debian:
|
||||||
needs: daedalus-v4l2-debian
|
needs: daedalus-v4l2-debian
|
||||||
runs-on: arch-aarch64
|
runs-on: debian-aarch64
|
||||||
continue-on-error: true
|
continue-on-error: true
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v4
|
||||||
|
|||||||
@@ -31,18 +31,24 @@ _upstreampkg=libva-v4l2-request
|
|||||||
# H264/HEVC probe; actual VP9 stateless control SET worked all along).
|
# H264/HEVC probe; actual VP9 stateless control SET worked all along).
|
||||||
#
|
#
|
||||||
# Prior pin (7ac934e) was iter38b — fresnel-fourier multi-device probe
|
# Prior pin (7ac934e) was iter38b — fresnel-fourier multi-device probe
|
||||||
# + MAX_PROFILES bounds-check fix. de27e95 adds the daedalus_v4l2
|
# + MAX_PROFILES bounds-check fix. de27e95 added the daedalus_v4l2
|
||||||
# probe slot (b5b3acf), the meson option gate (2146341), and the
|
# probe slot (b5b3acf), the meson option gate (2146341), and the
|
||||||
# S_EXT_CTRLS diagnostic (de27e95 itself). Backward-compatible on
|
# S_EXT_CTRLS diagnostic (de27e95 itself). c332d34 (LIBVA-1) added
|
||||||
# rkvdec / hantro / cedrus / rpi-hevc-dec hosts — daedalus probe is
|
# the per-codec dispatch: rpi-hevc-dec + daedalus_v4l2 both probe each
|
||||||
# off by default unless the kernel module is present.
|
# other as alts, VP9/AV1/H.264 route to daedalus via new 'd' kind,
|
||||||
_commit=de27e95571b67ef34619c23a12db4698f9b3454e
|
# HEVC stays on 'p' (rpi-hevc-dec). 9898331 (LIBVA-2) completes that
|
||||||
|
# by adding video_fd_daedalus to any_fd_supports_output_format's probe
|
||||||
|
# array — without it, H.264/VP9/AV1 profiles never got advertised on
|
||||||
|
# Pi 5 mixed deployments (rpi-hevc-dec primary, daedalus alt) and
|
||||||
|
# ffmpeg bailed with "No support for codec h264 profile 578" before
|
||||||
|
# the per-codec dispatch could fire.
|
||||||
|
_commit=989833114a7708ad999dc68309cbc181d9913bdb
|
||||||
|
|
||||||
# Project version from meson.build (1.0.0) + commit count + short sha,
|
# Project version from meson.build (1.0.0) + commit count + short sha,
|
||||||
# matching the ffmpeg-v4l2-request-fourier convention. Recomputed at
|
# matching the ffmpeg-v4l2-request-fourier convention. Recomputed at
|
||||||
# build time by pkgver() below; the static value here is a placeholder
|
# build time by pkgver() below; the static value here is a placeholder
|
||||||
# so AUR-style consumers see something coherent before src/ exists.
|
# so AUR-style consumers see something coherent before src/ exists.
|
||||||
pkgver=1.0.0.r376.de27e95
|
pkgver=1.0.0.r380.9898331
|
||||||
pkgrel=1
|
pkgrel=1
|
||||||
pkgdesc="VA-API backend for V4L2 stateless decoders (multiplanar fork — fourier umbrella)"
|
pkgdesc="VA-API backend for V4L2 stateless decoders (multiplanar fork — fourier umbrella)"
|
||||||
arch=('aarch64')
|
arch=('aarch64')
|
||||||
|
|||||||
Vendored
+1
-1
@@ -16,7 +16,7 @@ work=$(mktemp -d)
|
|||||||
trap "rm -rf $work" EXIT
|
trap "rm -rf $work" EXIT
|
||||||
|
|
||||||
cd "$work"
|
cd "$work"
|
||||||
curl -sSLfo his.tar.gz \
|
curl --connect-timeout 10 --max-time 600 --retry 3 --retry-delay 5 -sSLfo his.tar.gz \
|
||||||
"https://git.reauktion.de/marfrit/claude-his-agent/archive/v${PKGVER}.tar.gz"
|
"https://git.reauktion.de/marfrit/claude-his-agent/archive/v${PKGVER}.tar.gz"
|
||||||
echo "$HIS_TARBALL_SHA256 his.tar.gz" | sha256sum -c
|
echo "$HIS_TARBALL_SHA256 his.tar.gz" | sha256sum -c
|
||||||
tar xzf his.tar.gz
|
tar xzf his.tar.gz
|
||||||
|
|||||||
+1
-1
@@ -28,7 +28,7 @@ work=$(mktemp -d)
|
|||||||
trap "rm -rf $work" EXIT
|
trap "rm -rf $work" EXIT
|
||||||
|
|
||||||
cd "$work"
|
cd "$work"
|
||||||
curl -sSLfo daedalus-v4l2.tar.gz \
|
curl --connect-timeout 10 --max-time 600 --retry 3 --retry-delay 5 -sSLfo daedalus-v4l2.tar.gz \
|
||||||
"https://git.reauktion.de/reauktion/daedalus-v4l2/archive/${UPSTREAM_COMMIT}.tar.gz"
|
"https://git.reauktion.de/reauktion/daedalus-v4l2/archive/${UPSTREAM_COMMIT}.tar.gz"
|
||||||
tar xzf daedalus-v4l2.tar.gz
|
tar xzf daedalus-v4l2.tar.gz
|
||||||
SRCDIR=daedalus-v4l2
|
SRCDIR=daedalus-v4l2
|
||||||
|
|||||||
Vendored
+1
-1
@@ -28,7 +28,7 @@ work=$(mktemp -d)
|
|||||||
trap "rm -rf $work" EXIT
|
trap "rm -rf $work" EXIT
|
||||||
|
|
||||||
cd "$work"
|
cd "$work"
|
||||||
curl -sSLfo daedalus-v4l2.tar.gz \
|
curl --connect-timeout 10 --max-time 600 --retry 3 --retry-delay 5 -sSLfo daedalus-v4l2.tar.gz \
|
||||||
"https://git.reauktion.de/reauktion/daedalus-v4l2/archive/${UPSTREAM_COMMIT}.tar.gz"
|
"https://git.reauktion.de/reauktion/daedalus-v4l2/archive/${UPSTREAM_COMMIT}.tar.gz"
|
||||||
tar xzf daedalus-v4l2.tar.gz
|
tar xzf daedalus-v4l2.tar.gz
|
||||||
SRCDIR=daedalus-v4l2
|
SRCDIR=daedalus-v4l2
|
||||||
|
|||||||
+32
-5
@@ -10,10 +10,15 @@
|
|||||||
# Upstream fork: https://git.reauktion.de/marfrit/libva-v4l2-request-fourier
|
# Upstream fork: https://git.reauktion.de/marfrit/libva-v4l2-request-fourier
|
||||||
set -euo pipefail
|
set -euo pipefail
|
||||||
|
|
||||||
# Same pin as the Arch PKGBUILD. de27e95 = "v4l2: log error_idx +
|
# Same pin as the Arch PKGBUILD. 9898331 = LIBVA-2 close — completes
|
||||||
# failing ctrl id on S_EXT_CTRLS failure" (Phase 8.13 diagnostic).
|
# the per-codec dispatch from c332d34 (LIBVA-1) by adding video_fd_
|
||||||
UPSTREAM_COMMIT=de27e95571b67ef34619c23a12db4698f9b3454e
|
# daedalus to any_fd_supports_output_format's probe array. Without
|
||||||
PKGVER=1.0.0+r376+gde27e95
|
# it, H.264/VP9/AV1 profiles never got advertised on Pi 5 mixed
|
||||||
|
# deployments (rpi-hevc-dec primary, daedalus_v4l2 alt) — ffmpeg
|
||||||
|
# bailed with "No support for codec h264 profile 578" before the
|
||||||
|
# per-codec dispatch could even fire.
|
||||||
|
UPSTREAM_COMMIT=989833114a7708ad999dc68309cbc181d9913bdb
|
||||||
|
PKGVER=1.0.0+r380+g9898331
|
||||||
PKGREL=1
|
PKGREL=1
|
||||||
|
|
||||||
HERE=$(dirname "$(readlink -f "$0")")
|
HERE=$(dirname "$(readlink -f "$0")")
|
||||||
@@ -25,7 +30,7 @@ work=$(mktemp -d)
|
|||||||
trap "rm -rf $work" EXIT
|
trap "rm -rf $work" EXIT
|
||||||
|
|
||||||
cd "$work"
|
cd "$work"
|
||||||
curl -sSLfo libva-fourier.tar.gz \
|
curl --connect-timeout 10 --max-time 600 --retry 3 --retry-delay 5 -sSLfo libva-fourier.tar.gz \
|
||||||
"https://git.reauktion.de/marfrit/libva-v4l2-request-fourier/archive/${UPSTREAM_COMMIT}.tar.gz"
|
"https://git.reauktion.de/marfrit/libva-v4l2-request-fourier/archive/${UPSTREAM_COMMIT}.tar.gz"
|
||||||
tar xzf libva-fourier.tar.gz
|
tar xzf libva-fourier.tar.gz
|
||||||
SRCDIR=$(echo libva-v4l2-request-fourier)
|
SRCDIR=$(echo libva-v4l2-request-fourier)
|
||||||
@@ -38,6 +43,28 @@ meson setup build \
|
|||||||
-Db_lto=false
|
-Db_lto=false
|
||||||
meson compile -C build
|
meson compile -C build
|
||||||
|
|
||||||
|
# ---------------------------------------------------------------------------
|
||||||
|
# ABI sanity check: the produced .so MUST export __vaDriverInit_1_<MINOR>
|
||||||
|
# matching the install target's libva runtime. Build is expected to run on
|
||||||
|
# a Debian trixie runner where <va/va.h>'s VA_MINOR is 22 — see
|
||||||
|
# .gitea/workflows/build.yml (runs-on: actrunner-debian-aarch64-bohr). If a future
|
||||||
|
# runner change lands the build on a host with a different libva-dev
|
||||||
|
# version, the produced symbol won't bind on the install target and ffmpeg/
|
||||||
|
# vainfo/firefox-vaapi will all fail with "has no function
|
||||||
|
# __vaDriverInit_1_0". Fail loud at build time instead of shipping a
|
||||||
|
# silently-broken .deb (which is what happened in -1).
|
||||||
|
# ---------------------------------------------------------------------------
|
||||||
|
SO=$(find build -name 'v4l2_request_drv_video.so' | head -1)
|
||||||
|
if ! nm -D --defined-only "$SO" | grep -q '__vaDriverInit_1_22'; then
|
||||||
|
echo "FATAL: built driver does not export __vaDriverInit_1_22."
|
||||||
|
echo " Build host's <va/va.h> VA_MINOR_VERSION is likely != 22."
|
||||||
|
echo " Expected runner: actrunner-debian-aarch64-bohr (trixie, libva 2.22)."
|
||||||
|
echo " Symbol exports found:"
|
||||||
|
nm -D --defined-only "$SO" | grep -i vadriverinit || echo " (none)"
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
echo "ABI check: $SO exports __vaDriverInit_1_22 (matches trixie libva 2.22)"
|
||||||
|
|
||||||
ROOT="$work/pkgroot"
|
ROOT="$work/pkgroot"
|
||||||
DESTDIR="$ROOT" meson install -C build
|
DESTDIR="$ROOT" meson install -C build
|
||||||
|
|
||||||
|
|||||||
@@ -1,3 +1,51 @@
|
|||||||
|
libva-v4l2-request-fourier (1.0.0+r380+g9898331-1) bookworm trixie; urgency=medium
|
||||||
|
|
||||||
|
* Bump to 9898331 — LIBVA-2 close. Adds video_fd_daedalus to
|
||||||
|
any_fd_supports_output_format's probe list in config.c so the
|
||||||
|
profile enumerator actually sees daedalus_v4l2's OUTPUT formats
|
||||||
|
(VP9F + AV1F + S264). Before this commit, ffmpeg vaapi against
|
||||||
|
H.264 on higgs bailed with "No support for codec h264 profile 578"
|
||||||
|
because RequestQueryConfigProfiles only walked rkvdec/hantro/
|
||||||
|
rpi-hevc-dec/vpu981 fds and never asked daedalus what it could do.
|
||||||
|
* Backward-compatible on RK3399/3588 — new slot gated by
|
||||||
|
HAVE_DAEDALUS_V4L2 *and* video_fd_daedalus >= 0; both false in
|
||||||
|
those deployments.
|
||||||
|
|
||||||
|
-- Markus Fritsche <mfritsche@reauktion.de> Wed, 20 May 2026 19:30:00 +0000
|
||||||
|
|
||||||
|
libva-v4l2-request-fourier (1.0.0+r378+gc332d34-2) bookworm trixie; urgency=medium
|
||||||
|
|
||||||
|
* Rebuild on a native Debian trixie runner (actrunner-debian-aarch64-bohr) so
|
||||||
|
the driver picks up trixie's libva-dev (2.22) and exports
|
||||||
|
__vaDriverInit_1_22 — the symbol trixie's libva runtime looks up.
|
||||||
|
Previous -1 build used the Arch CI runner (libva 2.23.0) and
|
||||||
|
exported __vaDriverInit_1_23, which trixie's loader cannot bind:
|
||||||
|
vaInitialize() returns -1 ("has no function __vaDriverInit_1_0")
|
||||||
|
and ffmpeg -hwaccel vaapi fails on startup.
|
||||||
|
* No source change; pure build-env fix. CI workflow's
|
||||||
|
libva-v4l2-request-fourier-debian job moved from runs-on:
|
||||||
|
arch-aarch64 to runs-on: actrunner-debian-aarch64-bohr; build-deps installed
|
||||||
|
via apt-get instead of pacman.
|
||||||
|
* Hard sanity check kept in build-deb.sh: build fails if the
|
||||||
|
resulting .so doesn't export __vaDriverInit_1_22 (preempts the
|
||||||
|
silent install-then-refuse-to-load failure mode).
|
||||||
|
|
||||||
|
-- Markus Fritsche <mfritsche@reauktion.de> Wed, 20 May 2026 18:00:00 +0000
|
||||||
|
|
||||||
|
libva-v4l2-request-fourier (1.0.0+r378+gc332d34-1) bookworm trixie; urgency=medium
|
||||||
|
|
||||||
|
* Bump to c332d34 — LIBVA-1 per-codec dispatch close. Pi 5 mixed
|
||||||
|
deployment (rpi-hevc-dec + daedalus_v4l2 both loaded) now correctly
|
||||||
|
opens BOTH decoders: VP9/AV1/H.264 route to daedalus via new 'd'
|
||||||
|
kind, HEVC stays on 'p' (rpi-hevc-dec). Before this commit
|
||||||
|
find_codec_device picked rpi-hevc-dec as the sole primary and the
|
||||||
|
daedalus_v4l2 slot stayed -1, so VP9/AV1/H.264 frames failed.
|
||||||
|
* Also closes a small fd leak in RequestTerminate (daedalus pair).
|
||||||
|
* Backward-compatible: new branches gated by HAVE_DAEDALUS_V4L2
|
||||||
|
*and* video_fd_daedalus >= 0 — RK3399/RK3588 boxes unaffected.
|
||||||
|
|
||||||
|
-- Markus Fritsche <mfritsche@reauktion.de> Wed, 20 May 2026 17:30:00 +0000
|
||||||
|
|
||||||
libva-v4l2-request-fourier (1.0.0+r376+gde27e95-1) bookworm trixie; urgency=medium
|
libva-v4l2-request-fourier (1.0.0+r376+gde27e95-1) bookworm trixie; urgency=medium
|
||||||
|
|
||||||
* Initial Debian packaging (sibling to existing
|
* Initial Debian packaging (sibling to existing
|
||||||
|
|||||||
Vendored
+1
-1
@@ -23,7 +23,7 @@ work=$(mktemp -d)
|
|||||||
trap "rm -rf $work" EXIT
|
trap "rm -rf $work" EXIT
|
||||||
|
|
||||||
cd "$work"
|
cd "$work"
|
||||||
curl -sSLfo lmcp.tar.gz "https://git.reauktion.de/marfrit/lmcp/archive/${UPSTREAM_TAG}.tar.gz"
|
curl --connect-timeout 10 --max-time 600 --retry 3 --retry-delay 5 -sSLfo lmcp.tar.gz "https://git.reauktion.de/marfrit/lmcp/archive/${UPSTREAM_TAG}.tar.gz"
|
||||||
echo "$LMCP_TARBALL_SHA256 lmcp.tar.gz" | sha256sum -c
|
echo "$LMCP_TARBALL_SHA256 lmcp.tar.gz" | sha256sum -c
|
||||||
tar xzf lmcp.tar.gz
|
tar xzf lmcp.tar.gz
|
||||||
|
|
||||||
|
|||||||
Vendored
+1
-1
@@ -33,7 +33,7 @@ work=$(mktemp -d)
|
|||||||
trap "rm -rf $work" EXIT
|
trap "rm -rf $work" EXIT
|
||||||
|
|
||||||
cd "$work"
|
cd "$work"
|
||||||
curl -sSLfo mpv.tar.gz \
|
curl --connect-timeout 10 --max-time 600 --retry 3 --retry-delay 5 -sSLfo mpv.tar.gz \
|
||||||
"https://github.com/mpv-player/mpv/archive/v${MPV_VERSION}/mpv-${MPV_VERSION}.tar.gz"
|
"https://github.com/mpv-player/mpv/archive/v${MPV_VERSION}/mpv-${MPV_VERSION}.tar.gz"
|
||||||
echo "$MPV_TARBALL_SHA256 mpv.tar.gz" | sha256sum -c
|
echo "$MPV_TARBALL_SHA256 mpv.tar.gz" | sha256sum -c
|
||||||
tar xzf mpv.tar.gz
|
tar xzf mpv.tar.gz
|
||||||
|
|||||||
Reference in New Issue
Block a user