unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Add schismtracker.
@ 2016-09-09 22:19 Kei Kebreau
  2016-09-10  7:34 ` Marius Bakke
  0 siblings, 1 reply; 6+ messages in thread
From: Kei Kebreau @ 2016-09-09 22:19 UTC (permalink / raw)
  To: guix-devel


[-- Attachment #1.1: Type: text/plain, Size: 128 bytes --]

For those who love making tracks, X11 or not!

If someone could look over this (and build it, please!), that would be
nice. :-)

[-- Attachment #1.2: 0001-gnu-Add-schismtracker.patch --]
[-- Type: text/plain, Size: 2411 bytes --]

From 91dbcb5c61de4b4b45f85b3bad8cf9e713c564b0 Mon Sep 17 00:00:00 2001
From: Kei Kebreau <kei@openmailbox.org>
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"))))))
+    (native-inputs
+     `(("autoconf" ,autoconf)
+       ("automake" ,automake)))
+    (inputs
+     `(("alsa-lib" ,alsa-lib) ; for asound dependency
+       ("libx11" ,libx11)
+       ("libxext" ,libxext)
+       ("python" ,python-2)
+       ("sdl" ,sdl)))
+    (home-page "http://schismtracker.org")
+    (synopsis "Impulse Tracker clone")
+    (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


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add schismtracker.
  2016-09-09 22:19 [PATCH] gnu: Add schismtracker Kei Kebreau
@ 2016-09-10  7:34 ` Marius Bakke
  2016-09-10 12:55   ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Marius Bakke @ 2016-09-10  7:34 UTC (permalink / raw)
  To: Kei Kebreau, guix-devel

Kei Kebreau <kei@openmailbox.org> 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 <kei@openmailbox.org>
> 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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add schismtracker.
  2016-09-10  7:34 ` Marius Bakke
@ 2016-09-10 12:55   ` Ludovic Courtès
       [not found]     ` <87mvjfg74n.fsf@openmailbox.org>
  0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2016-09-10 12:55 UTC (permalink / raw)
  To: Marius Bakke; +Cc: guix-devel

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

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add schismtracker.
       [not found]     ` <87mvjfg74n.fsf@openmailbox.org>
@ 2016-09-11 13:38       ` Kei Kebreau
  2016-09-13 11:50         ` Ludovic Courtès
  0 siblings, 1 reply; 6+ messages in thread
From: Kei Kebreau @ 2016-09-11 13:38 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel


[-- Attachment #1.1: Type: text/plain, Size: 1136 bytes --]

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

[-- Attachment #1.2: 0001-gnu-Add-schismtracker.patch --]
[-- Type: text/plain, Size: 2780 bytes --]

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

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


[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add schismtracker.
  2016-09-11 13:38       ` Kei Kebreau
@ 2016-09-13 11:50         ` Ludovic Courtès
  2016-09-13 14:33           ` Kei Kebreau
  0 siblings, 1 reply; 6+ messages in thread
From: Ludovic Courtès @ 2016-09-13 11:50 UTC (permalink / raw)
  To: Kei Kebreau; +Cc: guix-devel

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'.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] gnu: Add schismtracker.
  2016-09-13 11:50         ` Ludovic Courtès
@ 2016-09-13 14:33           ` Kei Kebreau
  0 siblings, 0 replies; 6+ messages in thread
From: Kei Kebreau @ 2016-09-13 14:33 UTC (permalink / raw)
  To: Ludovic Courtès; +Cc: guix-devel

[-- Attachment #1: Type: text/plain, Size: 423 bytes --]

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.

[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 818 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2016-09-13 14:33 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-09-09 22:19 [PATCH] gnu: Add schismtracker Kei Kebreau
2016-09-10  7:34 ` Marius Bakke
2016-09-10 12:55   ` Ludovic Courtès
     [not found]     ` <87mvjfg74n.fsf@openmailbox.org>
2016-09-11 13:38       ` Kei Kebreau
2016-09-13 11:50         ` Ludovic Courtès
2016-09-13 14:33           ` Kei Kebreau

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