nixpkgs/pkgs/applications/audio/polyphone/default.nix
stuebinm ff1a94e523 treewide: add meta.mainProgram to packages with a single binary
The nixpkgs-unstable channel's programs.sqlite was used to identify
packages producing exactly one binary, and these automatically added
to their package definitions wherever possible.
2024-03-19 03:14:51 +01:00

56 lines
1.3 KiB
Nix

{ stdenv, lib, mkDerivation, fetchFromGitHub, qmake, pkg-config, alsa-lib, libjack2, portaudio, libogg, flac, libvorbis, rtmidi, qtsvg, qttools }:
mkDerivation rec {
version = "2.3.0";
pname = "polyphone";
src = fetchFromGitHub {
owner = "davy7125";
repo = "polyphone";
rev = version;
sha256 = "09habv51pw71wrb39shqi80i2w39dx5a39klzswsald5j9sia0ir";
};
buildInputs = [
alsa-lib
libjack2
portaudio
libogg
flac
libvorbis
rtmidi
qtsvg
];
nativeBuildInputs = [ qmake qttools pkg-config ];
preConfigure = ''
cd ./sources/
'';
installPhase = ''
runHook preInstall
install -d $out/bin
install -m755 bin/polyphone $out/bin/
install -Dm444 ./contrib/com.polyphone_soundfonts.polyphone.desktop -t $out/share/applications/
install -Dm444 ./contrib/polyphone.svg -t $out/share/icons/hicolor/scalable/apps/
runHook postInstall
'';
qmakeFlags = [
"DEFINES+=USE_LOCAL_STK"
"DEFINES+=USE_LOCAL_QCUSTOMPLOT"
];
meta = with lib; {
broken = (stdenv.isLinux && stdenv.isAarch64);
description = "A soundfont editor for creating musical instruments";
mainProgram = "polyphone";
homepage = "https://www.polyphone-soundfonts.com/";
license = licenses.gpl3;
maintainers = [ maintainers.maxdamantus ];
platforms = platforms.linux;
};
}