nixpkgs-suyu/pkgs/applications/audio/musly/default.nix
Profpatsch 4a7f99d55d treewide: with stdenv.lib; in meta -> with lib;
Part of: https://github.com/NixOS/nixpkgs/issues/108938

meta = with stdenv.lib;

is a widely used pattern. We want to slowly remove
the `stdenv.lib` indirection and encourage people
to use `lib` directly. Thus let’s start with the meta
field.

This used a rewriting script to mostly automatically
replace all occurances of this pattern, and add the
`lib` argument to the package header if it doesn’t
exist yet.

The script in its current form is available at
https://cs.tvl.fyi/depot@2f807d7f141068d2d60676a89213eaa5353ca6e0/-/blob/users/Profpatsch/nixpkgs-rewriter/default.nix
2021-01-11 10:38:22 +01:00

33 lines
1.5 KiB
Nix

{ lib, stdenv, fetchFromGitHub, cmake, eigen, libav }:
stdenv.mkDerivation {
pname = "musly";
version = "unstable-2017-04-26";
src = fetchFromGitHub {
owner = "dominikschnitzer";
repo = "musly";
rev = "f911eacbbe0b39ebe87cb37d0caef09632fa40d6";
sha256 = "1q42wvdwy2pac7bhfraqqj2czw7w2m33ms3ifjl8phm7d87i8825";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ eigen (libav.override { vaapiSupport = stdenv.isLinux; }) ];
fixupPhase = if stdenv.isDarwin then ''
install_name_tool -change libmusly.dylib $out/lib/libmusly.dylib $out/bin/musly
install_name_tool -change libmusly_resample.dylib $out/lib/libmusly_resample.dylib $out/bin/musly
install_name_tool -change libmusly_resample.dylib $out/lib/libmusly_resample.dylib $out/lib/libmusly.dylib
'' else "";
meta = with lib; {
homepage = "https://www.musly.org";
description = "A fast and high-quality audio music similarity library written in C/C++";
longDescription = ''
Musly analyzes the the audio signal of music pieces to estimate their similarity.
No meta-data about the music piece is included in the similarity estimation.
To use Musly in your application, have a look at the library documentation
or try the command line application included in the package and start generating
some automatic music playlists right away.
'';
license = licenses.mpl20;
maintainers = with maintainers; [ ggpeti ];
platforms = with platforms; darwin ++ linux;
};
}