guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Add Pure Data.


From: Leo Famulari
Subject: Re: [PATCH] Add Pure Data.
Date: Tue, 18 Aug 2015 13:24:52 -0400

I couldn't get this patch to build as is. I think there are some parentheses
problems, specifically here:
> +    (home-page "http://puredata.info";;)

> * gnu/packages/music.scm (pd): New variable.
Also, I'm not sure if Pure Data belongs under music. The description talks
about music, visual arts, and other areas. I think it's really more of a
programming tool that happens to specialize in the arts.

What follows is a WIP patch that puts Pure Data in its own package. I was able
to get a 440hz tone out of my laptop speakers :) One problem is that the
software cannot find the Deja Vu Sans Mono font it is looking for... and the
fallback font rendering is basically unreadable. Any advice?


>From 6498d9397a40682375fdf23fb8c2f4e7ffb69179 Mon Sep 17 00:00:00 2001
From: Leo Famulari <address@hidden>
Date: Tue, 18 Aug 2015 12:57:08 -0400
Subject: [PATCH] gnu: Add Pure Data.

* gnu/packages/pd.scm: New file.
* gnu-system.am: Add it.
---
 gnu-system.am       |  1 +
 gnu/packages/pd.scm | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 71 insertions(+)
 create mode 100644 gnu/packages/pd.scm

diff --git a/gnu-system.am b/gnu-system.am
index 9f46f7b..c39ee49 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -242,6 +242,7 @@ GNU_SYSTEM_MODULES =                                \
   gnu/packages/patchutils.scm                  \
   gnu/packages/pciutils.scm                    \
   gnu/packages/pcre.scm                                \
+  gnu/packages/pd.scm                          \
   gnu/packages/pdf.scm                         \
   gnu/packages/pem.scm                         \
   gnu/packages/perl.scm                                \
diff --git a/gnu/packages/pd.scm b/gnu/packages/pd.scm
new file mode 100644
index 0000000..0b4275e
--- /dev/null
+++ b/gnu/packages/pd.scm
@@ -0,0 +1,70 @@
+(define-module (gnu packages pd)
+  #:use-module (guix build-system gnu)
+  #:use-module (guix download)
+  #:use-module (guix licenses)
+  #:use-module (guix packages)
+  #:use-module (guix utils)
+  #:use-module (gnu packages audio)
+  #:use-module (gnu packages autotools)
+  #:use-module (gnu packages fonts)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages linux)
+  #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages tcl)
+  #:use-module (gnu packages zip)
+  #:use-module ((srfi srfi-1) #:select (last)))
+
+(define-public pd
+  (package
+    (name "pd")
+    (version "0.45.4")
+    (source (origin
+              (method url-fetch)
+              (uri
+               (string-append "mirror://sourceforge/pure-data/pure-data/"
+                       version "/pd-" (version-major+minor version)
+                       "-" (last (string-split version #\.))
+                       ".src.tar.gz"))
+              (sha256
+               (base32
+                "1ls2ap5yi2zxvmr247621g4jx0hhfds4j5704a050bn2n3l0va2p"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ; no "check" target
+       #:phases
+       (modify-phases %standard-phases
+         (add-before
+          'configure 'fix-wish-path
+          (lambda _
+            (substitute* "src/s_inter.c"
+              (("  wish ") (string-append "  " (which "wish8.6") " ")))
+            (substitute* "tcl/pd-gui.tcl"
+              (("exec wish ") (string-append "exec " (which "wish8.6") " ")))
+            #t))
+         (add-after
+          'unpack 'autoconf
+          (lambda _ (zero? (system* "autoreconf" "-vfi")))))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("libtool" ,libtool)
+       ("gettext" ,gnu-gettext)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib)
+       ("font-dejavu" ,font-dejavu)
+       ("jack" ,jack-1)
+       ("tk" ,tk)))
+    (home-page "http://puredata.info";)
+    (synopsis "Visual programming language")
+    (description
+     "Pure Data (aka Pd) is a visual programming language.  Pd enables
+musicians, visual artists, performers, researchers, and developers to create
+software graphically, without writing lines of code.  Pd is used to process
+and generate sound, video, 2D/3D graphics, and interface sensors, input
+devices, and MIDI.  Pd can easily work over local and remote networks to
+integrate wearable technology, motor systems, lighting rigs, and other
+equipment.  Pd is suitable for learning basic multimedia processing and visual
+programming methods as well as for realizing complex systems for large-scale
+projects.")
+    (license bsd-3)))
-- 
2.4.3




reply via email to

[Prev in Thread] Current Thread [Next in Thread]