ardour: clean up the expression

* Remove unneeded dependencies
* Stop vendoring other dependencies (fluidsynth, hidapi, libltc, qm-dsp)
* Fix using incorrect libusb version (libusb package is just a legacy compat layer)
* Move build-time dependencies to nativeBuildInputs
* Install freedesktop files & man page
* Drop libintl replacement that no longer applies
This commit is contained in:
Jan Tojnar 2020-04-06 14:00:54 +02:00
parent 1ff54d019f
commit 3f7515cb8c
No known key found for this signature in database
GPG Key ID: 7FAB2A15F7A607A4
2 changed files with 42 additions and 49 deletions

View File

@ -13,26 +13,24 @@
, graphviz , graphviz
, gtkmm2 , gtkmm2
, libjack2 , libjack2
, libgnomecanvas
, libgnomecanvasmm
, liblo , liblo
, libmad
, libogg , libogg
, librdf_raptor
, librdf_rasqal
, libsamplerate , libsamplerate
, libsigcxx , libsigcxx
, libsndfile , libsndfile
, libusb , libusb1
, libuuid , fluidsynth_1
, hidapi
, libltc
, qm-dsp
, libxml2 , libxml2
, libxslt
, lilv , lilv
, lrdf , lrdf
, lv2 , lv2
, makeWrapper , makeWrapper
, perl , perl
, pkgconfig , pkg-config
, itstool
, python2 , python2
, rubberband , rubberband
, serd , serd
@ -68,6 +66,13 @@ in stdenv.mkDerivation rec {
nativeBuildInputs = [ nativeBuildInputs = [
wafHook wafHook
makeWrapper
pkg-config
itstool
doxygen
graphviz # for dot
perl
python2
]; ];
buildInputs = [ buildInputs = [
@ -76,37 +81,28 @@ in stdenv.mkDerivation rec {
boost boost
cairomm cairomm
curl curl
doxygen
dbus dbus
fftw fftw
fftwSinglePrec fftwSinglePrec
flac flac
glibmm glibmm
graphviz
gtkmm2 gtkmm2
libjack2 libjack2
libgnomecanvas
libgnomecanvasmm
liblo liblo
libmad
libogg libogg
librdf_raptor
librdf_rasqal
libsamplerate libsamplerate
libsigcxx libsigcxx
libsndfile libsndfile
libusb libusb1
libuuid fluidsynth_1
hidapi
libltc
qm-dsp
libxml2 libxml2
libxslt
lilv lilv
lrdf lrdf
lv2 lv2
makeWrapper
pango pango
perl
pkgconfig
python2
rubberband rubberband
serd serd
sord sord
@ -117,36 +113,35 @@ in stdenv.mkDerivation rec {
libarchive libarchive
]; ];
# ardour's wscript has a "tarball" target but that required the git revision
# be available. Since this is an unzipped tarball fetched from github we
# have to do that ourself.
patchPhase = ''
printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc
sed 's|/usr/include/libintl.h|${glibc.dev}/include/libintl.h|' -i wscript
patchShebangs ./tools/
'';
wafConfigureFlags = [ wafConfigureFlags = [
"--optimize" "--optimize"
"--docs" "--docs"
"--use-external-libs"
"--freedesktop"
"--with-backends=jack,alsa,dummy" "--with-backends=jack,alsa,dummy"
]; ];
NIX_CFLAGS_COMPILE = "-I${qm-dsp}/include/qm-dsp";
# ardour's wscript has a "tarball" target but that required the git revision
# be available. Since this is an unzipped tarball fetched from github we
# have to do that ourself.
postPatch = ''
printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${tag}-${builtins.substring 0 8 src.rev}\"; }\n' > libs/ardour/revision.cc
patchShebangs ./tools/
'';
postInstall = '' postInstall = ''
# Install desktop file # wscript does not install these for some reason
mkdir -p "$out/share/applications" install -vDm 644 "build/gtk2_ardour/ardour.xml" \
cat > "$out/share/applications/ardour.desktop" << EOF -t "$out/share/mime/packages"
[Desktop Entry] install -vDm 644 "build/gtk2_ardour/ardour5.desktop" \
Name=Ardour 5 -t "$out/share/applications"
GenericName=Digital Audio Workstation for size in 16 22 32 48 256 512; do
Comment=Multitrack harddisk recorder install -vDm 644 "gtk2_ardour/resources/Ardour-icon_''${size}px.png" \
Exec=$out/bin/ardour5 "$out/share/icons/hicolor/''${size}x''${size}/apps/ardour5.png"
Icon=$out/share/ardour5/resources/Ardour-icon_256px.png done
Terminal=false install -vDm 644 "ardour.1"* -t "$out/share/man/man1"
Type=Application
X-MultipleArgs=false
Categories=GTK;Audio;AudioVideoEditing;AudioVideo;Video;
EOF
''; '';
meta = with stdenv.lib; { meta = with stdenv.lib; {

View File

@ -18405,9 +18405,7 @@ in
aqemu = libsForQt5.callPackage ../applications/virtualization/aqemu { }; aqemu = libsForQt5.callPackage ../applications/virtualization/aqemu { };
ardour = callPackage ../applications/audio/ardour { ardour = callPackage ../applications/audio/ardour { };
inherit (gnome2) libgnomecanvas libgnomecanvasmm;
};
arelle = with python3Packages; toPythonApplication arelle; arelle = with python3Packages; toPythonApplication arelle;