diff options
author | Christopher Rodriguez <yewscion@gmail.com> | 2022-06-12 22:48:05 -0400 |
---|---|---|
committer | Christine Lemmer-Webber <cwebber@dustycloud.org> | 2022-06-26 15:38:46 -0400 |
commit | a21583de5452d11f1446c44fbb8bf8c1d28bfee2 (patch) | |
tree | e72af9062b6627bbd26d9bbd933af1be92c057ab /gnu/packages | |
parent | ccdc0cf2520928b2f5ae6befbe2fc7819e3a9df0 (diff) | |
download | guix-a21583de5452d11f1446c44fbb8bf8c1d28bfee2.tar guix-a21583de5452d11f1446c44fbb8bf8c1d28bfee2.tar.gz |
gnu: Add orca-music.
* gnu/packages/music.scm (orca-music): New variable.
Diffstat (limited to 'gnu/packages')
-rw-r--r-- | gnu/packages/music.scm | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 60cb176320..ce0fb2d500 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -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)))) |