push sheeet
Some checks failed
Periodic Merges (6h) / master → staging-nixos (push) Failing after 12m50s
Periodic Merges (6h) / master → staging-next (push) Failing after 12m54s
Periodic Merges (24h) / merge-base(master,staging) → haskell-updates (push) Failing after 11m54s
Periodic Merges (6h) / staging-next → staging (push) Failing after 12m13s
Periodic Merges (24h) / staging-next-25.05 → staging-25.05 (push) Failing after 13m24s
Periodic Merges (24h) / release-25.05 → staging-next-25.05 (push) Failing after 14m28s

This commit is contained in:
Dark Steveneq
2025-10-09 14:15:47 +02:00
commit 646b892680
49168 changed files with 5897842 additions and 0 deletions

View File

@@ -0,0 +1,65 @@
{
lib,
stdenv,
fetchurl,
perl,
fetchpatch,
}:
stdenv.mkDerivation {
pname = "dvb-apps";
version = "1.1.1-unstable-2014-03-21";
src = fetchurl {
url = "https://www.linuxtv.org/hg/dvb-apps/archive/3d43b280298c.tar.bz2";
hash = "sha256-854vDr7X4yvOg1IgYq1NQU9n/M1d8bZHYYUkSX4V4Fc=";
};
patches = [
(fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-glibc-2.31.patch?id=ec6d38022bd905cb5460d4812e52434fd1f9663c";
hash = "sha256-zSbbKSJgW4L983DR0GVXtgAHK6ILOQC3Gz2iGnmWOp8=";
})
(fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-no-ca_set_pid.patch?id=ec6d38022bd905cb5460d4812e52434fd1f9663c";
hash = "sha256-GZunNYlhktalPOZ4ZST1MwooBvdDGA6ckscx/7mx8ok=";
})
(fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-1.1.1.20100223-alevt.patch?id=ec6d38022bd905cb5460d4812e52434fd1f9663c";
hash = "sha256-+j+tP8O3mho+gcsDPzQUJaE39ZAgimMAJoRP1J1HrBk=";
})
(fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-1.1.1.20100223-ldflags.patch?id=ec6d38022bd905cb5460d4812e52434fd1f9663c";
hash = "sha256-jrRE1yySLbQWbF+SaugFN8VuEIfveSvjR0nKpmKffpQ=";
})
(fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-1.1.1.20100223-perl526.patch?id=ec6d38022bd905cb5460d4812e52434fd1f9663c";
hash = "sha256-zIROx0HEvtZqvNBLlKp3aI3S2CihuS6l/OWf6WFFCrY=";
})
(fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-1.1.1.20140321-dvbdate.patch?id=ec6d38022bd905cb5460d4812e52434fd1f9663c";
hash = "sha256-dLPlscdDOd7Kq+2sEhgJ/PBY1zN/0/fh3TU6JOELaYw=";
})
(fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/media-tv/linuxtv-dvb-apps/files/linuxtv-dvb-apps-1.1.1.20140321-gcc10.patch?id=ec6d38022bd905cb5460d4812e52434fd1f9663c";
hash = "sha256-034TYxH1qHcdkwVxuAcNHORfBWhw/k8P+11QAc3jp74=";
})
(fetchpatch {
url = "https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=779520;filename=bug779520.patch;msg=17";
hash = "sha256-UL5lKDfloXvngsabnslpVXbe/dmt4dzVK5W8JkIieps=";
})
];
buildInputs = [ perl ];
installFlags = [ "prefix=$(out)" ];
dontConfigure = true; # skip configure
meta = {
description = "Linux DVB API applications and utilities";
homepage = "https://linuxtv.org/";
maintainers = with lib.maintainers; [ volfyd ];
platforms = lib.platforms.linux;
license = lib.licenses.gpl2Plus;
};
}

View File

@@ -0,0 +1,96 @@
{
stdenv,
lib,
fetchurl,
writeScript,
cdrtools,
dvdauthor,
ffmpeg,
imagemagick,
lame,
mjpegtools,
sox,
vorbis-tools,
runtimeShell,
}:
let
binPath = lib.makeBinPath [
cdrtools
dvdauthor
ffmpeg
imagemagick
lame
mjpegtools
sox
vorbis-tools
];
wrapper = writeScript "dvd-slideshow.sh" ''
#!${runtimeShell}
# wrapper script for dvd-slideshow programs
export PATH=${binPath}:$PATH
dir=`dirname "$0"`
exe=`basename "$0"`
case "$exe" in
dvd-slideshow)
# use mpeg2enc by default as ffmpeg is known to crash.
# run dvd-slideshow.ffmpeg to force ffmpeg.
"$dir/dvd-slideshow.real" -mpeg2enc $@
;;
dvd-slideshow.ffmpeg)
"$dir/dvd-slideshow.real" $@
;;
*)
"$dir/$exe.real" $@
;;
esac
'';
in
stdenv.mkDerivation rec {
pname = "dvd-slideshow";
version = "0.8.4-2";
src = fetchurl {
url = "mirror://sourceforge/dvd-slideshow/files/${pname}-${version}.tar.gz";
sha256 = "17c09aqvippiji2sd0pcxjg3nb1mnh9k5nia4gn5lhcvngjcp1q5";
};
patchPhase = ''
# fix upstream typos
substituteInPlace dvd-slideshow \
--replace "version='0.8.4-1'" "version='0.8.4-2'" \
--replace "mymyecho" "myecho"
'';
installPhase = ''
mkdir -p "$out/bin"
cp dvd-slideshow "$out/bin/dvd-slideshow.real"
cp dvd-menu "$out/bin/dvd-menu.real"
cp dir2slideshow "$out/bin/dir2slideshow.real"
cp gallery1-to-slideshow "$out/bin/gallery1-to-slideshow.real"
cp jigl2slideshow "$out/bin/jigl2slideshow.real"
cp ${wrapper} "$out/bin/dvd-slideshow.sh"
ln -s dvd-slideshow.sh "$out/bin/dvd-slideshow"
ln -s dvd-slideshow.sh "$out/bin/dvd-slideshow.ffmpeg"
ln -s dvd-slideshow.sh "$out/bin/dvd-menu"
ln -s dvd-slideshow.sh "$out/bin/dir2slideshow"
ln -s dvd-slideshow.sh "$out/bin/gallery1-to-slideshow"
ln -s dvd-slideshow.sh "$out/bin/jigl2slideshow"
cp -a man "$out/"
'';
meta = {
description = "Suite of command line programs that creates a slideshow-style video from groups of pictures";
homepage = "https://dvd-slideshow.sourceforge.net/wiki/Main_Page";
license = lib.licenses.gpl2;
platforms = lib.platforms.linux;
maintainers = [ lib.maintainers.robbinch ];
};
}

View File

@@ -0,0 +1,29 @@
{
lib,
stdenv,
fetchurl,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "dvd-vr";
version = "0.9.7";
src = fetchurl {
url = "https://www.pixelbeat.org/programs/dvd-vr/dvd-vr-${finalAttrs.version}.tar.gz";
sha256 = "13wkdia3c0ryda40b2nzpb9vddimasgc4w95hvl0k555k9k8bl0r";
};
makeFlags = [
"PREFIX=$(out)"
# Fix build with GCC 14
"CFLAGS=-Wno-error=incompatible-pointer-types"
];
meta = with lib; {
homepage = "https://www.pixelbeat.org/programs/dvd-vr/";
downloadPage = "https://www.pixelbeat.org/programs/dvd-vr/";
description = "Utility to identify and optionally copy recordings from a DVD-VR format disc";
license = licenses.gpl2Plus;
maintainers = with maintainers; [ fgaz ];
mainProgram = "dvd-vr";
};
})

View File

@@ -0,0 +1,14 @@
diff --git a/configure.ac b/configure.ac
index f4b270f..17e102f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,9 @@
AC_INIT(DVDAuthor,0.7.2,dvdauthor-users@lists.sourceforge.net)
+AC_CONFIG_MACRO_DIRS([m4])
+AM_GNU_GETTEXT_VERSION([0.25])
+AM_GNU_GETTEXT([external])
+
AC_CONFIG_HEADERS(src/config.h)
AC_CONFIG_AUX_DIR(autotools)

View File

@@ -0,0 +1,70 @@
{
lib,
stdenv,
fetchpatch2,
fetchurl,
autoreconfHook,
libdvdread,
libxml2,
freetype,
fribidi,
libpng,
zlib,
pkg-config,
flex,
bison,
}:
stdenv.mkDerivation rec {
pname = "dvdauthor";
version = "0.7.2";
src = fetchurl {
url = "mirror://sourceforge/dvdauthor/dvdauthor-${version}.tar.gz";
hash = "sha256-MCCpLen3jrNvSLbyLVoAHEcQeCZjSnhaYt/NCA9hLrc=";
};
patches = [
(fetchpatch2 {
# remove after next release: "Use pkg-config to find FreeType"
url = "https://github.com/ldo/dvdauthor/commit/d5bb0bdd542c33214855a7062fcc485f8977934e.patch?full_index=1";
hash = "sha256-cCj1Wkc6dZvUpjentpK68Q92tb7h+OXwrqdhJ2KYMvU=";
})
(fetchpatch2 {
# remove after next release: "fix to build with GraphicsMagick" (required for subsequent patches to apply)
url = "https://github.com/ldo/dvdauthor/commit/84d971def13b7e6317eae44369f49fd709b01030.patch?full_index=1";
hash = "sha256-SWgbaS4cdvrXJ4H5KDM0S46H57rji7CX4Fkfa/RSSPA=";
})
(fetchpatch2 {
# remove after next release: "Use PKG_CHECK_MODULES to detect the libxml2 library"
url = "https://github.com/ldo/dvdauthor/commit/45705ece5ec5d7d6b9ab3e7a68194796a398e855.patch?full_index=1";
hash = "sha256-tykCr2Axc1qhUvjlGyXQ6X+HwzuFTm5Va2gjGlOlSH0=";
})
./gettext-0.25.patch
];
buildInputs = [
libpng
freetype
libdvdread
libxml2
zlib
fribidi
flex
bison
];
nativeBuildInputs = [
pkg-config
autoreconfHook
];
strictDeps = true;
meta = with lib; {
description = "Tools for generating DVD files to be played on standalone DVD players";
homepage = "https://dvdauthor.sourceforge.net/"; # or https://github.com/ldo/dvdauthor
license = licenses.gpl2;
platforms = platforms.linux ++ platforms.darwin;
};
}

View File

@@ -0,0 +1,43 @@
{
lib,
stdenv,
fetchurl,
fetchpatch,
libdvdread,
libdvdcss,
dvdauthor,
}:
stdenv.mkDerivation rec {
version = "0.4.2";
pname = "dvdbackup";
src = fetchurl {
url = "mirror://sourceforge/dvdbackup/${pname}-${version}.tar.xz";
sha256 = "1rl3h7waqja8blmbpmwy01q9fgr5r0c32b8dy3pbf59bp3xmd37g";
};
buildInputs = [
libdvdread
libdvdcss
dvdauthor
];
# see https://bugs.launchpad.net/dvdbackup/+bug/1869226
patchFlags = [ "-p0" ];
patches = [
(fetchpatch {
url = "https://git.slackbuilds.org/slackbuilds/plain/multimedia/dvdbackup/patches/dvdbackup-dvdread-6.1.patch";
sha256 = "1v3xl01bwq1592i5x5dyh95r0mmm1zvvwf92fgjc0smr0k3davfz";
})
];
meta = {
description = "Tool to rip video DVDs from the command line";
homepage = "https://dvdbackup.sourceforge.net/";
license = lib.licenses.gpl3Plus;
maintainers = [ lib.maintainers.bradediger ];
platforms = lib.platforms.linux;
mainProgram = "dvdbackup";
};
}

View File

@@ -0,0 +1,22 @@
Just use md5sum
diff --git a/regtest/common.bash b/regtest/common.bash
index ce629ff..75abe54 100644
--- a/regtest/common.bash
+++ b/regtest/common.bash
@@ -33,15 +33,7 @@ TMPLOG="$LOGDIR/tmplog.txt"
UNAME="$(uname -s)"
-if [ "$UNAME" = Darwin ]; then
- MD5SUM="md5 -r"
-else
- MD5SUM=md5sum
-fi
-
-if ! $MD5SUM $RNDSEQ >/dev/null 2>&1; then
- MD5SUM=../simple-md5sum
-fi
+MD5SUM=md5sum
nbfailed=0

View File

@@ -0,0 +1,115 @@
{
lib,
stdenv,
fetchFromGitHub,
gettext,
pkg-config,
which,
glib,
gtk3,
wrapGAppsHook3,
withGui ? true,
}:
stdenv.mkDerivation (finalAttrs: {
pname = "dvdisaster";
version = "0.79.10-pl5";
src = fetchFromGitHub {
owner = "speed47";
repo = "dvdisaster";
tag = "v${finalAttrs.version}";
hash = "sha256-lWvZDB08lZb87l4oEbrdtc6Me4mWHiW3DFNXYoYR3a0=";
};
nativeBuildInputs = [
gettext
pkg-config
which
wrapGAppsHook3
];
buildInputs = [
glib
]
++ lib.optionals withGui [
gtk3
];
patches = [
./md5sum.patch
];
postPatch = ''
patchShebangs ./
sed -i 's/dvdisaster48.png/dvdisaster/' contrib/dvdisaster.desktop
'';
configureFlags = [
# Explicit --docdir= is required for on-line help to work:
"--docdir=share/doc"
"--with-nls=yes"
"--with-embedded-src-path=no"
]
++ lib.optionals (!withGui) [
"--with-gui=no"
]
++ lib.optional (stdenv.hostPlatform.isx86_64) "--with-sse2=yes";
enableParallelBuilding = true;
doCheck = true;
checkPhase = ''
runHook preCheck
pushd regtest
mkdir -p "$TMP"/{log,regtest}
substituteInPlace common.bash \
--replace-fail /dev/shm "$TMP/log" \
--replace-fail /var/tmp "$TMP"
./runtests.sh
popd
runHook postCheck
'';
postInstall = lib.optionalString stdenv.hostPlatform.isLinux ''
rm -f $out/bin/dvdisaster-uninstall.sh
mkdir -pv $out/share/applications
cp contrib/dvdisaster.desktop $out/share/applications/
for size in 16 24 32 48 64; do
mkdir -pv $out/share/icons/hicolor/"$size"x"$size"/apps/
cp contrib/dvdisaster"$size".png \
$out/share/icons/hicolor/"$size"x"$size"/apps/dvdisaster.png
done
'';
# Tests are heavily CPU-bound
requiredSystemFeatures = [ "big-parallel" ];
meta = {
homepage = "https://github.com/speed47/dvdisaster";
changelog = "https://github.com/speed47/dvdisaster/blob/v${finalAttrs.version}/CHANGELOG";
description = "Data loss/scratch/aging protection for CD/DVD media (unofficial version)";
longDescription = ''
Dvdisaster provides a margin of safety against data loss on CD and
DVD media caused by scratches or aging media. It creates error correction
data which is used to recover unreadable sectors if the disc becomes
damaged at a later time.
This version is built on top of the latest upstream version (2021),
it is backwards compatible with it, and adds a list of improvements,
such as BD-R support, CLI-only mode, and more.
'';
license = lib.licenses.gpl3Plus;
platforms = lib.platforms.linux;
maintainers = [ lib.maintainers.matteopacini ];
mainProgram = "dvdisaster";
# Tests are not parallelized, and take a long time to run (1-3 hours, depending on CPU)
# Max observed time: ~4 hours on a "big-parallel" builder
timeout = 4 * 60 * 60;
};
})

View File

@@ -0,0 +1,17 @@
diff --git a/Makefile.m4 b/Makefile.m4
index a6a100b..bf7c041 100644
--- a/Makefile.m4
+++ b/Makefile.m4
@@ -30,8 +32,10 @@ LINK.o =$(LINK.cc)
# to install set-root-uid, `make BIN_MODE=04755 install'...
BIN_MODE?=0755
install: dvd+rw-tools
- install -o root -m $(BIN_MODE) $(CHAIN) /usr/bin
- install -o root -m 0644 growisofs.1 /usr/share/man/man1
+ install -d $(prefix)/bin
+ install -d $(prefix)/share/man/man1
+ install -m $(BIN_MODE) $(CHAIN) $(prefix)/bin
+ install -m 0644 growisofs.1 $(prefix)/share/man/man1
])
ifelse(OS,MINGW32,[

View File

@@ -0,0 +1,102 @@
{
lib,
stdenv,
fetchurl,
fetchpatch,
cdrtools,
m4,
}:
stdenv.mkDerivation rec {
pname = "dvd+rw-tools";
version = "7.1";
src = fetchurl {
url = "http://fy.chalmers.se/~appro/linux/DVD+RW/tools/${pname}-${version}.tar.gz";
sha256 = "1jkjvvnjcyxpql97xjjx0kwvy70kxpiznr2zpjy2hhci5s10zmpq";
};
patches = [
./darwin.patch
]
# Patches from Gentoo
++
map
(
{ pfile, sha256 }:
fetchpatch {
url = "https://gitweb.gentoo.org/repo/gentoo.git/plain/app-cdr/dvd+rw-tools/files/${pfile}?id=b510df361241e8f16314b1f14642305f0111dac6";
inherit sha256;
}
)
[
{
pfile = "dvd+rw-tools-7.0-dvddl-r1.patch";
sha256 = "12l33jq6405shfwdycrj52qmd07h5bsp1vjaddknfri456azjny5";
}
{
pfile = "dvd+rw-tools-7.0-glibc2.6.90.patch";
sha256 = "1fb3gap2in782pa4164h1w0ha8ggsq3inissa1k0zn2p2r3rb5ln";
}
{
pfile = "dvd+rw-tools-7.0-reload.patch";
sha256 = "12v2y2y6ci5hh6lbmsk97dzgznrm4bxwhc81mq684ix0qspb9mq4";
}
{
pfile = "dvd+rw-tools-7.0-sysmacros.patch";
sha256 = "1rkb26cyhfxklkmna3l9b4797f6gzlxyqqin44jwnq3jmwfrs6v0";
}
{
pfile = "dvd+rw-tools-7.0-wctomb-r1.patch";
sha256 = "1xg770l0b4bjn30y7nqg619v4m5ickcn2n8hv9k2an6r191daq58";
}
{
pfile = "dvd+rw-tools-7.0-wexit.patch";
sha256 = "0sqzlkm19fmjx4lzxkxwn2ymrj9fq0zk0jkys3xm6xvd2ibb6kxl";
}
{
pfile = "dvd+rw-tools-7.1-bluray_pow_freespace.patch";
sha256 = "0iscz8fs5002ymk6wl2fz4x06b7bdnc57rfz8kbv3216acqi5rv3";
}
{
pfile = "dvd+rw-tools-7.1-bluray_srm+pow.patch";
sha256 = "0sy40m12w987i6g0cyxv8cfmab4vp7cd222lv05apknfi2y7smmw";
}
{
pfile = "dvd+rw-tools-7.1-lastshort.patch";
sha256 = "01wspv70sil20khkg5kj086b1x8rrig4yhcq9s88bdjd42nv0vpx";
}
{
pfile = "dvd+rw-tools-7.1-noevent.patch";
sha256 = "1kbmxpg15wci33f2h6pxxvf3qm0kpyzx9wj5a3l67sk34hvza3z6";
}
];
nativeBuildInputs = [ m4 ];
buildInputs = [ cdrtools ];
makeFlags = [
"prefix=${placeholder "out"}"
"CC=${stdenv.cc.targetPrefix}cc"
"CXX=${stdenv.cc.targetPrefix}c++"
];
env.NIX_CFLAGS_COMPILE = toString (
lib.optionals stdenv.hostPlatform.isDarwin [
# error: invalid suffix on literal; C++11 requires a space between literal and identifier
"-Wno-reserved-user-defined-literal"
# error: non-constant-expression cannot be narrowed from type 'size_t' (aka 'unsigned long') to 'IOByteCount' (aka 'unsigned int') in initializer list
"-Wno-c++11-narrowing"
]
);
meta = with lib; {
homepage = "http://fy.chalmers.se/~appro/linux/DVD+RW/tools";
description = "Tools for mastering Blu-ray and DVD+-RW/+-R media";
platforms = platforms.unix;
license = with licenses; [
gpl2Only
publicDomain
];
};
}

View File

@@ -0,0 +1,134 @@
{
lib,
stdenv,
fetchurl,
bison,
cdrtools,
docbook_xml_dtd_412,
docbook-xsl-nons,
dvdauthor,
dvdplusrwtools,
ffmpeg,
flex,
fontconfig,
gettext,
glib,
gobject-introspection,
libexif,
libjpeg,
pkg-config,
wrapGAppsHook3,
wxGTK32,
wxSVG,
xine-ui,
xmlto,
zip,
dvdisasterSupport ? true,
dvdisaster ? null,
udevSupport ? true,
udev ? null,
dbusSupport ? true,
dbus ? null,
}:
let
inherit (lib) optionals makeBinPath;
in
stdenv.mkDerivation rec {
pname = "dvdstyler";
version = "3.3b4";
src = fetchurl {
url = "mirror://sourceforge/project/dvdstyler/dvdstyler-devel/${version}/DVDStyler-${version}.tar.bz2";
hash = "sha256-JCaKcE7jkTxT57KKePs8gmgQedoOcP5NEQ2FwIDS2Ho=";
};
nativeBuildInputs = [
bison
docbook_xml_dtd_412
docbook-xsl-nons
flex
gettext
gobject-introspection
pkg-config
wrapGAppsHook3
xmlto
zip
];
buildInputs = [
cdrtools
dvdauthor
dvdplusrwtools
ffmpeg
fontconfig
glib
libexif
libjpeg
wxSVG
wxGTK32
xine-ui
]
++ optionals dvdisasterSupport [ dvdisaster ]
++ optionals udevSupport [ udev ]
++ optionals dbusSupport [ dbus ];
enableParallelBuilding = true;
preFixup =
let
binPath = makeBinPath (
[
cdrtools
dvdauthor
dvdplusrwtools
]
++ optionals dvdisasterSupport [ dvdisaster ]
);
in
''
gappsWrapperArgs+=(
--prefix PATH : "${binPath}"
)
'';
meta = with lib; {
homepage = "https://www.dvdstyler.org/";
description = "DVD authoring software";
longDescription = ''
DVDStyler is a cross-platform free DVD authoring application for the
creation of professional-looking DVDs. It allows not only burning of video
files on DVD that can be played practically on any standalone DVD player,
but also creation of individually designed DVD menus. It is Open Source
Software and is completely free.
Some of its features include:
- create and burn DVD video with interactive menus
- design your own DVD menu or select one from the list of ready to use menu
templates
- create photo slideshow
- add multiple subtitle and audio tracks
- support of AVI, MOV, MP4, MPEG, OGG, WMV and other file formats
- support of MPEG-2, MPEG-4, DivX, Xvid, MP2, MP3, AC-3 and other audio and
video formats
- support of multi-core processor
- use MPEG and VOB files without reencoding
- put files with different audio/video format on one DVD (support of
titleset)
- user-friendly interface with support of drag & drop
- flexible menu creation on the basis of scalable vector graphic
- import of image file for background
- place buttons, text, images and other graphic objects anywhere on the menu
screen
- change the font/color and other parameters of buttons and graphic objects
- scale any button or graphic object
- copy any menu object or whole menu
- customize navigation using DVD scripting
'';
license = licenses.gpl2Plus;
maintainers = [ ];
platforms = with platforms; linux;
mainProgram = "dvdstyler";
};
}

View File

@@ -0,0 +1,58 @@
{
fetchFromGitHub,
lib,
stdenv,
libunwind,
libraw1394,
libjpeg,
libiec61883,
libdv,
libavc1394,
pkg-config,
autoreconfHook,
}:
stdenv.mkDerivation {
pname = "dvgrab";
version = "2016-05-16";
src = fetchFromGitHub {
# mirror of original project with some build fixes
owner = "ddennedy";
repo = "dvgrab";
rev = "e46042e0c7b3523b6854ee547b0534e8310b7460";
sha256 = "17qy76fjpzrbxm4pj0ljx5lbimxryv24fvr13jwkh24j85dxailn";
};
buildInputs = [
libunwind
libraw1394
libjpeg
libiec61883
libdv
libavc1394
];
nativeBuildInputs = [
autoreconfHook
pkg-config
];
meta = with lib; {
description = "Receive and store audio & video over IEEE1394";
longDescription = ''
dvgrab receives audio and video data from a digital camcorder via an
IEEE1394 (widely known as FireWire) or USB link and stores them into
one of several file formats. It features autosplit of long video
sequences, and supports saving the data as raw frames, AVI type 1,
AVI type 2, Quicktime DV, a series of JPEG stills or MPEG2-TS.
'';
homepage = "https://github.com/ddennedy/dvgrab"; # Formerly http://www.kinodv.org/
license = licenses.gpl2Plus;
platforms = platforms.gnu ++ platforms.linux;
mainProgram = "dvgrab";
};
}