diff --git a/pkgs/misc/frescobaldi/default.nix b/pkgs/misc/frescobaldi/default.nix new file mode 100644 index 000000000000..36b6b770bdad --- /dev/null +++ b/pkgs/misc/frescobaldi/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchurl, pythonPackages, lilypond, pyqt4 }: + +pythonPackages.buildPythonPackage rec { + name = "frescobaldi-${version}"; + version = "2.0.16"; + + src = fetchurl { + url = "https://github.com/wbsoft/frescobaldi/releases/download/" + + "v2.0.16/${name}.tar.gz"; + sha256 = "12pabvq5b2lq84q3kx8lh02zh6ali6v4wnin2k2ycnm45mk9ms6q"; + }; + + propagatedBuildInputs = with pythonPackages; [ lilypond + pyqt4 poppler-qt4 ]; + + patches = [ ./setup.cfg.patch ./python-path.patch ]; + + meta = with stdenv.lib; { + homepage = http://frescobaldi.org/; + description = ''Frescobaldi is a LilyPond sheet music text editor''; + longDescription = '' + Powerful text editor with syntax highlighting and automatic completion, + Music view with advanced Point & Click, Midi player to proof-listen + LilyPond-generated MIDI files, Midi capturing to enter music, + Powerful Score Wizard to quickly setup a music score, Snippet Manager + to store and apply text snippets, templates or scripts, Use multiple + versions of LilyPond, automatically selects the correct version, Built-in + LilyPond documentation browser and built-in User Guide, Smart + layout-control functions like coloring specific objects in the PDF, + MusicXML import, Modern user iterface with configurable colors, + fonts and keyboard shortcuts + ''; + license = licenses.gpl2Plus; + maintainers = [ maintainers.sepi ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/misc/frescobaldi/python-path.patch b/pkgs/misc/frescobaldi/python-path.patch new file mode 100644 index 000000000000..6c54d9f208ec --- /dev/null +++ b/pkgs/misc/frescobaldi/python-path.patch @@ -0,0 +1,11 @@ +diff -u frescobaldi-2.0.16.old/frescobaldi frescobaldi-2.0.16/frescobaldi +--- frescobaldi-2.0.16/frescobaldi 2014-10-24 11:29:28.705687224 +0200 ++++ frescobaldi-2.0.16.new/frescobaldi 2014-10-24 11:31:08.086444793 +0200 +@@ -1,4 +1,4 @@ +-#!/usr/bin/python ++#!/usr/bin/env python + import sys + import frescobaldi_app.main + import app +Common subdirectories: frescobaldi-2.0.16/frescobaldi_app and frescobaldi-2.0.16.new/frescobaldi_app +Common subdirectories: frescobaldi-2.0.16/macosx and frescobaldi-2.0.16.new/macosx diff --git a/pkgs/misc/frescobaldi/setup.cfg.patch b/pkgs/misc/frescobaldi/setup.cfg.patch new file mode 100644 index 000000000000..502cdd61966d --- /dev/null +++ b/pkgs/misc/frescobaldi/setup.cfg.patch @@ -0,0 +1,13 @@ +Common subdirectories: frescobaldi-2.0.16.old/build and frescobaldi-2.0.16/build +Common subdirectories: frescobaldi-2.0.16.old/frescobaldi_app and frescobaldi-2.0.16/frescobaldi_app +Common subdirectories: frescobaldi-2.0.16.old/macosx and frescobaldi-2.0.16/macosx +diff -u frescobaldi-2.0.16.old/setup.cfg frescobaldi-2.0.16/setup.cfg +--- frescobaldi-2.0.16.old/setup.cfg 2012-02-05 07:08:24.000000000 +0100 ++++ frescobaldi-2.0.16/setup.cfg 2014-10-24 15:08:48.141335620 +0200 +@@ -1,6 +1,2 @@ +-[bdist_wininst] +-bitmap=frescobaldi-wininst.bmp +-install-script=frescobaldi-wininst.py +- + [sdist] + force-manifest=1 diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index ae7c0965b094..6e3c34766d79 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1177,6 +1177,8 @@ let freetds = callPackage ../development/libraries/freetds { }; + frescobaldi = callPackage ../misc/frescobaldi {}; + ftgl = callPackage ../development/libraries/ftgl { }; ftgl212 = callPackage ../development/libraries/ftgl/2.1.2.nix { }; diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 9048ffc5b0f5..d51622ff24f2 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -2625,6 +2625,33 @@ let }; }; + poppler-qt4 = buildPythonPackage rec { + name = "poppler-qt4-${version}"; + version = "0.18.1"; + disabled = isPy3k || isPyPy; + + src = pkgs.fetchurl { + url = "https://pypi.python.org/packages/source/p/python-poppler-qt4/" + + "python-poppler-qt4-${version}.tar.gz"; + md5 = "9c4c5a59b878aed78e96a6ae58c6c185"; + }; + + propagatedBuildInputs = [ pkgs.pyqt4 pkgs.sip pkgs.pkgconfig pkgs.popplerQt4 ]; + + preBuild = "${python}/bin/${python.executable} setup.py build_ext" + + " --include-dirs=${pkgs.popplerQt4}/include/poppler/"; + + meta = with stdenv.lib; { + description = "A Python binding to Poppler-Qt4"; + longDescription = '' + A Python binding to Poppler-Qt4 that aims for completeness + and for being actively maintained. + ''; + license = licenses.lgpl21Plus; + maintainers = [ maintainers.sepi ]; + platforms = platforms.all; + }; + }; pudb = buildPythonPackage rec { name = "pudb-2013.3.6";