unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
To: 26956@debbugs.gnu.org
Subject: bug#26956: [PATCH] Add MuseScore
Date: Tue, 16 May 2017 18:07:18 +0200	[thread overview]
Message-ID: <878tlwss3t.fsf@nicolasgoaziou.fr> (raw)

[-- Attachment #1: Type: text/plain, Size: 659 bytes --]

Hello,

The attached patch adds MuseScore. It builds and lint doesn't complain.

I used glib-or-gtk-build-system because, somewhere in the Makefile,
there's a call to `gtk-update-icon-cache'. However, since that command
cannot be found during the build process, I skip it with
UPDATE_CACHE=FALSE. So, should I leave the package as-is, or add
a "gtk+" input, or simply downgrade to gnu-build-system?

Also, the description is a bit verbose. It is an excerpt from
Wikipedia's introduction about the software. Debian's is much terser.
FSF directory's is out of date. WDYT?

Regards,

-- 
Nicolas Goaziou                                                0x80A93738

[-- Attachment #2: 0001-gnu-Add-MuseScore.patch --]
[-- Type: text/x-diff, Size: 4445 bytes --]

From 78e2006499b93895635215e80e58c359a5e31405 Mon Sep 17 00:00:00 2001
From: Nicolas Goaziou <mail@nicolasgoaziou.fr>
Date: Tue, 16 May 2017 17:55:29 +0200
Subject: [PATCH] gnu: Add MuseScore.

* gnu/packages/music.scm (musescore): New variable.
---
 gnu/packages/music.scm | 81 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 81 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index d4a72df1d..33aa8fb73 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -10,6 +10,7 @@
 ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
 ;;; Copyright © 2017 ng0 <contact.ng0@cryptolab.net>
 ;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
+;;; Copyright © 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2990,3 +2991,83 @@ are a C compiler and glib.  Full API documentation and examples are included.")
 melodies and beats and for mixing and arranging songs.  LMMS includes instruments based on
 audio samples and various soft sythesizers.  It can receive input from a MIDI keyboard.")
     (license license:gpl2+)))
+
+(define-public musescore
+  (package
+    (name "musescore")
+    (version "2.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/musescore/MuseScore/archive/"
+                    "v" version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0irwsq6ihfz3y3b943cwqy29g3si7gqbgxdscgw53vwv9vfvi085"))))
+    (build-system glib-or-gtk-build-system)
+    (arguments
+     `(#:make-flags
+       `(,(string-append "PREFIX=" (assoc-ref %outputs "out"))
+         ;; Skip update-mime-database and gtk-update-icon-cache.
+         "UPDATE_CACHE=FALSE")
+       ;; There are tests, but no simple target to run.  The command
+       ;; used to run them is:
+       ;;
+       ;;   make debug && sudo make installdebug && cd \
+       ;;   build.debug/mtest && make && ctest
+       ;;
+       ;; Basically, it requires to start a whole new build process.
+       ;; So we simply skip them.
+       #:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-after 'unpack 'use-system-freetype
+           (lambda _
+             (substitute* "Makefile"
+               ;; XXX: For the time being, we grossly insert the CMake
+               ;; option needed to ignore bundled freetype.  However,
+               ;; there's a pending PR to have it as a regular make
+               ;; option, in a future release.
+               (("cmake -DCMAKE") "cmake -DUSE_SYSTEM_FREETYPE=ON -DCMAKE"))
+             #t)))))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("cmake" ,cmake)
+       ("freetype" ,freetype)
+       ("jack" ,jack-1)
+       ("lame" ,lame)
+       ("libogg" ,libogg)
+       ("libsndfile" ,libsndfile)
+       ("libvorbis" ,libvorbis)
+       ("openssl" ,openssl)
+       ("portaudio" ,portaudio)
+       ("pulseaudio" ,pulseaudio)
+       ("qtbase" ,qtbase)
+       ("qtdeclarative" ,qtdeclarative)
+       ("qtscript" ,qtscript)
+       ("qtsvg" ,qtsvg)
+       ("qtwebkit" ,qtwebkit)
+       ("qtxmlpatterns" ,qtxmlpatterns)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("qttools" ,qttools)))
+    (synopsis "Music composition and notation software")
+    (description "MuseScore is a music score typesetter.  Its main purpose is
+the creation of high-quality engraved musical scores in a WYSIWYG environment.
+
+It supports unlimited staves, linked parts and part extraction, tablature, MIDI
+input, percussion notation, cross-staff beaming, automatic transposition,
+lyrics (multiple verses), fretboard diagrams, and in general everything commonly
+used in sheet music.
+
+Style options to change the appearance and layout are available, and
+style sheets can be saved and applied to other scores.  There are pre-defined
+templates for many types of ensembles.  Functionality can be extended by making
+use of the many freely available plugins.
+
+MuseScore can also play back scores through the built-in sequencer and SoundFont
+sample library.")
+    (home-page "https://musescore.org")
+    (license license:gpl2)))
-- 
2.13.0


             reply	other threads:[~2017-05-16 16:08 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-05-16 16:07 Nicolas Goaziou [this message]
2017-05-16 21:37 ` bug#26956: [PATCH] Add MuseScore Ludovic Courtès
2017-05-17 12:19   ` Nicolas Goaziou
2017-05-18 12:21     ` Ludovic Courtès
2017-05-20  9:00       ` Nicolas Goaziou
2017-05-23 11:55         ` Ludovic Courtès
2017-05-23 12:13           ` Nicolas Goaziou

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=878tlwss3t.fsf@nicolasgoaziou.fr \
    --to=mail@nicolasgoaziou.fr \
    --cc=26956@debbugs.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).