nixpkgs/pkgs/by-name/ja/jalv/package.nix

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

70 lines
1.4 KiB
Nix
Raw Normal View History

2024-10-22 11:40:16 +00:00
{
lib,
stdenv,
2024-10-22 12:03:31 +00:00
fetchFromGitHub,
libsForQt5,
2024-10-22 11:40:16 +00:00
libjack2,
lilv,
lv2,
2024-10-22 12:03:31 +00:00
meson,
ninja,
2024-10-22 11:40:16 +00:00
pkg-config,
2024-10-22 12:03:31 +00:00
portaudio,
2024-10-22 11:40:16 +00:00
serd,
sord,
sratom,
suil,
2024-10-22 12:03:31 +00:00
wrapGAppsHook3,
useJack ? true,
useQt ? false,
2024-10-22 11:40:16 +00:00
}:
2024-10-22 12:03:31 +00:00
stdenv.mkDerivation (finalAttrs: {
pname = "jalv";
2024-10-22 12:03:31 +00:00
version = "1.6.8";
2024-10-22 12:03:31 +00:00
src = fetchFromGitHub {
owner = "drobilla";
repo = "jalv";
rev = "refs/tags/v${finalAttrs.version}";
hash = "sha256-MAQoc+WcuoG6Psa44VRaZ2TWB2LBpvf6EmqbUZPUf38=";
};
2024-10-22 11:40:16 +00:00
nativeBuildInputs = [
2024-10-22 12:03:31 +00:00
meson
ninja
2024-10-22 11:40:16 +00:00
pkg-config
2024-10-22 12:03:31 +00:00
] ++ lib.optionals (!useQt) [ wrapGAppsHook3 ] ++ lib.optionals useQt [ libsForQt5.wrapQtAppsHook ];
buildInputs =
[
lilv
lv2
portaudio
serd
sord
sratom
suil
]
++ lib.optionals (!useJack) [ portaudio ]
++ lib.optionals useJack [ libjack2 ]
++ lib.optionals useQt [ libsForQt5.qtbase ];
mesonFlags = [
(lib.mesonEnable "portaudio" (!useJack))
(lib.mesonEnable "jack" useJack)
(lib.mesonEnable "gtk2" false)
(lib.mesonEnable "gtk3" (!useQt))
(lib.mesonEnable "qt5" useQt)
];
2024-10-22 12:03:31 +00:00
meta = {
description = "Simple but fully featured LV2 host for Jack";
homepage = "http://drobilla.net/software/jalv";
2024-10-22 12:03:31 +00:00
license = lib.licenses.isc;
mainProgram = if useQt then "jalv.qt5" else "jalv.gtk3";
maintainers = with lib.maintainers; [ aleksana ];
platforms = lib.platforms.linux;
};
2024-10-22 12:03:31 +00:00
})