diff --git a/.github/workflows/nightly-arch.yml b/.github/workflows/nightly-arch.yml index d247d5b..f7e560c 100644 --- a/.github/workflows/nightly-arch.yml +++ b/.github/workflows/nightly-arch.yml @@ -31,7 +31,7 @@ jobs: - name: Build HandBrake Linux run: | - makepkg -s + runuser -unobody makepkg mv src/HandBrake/build/HandBrakeCLI HandBrakeCLI-$(date +'%Y%m%d')-master-x86_64 mv src/HandBrake/build/gtk/src/ghb ghb-$(date +'%Y%m%d')-master-x86_64 diff --git a/.github/workflows/nightly-ubuntu.yml b/.github/workflows/nightly-ubuntu.yml index e88a861..9b08f3c 100644 --- a/.github/workflows/nightly-ubuntu.yml +++ b/.github/workflows/nightly-ubuntu.yml @@ -46,8 +46,8 @@ jobs: run: | cd HandBrake ./configure --enable-qsv --enable-vce --enable-nvenc --enable-nvdec --launch-jobs=0 --launch - mv build/HandBrakeCLI HandBrakeCLI-$(date +'%Y%m%d')-master-x86_64 - mv build/gtk/src/ghb ghb-$(date +'%Y%m%d')-master-x86_64 + mv build/HandBrakeCLI ../HandBrakeCLI-$(date +'%Y%m%d')-master-x86_64 + mv build/gtk/src/ghb ../ghb-$(date +'%Y%m%d')-master-x86_64 - name: Upload HandBrake CLI uses: actions/upload-artifact@v4 diff --git a/PKGBUILD b/PKGBUILD new file mode 100644 index 0000000..76a3f6b --- /dev/null +++ b/PKGBUILD @@ -0,0 +1,79 @@ +# Maintainer: Fabio 'Lolix' Loli -> https://github.com/FabioLolix +# Contributor: HurricanePootis +# Contributor: graysky +# Contributor: jiribb +# Contributor: David Spicer +# Contributor: Andrew Brouwers +# Contributor: ponsfoot +# Contributor: Stefan Husmann + +pkgbase=handbrake-git +pkgname=(handbrake-git handbrake-cli-git) +pkgver=1.8.0.r135.gdeb4c4578 +pkgrel=1 +pkgdesc="Multithreaded video transcoder. Enabled: x265, nvenc, fdk-aac, qsv, vce, numa, hardened. Last stable branch" +arch=(i686 x86_64) +url="https://handbrake.fr/" +license=(GPL-2.0-only) +source=("HandBrake::git+https://github.com/HandBrake/HandBrake.git" "HandBrake-SVT-AV1-PSY::git+https://github.com/Nj0be/HandBrake-SVT-AV1-PSY.git") +_commondeps=(libxml2 libass libvorbis opus speex libtheora lame libjpeg-turbo + x264 libx264.so jansson libvpx libva numactl) +_guideps=(gst-plugins-base gtk4 libgudev) +makedepends=(git intltool python nasm wget cmake meson llvm clang cargo-c + "${_commondeps[@]}" "${_guideps[@]}") +optdepends=('libdvdcss: for decoding encrypted DVDs' + 'intel-media-sdk: for enabling Intel QSV' + 'nvidia-utils: for Nvidia users, enable Nvidia nvenc' + 'cuda: for Nvidia users, enable Nvidia nvdec' + 'amf-amdgpu-pro: for enabling AMD AMF') +sha256sums=('SKIP' 'SKIP') +options=(!lto) + +pkgver() { + cd "HandBrake" + git describe --long | sed 's/^v//;s/\([^-]*-g\)/r\1/;s/-/./g' +} + + build() { + ./HandBrake-SVT-AV1-PSY/patch.sh + cd "HandBrake" + + ./configure \ + --prefix=/usr \ + --enable-qsv \ + --launch-jobs=$(nproc) \ + --launch + #--harden \ + #--enable-x265 \ + #--enable-libdovi \ + #--enable-numa \ + #--enable-fdk-aac \ + #--enable-nvdec \ + #--enable-nvenc \ + #--enable-vce +} + +package_handbrake-git() { + pkgdesc="Multithreaded video transcoder" + depends=("${_commondeps[@]}" "${_guideps[@]}") + optdepends+=('gst-plugins-good: for video previews' + 'gst-libav: for video previews') + provides=(handbrake) + conflicts=(handbrake) + + cd "$srcdir/HandBrake/build" + + make DESTDIR="$pkgdir" install + rm "$pkgdir/usr/bin/HandBrakeCLI" +} + +package_handbrake-cli-git() { + pkgdesc="Multithreaded video transcoder (CLI)" + depends=("${_commondeps[@]}") + provides=(handbrake-cli) + conflicts=(handbrake-cli) + + cd "$srcdir/HandBrake/build" + install -D HandBrakeCLI "$pkgdir/usr/bin/HandBrakeCLI" +} +