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