1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
|
{ mkDerivation, lib, fetchFromGitHub, cmake, pkg-config
, alsaLib, freetype, libjack2, lame, libogg, libpulseaudio, libsndfile, libvorbis
, portaudio, portmidi, qtbase, qtdeclarative, qtgraphicaleffects
, qtquickcontrols2, qtscript, qtsvg, qttools
, qtwebengine, qtxmlpatterns
, nixosTests
}:
mkDerivation rec {
pname = "musescore";
version = "3.6.1";
src = fetchFromGitHub {
owner = "musescore";
repo = "MuseScore";
rev = "v${version}";
sha256 = "sha256-21ZI5rsc05ZWEyM0LeFr+212YViLYveZZBvVpskh8iA=";
};
patches = [
./remove_qtwebengine_install_hack.patch
];
cmakeFlags = [
"-DMUSESCORE_BUILD_CONFIG=release"
"-DUSE_SYSTEM_FREETYPE=ON"
];
qtWrapperArgs = [
# Work around crash on update from 3.4.2 to 3.5.0
# https://bugreports.qt.io/browse/QTBUG-85967
"--set QML_DISABLE_DISK_CACHE 1"
];
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [
alsaLib libjack2 freetype lame libogg libpulseaudio libsndfile libvorbis
portaudio portmidi # tesseract
qtbase qtdeclarative qtgraphicaleffects qtquickcontrols2
qtscript qtsvg qttools qtwebengine qtxmlpatterns
];
passthru.tests = nixosTests.musescore;
meta = with lib; {
description = "Music notation and composition software";
homepage = "https://musescore.org/";
license = licenses.gpl2;
maintainers = with maintainers; [ vandenoever turion ];
platforms = platforms.linux;
repositories.git = "https://github.com/musescore/MuseScore";
};
}
|