2016-12-30 04:40:28 +00:00
|
|
|
{ stdenv, fetchurl, wxGTK30, pkgconfig, file, gettext, gtk2, glib, zlib, perl, intltool,
|
2016-11-01 01:03:41 +00:00
|
|
|
libogg, libvorbis, libmad, libjack2, lv2, lilv, serd, sord, sratom, suil, alsaLib, libsndfile, soxr, flac, lame, fetchpatch,
|
2015-09-29 22:02:46 +01:00
|
|
|
expat, libid3tag, ffmpeg, soundtouch /*, portaudio - given up fighting their portaudio.patch */
|
2009-05-12 05:26:22 +01:00
|
|
|
}:
|
2007-10-29 10:52:04 +00:00
|
|
|
|
2016-12-30 04:40:28 +00:00
|
|
|
with stdenv.lib;
|
|
|
|
|
2011-01-02 17:13:34 +00:00
|
|
|
stdenv.mkDerivation rec {
|
2016-04-24 03:51:54 +01:00
|
|
|
version = "2.1.2";
|
2011-01-02 17:13:34 +00:00
|
|
|
name = "audacity-${version}";
|
2009-03-30 08:33:31 +01:00
|
|
|
|
|
|
|
src = fetchurl {
|
2015-08-14 18:44:19 +01:00
|
|
|
url = "https://github.com/audacity/audacity/archive/Audacity-${version}.tar.gz";
|
2016-04-24 03:51:54 +01:00
|
|
|
sha256 = "1ggr6g0mk36rqj7ahsg8b0b1r9kphwajzvxgn43md263rm87n04h";
|
2009-03-30 08:33:31 +01:00
|
|
|
};
|
2017-01-19 01:03:42 +00:00
|
|
|
patches = [
|
|
|
|
(fetchpatch {
|
|
|
|
name = "new-ffmpeg.patch";
|
|
|
|
url = "https://projects.archlinux.org/svntogit/packages.git/plain/trunk"
|
|
|
|
+ "/audacity-ffmpeg.patch?h=packages/audacity&id=0c1e35798d4d70692";
|
|
|
|
sha256 = "19fr674mw844zmkp1476yigkcnmb6zyn78av64ccdwi3p68i00rf";
|
|
|
|
})
|
2017-02-04 19:46:49 +00:00
|
|
|
]
|
|
|
|
++ optional (hasPrefix "gcc-6" stdenv.cc.cc.name)
|
|
|
|
(fetchpatch {
|
|
|
|
name = "gcc6.patch";
|
|
|
|
url = "https://github.com/audacity/audacity/commit/60f2322055756e8cacfe96530a12c63e9694482c.patch";
|
|
|
|
sha256 = "07jlxr8y7ap3nsblx3zh8v9rcx7ajbcfnvwzhwykmbwbsyirgqf2";
|
|
|
|
});
|
2013-06-04 10:35:33 +01:00
|
|
|
|
|
|
|
preConfigure = /* we prefer system-wide libs */ ''
|
|
|
|
mv lib-src lib-src-rm
|
|
|
|
mkdir lib-src
|
2015-03-17 22:44:03 +00:00
|
|
|
mv lib-src-rm/{Makefile*,lib-widget-extra,portaudio-v19,portmixer,portsmf,FileDialog,sbsms,libnyquist} lib-src/
|
2013-06-04 10:35:33 +01:00
|
|
|
rm -r lib-src-rm/
|
2016-12-30 04:40:28 +00:00
|
|
|
|
|
|
|
# we will get a (possibly harmless) warning during configure without this
|
|
|
|
substituteInPlace configure \
|
|
|
|
--replace /usr/bin/file ${file}/bin/file
|
2013-06-04 10:35:33 +01:00
|
|
|
'';
|
|
|
|
|
2016-12-30 04:40:28 +00:00
|
|
|
configureFlags = [
|
|
|
|
"--with-libsamplerate"
|
|
|
|
];
|
|
|
|
|
|
|
|
# audacity only looks for lame and ffmpeg at runtime, so we need to link them in manually
|
|
|
|
NIX_LDFLAGS = [
|
|
|
|
# LAME
|
|
|
|
"-lmp3lame"
|
|
|
|
# ffmpeg
|
|
|
|
"-lavcodec"
|
|
|
|
"-lavdevice"
|
|
|
|
"-lavfilter"
|
|
|
|
"-lavformat"
|
|
|
|
"-lavresample"
|
|
|
|
"-lavutil"
|
|
|
|
"-lpostproc"
|
|
|
|
"-lswresample"
|
|
|
|
"-lswscale"
|
|
|
|
];
|
2015-09-29 22:02:46 +01:00
|
|
|
|
2013-06-04 10:35:33 +01:00
|
|
|
buildInputs = [
|
2016-12-30 04:40:28 +00:00
|
|
|
pkgconfig file gettext wxGTK30 expat alsaLib
|
2016-11-01 01:03:41 +00:00
|
|
|
libsndfile soxr libid3tag libjack2 lv2 lilv serd sord sratom suil gtk2
|
2015-09-29 22:02:46 +01:00
|
|
|
ffmpeg libmad lame libvorbis flac soundtouch
|
|
|
|
]; #ToDo: detach sbsms
|
2011-01-02 17:13:34 +00:00
|
|
|
|
2017-02-04 19:46:49 +00:00
|
|
|
enableParallelBuilding = true;
|
|
|
|
|
2011-01-02 17:13:34 +00:00
|
|
|
dontDisableStatic = true;
|
2015-08-14 18:44:19 +01:00
|
|
|
doCheck = false; # Test fails
|
2011-01-02 17:13:34 +00:00
|
|
|
|
2016-12-30 04:40:28 +00:00
|
|
|
meta = with stdenv.lib; {
|
2009-03-30 08:33:31 +01:00
|
|
|
description = "Sound editor with graphical UI";
|
2015-08-14 18:44:19 +01:00
|
|
|
homepage = http://audacityteam.org/;
|
2016-12-30 04:40:28 +00:00
|
|
|
license = licenses.gpl2Plus;
|
|
|
|
platforms = with platforms; linux;
|
|
|
|
maintainers = with maintainers; [ the-kenny ];
|
2007-10-29 10:52:04 +00:00
|
|
|
};
|
|
|
|
}
|