summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristopher Rodriguez <yewscion@gmail.com>2022-06-12 22:48:05 -0400
committerChristine Lemmer-Webber <cwebber@dustycloud.org>2022-06-26 15:38:46 -0400
commita21583de5452d11f1446c44fbb8bf8c1d28bfee2 (patch)
treee72af9062b6627bbd26d9bbd933af1be92c057ab
parentgnu: Add guile-goblins. (diff)
downloadguix-a21583de5452d11f1446c44fbb8bf8c1d28bfee2.tar.gz
guix-a21583de5452d11f1446c44fbb8bf8c1d28bfee2.tar.bz2
guix-a21583de5452d11f1446c44fbb8bf8c1d28bfee2.tar.xz
gnu: Add orca-music.
* gnu/packages/music.scm (orca-music): New variable.
-rw-r--r--gnu/packages/music.scm58
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
6769a tag editor, which can also be invoked as a standalone program, and further 6769a tag editor, which can also be invoked as a standalone program, and further
6770supports streaming audio and feeds (such as podcasts).") 6770supports streaming audio and feeds (such as podcasts).")
6771 (license license:gpl2+))) 6771 (license license:gpl2+)))
6772
6773(define-public orca-music
6774 (let ((commit "e55b8fdc3606341345938d5b24b2d9d9326afdb5") (revision "1"))
6775 (package
6776 (name "orca-music")
6777 ;; No upstream version numbers; Using commit instead.
6778 (version (git-version "0" revision commit))
6779 (source (origin
6780 (method git-fetch)
6781 (uri (git-reference
6782 (url "https://git.sr.ht/~rabbits/orca")
6783 (commit commit)))
6784 (file-name (git-file-name name version))
6785 (sha256
6786 (base32
6787 "0xf5i9vd2wyrhvfp68j5gvd40iqm9rf6g1p74jan7d875g6kpppq"))))
6788 (build-system gnu-build-system)
6789 (arguments
6790 `(#:tests? #f
6791 #:phases
6792 (modify-phases %standard-phases
6793 (delete 'configure) ;No autoconf
6794 (replace 'build
6795 (lambda* (#:key inputs outputs #:allow-other-keys)
6796 (setenv "CC"
6797 ,(cc-for-target))
6798 (invoke "make" "release")))
6799 (add-after 'build 'rename-orca
6800 (lambda* _
6801 (invoke "mv" "-v" "./build/orca" "./build/orca-music")))
6802 (replace 'install
6803 (lambda* (#:key outputs #:allow-other-keys)
6804 (let* ((out (assoc-ref outputs "out")) (dest-bin (string-append
6805 out "/bin"))
6806 (share (string-append out "/share"))
6807 (dest-examples (string-append share "/examples"))
6808 (dest-doc (string-append share "/doc")))
6809 (install-file "./build/orca-music" dest-bin)
6810 (copy-recursively "./examples" dest-examples)
6811 (install-file "./README.md" dest-doc)))))))
6812 (inputs (list ncurses portmidi alsa-plugins
6813 `(,alsa-plugins "pulseaudio")))
6814 (native-inputs (list pkg-config))
6815 (native-search-paths
6816 (list (search-path-specification
6817 (variable "TERMINFO_DIRS")
6818 (files '("share/terminfo")))))
6819 (synopsis "Musical live-coding environment")
6820 (description
6821 "This is the C implementation of the ORCĪ› language and terminal
6822livecoding environment. It's designed to be power efficient. It can handle
6823large files, even if your terminal is small.
6824
6825Orca is not a synthesizer, but a flexible livecoding environment capable of
6826sending MIDI, OSC, and UDP to your audio/visual interfaces like Ableton,
6827Renoise, VCV Rack, or SuperCollider.")
6828 (home-page "https://100r.co/site/orca.html")
6829 (license license:expat))))