mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-12-29 06:45:54 +03:00
commit
d53fa28109
88
pkgs/applications/audio/ardour/ardour3.nix
Normal file
88
pkgs/applications/audio/ardour/ardour3.nix
Normal file
@ -0,0 +1,88 @@
|
|||||||
|
{ stdenv, fetchgit, alsaLib, aubio, boost, cairomm, curl, fftw
|
||||||
|
, fftwSinglePrec, flac, glibc, glibmm, gtk, gtkmm, jack2
|
||||||
|
, libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
|
||||||
|
, librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
|
||||||
|
, libusb, libuuid, libxml2, libxslt, lilv, lv2, makeWrapper, pango
|
||||||
|
, perl, pkgconfig, python, serd, sord, sratom, suil }:
|
||||||
|
|
||||||
|
let
|
||||||
|
|
||||||
|
# Ardour git repo uses a mix of annotated and lightweight tags. Annotated
|
||||||
|
# tags are used for MAJOR.MINOR versioning, and lightweight tags are used
|
||||||
|
# in-between; MAJOR.MINOR.REV where REV is the number of commits since the
|
||||||
|
# last annotated tag. A slightly different version string format is needed
|
||||||
|
# for the 'revision' info that is built into the binary; it is the format of
|
||||||
|
# "git describe" when _not_ on an annotated tag(!): MAJOR.MINOR-REV-HASH.
|
||||||
|
|
||||||
|
# Version to build.
|
||||||
|
tag = "3.5.403";
|
||||||
|
|
||||||
|
# Version info that is built into the binary. Keep in sync with 'tag'. The
|
||||||
|
# last 8 digits is a (fake) commit id.
|
||||||
|
revision = "3.5-403-00000000";
|
||||||
|
|
||||||
|
in
|
||||||
|
|
||||||
|
stdenv.mkDerivation rec {
|
||||||
|
name = "ardour-${tag}";
|
||||||
|
|
||||||
|
src = fetchgit {
|
||||||
|
url = git://git.ardour.org/ardour/ardour.git;
|
||||||
|
rev = "refs/tags/${tag}";
|
||||||
|
sha256 = "0k1z8sbjf88dqn12kf9cykrqj38vkr879n2g6b4adk6cghn8wz3x";
|
||||||
|
};
|
||||||
|
|
||||||
|
buildInputs =
|
||||||
|
[ alsaLib aubio boost cairomm curl fftw fftwSinglePrec flac glibc
|
||||||
|
glibmm gtk gtkmm jack2 libgnomecanvas libgnomecanvasmm liblo
|
||||||
|
libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
|
||||||
|
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lv2
|
||||||
|
makeWrapper pango perl pkgconfig python serd sord sratom suil
|
||||||
|
];
|
||||||
|
|
||||||
|
patchPhase = ''
|
||||||
|
printf '#include "libs/ardour/ardour/revision.h"\nnamespace ARDOUR { const char* revision = \"${revision}\"; }\n' > libs/ardour/revision.cc
|
||||||
|
sed 's|/usr/include/libintl.h|${glibc}/include/libintl.h|' -i wscript
|
||||||
|
sed -e 's|^#!/usr/bin/perl.*$|#!${perl}/bin/perl|g' -i tools/fmt-bindings
|
||||||
|
sed -e 's|^#!/usr/bin/env.*$|#!${perl}/bin/perl|g' -i tools/*.pl
|
||||||
|
'';
|
||||||
|
|
||||||
|
configurePhase = "python waf configure --optimize --prefix=$out";
|
||||||
|
|
||||||
|
buildPhase = "python waf";
|
||||||
|
|
||||||
|
# For the custom ardour clearlooks gtk-engine to work, it must be
|
||||||
|
# moved to a directory called "engines" and added to GTK_PATH
|
||||||
|
installPhase = ''
|
||||||
|
python waf install
|
||||||
|
mkdir -pv $out/gtk2/engines
|
||||||
|
cp build/libs/clearlooks-newer/libclearlooks.so $out/gtk2/engines/
|
||||||
|
wrapProgram $out/bin/ardour3 --prefix GTK_PATH : $out/gtk2
|
||||||
|
|
||||||
|
# Install desktop file
|
||||||
|
mkdir -p "$out/share/applications"
|
||||||
|
cat > "$out/share/applications/ardour.desktop" << EOF
|
||||||
|
[Desktop Entry]
|
||||||
|
Name=Ardour 3
|
||||||
|
GenericName=Digital Audio Workstation
|
||||||
|
Comment=Multitrack harddisk recorder
|
||||||
|
Exec=$out/bin/ardour3
|
||||||
|
Icon=$out/share/ardour3/icons/ardour_icon_256px.png
|
||||||
|
Terminal=false
|
||||||
|
Type=Application
|
||||||
|
X-MultipleArgs=false
|
||||||
|
Categories=GTK;Audio;AudioVideoEditing;AudioVideo;Video;
|
||||||
|
EOF
|
||||||
|
'';
|
||||||
|
|
||||||
|
meta = with stdenv.lib; {
|
||||||
|
description = "Multi-track hard disk recording software";
|
||||||
|
longDescription = ''
|
||||||
|
Also read "The importance of Paying Something" on their homepage, please!
|
||||||
|
'';
|
||||||
|
homepage = http://ardour.org/;
|
||||||
|
license = licenses.gpl2;
|
||||||
|
platforms = platforms.linux;
|
||||||
|
maintainers = [ maintainers.goibhniu ];
|
||||||
|
};
|
||||||
|
}
|
@ -3,7 +3,7 @@
|
|||||||
, libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
|
, libgnomecanvas, libgnomecanvasmm, liblo, libmad, libogg, librdf
|
||||||
, librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
|
, librdf_raptor, librdf_rasqal, libsamplerate, libsigcxx, libsndfile
|
||||||
, libusb, libuuid, libxml2, libxslt, lilv, lv2, makeWrapper, pango
|
, libusb, libuuid, libxml2, libxslt, lilv, lv2, makeWrapper, pango
|
||||||
, perl, pkgconfig, python, serd, sord, sratom, suil }:
|
, perl, pkgconfig, python, rubberband, serd, sord, sratom, suil, taglib, vampSDK }:
|
||||||
|
|
||||||
let
|
let
|
||||||
|
|
||||||
@ -15,11 +15,11 @@ let
|
|||||||
# "git describe" when _not_ on an annotated tag(!): MAJOR.MINOR-REV-HASH.
|
# "git describe" when _not_ on an annotated tag(!): MAJOR.MINOR-REV-HASH.
|
||||||
|
|
||||||
# Version to build.
|
# Version to build.
|
||||||
tag = "3.5.403";
|
tag = "4.0";
|
||||||
|
|
||||||
# Version info that is built into the binary. Keep in sync with 'tag'. The
|
# Version info that is built into the binary. Keep in sync with 'tag'. The
|
||||||
# last 8 digits is a (fake) commit id.
|
# last 8 digits is a (fake) commit id.
|
||||||
revision = "3.5-403-00000000";
|
revision = "4.0-e1aa66cb3f";
|
||||||
|
|
||||||
in
|
in
|
||||||
|
|
||||||
@ -28,8 +28,8 @@ stdenv.mkDerivation rec {
|
|||||||
|
|
||||||
src = fetchgit {
|
src = fetchgit {
|
||||||
url = git://git.ardour.org/ardour/ardour.git;
|
url = git://git.ardour.org/ardour/ardour.git;
|
||||||
rev = "refs/tags/${tag}";
|
rev = "e1aa66cb3f";
|
||||||
sha256 = "0k1z8sbjf88dqn12kf9cykrqj38vkr879n2g6b4adk6cghn8wz3x";
|
sha256 = "396668fb9116a68f5079f0d880930e890fd0cdf7ee5f3b97fcf44b88cf840b4c";
|
||||||
};
|
};
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
@ -37,7 +37,7 @@ stdenv.mkDerivation rec {
|
|||||||
glibmm gtk gtkmm jack2 libgnomecanvas libgnomecanvasmm liblo
|
glibmm gtk gtkmm jack2 libgnomecanvas libgnomecanvasmm liblo
|
||||||
libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
|
libmad libogg librdf librdf_raptor librdf_rasqal libsamplerate
|
||||||
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lv2
|
libsigcxx libsndfile libusb libuuid libxml2 libxslt lilv lv2
|
||||||
makeWrapper pango perl pkgconfig python serd sord sratom suil
|
makeWrapper pango perl pkgconfig python rubberband serd sord sratom suil taglib vampSDK
|
||||||
];
|
];
|
||||||
|
|
||||||
patchPhase = ''
|
patchPhase = ''
|
||||||
@ -57,17 +57,17 @@ stdenv.mkDerivation rec {
|
|||||||
python waf install
|
python waf install
|
||||||
mkdir -pv $out/gtk2/engines
|
mkdir -pv $out/gtk2/engines
|
||||||
cp build/libs/clearlooks-newer/libclearlooks.so $out/gtk2/engines/
|
cp build/libs/clearlooks-newer/libclearlooks.so $out/gtk2/engines/
|
||||||
wrapProgram $out/bin/ardour3 --prefix GTK_PATH : $out/gtk2
|
wrapProgram $out/bin/ardour4 --prefix GTK_PATH : $out/gtk2
|
||||||
|
|
||||||
# Install desktop file
|
# Install desktop file
|
||||||
mkdir -p "$out/share/applications"
|
mkdir -p "$out/share/applications"
|
||||||
cat > "$out/share/applications/ardour.desktop" << EOF
|
cat > "$out/share/applications/ardour.desktop" << EOF
|
||||||
[Desktop Entry]
|
[Desktop Entry]
|
||||||
Name=Ardour 3
|
Name=Ardour 4
|
||||||
GenericName=Digital Audio Workstation
|
GenericName=Digital Audio Workstation
|
||||||
Comment=Multitrack harddisk recorder
|
Comment=Multitrack harddisk recorder
|
||||||
Exec=$out/bin/ardour3
|
Exec=$out/bin/ardour4
|
||||||
Icon=$out/share/ardour3/icons/ardour_icon_256px.png
|
Icon=$out/share/ardour4/icons/ardour_icon_256px.png
|
||||||
Terminal=false
|
Terminal=false
|
||||||
Type=Application
|
Type=Application
|
||||||
X-MultipleArgs=false
|
X-MultipleArgs=false
|
||||||
|
@ -10169,11 +10169,16 @@ let
|
|||||||
|
|
||||||
antiword = callPackage ../applications/office/antiword {};
|
antiword = callPackage ../applications/office/antiword {};
|
||||||
|
|
||||||
ardour = ardour3;
|
ardour = ardour4;
|
||||||
|
|
||||||
ardour3 = lowPrio (callPackage ../applications/audio/ardour {
|
ardour3 = callPackage ../applications/audio/ardour/ardour3.nix {
|
||||||
inherit (gnome) libgnomecanvas libgnomecanvasmm;
|
inherit (gnome) libgnomecanvas libgnomecanvasmm;
|
||||||
});
|
};
|
||||||
|
|
||||||
|
ardour4 = callPackage ../applications/audio/ardour {
|
||||||
|
inherit (gnome) libgnomecanvas libgnomecanvasmm;
|
||||||
|
inherit (vamp) vampSDK;
|
||||||
|
};
|
||||||
|
|
||||||
ario = callPackage ../applications/audio/ario { };
|
ario = callPackage ../applications/audio/ario { };
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user