pytrainer: unpin python 3.10
[NixPkgs.git] / pkgs / misc / frescobaldi / default.nix
blob653c4747c9336ef827895d1dbf466f88cac379d2
1 { lib, stdenv, fetchFromGitHub, python311Packages, lilypond }:
3 python311Packages.buildPythonApplication rec {
4   pname = "frescobaldi";
5   version = "3.3.0";
7   src = fetchFromGitHub {
8     owner = "wbsoft";
9     repo = "frescobaldi";
10     rev = "refs/tags/v${version}";
11     sha256 = "sha256-Q6ruthNcpjLlYydUetkuTECiCIzu055bw40O8BPGq/A=";
12   };
14   propagatedBuildInputs = with python311Packages; [
15     qpageview
16     lilypond
17     pygame
18     python-ly
19     sip4
20     pyqt5
21     poppler-qt5
22     pyqtwebengine
23   ];
25   nativeBuildInputs = [ python311Packages.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 = "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.hostPlatform.isDarwin; # never built on Hydra https://hydra.nixos.org/job/nixpkgs/trunk/frescobaldi.x86_64-darwin
60     mainProgram = "frescobaldi";
61   };