diff --git a/.github/workflows/snap.yml b/.github/workflows/snap.yml index 0b504c329..508a4b4df 100644 --- a/.github/workflows/snap.yml +++ b/.github/workflows/snap.yml @@ -67,7 +67,7 @@ jobs: - name: CMake build. if: steps.cache-cmake.outputs.cache-hit != 'true' - run: snapcraft build --destructive-mode cmake + run: sudo snapcraft build --destructive-mode cmake - name: FFmpeg cache. id: cache-ffmpeg @@ -78,11 +78,11 @@ jobs: - name: FFmpeg build. if: steps.cache-ffmpeg.outputs.cache-hit != 'true' - run: snapcraft build --destructive-mode ffmpeg + run: sudo snapcraft build --destructive-mode ffmpeg - name: Telegram Desktop snap build. if: env.ONLY_CACHE == 'false' - run: snapcraft --destructive-mode + run: sudo snapcraft --destructive-mode - name: Move artifact. if: env.UPLOAD_ARTIFACT == 'true' @@ -102,5 +102,5 @@ jobs: - name: Remove unneeded directories for cache. run: | - rm -rf parts/{cmake,ffmpeg}/{build,src,ubuntu} - rm -rf parts/{cmake,ffmpeg}/state/{stage,prime} + sudo rm -rf parts/{cmake,ffmpeg}/{build,src,ubuntu} + sudo rm -rf parts/{cmake,ffmpeg}/state/{stage,prime} diff --git a/snap/snapcraft.yaml b/snap/snapcraft.yaml index dddf80925..a1294231c 100644 --- a/snap/snapcraft.yaml +++ b/snap/snapcraft.yaml @@ -191,13 +191,35 @@ parts: - libtinfo5 prime: [-./*] + nasm: + source: https://repo.or.cz/nasm.git + source-depth: 1 + source-tag: nasm-2.14.02 + plugin: autotools + override-build: | + ./autogen.sh + ./configure --prefix= + make + install -d "$SNAPCRAFT_PART_INSTALL/bin" + install nasm "$SNAPCRAFT_PART_INSTALL/bin/nasm" + install ndisasm "$SNAPCRAFT_PART_INSTALL/bin/ndisasm" + prime: [-./*] + + dav1d: + source: https://github.com/videolan/dav1d.git + source-depth: 1 + source-tag: 0.6.0 + plugin: meson + meson-parameters: [--prefix=/usr] + after: + - nasm + ffmpeg: source: https://github.com/FFmpeg/FFmpeg.git source-depth: 1 source-branch: release/4.2 plugin: autotools build-packages: - - yasm - libasound2-dev - libopus-dev - libva-dev @@ -219,6 +241,7 @@ parts: - --disable-iconv - --enable-gpl - --enable-version3 + - --enable-libdav1d - --enable-libopus - --enable-vaapi - --enable-vdpau @@ -228,6 +251,7 @@ parts: - --enable-decoder=flac - --enable-decoder=gif - --enable-decoder=h264 + - --enable-decoder=libdav1d - --enable-decoder=mp1 - --enable-decoder=mp1float - --enable-decoder=mp2 @@ -277,6 +301,8 @@ parts: patch -p1 < "$SNAPCRAFT_STAGE/ffmpeg.diff" after: - patches + - nasm + - dav1d openal: source: https://github.com/kcat/openal-soft.git