* [bug#62304] [PATCH] gnu: Add ctrlr.
@ 2023-03-20 21:38 Ricardo Wurmus
2023-03-20 22:20 ` Nicolas Goaziou
0 siblings, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2023-03-20 21:38 UTC (permalink / raw)
To: 62304; +Cc: Ricardo Wurmus
* gnu/packages/music.scm (ctrlr): New variable.
---
gnu/packages/music.scm | 65 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 65 insertions(+)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index acedfd4a26..489c5ba74c 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -122,6 +122,7 @@ (define-module (gnu packages music)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages game-development)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
@@ -478,6 +479,70 @@ (define-public clementine
;; qocoa is under MIT and CC by-sa for the icons.
license:cc-by-sa3.0))))
+(define-public ctrlr
+ ;; The latest release from 2021 does not have a build system.
+ (let ((commit "8aa00d82127acda42ad9ac9b7b479461e9436aa4")
+ (revision "1"))
+ (package
+ (name "ctrlr")
+ (version (git-version "5.5.9" revision commit))
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/RomanKubiak/ctrlr")
+ (commit commit)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1lpfkjp9y0wh2kj02isv8ixnxn3wyvrxhkx0rybwzswfiz5kqdlm"))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:cmake cmake ;needs 3.25
+ #:tests? #false ;there are none
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'pre-configure
+ (lambda _
+ ;; Override default location of fonts.conf. Without this no
+ ;; fonts will be rendered at all.
+ (substitute* "JUCE/modules/juce_graphics/native/juce_linux_Fonts.cpp"
+ (("/usr/share/fonts/fonts.conf")
+ "/run/current-system/profile/etc/fonts/fonts.conf"))
+ ;; Do not build the VST or AU plugins, because these require
+ ;; external proprietary SDKs.
+ (substitute* "CMakeLists.txt"
+ (("juce_set_vst2_sdk_path.*") "")
+ (("FORMATS VST3 VST AU Standalone")
+ "FORMATS Standalone")
+ ;; BFD also need -liberty.
+ (("list\\(APPEND ctrlrLibs \"bfd\"\\)" m)
+ (string-append m "
+list(APPEND ctrlrLibs \"iberty\")")))))
+ ;; The install target doesn't install ctrlr but JUCE helpers.
+ (replace 'install
+ (lambda _
+ (install-file "ctrlr_artefacts/RelWithDebInfo/Standalone/ctrlr"
+ (string-append #$output "/bin")))))))
+ (inputs
+ (list alsa-lib
+ boost
+ eudev
+ freetype
+ libiberty
+ libx11
+ webkitgtk))
+ (native-inputs
+ (list pkg-config))
+ (home-page "https://ctrlr.org/")
+ (synopsis "Control any MIDI-enabled hardware")
+ (description "Control any MIDI-enabled hardware: synthesizers, drum
+machines, samplers, effects. Create custom user interfaces for your MIDI
+hardware.")
+ (license (list license:gpl2+
+ license:gpl3 ;JUCE
+ license:bsd-3)))))
+
(define-public strawberry
(package
(name "strawberry")
--
2.39.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [bug#62304] [PATCH] gnu: Add ctrlr.
2023-03-20 21:38 [bug#62304] [PATCH] gnu: Add ctrlr Ricardo Wurmus
@ 2023-03-20 22:20 ` Nicolas Goaziou
2023-03-20 22:46 ` Ricardo Wurmus
0 siblings, 1 reply; 4+ messages in thread
From: Nicolas Goaziou @ 2023-03-20 22:20 UTC (permalink / raw)
To: Ricardo Wurmus; +Cc: 62304
Hello,
Ricardo Wurmus <rekado@elephly.net> writes:
> * gnu/packages/music.scm (ctrlr): New variable.
Thank you.
> + (description "Control any MIDI-enabled hardware: synthesizers, drum
> +machines, samplers, effects. Create custom user interfaces for your MIDI
> +hardware.")
The description should consist of complete sentences only. Otherwise
LGTM (but I didn't built it.)
Regards,
--
Nicolas Goaziou
^ permalink raw reply [flat|nested] 4+ messages in thread
* [bug#62304] [PATCH] gnu: Add ctrlr.
2023-03-20 22:20 ` Nicolas Goaziou
@ 2023-03-20 22:46 ` Ricardo Wurmus
2023-03-20 23:03 ` bug#62304: " Ricardo Wurmus
0 siblings, 1 reply; 4+ messages in thread
From: Ricardo Wurmus @ 2023-03-20 22:46 UTC (permalink / raw)
To: Nicolas Goaziou; +Cc: 62304
Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:
> Ricardo Wurmus <rekado@elephly.net> writes:
>
>> * gnu/packages/music.scm (ctrlr): New variable.
>
> Thank you.
>
>> + (description "Control any MIDI-enabled hardware: synthesizers, drum
>> +machines, samplers, effects. Create custom user interfaces for your MIDI
>> +hardware.")
>
> The description should consist of complete sentences only.
Are they not? These are full sentences of encouragement.
Thanks for the review!
--
Ricardo
^ permalink raw reply [flat|nested] 4+ messages in thread
* bug#62304: [PATCH] gnu: Add ctrlr.
2023-03-20 22:46 ` Ricardo Wurmus
@ 2023-03-20 23:03 ` Ricardo Wurmus
0 siblings, 0 replies; 4+ messages in thread
From: Ricardo Wurmus @ 2023-03-20 23:03 UTC (permalink / raw)
To: Nicolas Goaziou; +Cc: 62304-done
Ricardo Wurmus <rekado@elephly.net> writes:
> Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:
>
>> Ricardo Wurmus <rekado@elephly.net> writes:
>>
>>> * gnu/packages/music.scm (ctrlr): New variable.
>>
>> Thank you.
>>
>>> + (description "Control any MIDI-enabled hardware: synthesizers, drum
>>> +machines, samplers, effects. Create custom user interfaces for your MIDI
>>> +hardware.")
>>
>> The description should consist of complete sentences only.
>
> Are they not? These are full sentences of encouragement.
I’ve expanded the description a bit, replacing the exhortations with
more descriptive language.
--
Ricardo
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2023-03-20 23:05 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-20 21:38 [bug#62304] [PATCH] gnu: Add ctrlr Ricardo Wurmus
2023-03-20 22:20 ` Nicolas Goaziou
2023-03-20 22:46 ` Ricardo Wurmus
2023-03-20 23:03 ` bug#62304: " Ricardo Wurmus
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).