nixpkgs mirror (for testing)
github.com/NixOS/nixpkgs
nix
1{
2 lib,
3 stdenv,
4 fetchFromGitHub,
5 python3Packages,
6 lilypond,
7}:
8
9python3Packages.buildPythonApplication rec {
10 pname = "frescobaldi";
11 version = "3.3.0";
12 format = "setuptools";
13
14 src = fetchFromGitHub {
15 owner = "wbsoft";
16 repo = "frescobaldi";
17 tag = "v${version}";
18 sha256 = "sha256-Q6ruthNcpjLlYydUetkuTECiCIzu055bw40O8BPGq/A=";
19 };
20
21 propagatedBuildInputs = with python3Packages; [
22 qpageview
23 lilypond
24 pygame
25 python-ly
26 sip4
27 pyqt5
28 poppler-qt5
29 pyqtwebengine
30 ];
31
32 nativeBuildInputs = [ python3Packages.pyqtwebengine.wrapQtAppsHook ];
33
34 # Needed because source is fetched from git
35 preBuild = ''
36 make -C i18n
37 make -C linux
38 '';
39
40 # no tests in shipped with upstream
41 doCheck = false;
42
43 dontWrapQtApps = true;
44 makeWrapperArgs = [
45 "\${qtWrapperArgs[@]}"
46 ];
47
48 meta = {
49 homepage = "https://frescobaldi.org/";
50 description = "LilyPond sheet music text editor";
51 longDescription = ''
52 Powerful text editor with syntax highlighting and automatic completion,
53 Music view with advanced Point & Click, Midi player to proof-listen
54 LilyPond-generated MIDI files, Midi capturing to enter music,
55 Powerful Score Wizard to quickly setup a music score, Snippet Manager
56 to store and apply text snippets, templates or scripts, Use multiple
57 versions of LilyPond, automatically selects the correct version, Built-in
58 LilyPond documentation browser and built-in User Guide, Smart
59 layout-control functions like coloring specific objects in the PDF,
60 MusicXML import, Modern user iterface with configurable colors,
61 fonts and keyboard shortcuts
62 '';
63 license = lib.licenses.gpl2Plus;
64 maintainers = with lib.maintainers; [ sepi ];
65 platforms = lib.platforms.all;
66 broken = stdenv.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/frescobaldi.x86_64-darwin
67 mainProgram = "frescobaldi";
68 };
69}