Open soumyaDghosh opened 11 months ago
I'll check it today. Thanks!
(BTW: please, always add the repo with the snapcraft.yaml)
Mmmm... I tried with the current snap at https://github.com/snapcrafters/ffmpeg and it works fine... Are you using the last version of updatesnap? Are you using it against a modified snapcraft.yaml file?
Yes, I'm using the latest version of updatesnap.
Can you send me the command line that you are using to launch it? Can you also send me the snapcraft.yaml file if you are using a local one?
Extremely sorry for the delay.
updatesnap.py --github-user soumyaDghosh --github-token <my_github_token> ffmpeg-2204-sdk ffmpeg
/usr/local/bin/updatesnap.py:14: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html
import pkg_resources
Opening file ffmpeg-2204-sdk/snapcraft.yaml
Part: ffmpeg (https://github.com/FFmpeg/FFmpeg.git)
Current tag: release/6.1
Error: can't find the current tag in the tag list.
Current branch: release/6.1
Current version: release/6.1
Branch updated
Traceback (most recent call last):
File "/usr/local/bin/updatesnap.py", line 1084, in <module>
main()
File "/usr/local/bin/updatesnap.py", line 1070, in main
data, _ = process_folder(argument_list.folder, argument_list)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/bin/updatesnap.py", line 992, in process_folder
retdata.append(snap.process_part(part))
^^^^^^^^^^^^^^^^^^^^^^^
File "/usr/local/bin/updatesnap.py", line 773, in process_part
self._print_last_branches(part, branches)
File "/usr/local/bin/updatesnap.py", line 790, in _print_last_branches
branches.sort(reverse=True, key=lambda x: x.get('date'))
TypeError: '<' not supported between instances of 'NoneType' and 'NoneType'
The yaml
name: ffmpeg-2204-sdk
#adopt-info: ffmpeg-2204-sdk
#summary: A complete solution to record, convert and stream audio and video.
#description: |
# FFmpeg is the leading multimedia framework, able to decode, encode,
# transcode, mux, demux, stream, filter and play pretty much anything that
# humans and machines have created. It supports the most obscure ancient formats
# up to the cutting edge. No matter if they were designed by some standards
# committee, the community or a corporation.
summary: SDK for ffmpeg-2204
description: SDK to build ffmpeg-2204 content snap
version: git
base: core22
grade: stable
confinement: strict
compression: lzo
lint:
ignore:
- classic
- library:
- usr/lib/*
- usr/bin/*
parts:
nv-codec-headers:
plugin: make
source: https://github.com/FFmpeg/nv-codec-headers.git
source-tag: 'n12.1.14.0'
source-depth: 1
make-parameters:
- PREFIX=/usr
- LIBDIR=lib/$CRAFT_ARCH_TRIPLET
build-packages:
- pkg-config
srt:
plugin: cmake
source: https://github.com/Haivision/srt.git
source-tag: 'v1.5.3'
source-depth: 1
cmake-parameters:
- -DCMAKE_INSTALL_PREFIX=/usr
- -DCMAKE_BUILD_TYPE=Release
- -DCMAKE_C_FLAGS_RELEASE=-s
- -DCMAKE_CXX_FLAGS_RELEASE=-s
- -DENABLE_LOGGING=OFF
- -DENABLE_STATIC=OFF
build-packages:
- libssl-dev
avisynth-plus:
plugin: cmake
source: https://github.com/AviSynth/AviSynthPlus.git
source-tag: 'v3.7.3'
source-depth: 1
cmake-parameters:
- -DCMAKE_INSTALL_PREFIX=/usr
- -DCMAKE_BUILD_TYPE=Release
- -DCMAKE_C_FLAGS_RELEASE=-s
- -DCMAKE_CXX_FLAGS_RELEASE=-s
x264:
plugin: autotools
source: https://code.videolan.org/videolan/x264.git
source-branch: 'stable'
source-depth: 1
autotools-configure-parameters:
- --prefix=/usr
- --libdir=/usr/lib/${CRAFT_ARCH_TRIPLET}
- --disable-cli
- --enable-shared
- --enable-strip
build-packages:
- libva-dev
- nasm
dav1d:
plugin: meson
source: https://code.videolan.org/videolan/dav1d.git
source-tag: '1.3.0'
source-depth: 1
meson-parameters:
- --prefix=/usr
- --buildtype=release
- --strip
- -Denable_tools=false
- -Denable_tests=false
build-packages:
- libxxhash-dev
- meson
- ninja-build
zimg:
plugin: autotools
source: https://github.com/sekrit-twc/zimg.git
source-tag: 'release-3.0.5'
source-depth: 1
autotools-configure-parameters:
- --prefix=/usr
- --libdir=/usr/lib/${CRAFT_ARCH_TRIPLET}
prime:
- -usr/share
ffmpeg:
after:
- avisynth-plus
- dav1d
- nv-codec-headers
- srt
- x264
- zimg
plugin: autotools
# source: https://git.ffmpeg.org/ffmpeg.git
source: https://github.com/FFmpeg/FFmpeg.git
source-branch: 'release/6.1'
# ext:updatesnap
# version-format:
# format: 'release/%M.%m'
# ignore-version: 'release/6.2-dev'
source-depth: 1
build-packages:
- libaom-dev
- flite1-dev
- libass-dev
- libbs2b-dev
- libbluray-dev
- libbz2-dev
- libcaca-dev
- libcdio-paranoia-dev
- libcodec2-dev
- libdc1394-dev
- libdrm-dev
- libfribidi-dev
- libgme-dev
- libgnutls28-dev
- libgsm1-dev
- liblzma-dev
- libmp3lame-dev
- libomxil-bellagio-dev
- libopenal-dev
- libopencore-amrnb-dev
- libopencore-amrwb-dev
- libopenjp2-7-dev
- libopenmpt-dev
- libopus-dev
- libpulse-dev
- librsvg2-dev
- librubberband-dev
- libsctp-dev
- libsdl2-dev
- libshine-dev
- libsnappy-dev
- libsoxr-dev
- libspeex-dev
- libssh-gcrypt-dev
- libtesseract-dev
- libtheora-dev
- libtwolame-dev
- libva-dev
- libv4l-dev
- libvdpau-dev
- libvo-amrwbenc-dev
- libvorbis-dev
- libvpx-dev
- libvulkan-dev
- libwavpack-dev
- libwebp-dev
- libx265-dev
- libxcb-shape0-dev
- libxcb-shm0-dev
- libxcb-xfixes0-dev
- libxml2-dev
- libxv-dev
- libxvidcore-dev
- libzmq3-dev
- libzvbi-dev
- ocl-icd-opencl-dev
- opencl-headers
- pkg-config
- yasm
#- on amd64:
#- libcrystalhd-dev
# TODO: re-enable `nvidia-cuda*` if we can determine that we can ship non-free
# - nvidia-cuda-dev
# - nvidia-cuda-toolkit
#- on i386:
#- libcrystalhd-dev
override-build: |
if [ "$CRAFT_TARGET_ARCH" = "amd64" ]; then
# TODO: re-enable `--enable-cuda-sdk --enable-cuda --enable-libnpp` if we can determine that we can ship non-free
EXTRA="--enable-vdpau --enable-nvenc --enable-cuvid"
elif [ "$CRAFT_TARGET_ARCH" = "i386" ]; then
EXTRA="--enable-vdpau --enable-nvenc"
elif [ "$CRAFT_TARGET_ARCH" = "armhf" ]; then
EXTRA="--disable-vdpau --enable-neon"
elif [ "$CRAFT_TARGET_ARCH" = "arm64" ]; then
EXTRA="--disable-vdpau"
else
EXTRA=""
fi
./configure \
--prefix=/usr \
--libdir=/usr/lib/${CRAFT_ARCH_TRIPLET} \
--disable-debug \
--disable-doc \
--disable-htmlpages \
--disable-manpages \
--disable-podpages \
--disable-txtpages \
--disable-static \
--enable-libaom \
--enable-avisynth \
--enable-libdav1d \
--enable-ffplay \
--enable-gnutls \
--enable-gpl \
--enable-libass \
--enable-libbluray \
--enable-libbs2b \
--enable-libcaca \
--enable-libcdio \
--enable-libcodec2 \
--enable-libdc1394 \
--enable-libdrm \
--enable-libflite \
--enable-libfontconfig \
--enable-libfribidi \
--enable-libfreetype \
--enable-libgme \
--enable-libgsm \
--enable-libmp3lame \
--enable-libopencore_amrnb \
--enable-libopencore_amrwb \
--enable-libopenjpeg \
--enable-libopenmpt \
--enable-libopus \
--enable-libpulse \
--enable-librsvg \
--enable-librubberband \
--enable-libshine \
--enable-libsnappy \
--enable-libsoxr \
--enable-libspeex \
--enable-libsrt \
--enable-libssh \
--enable-libtesseract \
--enable-libtheora \
--enable-libtwolame \
--enable-libv4l2 \
--enable-libvo_amrwbenc \
--enable-libvorbis \
--enable-libvpx \
--enable-libwebp \
--enable-libx264 \
--enable-libx265 \
--enable-libxcb \
--enable-libxml2 \
--enable-libxvid \
--enable-libzimg \
--enable-libzmq \
--enable-libzvbi \
--enable-omx \
--enable-openal \
--enable-opencl \
--enable-opengl \
--enable-runtime-cpudetect \
--enable-sdl2 \
--enable-shared \
--enable-vaapi \
--enable-version3 \
--enable-vulkan \
--enable-xlib ${EXTRA}
# TODO: re-enable `--enable-nonfree \` if we can determine the legality/licensing issues are ok.
make -j $(nproc)
make DESTDIR="$CRAFT_PART_INSTALL" install
prime:
- -usr/share
source-tag: release/6.1
prefix-fix:
after: [ffmpeg]
plugin: nil
build-packages:
- execstack
override-prime: |
set -eux
for PC in $(find . -path "*/pkgconfig/*.pc")
do
sed -i '1cprefix=/snap/ffmpeg-2204-sdk/current/usr' $PC
sed -i 's#libdir=/usr#libdir=${prefix}#' $PC
sed -i 's#exec_prefix=/usr#exec_prefix=${prefix}#' $PC
sed -i 's#includedir=/usr#includedir=${prefix}#' $PC
done
if [ "$CRAFT_ARCH_TRIPLET" == "arm-linux-gnueabihf" ]; then
execstack --clear-execstack usr/lib/arm-linux-gnueabihf/libx264.so.164
fi
deps:
after: [ffmpeg, prefix-fix]
plugin: nil
stage-packages:
- libaom3
- libass9
- libbluray2
- libbs2b0
- libcdio-paranoia2
- libcodec2-1.0
- libdc1394-25
- libflite1
- libgme0
- libgsm1
- libmp3lame0
- libopenal1
- libopencore-amrnb0
- libopencore-amrwb0
- libopenmpt0
- libopus0
- librubberband2
- libsdl2-2.0-0
- libshine3
- libsnappy1v5
- libsoxr0
- libssh-gcrypt-4
- libtesseract4
- libtwolame0
- libusb-1.0-0
- libv4l-0
- libv4l2rds0
- libvdpau-va-gl1
- libvo-amrwbenc0
- libvpx7
- libvulkan1
- libx265-199
- libxau6
- libxcb-shape0
- libxdmcp6
- libxv1
- libxvidcore4
- libxxhash0
- libzmq5
- libzvbi0
- mesa-vdpau-drivers
- ocl-icd-libopencl1
- on amd64:
- mesa-va-drivers
#- libcrystalhd3
# TODO: re-enable `libnpp*` if we can determine that we can ship non-free
# - libnppig10
# - libnppicc10
# - libnppidei10
- on i386:
- mesa-va-drivers
#- libcrystalhd3
prime:
- -usr/share
- -etc
- -var
- -usr/bin/fc*
- -usr/bin/X11
- -usr/include/X11
- -usr/lib/X11
- -usr/lib/*/caca
- -usr/lib/*/dri
- -usr/lib/*/gdk*
- -usr/lib/*/pulseaudio
- -usr/lib/*/libv4l
- -usr/lib/*/libv4lc*
- -usr/lib/*/libv4l1*
- -usr/lib/*/libv4l2.so*
- -usr/lib/*/libv4l-m*
- -usr/lib/*/libarchive*
- -usr/lib/*/libasound*
- -usr/lib/*/libasync*
- -usr/lib/*/libcairo*
- -usr/lib/*/libdatrie*
- -usr/lib/*/libdeflate*
- -usr/lib/*/libdrm*
- -usr/lib/*/libFLAC*
- -usr/lib/*/libfontconfig*
- -usr/lib/*/libgdk*
- -usr/lib/*/libGL*
- -usr/lib/*/libgomp*
- -usr/lib/*/libgraphite*
- -usr/lib/*/libharfbuzz*
- -usr/lib/*/libicu*
- -usr/lib/*/libjpeg*
- -usr/lib/*/libLLVM*
- -usr/lib/*/libmpg*
- -usr/lib/*/libogg*
- -usr/lib/*/libopenjp*
- -usr/lib/*/libopus*
- -usr/lib/*/libpango*
- -usr/lib/*/libpixman*
- -usr/lib/*/libpulse*
- -usr/lib/*/libraw*
- -usr/lib/*/librsvg*
- -usr/lib/*/libsample*
- -usr/lib/*/libsensor*
- -usr/lib/*/libsndfile*
- -usr/lib/*/libthai*
- -usr/lib/*/libtiff*
- -usr/lib/*/libtwolame*
- -usr/lib/*/libva*
- -usr/lib/*/libvpx*
- -usr/lib/*/libwayland*
- -usr/lib/*/libwebp*
- -usr/lib/*/libX11*
- -usr/lib/*/libXau*
- -usr/lib/*/libXc*
- -usr/lib/*/libXd*
- -usr/lib/*/libXe*
- -usr/lib/*/libXf*
- -usr/lib/*/libXi*
- -usr/lib/*/libXr*
- -usr/lib/*/libXx*
- -usr/lib/*/libxcb.so*
- -usr/lib/*/libxcb-shm.so*
- -usr/lib/*/libxcb-glx.so*
- -usr/lib/*/libxcb-dri*.so*
- -usr/lib/*/libxcb-r*.so*
- -usr/lib/*/libxcb-sync.so*
- -usr/lib/*/libxcb-x*.so*
- -usr/lib/*/libxcb-p*.so*
- -usr/lib/*/libxkb*
Ok, I fixed it and uploaded it here. If you download and install the last version, it should not fail.
But take into account that the bug trigger was that you haven't defined the right version format for FFmpeg, so it can't find the current version in the repo.