Skip to content

HandBrake Linux

HandBrake Linux #15

Workflow file for this run

name: HandBrake linux
on:
workflow_dispatch:
jobs:
build:
name: Build on Ubuntu
runs-on: ubuntu-22.04
#22.04会报错依赖冲突 The following packages have unmet dependencies: libgstreamer1.0-dev : Depends: libunwind-dev
# 可以搜索到这个问题,貌似没解决 https://github.com/rust-lang/crates-build-env/issues/125 https://github.com/orgs/community/discussions/113480
# 唔,是 'libunwind-dev' is incompatible with libc++-14-dev and libc++-dev。 所以先只装 libunwind-dev,会自动卸载冲突的。再正常安装其他依赖就行了
# env:
# DESTDIR: ${{ github.workspace }}/handbrake-build-install
steps:
- name: test env
run: |
echo DESTDIR是${DESTDIR}
echo 如果在run中声明呢 ${{ github.workspace }}/handbrake-build-install
- name: fix broken deps
run: |
sudo apt update
sudo apt install libunwind-dev
- name: Setup Environment
run: |
sudo apt-get update
sudo apt-get install autoconf automake build-essential cmake git libass-dev libbz2-dev libfontconfig-dev libfreetype-dev libfribidi-dev libharfbuzz-dev libjansson-dev liblzma-dev libmp3lame-dev libnuma-dev libogg-dev libopus-dev libsamplerate0-dev libspeex-dev libtheora-dev libtool libtool-bin libturbojpeg0-dev libvorbis-dev libx264-dev libxml2-dev libvpx-dev m4 make meson nasm ninja-build patch pkg-config tar zlib1g-dev
sudo apt-get install appstream desktop-file-utils gettext gstreamer1.0-libav gstreamer1.0-plugins-good libgstreamer-plugins-base1.0-dev libgtk-4-dev
- name: Build HandBrake Linux
run: |
git clone https://github.com/HandBrake/HandBrake.git && cd HandBrake
./configure --launch-jobs=0 --launch
DESTDIR=${{ github.workspace }}/handbrake-build-install make --directory=build install
# - name: bring back cache
# uses: actions/cache@v4.0.2
# with:
# path: ${{ github.workspace }}/HandBrake
# key: aaa
- name: upload
uses: actions/upload-artifact@v4
with:
name: handbrake
path: ${{ github.workspace }}/handbrake-build-install #${{ env.DESTDIR }}