diff mbox

gnu: Add schismtracker.

Message ID 87eg4qeeur.fsf@openmailbox.org
State New
Headers show

Commit Message

Kei Yamashita Sept. 11, 2016, 1:38 p.m. UTC
ludo@gnu.org (Ludovic Courtès) writes:

> Marius Bakke <mbakke@fastmail.com> skribis:
>
>> Kei Kebreau <kei@openmailbox.org> writes:
>
> [...]
>
>>> +    (home-page "http://schismtracker.org")
>>> +    (synopsis "Impulse Tracker clone")
>>
>> I think this should be more generic. The tagline from github works
>> pretty well: "Oldschool sample-based music composition tool".
>
> +1
>
>> The rest LGTM. But! The package records build time in version.c. I
>> managed to make it reproducible by adding a phase like this:
>>
>>           (add-before 'build 'make-reproducible
>>             (lambda _
>>               ;; Remove use of __DATE__ and __TIME__ for reproducibility.
>>               (substitute* "schism/version.c"
>>                 (("Schism Tracker built %s %s.*$")
>>                  (string-append "Schism Tracker version " ,version "\");")))
>>               #t))
>
> I would suggest making it a ‘snippet’ instead, as we usually do in
> such
> cases.
>
> Thanks Kei & Marius!
>
> Ludo’.

I think I got everything... Will this do?

*Forgot to cc the mailing list last time! :P
From 961dcf1e1e3ce45ea9d3f9c84fbe5562d52a1dd4 Mon Sep 17 00:00:00 2001
From: Kei Kebreau <kei@openmailbox.org>
Date: Sat, 10 Sep 2016 10:27:34 -0400
Subject: [PATCH] gnu: Add schismtracker.

* gnu/packages/music.scm (schismtracker): New variable.
---
 gnu/packages/music.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

Comments

Ludovic Courtès Sept. 13, 2016, 11:50 a.m. UTC | #1
Kei Kebreau <kei@openmailbox.org> skribis:

> From 961dcf1e1e3ce45ea9d3f9c84fbe5562d52a1dd4 Mon Sep 17 00:00:00 2001
> From: Kei Kebreau <kei@openmailbox.org>
> Date: Sat, 10 Sep 2016 10:27:34 -0400
> Subject: [PATCH] gnu: Add schismtracker.
>
> * gnu/packages/music.scm (schismtracker): New variable.

LGTM, thanks!

Ludo'.
Kei Yamashita Sept. 13, 2016, 2:33 p.m. UTC | #2
ludo@gnu.org (Ludovic Courtès) writes:

> Kei Kebreau <kei@openmailbox.org> skribis:
>
>> From 961dcf1e1e3ce45ea9d3f9c84fbe5562d52a1dd4 Mon Sep 17 00:00:00 2001
>> From: Kei Kebreau <kei@openmailbox.org>
>> Date: Sat, 10 Sep 2016 10:27:34 -0400
>> Subject: [PATCH] gnu: Add schismtracker.
>>
>> * gnu/packages/music.scm (schismtracker): New variable.
>
> LGTM, thanks!
>
> Ludo'.

Cool! Pushed as 89bcf3f.
diff mbox

Patch

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 88743aa..f294564 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1638,6 +1638,52 @@  for improved Amiga ProTracker 2/3 compatibility.")
     ;; 'src/milkyplay' is under Modified BSD, the rest is under GPL3 or later.
     (license (list license:bsd-3 license:gpl3+))))
 
+(define-public schismtracker
+  (package
+    (name "schismtracker")
+    (version "20160521")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://github.com/" name "/" name "/archive/"
+                    version ".tar.gz"))
+              (file-name (string-append name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0c6r24wm3rldm4j8cskl9xnixj3rwi3lnrhckw5gv43wpy6h4jcz"))
+              (modules '((guix build utils)))
+              (snippet
+               ;; Remove use of __DATE__ and __TIME__ for reproducibility.
+               `(substitute* "schism/version.c"
+                  (("Schism Tracker build %s %s.*$")
+                   (string-append "Schism Tracker version " ,version "\");"))))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'autoconf
+           (lambda _ (zero? (system* "autoreconf" "-vfi"))))
+         (add-before 'configure 'link-libm
+           (lambda _ (setenv "LIBS" "-lm") #t)))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)
+       ("python" ,python)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib) ; for asound dependency
+       ("libx11" ,libx11)
+       ("libxext" ,libxext)
+       ("sdl" ,sdl)))
+    (home-page "http://schismtracker.org")
+    (synopsis "Oldschool sample-based music composition tool")
+    (description
+     "Schism Tracker is a reimplementation of Impulse Tracker, a program used to
+create high quality music without the requirements of specialized, expensive
+equipment, and with a unique \"finger feel\" that is difficult to replicate in
+part.  The player is based on a highly modified version of the ModPlug engine,
+with a number of bugfixes and changes to improve IT playback.")
+    (license license:gpl2+)))
+
 (define-public moc
   (package
     (name "moc")