Merge pull request #120582 from dotlambda/ffmpeg_2-drop

ffmpeg_2: mark as insecure

Changed files
+17 -288
pkgs
-95
pkgs/applications/video/kino/default.nix
···
-
# is this configure option of interest?
-
#--enable-udev-rules-dir=PATH
-
# Where to install udev rules (/etc/udev/rules.d)
-
-
#TODO shared version?
-
-
-
# This is my config output.. Much TODO ?
-
#source path /tmp/nix-31998-1/kino-1.2.0/ffmpeg
-
#C compiler gcc
-
#make make
-
#.align is power-of-two no
-
#ARCH x86_64 (generic)
-
#build suffix -kino
-
#big-endian no
-
#MMX enabled yes
-
#CMOV enabled no
-
#CMOV is fast no
-
#gprof enabled no
-
#debug symbols yes
-
#strip symbols yes
-
#optimize yes
-
#static yes
-
#shared no
-
#postprocessing support no
-
#software scaler enabled yes
-
#video hooking no
-
#network support no
-
#threading support no
-
#SDL support no
-
#Sun medialib support no
-
#AVISynth enabled no
-
#liba52 support no
-
#liba52 dlopened no
-
#libdts support no
-
#libfaac enabled no
-
#libfaad enabled no
-
#faadbin enabled no
-
#libgsm enabled no
-
#libmp3lame enabled no
-
#libnut enabled no
-
#libogg enabled no
-
#libtheora enabled no
-
#libvorbis enabled no
-
#x264 enabled no
-
#XviD enabled no
-
#zlib enabled no
-
#AMR-NB float support no
-
#AMR-NB fixed support no
-
#AMR-WB float support no
-
#AMR-WB IF2 support no
-
-
{ lib, stdenv, fetchurl, gtk2, libglade, libxml2, libraw1394, libsamplerate, libdv
-
, pkg-config, perlPackages, libavc1394, libiec61883, libXv, gettext
-
, libX11, glib, cairo, intltool, ffmpeg, libv4l
-
}:
-
-
stdenv.mkDerivation {
-
name = "kino-1.3.4";
-
-
src = fetchurl {
-
url = "mirror://sourceforge/kino/kino-1.3.4.tar.gz";
-
sha256 = "020s05k0ma83rq2kfs8x474pqicaqp9spar81qc816ddfrnh8k8i";
-
};
-
-
buildInputs = [ gtk2 libglade libxml2 libraw1394 libsamplerate libdv
-
pkg-config libavc1394 libiec61883 intltool libXv gettext libX11 glib cairo ffmpeg libv4l ] # TODOoptional packages
-
++ (with perlPackages; [ perl XMLParser ]);
-
-
configureFlags = [ "--enable-local-ffmpeg=no" ];
-
-
hardeningDisable = [ "format" ];
-
-
NIX_LDFLAGS = "-lavcodec -lavutil";
-
-
patches = [ ./kino-1.3.4-v4l1.patch ./kino-1.3.4-libav-0.7.patch ./kino-1.3.4-libav-0.8.patch ]; #./kino-1.3.4-libavcodec-pkg-config.patch ];
-
-
postInstall = "
-
rpath=`patchelf --print-rpath \$out/bin/kino`;
-
for i in $buildInputs; do
-
echo adding \$i/lib
-
rpath=\$rpath\${rpath:+:}\$i/lib
-
done
-
for i in \$out/bin/*; do
-
patchelf --set-rpath \"\$rpath\" \"\$i\"
-
done
-
";
-
-
meta = {
-
description = "Non-linear DV editor for GNU/Linux";
-
homepage = "http://www.kinodv.org/";
-
license = lib.licenses.gpl2;
-
platforms = lib.platforms.linux;
-
};
-
}
-60
pkgs/applications/video/kino/kino-1.3.4-libav-0.7.patch
···
-
--- kino-1.3.4.orig/src/frame.cc 2011-07-17 14:54:59.089481638 +0200
-
+++ kino-1.3.4/src/frame.cc 2011-07-17 15:09:23.199481714 +0200
-
@@ -1063,7 +1063,12 @@
-
AVPicture dest;
-
int got_picture;
-
-
- avcodec_decode_video( libavcodec, frame, &got_picture, data, GetFrameSize() );
-
+ AVPacket pkt;
-
+ av_init_packet(&pkt);
-
+ pkt.data = data;
-
+ pkt.size = GetFrameSize();
-
+
-
+ avcodec_decode_video2( libavcodec, frame, &got_picture, &pkt );
-
if ( got_picture )
-
{
-
avpicture_fill( &dest, static_cast<uint8_t*>( rgb ), PIX_FMT_RGB24, GetWidth(), GetHeight() );
-
@@ -1123,7 +1128,12 @@
-
AVPicture output;
-
int got_picture;
-
-
- avcodec_decode_video( libavcodec, frame, &got_picture, data, GetFrameSize() );
-
+ AVPacket pkt;
-
+ av_init_packet(&pkt);
-
+ pkt.data = data;
-
+ pkt.size = GetFrameSize();
-
+
-
+ avcodec_decode_video2( libavcodec, frame, &got_picture, &pkt );
-
if ( got_picture )
-
{
-
avpicture_fill( &output, static_cast<uint8_t*>( yuv ), PIX_FMT_YUV422, GetWidth(), GetHeight() );
-
@@ -1156,7 +1166,12 @@
-
AVFrame *frame = avcodec_alloc_frame();
-
int got_picture;
-
-
- avcodec_decode_video( libavcodec, frame, &got_picture, data, GetFrameSize() );
-
+ AVPacket pkt;
-
+ av_init_packet(&pkt);
-
+ pkt.data = data;
-
+ pkt.size = GetFrameSize();
-
+
-
+ avcodec_decode_video2( libavcodec, frame, &got_picture, &pkt );
-
-
int width = GetWidth(), height = GetHeight();
-
-
@@ -1319,12 +1334,12 @@
-
#if defined(HAVE_LIBAVCODEC)
-
if ( avformatEncoder == NULL )
-
{
-
- avformatEncoder = av_alloc_format_context();
-
+ avformatEncoder = avformat_alloc_context();
-
if ( avformatEncoder )
-
{
-
- avformatEncoder->oformat = guess_format( "dv", NULL, NULL );
-
+ avformatEncoder->oformat = av_guess_format( "dv", NULL, NULL );
-
AVStream* vst = av_new_stream( avformatEncoder, 0 );
-
- vst->codec->codec_type = CODEC_TYPE_VIDEO;
-
+ vst->codec->codec_type = AVMEDIA_TYPE_VIDEO;
-
vst->codec->codec_id = CODEC_ID_DVVIDEO;
-
vst->codec->bit_rate = 25000000;
-
vst->start_time = 0;
-57
pkgs/applications/video/kino/kino-1.3.4-libav-0.8.patch
···
-
--- kino-1.3.4.orig/src/frame.cc 2012-05-14 19:55:42.153772418 -0700
-
+++ kino-1.3.4/src/frame.cc 2012-05-14 20:28:34.448838653 -0700
-
@@ -101,8 +101,9 @@
-
#if defined(HAVE_LIBAVCODEC)
-
pthread_mutex_lock( &avcodec_mutex );
-
av_register_all();
-
- libavcodec = avcodec_alloc_context();
-
- avcodec_open( libavcodec, avcodec_find_decoder( CODEC_ID_DVVIDEO ) );
-
+ libavcodec = avcodec_alloc_context3(NULL);
-
+ avcodec_open2( libavcodec,
-
+ avcodec_find_decoder( CODEC_ID_DVVIDEO ), NULL );
-
pthread_mutex_unlock( &avcodec_mutex );
-
data = ( unsigned char* ) av_mallocz( 144000 );
-
#if defined(HAVE_SWSCALE)
-
@@ -1338,7 +1339,7 @@
-
if ( avformatEncoder )
-
{
-
avformatEncoder->oformat = av_guess_format( "dv", NULL, NULL );
-
- AVStream* vst = av_new_stream( avformatEncoder, 0 );
-
+ AVStream* vst = avformat_new_stream( avformatEncoder, NULL );
-
vst->codec->codec_type = AVMEDIA_TYPE_VIDEO;
-
vst->codec->codec_id = CODEC_ID_DVVIDEO;
-
vst->codec->bit_rate = 25000000;
-
@@ -1364,12 +1365,10 @@
-
vst->sample_aspect_ratio = avcodecEncoder->sample_aspect_ratio;
-
#endif
-
avcodecEncoder->thread_count = 2;
-
- avcodec_thread_init( avcodecEncoder, avcodecEncoder->thread_count );
-
avcodecEncoder->time_base= isPAL ? ( AVRational ){ 1, 25 } : ( AVRational ){ 1001, 30000 };
-
avcodecEncoder->pix_fmt = isPAL ? PIX_FMT_YUV420P : PIX_FMT_YUV411P;
-
avcodecEncoder->flags |= CODEC_FLAG_INTERLACED_DCT;
-
- av_set_parameters( avformatEncoder, NULL );
-
- avcodec_open( avcodecEncoder, avcodec_find_encoder( CODEC_ID_DVVIDEO ) );
-
+ avcodec_open2( avcodecEncoder, avcodec_find_encoder( CODEC_ID_DVVIDEO ), NULL );
-
av_new_packet( &avpacketEncoder, 144000 );
-
tempImage = ( uint8_t* ) av_malloc(
-
avpicture_get_size( avcodecEncoder->pix_fmt, avcodecEncoder->width, avcodecEncoder->height ) );
-
@@ -1475,16 +1474,16 @@
-
-
// Encode
-
bytesInFrame = avcodec_encode_video( avcodecEncoder, avpacketEncoder.data, size, output );
-
- url_open_buf( &avformatEncoder->pb, data, bytesInFrame, URL_WRONLY );
-
+ avformatEncoder->pb = avio_alloc_context(data, bytesInFrame, 0, NULL, NULL, NULL, NULL);
-
avpacketEncoder.size = bytesInFrame;
-
if ( !isEncoderHeaderWritten )
-
{
-
- av_write_header( avformatEncoder );
-
+ avformat_write_header( avformatEncoder, NULL );
-
isEncoderHeaderWritten = true;
-
}
-
av_write_frame( avformatEncoder, &avpacketEncoder );
-
#if LIBAVFORMAT_VERSION_INT >= ((52<<16)+(0<<8)+0)
-
- url_close_buf( avformatEncoder->pb );
-
+ avio_close( avformatEncoder->pb );
-
#else
-
url_close_buf( &avformatEncoder->pb );
-
#endif
-11
pkgs/applications/video/kino/kino-1.3.4-libavcodec-pkg-config.patch
···
-
--- a/kino-1.3.4/configure.in 2009-09-08 02:35:23.000000000 -0400
-
+++ b/kino-1.3.4/configure.in 2014-01-27 14:53:01.366063037 -0500
-
@@ -221,7 +221,7 @@
-
if (test "x$avcodec_include" != x) || (test "x$avcodec_lib" != x) ; then
-
local_legacy_ffmpeg_test
-
else
-
- PKG_CHECK_MODULES(AVCODEC, libavformat,
-
+ PKG_CHECK_MODULES(AVCODEC, [libavcodec libavformat libavutil],
-
[
-
AC_DEFINE(HAVE_LIBAVCODEC, 1, [Enable FFMPEG libavcodec])
-
AC_SUBST(AVCODEC_LIBS)
-21
pkgs/applications/video/kino/kino-1.3.4-v4l1.patch
···
-
no-1.3.3.orig/ffmpeg/libavdevice/v4l.c 2011-05-17 02:20:37.161004916 +0400
-
+++ kino-1.3.3.orig/ffmpeg/libavdevice/v4l.c 2011-05-17 02:21:57.302377529 +0400
-
@@ -26,7 +26,7 @@
-
#include <sys/mman.h>
-
#include <sys/time.h>
-
#define _LINUX_TIME_H 1
-
-#include <linux/videodev.h>
-
+#include <libv4l1-videodev.h>
-
#include <time.h>
-
-
typedef struct {
-
--- kino-1.3.3.orig/src/v4l.h 2011-05-17 02:20:38.896969666 +0400
-
+++ kino-1.3.3.orig/src/v4l.h 2011-05-17 02:21:39.922730395 +0400
-
@@ -40,7 +40,7 @@
-
-
#define _DEVICE_H_
-
#define _LINUX_TIME_H
-
-#include <linux/videodev.h>
-
+#include <libv4l1-videodev.h>
-
-
#include "displayer.h"
+3
pkgs/development/libraries/ffmpeg/2.8.nix
···
version = "${branch}.17";
branch = "2.8";
sha256 = "05bnhvs2f82aq95z1wd3wr42sljdfq4kiyzqwhpji983mndx14vl";
+
knownVulnerabilities = [
+
"CVE-2021-30123"
+
];
} // args)
+2 -2
pkgs/development/libraries/ffmpeg/generic.nix
···
# Darwin frameworks
, Cocoa, darwinFrameworks ? [ Cocoa ]
# Inherit generics
-
, branch, sha256, version, patches ? [], ...
+
, branch, sha256, version, patches ? [], knownVulnerabilities ? [], ...
}:
/* Maintainer notes:
···
license = licenses.gpl3;
platforms = platforms.all;
maintainers = with maintainers; [ codyopel ];
-
inherit branch;
+
inherit branch knownVulnerabilities;
};
}
+2 -2
pkgs/games/ultrastardx/default.nix
···
, SDL2_gfx
, SDL2_mixer
, SDL2_net, SDL2_ttf
-
, ffmpeg
+
, ffmpeg_3
, sqlite
, zlib
, libX11
···
sharedLibs = [
pcre portaudio freetype
SDL2 SDL2_image SDL2_gfx SDL2_mixer SDL2_net SDL2_ttf
-
sqlite lua zlib libX11 libGLU libGL ffmpeg
+
sqlite lua zlib libX11 libGLU libGL ffmpeg_3
];
in stdenv.mkDerivation rec {
+6 -1
pkgs/tools/audio/acoustid-fingerprinter/default.nix
···
patches = [
(fetchpatch {
+
name = "fix-build-with-libav-10.patch";
+
url = "https://bitbucket.org/acoustid/acoustid-fingerprinter/commits/2c778334a9fc2f0ccf9b1d7635c116bce6509748/raw";
+
sha256 = "1smyp3x5n6jwxpgw60xsijq2fn6g1gl759h1lm5agaxhcyyqn0i0";
+
})
+
(fetchpatch {
+
name = "fix-build-failure-on-gcc-6.patch";
url = "https://bitbucket.org/acoustid/acoustid-fingerprinter/commits/632e87969c3a5562a5d4842b03613267ba6236b2/raw";
sha256 = "15hm9knrpqn3yqrwyjz4zh2aypwbcycd0c5svrsy1fb2h2rh05jk";
})
-
./ffmpeg.patch
];
meta = with lib; {
-26
pkgs/tools/audio/acoustid-fingerprinter/ffmpeg.patch
···
-
diff --git a/decoder.h b/decoder.h
-
index 028f58f..4428ac1 100644
-
--- a/decoder.h
-
+++ b/decoder.h
-
@@ -39,6 +39,8 @@ extern "C" {
-
#define AV_SAMPLE_FMT_S16 SAMPLE_FMT_S16
-
#endif
-
-
+#define AVCODEC_MAX_AUDIO_FRAME_SIZE 192000
-
+
-
class Decoder
-
{
-
public:
-
diff --git a/ffmpeg/audioconvert.h b/ffmpeg/audioconvert.h
-
index 2b28e2e..a699986 100644
-
--- a/ffmpeg/audioconvert.h
-
+++ b/ffmpeg/audioconvert.h
-
@@ -79,7 +79,7 @@ int avcodec_channel_layout_num_channels(int64_t channel_layout);
-
* @param fmt_name Format name, or NULL if unknown
-
* @return Channel layout mask
-
*/
-
-uint64_t avcodec_guess_channel_layout(int nb_channels, enum CodecID codec_id, const char *fmt_name);
-
+uint64_t avcodec_guess_channel_layout(int nb_channels, enum AVCodecID codec_id, const char *fmt_name);
-
-
struct AVAudioConvert;
-
typedef struct AVAudioConvert AVAudioConvert;
+1
pkgs/top-level/aliases.nix
···
kinetic-cpp-client = throw "kinetic-cpp-client has been removed from nixpkgs, as it's abandoned."; # 2020-04-28
kicad-with-packages3d = kicad; # added 2019-11-25
kindlegen = throw "kindlegen has been removed from nixpkgs, as it's abandoned and no longer available for download."; # 2021-03-09
+
kino = throw "kino has been removed because it was broken and abandoned"; # added 2021-04-25
krename-qt5 = krename; # added 2017-02-18
kerberos = libkrb5; # moved from top-level 2021-03-14
keymon = throw "keymon has been removed from nixpkgs, as it's abandoned and archived."; # 2019-12-10
+3 -13
pkgs/top-level/all-packages.nix
···
acousticbrainz-client = callPackage ../tools/audio/acousticbrainz-client { };
-
acoustidFingerprinter = callPackage ../tools/audio/acoustid-fingerprinter {
-
ffmpeg = ffmpeg_2;
-
};
+
acoustidFingerprinter = callPackage ../tools/audio/acoustid-fingerprinter { };
alsaequal = callPackage ../tools/audio/alsaequal { };
···
cmus = callPackage ../applications/audio/cmus {
inherit (darwin.apple_sdk.frameworks) AudioUnit CoreAudio;
libjack = libjack2;
-
ffmpeg = ffmpeg_2;
cmusfm = callPackage ../applications/audio/cmusfm { };
···
kid3 = libsForQt5.callPackage ../applications/audio/kid3 { };
kile = libsForQt5.callPackage ../applications/editors/kile { };
-
-
kino = callPackage ../applications/video/kino {
-
inherit (gnome2) libglade;
-
ffmpeg = ffmpeg_2;
-
};
kitsas = libsForQt5.callPackage ../applications/office/kitsas { };
···
airstrike = callPackage ../games/airstrike { };
-
alephone = callPackage ../games/alephone { ffmpeg = ffmpeg_2; };
+
alephone = callPackage ../games/alephone { };
alephone-durandal = callPackage ../games/alephone/durandal { };
alephone-eternal = callPackage ../games/alephone/eternal { };
alephone-evil = callPackage ../games/alephone/evil { };
···
ultrastar-manager = libsForQt5.callPackage ../tools/misc/ultrastar-manager { };
-
ultrastardx = callPackage ../games/ultrastardx {
-
ffmpeg = ffmpeg_2;
-
};
+
ultrastardx = callPackage ../games/ultrastardx { };
unciv = callPackage ../games/unciv { };