unofficial mirror of guix-patches@gnu.org 
 help / color / mirror / code / Atom feed
From: jgart via Guix-patches via <guix-patches@gnu.org>
To: "Maxime Devos" <maximedevos@telenet.be>, 47815@debbugs.gnu.org
Cc: "Bonface Munyoki K." <me@bonfacemunyoki.com>,
	Efraim Flashner <efraim@flashner.co.il>,
	"Bonface M. K." <bonfacemunyoki@gmail.com>
Subject: [bug#47815] [PATCH 1/3] gnu: music: python-abjad: Abjad Improvements.
Date: Fri, 16 Apr 2021 17:59:41 +0000	[thread overview]
Message-ID: <baed24528899846a824662f850a68427@dismail.de> (raw)
In-Reply-To: <97a0c2631437f698041b40786a4442e0ff4e5432.camel@telenet.be>

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

Hi Maxime,

Thank you for the review! I attached a new patch set. 

I reverted to Bonface's original idea of having lilypond only as a native input in the package definition.

I prefer this solution in order to solve the problem since it follows upstream's instructions of installing lilypond separately (https://abjad.github.io/first_steps/linux.html), doesn't pollute a guix user's profile with lilypond as you mentioned, and seems a bit cleaner since I don't have to touch the python sources in order to make them find the lilypond input.

If the user wants to produce a pdf then they can just include lilypond in their profile.

What do you think?

best regards,

jgart

ps

This caused me to have to add lilypond as a native-input to abjad-ext-rmakers (47816), abjad-ext-nauert (47817), and abjad-ext-ipython (47818) since those where building successfully before because they had abjad as a propagated input and abjad had lilypond as a propagated input. The above mentioned packages require lilypond for the tests.




April 16, 2021 6:12 AM, "Maxime Devos" <maximedevos@telenet.be> wrote:

> On Fri, 2021-04-16 at 04:57 +0000, jgart via Guix-patches via wrote:
> 
>> Hi Guix,
>> 
>> Below are some improvements to the python-abjad package that was merged the other day.
>> 
>> I changed the name to abjad, moved some inputs into their correct place,
> 
> Please move 'lilypond' from propagated-inputs to 'inputs', if sanely possible!
> This avoids polluting the profile with packages the user did not
> explicitely request. Of course, abjad still somehow has to find
> lilypond, so you might need to replace "lilypond" with
> 
> (string-append (assoc-ref inputs "lilypond") "/bin/lilypond")
> 
> somewhere in python-abjad's source code. You can use substitute*
> for that.
> 
> Greetings,
> Maxime.

[-- Attachment #2: 0001-gnu-Rename-python-abjad-to-abjad.patch --]
[-- Type: application/octet-stream, Size: 825 bytes --]

From 019e6c3a942078204b72aec2f75504cbac059073 Mon Sep 17 00:00:00 2001
From: jgart <jgart@dismail.de>
Date: Fri, 16 Apr 2021 00:16:19 -0400
Subject: [PATCH 1/6] gnu: Rename "python-abjad" to "abjad".

    * gnu/packages/music.scm (python-abjad): Rename to abjad.
---
 gnu/packages/music.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 265b8fdccf..e138541f13 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1502,9 +1502,9 @@ Guile.")
     ;; more than an hour of silence, so double the max silent time.
     (properties `((max-silent-time . 7200)))))
 
-(define-public python-abjad
+(define-public abjad
   (package
-    (name "python-abjad")
+    (name "abjad")
     (version "3.3")
     (source
      (origin
-- 
2.29.3


[-- Attachment #3: 0002-gnu-abjad-Move-python-ply-to-propagated-inputs.patch --]
[-- Type: application/octet-stream, Size: 1242 bytes --]

From 57f1e050afd7ab05cd93fbbe34b79f55be78da43 Mon Sep 17 00:00:00 2001
From: jgart <jgart@dismail.de>
Date: Fri, 16 Apr 2021 00:23:07 -0400
Subject: [PATCH 2/6] gnu: abjad: Move python-ply to propagated-inputs.

    * gnu/packages/music.scm (abjad): python-ply is used by
    abjad's lilypond parsers.
---
 gnu/packages/music.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index e138541f13..2991bf8fa1 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1538,7 +1538,6 @@ Guile.")
        ("python-iniconfig" ,python-iniconfig)
        ("python-isort" ,python-isort)
        ("python-mypy" ,python-mypy)
-       ("python-ply" ,python-ply)
        ("python-pytest" ,python-pytest-6)
        ("python-pytest-cov" ,python-pytest-cov)
        ("python-sphinx-autodoc-typehints" ,python-sphinx-autodoc-typehints)))
@@ -1546,6 +1545,7 @@ Guile.")
      `(("python-quicktions" ,python-quicktions)
        ("python-roman" ,python-roman)
        ("python-six" ,python-six)
+       ("python-ply" ,python-ply)
        ("python-uqbar" ,python-uqbar)))
     (home-page "https://abjad.github.io")
     (synopsis "Python API for building LilyPond files")
-- 
2.29.3


[-- Attachment #4: 0003-gnu-abjad-Improve-description.patch --]
[-- Type: application/octet-stream, Size: 1309 bytes --]

From 7a482b515518cd1a5f555e41ca0a43feeada6cc8 Mon Sep 17 00:00:00 2001
From: jgart <jgart@dismail.de>
Date: Fri, 16 Apr 2021 00:31:50 -0400
Subject: [PATCH 3/6] gnu: abjad: Improve description.

    * gnu/packages/music.scm (abjad)[description]: Improve abjad's
    description.
---
 gnu/packages/music.scm | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 2991bf8fa1..9d1375d6b3 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1550,7 +1550,12 @@ Guile.")
     (home-page "https://abjad.github.io")
     (synopsis "Python API for building LilyPond files")
     (description
-     "This package provides a Python API for building LilyPond files.")
+     "Abjad helps composers build up complex pieces of music notation in iterative
+and incremental ways.  Use Abjad to create a symbolic representation of all the notes,
+rests, chords, tuplets, beams and slurs in any score.  Because Abjad extends the Python
+programming language, you can use Abjad to make systematic changes to music as you work.
+Because Abjad wraps the LilyPond music notation package, you can use Abjad to control the
+typographic detail of symbols on the page.")
     (license license:expat)))
 
 (define-public non-sequencer
-- 
2.29.3


  parent reply	other threads:[~2021-04-16 18:20 UTC|newest]

Thread overview: 7+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <7988a3c09cc5efb9265b28483f036b1508514f67.camel@telenet.be>
2021-04-16  4:57 ` [bug#47815] [PATCH 1/3] gnu: music: python-abjad: Abjad Improvements jgart via Guix-patches via
2021-04-16 10:12   ` Maxime Devos
2021-04-16 17:59   ` jgart via Guix-patches via [this message]
2021-04-17  9:12     ` Maxime Devos
2021-04-17 16:10     ` jgart via Guix-patches via
2021-07-22  8:53     ` bug#47815: " Efraim Flashner
2021-04-17 16:19   ` [bug#47815] Fwd: Re: [bug#47815] " Maxime Devos

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=baed24528899846a824662f850a68427@dismail.de \
    --to=guix-patches@gnu.org \
    --cc=47815@debbugs.gnu.org \
    --cc=bonfacemunyoki@gmail.com \
    --cc=efraim@flashner.co.il \
    --cc=jgart@dismail.de \
    --cc=maximedevos@telenet.be \
    --cc=me@bonfacemunyoki.com \
    /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).