gnu: solfege: Update to 3.23.5pre2.
* gnu/packages/music.scm (solfege): Update to 3.23.5pre2. [source]: Use git. [arguments]: Use gexps. Remove trailing #t. [phases]{patch-python-shebangs, wrap-program}: Use search-file-input. {fix-version}: New phase. [inputs]: Use new style. Remove python-2 and python2-pygtk. Add python-wrapper and python-pygobject. [native-inputs]: Add autoconf and automake. Use latest texinfo.
parent
984a04210a
commit
8ab2f519d4
|
@ -2008,21 +2008,35 @@ Key features include:
|
||||||
(define-public solfege
|
(define-public solfege
|
||||||
(package
|
(package
|
||||||
(name "solfege")
|
(name "solfege")
|
||||||
(version "3.22.2")
|
(version "3.23.5pre2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method git-fetch)
|
||||||
(uri (string-append
|
(uri (git-reference
|
||||||
"mirror://gnu/solfege/solfege-"
|
(url "https://git.savannah.gnu.org/git/solfege.git")
|
||||||
version ".tar.xz"))
|
(commit version)))
|
||||||
|
(file-name (git-file-name name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1w25rxdbj907nsx285k9nm480pvy12w3yknfh4n1dfv17cwy072i"))))
|
"1lmzp4kn0xh58yc8gzriz1i34g5qaa2xxrxzpmr7v9jyk19dqmcm"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; xmllint attempts to download DTD
|
(list
|
||||||
|
#:tests? #f ;xmllint attempts to download DTD
|
||||||
#:test-target "test"
|
#:test-target "test"
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
#~(modify-phases %standard-phases
|
||||||
|
(add-after 'unpack 'set-version
|
||||||
|
(lambda _
|
||||||
|
(substitute* "autogen.sh"
|
||||||
|
(("python3 -c \"import tools.*create_versions_file.*")
|
||||||
|
(string-append "echo \"version_info = '"
|
||||||
|
#$version "' > solfege/_version.py\"\n")))
|
||||||
|
(substitute* "Makefile.in"
|
||||||
|
(("\\$\\(PYTHON) -c \"import tools.*create_versions_file.*")
|
||||||
|
"true\n"))
|
||||||
|
(substitute* "solfege/buildinfo.py.in"
|
||||||
|
(("from solfege._version import version_info")
|
||||||
|
"version_info = {'git_sha': 'N/A'}"))))
|
||||||
(add-after 'unpack 'fix-configuration
|
(add-after 'unpack 'fix-configuration
|
||||||
(lambda* (#:key inputs #:allow-other-keys)
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
(substitute* "default.config"
|
(substitute* "default.config"
|
||||||
|
@ -2031,49 +2045,48 @@ Key features include:
|
||||||
(("/usr/bin/mpg123") "mpg123")
|
(("/usr/bin/mpg123") "mpg123")
|
||||||
(("/usr/bin/ogg123") "ogg123"))))
|
(("/usr/bin/ogg123") "ogg123"))))
|
||||||
(add-before 'build 'patch-python-shebangs
|
(add-before 'build 'patch-python-shebangs
|
||||||
(lambda _
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
;; Two python scripts begin with a Unicode BOM, so patch-shebang
|
;; Two python scripts begin with a Unicode BOM, so patch-shebang
|
||||||
;; has no effect.
|
;; has no effect.
|
||||||
(substitute* '("solfege/parsetree.py"
|
(substitute* '("solfege/parsetree.py"
|
||||||
"solfege/presetup.py")
|
"solfege/presetup.py")
|
||||||
(("#!/usr/bin/python") (string-append "#!" (which "python"))))))
|
(("#!/usr/bin/python")
|
||||||
|
(string-append "#!" search-input-file inputs "bin/python")))))
|
||||||
(add-before 'build 'add-sitedirs
|
(add-before 'build 'add-sitedirs
|
||||||
;; .pth files are not automatically interpreted unless the
|
;; .pth files are not automatically interpreted unless the
|
||||||
;; directories containing them are added as "sites". The directories
|
;; directories containing them are added as "sites". The
|
||||||
;; are then added to those in the PYTHONPATH. This is required for
|
;; directories are then added to those in the PYTHONPATH. This is
|
||||||
;; the operation of pygtk and pygobject.
|
;; required for the operation of pygtk and pygobject.
|
||||||
(lambda _
|
(lambda _
|
||||||
(substitute* "run-solfege.py"
|
(substitute* "run-solfege.py"
|
||||||
(("import os")
|
(("import os")
|
||||||
"import os, site
|
"import os, site
|
||||||
for path in [path for path in sys.path if 'site-packages' in path]: site.addsitedir(path)"))
|
for path in [path for path in sys.path if 'site-packages' in path]: site.addsitedir(path)"))))
|
||||||
#t))
|
|
||||||
(add-before 'build 'adjust-config-file-prefix
|
(add-before 'build 'adjust-config-file-prefix
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda _
|
||||||
(substitute* "run-solfege.py"
|
(substitute* "run-solfege.py"
|
||||||
(("prefix = os.path.*$")
|
(("prefix = os.path.*$")
|
||||||
(string-append "prefix = " (assoc-ref outputs "out"))))
|
(string-append "prefix = " #$output)))))
|
||||||
#t))
|
|
||||||
(add-after 'install 'wrap-program
|
(add-after 'install 'wrap-program
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
;; Make sure 'solfege' runs with the correct PYTHONPATH.
|
;; Make sure 'solfege' runs with the correct PYTHONPATH.
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
(let ((path (getenv "GUIX_PYTHONPATH")))
|
||||||
(path (getenv "GUIX_PYTHONPATH")))
|
(wrap-program (search-input-file outputs "bin/solfege")
|
||||||
(wrap-program (string-append out "/bin/solfege")
|
`("GUIX_PYTHONPATH" ":" prefix (,path)))))))))
|
||||||
`("GUIX_PYTHONPATH" ":" prefix (,path))))
|
|
||||||
#t)))))
|
|
||||||
(inputs
|
(inputs
|
||||||
`(("python" ,python-2)
|
(list python-wrapper
|
||||||
("pygtk" ,python2-pygtk)
|
python-pygobject
|
||||||
("gettext" ,gettext-minimal)
|
gettext-minimal
|
||||||
("gtk" ,gtk+)
|
gtk+
|
||||||
("lilypond" ,lilypond)))
|
lilypond))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
(list pkg-config
|
(list autoconf
|
||||||
|
automake
|
||||||
|
pkg-config
|
||||||
txt2man
|
txt2man
|
||||||
libxml2 ; for tests
|
libxml2 ; for tests
|
||||||
ghostscript
|
ghostscript
|
||||||
texinfo-5))
|
texinfo))
|
||||||
(home-page "https://www.gnu.org/software/solfege/")
|
(home-page "https://www.gnu.org/software/solfege/")
|
||||||
(synopsis "Ear training")
|
(synopsis "Ear training")
|
||||||
(description
|
(description
|
||||||
|
|
Reference in New Issue