3
5
Fork 0
mirror of git://git.savannah.gnu.org/guix.git synced 2023-12-14 03:33:07 +01:00

gnu: Add orca-music.

* gnu/packages/music.scm (orca-music): New variable.
This commit is contained in:
Christopher Rodriguez 2022-06-12 22:48:05 -04:00 committed by Christine Lemmer-Webber
parent ccdc0cf252
commit a21583de54
No known key found for this signature in database
GPG key ID: 4BC025925FF8F4D3

View file

@ -6769,3 +6769,61 @@ local music library, along with flexible search capabilities. It includes
a tag editor, which can also be invoked as a standalone program, and further
supports streaming audio and feeds (such as podcasts).")
(license license:gpl2+)))
(define-public orca-music
(let ((commit "e55b8fdc3606341345938d5b24b2d9d9326afdb5") (revision "1"))
(package
(name "orca-music")
;; No upstream version numbers; Using commit instead.
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~rabbits/orca")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0xf5i9vd2wyrhvfp68j5gvd40iqm9rf6g1p74jan7d875g6kpppq"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
#:phases
(modify-phases %standard-phases
(delete 'configure) ;No autoconf
(replace 'build
(lambda* (#:key inputs outputs #:allow-other-keys)
(setenv "CC"
,(cc-for-target))
(invoke "make" "release")))
(add-after 'build 'rename-orca
(lambda* _
(invoke "mv" "-v" "./build/orca" "./build/orca-music")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")) (dest-bin (string-append
out "/bin"))
(share (string-append out "/share"))
(dest-examples (string-append share "/examples"))
(dest-doc (string-append share "/doc")))
(install-file "./build/orca-music" dest-bin)
(copy-recursively "./examples" dest-examples)
(install-file "./README.md" dest-doc)))))))
(inputs (list ncurses portmidi alsa-plugins
`(,alsa-plugins "pulseaudio")))
(native-inputs (list pkg-config))
(native-search-paths
(list (search-path-specification
(variable "TERMINFO_DIRS")
(files '("share/terminfo")))))
(synopsis "Musical live-coding environment")
(description
"This is the C implementation of the ORCΛ language and terminal
livecoding environment. It's designed to be power efficient. It can handle
large files, even if your terminal is small.
Orca is not a synthesizer, but a flexible livecoding environment capable of
sending MIDI, OSC, and UDP to your audio/visual interfaces like Ableton,
Renoise, VCV Rack, or SuperCollider.")
(home-page "https://100r.co/site/orca.html")
(license license:expat))))