Re: [PATCH] gnu: Add schismtracker.

2016-09-13 Thread Kei Kebreau
l...@gnu.org (Ludovic Courtès) writes:

> Kei Kebreau  skribis:
>
>> From 961dcf1e1e3ce45ea9d3f9c84fbe5562d52a1dd4 Mon Sep 17 00:00:00 2001
>> From: Kei Kebreau 
>> 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.


signature.asc
Description: PGP signature


Re: [PATCH] gnu: Add schismtracker.

2016-09-13 Thread Ludovic Courtès
Kei Kebreau  skribis:

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

LGTM, thanks!

Ludo'.



Re: [PATCH] gnu: Add schismtracker.

2016-09-11 Thread Kei Kebreau
l...@gnu.org (Ludovic Courtès) writes:

> Marius Bakke  skribis:
>
>> Kei Kebreau  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 
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(+)

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")
-- 
2.10.0



signature.asc
Description: PGP signature


Re: [PATCH] gnu: Add schismtracker.

2016-09-10 Thread Ludovic Courtès
Marius Bakke  skribis:

> Kei Kebreau  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’.



Re: [PATCH] gnu: Add schismtracker.

2016-09-10 Thread Marius Bakke
Kei Kebreau  writes:

> For those who love making tracks, X11 or not!
>
> If someone could look over this (and build it, please!), that would be
> nice. :-)

Thanks for this package! See comments below.

> From 91dbcb5c61de4b4b45f85b3bad8cf9e713c564b0 Mon Sep 17 00:00:00 2001
> From: Kei Kebreau 
> Date: Fri, 9 Sep 2016 18:16:12 -0400
> Subject: [PATCH] gnu: Add schismtracker.
>
> * gnu/packages/music.scm (schismtracker): New variable.
> ---
>  gnu/packages/music.scm | 40 
>  1 file changed, 40 insertions(+)
>
> diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
> index 88743aa..7c11771 100644
> --- a/gnu/packages/music.scm
> +++ b/gnu/packages/music.scm
> @@ -1638,6 +1638,46 @@ 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"
> +(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"))

I believe this should end with a #t, as the return value of setenv is
unspecified.

> +(native-inputs
> + `(("autoconf" ,autoconf)
> +   ("automake" ,automake)))
> +(inputs
> + `(("alsa-lib" ,alsa-lib) ; for asound dependency
> +   ("libx11" ,libx11)
> +   ("libxext" ,libxext)
> +   ("python" ,python-2)

Python is only used for building some documentation, so it can be moved
to native-inputs. Is there any reason for using python-2?

> +   ("sdl" ,sdl)))
> +(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".

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))

Please add that substitution somewhere. Can you send an updated patch?

Thanks!
Marius

> +(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")
> -- 
> 2.10.0