k3b: move cdrtools dependency to a wrapper

This commit is contained in:
Nikolay Amiantov 2016-04-23 04:14:10 +03:00
parent 2a51c3c12a
commit e690c3a8dd
3 changed files with 30 additions and 6 deletions

View file

@ -1,7 +1,7 @@
{ stdenv, lib, fetchurl, makeWrapper, automoc4, cmake, perl, pkgconfig
, shared_mime_info, libvorbis, taglib, flac, libsamplerate
, libdvdread, lame, libsndfile, libmad, gettext , transcode, cdrdao
, cdrtools, dvdplusrwtools, vcdimager, cdparanoia, kdelibs, libdvdcss, ffmpeg
, dvdplusrwtools, vcdimager, cdparanoia, kdelibs, libdvdcss, ffmpeg
, kdemultimedia, phonon, libkcddb ? null
}:
@ -9,10 +9,11 @@ let
# at runtime, k3b needs the executables cdrdao, cdrecord, dvd+rw-format,
# eMovix, growisofs, mkisofs, normalize, readcd, transcode, vcdxbuild,
# vcdxminfo, and vcdxrip
binPath = lib.makeBinPath [ cdrdao dvdplusrwtools transcode vcdimager cdrtools ];
binPath = lib.makeBinPath [ cdrdao dvdplusrwtools transcode vcdimager ];
in stdenv.mkDerivation rec {
name = "k3b-2.0.3a";
name = "k3b-${version}";
version = "2.0.3a";
src = fetchurl {
url = "http://download.kde.org/stable/k3b/${name}.tar.xz";

View file

@ -0,0 +1,23 @@
{ lib, buildEnv, k3b-original, cdrtools, makeWrapper }:
let
binPath = lib.makeBinPath [ cdrtools ];
in buildEnv {
name = "k3b-${k3b-original.version}";
paths = [ k3b-original ];
buildInputs = [ makeWrapper ];
postBuild = ''
# TODO: This could be avoided if buildEnv could be forced to create all directories
if [ -L $out/bin ]; then
rm $out/bin
mkdir $out/bin
for i in ${k3b-original}/bin/*; do
ln -s $i $out/bin
done
fi
wrapProgram $out/bin/k3b \
--prefix PATH ':' ${binPath}
'';
}

View file

@ -15292,9 +15292,9 @@ in
eventlist = callPackage ../applications/office/eventlist {};
k3b = callPackage ../applications/misc/k3b {
cdrtools = cdrkit;
};
k3b-original = lowPrio (callPackage ../applications/misc/k3b { });
k3b = callPackage ../applications/misc/k3b/wrapper.nix { };
kadu = callPackage ../applications/networking/instant-messengers/kadu { };