[PATCH] gnu: Add goattracker

  • Open
  • quality assurance status badge
Details
3 participants
  • Ludovic Courtès
  • Tobias Geerinckx-Rice
  • Mikhail Kirillov
Owner
unassigned
Submitted by
Mikhail Kirillov
Severity
normal
Merged with
M
M
Mikhail Kirillov wrote on 23 Sep 2019 02:56
(address . guix-patches@gnu.org)(name . Mikhail Kirillov)(address . w96k@member.fsf.org)
20190923005600.22799-1-w96k@member.fsf.org
* gnu/packages/music.scm: Add goattracker
---
gnu/packages/music.scm | 43 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 43 insertions(+)

Toggle diff (60 lines)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 4d1e11f260..5cedb36695 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -23,6 +23,7 @@
;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org>
;;; Copyright © 2019 raingloom <raingloom@protonmail.com>
+;;; Copyright © 2019 Mikhail Kirillov <w96k@member.fsf.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -4592,3 +4593,45 @@ with error and volume history, and advanced features.")
;; Most of the code is under GPL2+, but some abstract or helper classes
;; are under LGPL2.1.
(license (list license:gpl2+ license:lgpl2.1))))
+
+(define-public goattracker
+ (package
+ (name "goattracker")
+ (version "2.75")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://sourceforge/goattracker2/GoatTracker 2/"
+ version "/GoatTracker_" version ".zip"))
+ (sha256
+ (base32
+ "1km97nl7qvk6qc5l5j69wncbm76hf86j47sgzgr968423g0bxxlk"))))
+ (arguments
+ `(#:tests? #f
+ #:make-flags '("CC=gcc")
+ #:phases
+ (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'prepare
+ (lambda _
+ (chdir "src")
+ (invoke "make" "clean")
+ #t))
+ (replace 'install
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (chdir "../linux")
+ (invoke "ln" "-s" "goattrk2" "goattracker")
+ (copy-recursively "./" (string-append
+ (assoc-ref %outputs "out")
+ "/bin"))
+ #t)))))
+ (native-inputs
+ `(("sdl" ,sdl)
+ ("unzip" ,unzip)))
+ (build-system gnu-build-system)
+ (synopsis "Crossplatform C64 music tracker")
+ (description "GoatTracker is a cross-platform tracker written by Lasse
+Öörni, producing SID chiptune music for the Commodore 64, and released with
+source code under the GPL.")
+ (home-page "https://goattracker2.sourceforge.io/")
+ (license license:gpl2)))
--
2.23.0
T
T
Tobias Geerinckx-Rice wrote on 23 Sep 2019 06:10
(no subject)
(name . GNU bug tracker automated control server)(address . control@debbugs.gnu.org)
8736gn3b6k.fsf@nckx
merge 37486 37487
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEfo+u0AlEeO9y5k0W2Imw8BjFSTwFAl2IRaMACgkQ2Imw8BjF
STwIJg//ekHMlMoJJAD37YI8xopxoctH1YTk/qh97vsz0SVKr7jm6hh0P3ZKv69K
4hZeRIOEiXwQ6Iw8SEsCJowQGBvF3sENAAp7j72H2W6ZoepVx1nB/Z4a0hKPmsRw
ABnecQymddaflBaphhHjD06voN1E7IKnD20j3nObFQohMS/gbqXHyU9H3dweW9Pk
c5Q92G8XDPDlBXVMTLcj8apEV6zjzLVC0sASMBxeRlsuq4px2MuI5WJtPx50Gbzf
LnBfghYbma2d9kF5sqEkSknUGuSapeXcAgHqIBdEy7edSiBtXi+/zlqWTa7HSzK9
pp40d453jvTyQriP8XYkQS8rIDx7XiZV5zmCid5/+3EOXWrUFRyL6hqDPrGqgZn9
p1Xjg32UTD0jUX9WMJYbdnuAitE9oMdXWS9aZbbrEmEYbqKLCthppOrNe/r0lleC
GTK9pacA4FC8zA/2nqojQ5hM/2oUUPuhuUDNh5nMuHXul7KA9GJ/GL9HwnGjPyBX
o/52quTDJq6y594pDMSv4rli/+JgwT5xv6aRi0deXyNsthdpoDsfe/7MYwmhAXD4
GEpfnvJtLUUNUCh1RnNET5f7+K/woE5JYGQBfgPbXk+ax/Yg6+dht47zU2NqN4zi
UGTRniVF3WcCwU3nRQVaPtowGefUO9PgR5DcaQtE9ObJtf56h1g=
=0JLG
-----END PGP SIGNATURE-----

L
L
Ludovic Courtès wrote on 6 Oct 2019 14:45
Re: [bug#37486] [PATCH] gnu: Add goattracker
(name . Mikhail Kirillov)(address . w96k@member.fsf.org)(address . 37486@debbugs.gnu.org)
87bluudov9.fsf@gnu.org
Hi Mikhail,

Mikhail Kirillov <w96k@member.fsf.org> skribis:

Toggle quote (2 lines)
> * gnu/packages/music.scm: Add goattracker

Thanks for the updated patch.

I started looking into it, fixing an issue reported by ‘guix lint’, and
cleaning up the source, leading to the following patch.

However, goattracker no fails to build because of a missing ‘.bin’ file.

Do you know what these ‘.bin’ (and ‘.dat’) files are, what their license
is, and what can be done with them?

Thanks in advance,
Ludo’.
Toggle diff (37 lines)
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 7216075c34..84b602ae36 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -4598,7 +4598,14 @@ with error and volume history, and advanced features.")
version "/GoatTracker_" version ".zip"))
(sha256
(base32
- "1km97nl7qvk6qc5l5j69wncbm76hf86j47sgzgr968423g0bxxlk"))))
+ "1km97nl7qvk6qc5l5j69wncbm76hf86j47sgzgr968423g0bxxlk"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ ;; Remove binaries from the source tarball.
+ (for-each delete-file
+ (find-files "." "\\.(o|dll|exe|bin)$"))
+ #t))))
(arguments
`(#:tests? #f
#:make-flags '("CC=gcc")
@@ -4613,7 +4620,7 @@ with error and volume history, and advanced features.")
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(chdir "../linux")
- (invoke "ln" "-s" "goattrk2" "goattracker")
+ (symlink "goattrk2" "goattracker")
(copy-recursively "./" (string-append
(assoc-ref %outputs "out")
"/bin"))
@@ -4626,5 +4633,5 @@ with error and volume history, and advanced features.")
(description "GoatTracker is a cross-platform tracker written by Lasse
Öörni, producing SID chiptune music for the Commodore 64, and released with
source code under the GPL.")
- (home-page "https://goattracker2.sourceforge.io/")
- (license license:gpl2)))
+ (home-page "http://goattracker2.sourceforge.net/")
+ (license license:gpl2+)))
L
L
Ludovic Courtès wrote on 19 Nov 2019 10:38
(name . Mikhail Kirillov)(address . w96k@member.fsf.org)(address . 37486@debbugs.gnu.org)
87k17wrys4.fsf@gnu.org
Hi Mikhail,

Did you have a chance to look further into this patch, based on the
comments below?


Thanks in advance,
Ludo’.

Ludovic Courtès <ludo@gnu.org> skribis:

Toggle quote (56 lines)
> Hi Mikhail,
>
> Mikhail Kirillov <w96k@member.fsf.org> skribis:
>
>> * gnu/packages/music.scm: Add goattracker
>
> Thanks for the updated patch.
>
> I started looking into it, fixing an issue reported by ‘guix lint’, and
> cleaning up the source, leading to the following patch.
>
> However, goattracker no fails to build because of a missing ‘.bin’ file.
>
> Do you know what these ‘.bin’ (and ‘.dat’) files are, what their license
> is, and what can be done with them?
>
> Thanks in advance,
> Ludo’.
>
> diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
> index 7216075c34..84b602ae36 100644
> --- a/gnu/packages/music.scm
> +++ b/gnu/packages/music.scm
> @@ -4598,7 +4598,14 @@ with error and volume history, and advanced features.")
> version "/GoatTracker_" version ".zip"))
> (sha256
> (base32
> - "1km97nl7qvk6qc5l5j69wncbm76hf86j47sgzgr968423g0bxxlk"))))
> + "1km97nl7qvk6qc5l5j69wncbm76hf86j47sgzgr968423g0bxxlk"))
> + (modules '((guix build utils)))
> + (snippet
> + '(begin
> + ;; Remove binaries from the source tarball.
> + (for-each delete-file
> + (find-files "." "\\.(o|dll|exe|bin)$"))
> + #t))))
> (arguments
> `(#:tests? #f
> #:make-flags '("CC=gcc")
> @@ -4613,7 +4620,7 @@ with error and volume history, and advanced features.")
> (replace 'install
> (lambda* (#:key inputs outputs #:allow-other-keys)
> (chdir "../linux")
> - (invoke "ln" "-s" "goattrk2" "goattracker")
> + (symlink "goattrk2" "goattracker")
> (copy-recursively "./" (string-append
> (assoc-ref %outputs "out")
> "/bin"))
> @@ -4626,5 +4633,5 @@ with error and volume history, and advanced features.")
> (description "GoatTracker is a cross-platform tracker written by Lasse
> Öörni, producing SID chiptune music for the Commodore 64, and released with
> source code under the GPL.")
> - (home-page "https://goattracker2.sourceforge.io/")
> - (license license:gpl2)))
> + (home-page "http://goattracker2.sourceforge.net/")
> + (license license:gpl2+)))
?