all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [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 external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.