GNU bug report logs -
#62550
[PATCH] gnu: Add alienblaster.
Previous Next
Reported by: Yovan Naumovski <yovan <at> gorski.stream>
Date: Thu, 30 Mar 2023 19:28:02 UTC
Severity: normal
Tags: patch
Done: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 62550 in the body.
You can then email your comments to 62550 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
guix-patches <at> gnu.org
:
bug#62550
; Package
guix-patches
.
(Thu, 30 Mar 2023 19:28:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Yovan Naumovski <yovan <at> gorski.stream>
:
New bug report received and forwarded. Copy sent to
guix-patches <at> gnu.org
.
(Thu, 30 Mar 2023 19:28:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
* gnu/packages/games.scm (alienblaster): New variable.
---
gnu/packages/games.scm | 58 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 58 insertions(+)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 5825b8d936..be42a6a51a 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -3705,6 +3705,64 @@ (define-public mars
match, cannon keep, and grave-itation pit.")
(license license:gpl3+))))
+(define-public alienblaster
+ (package
+ (name "alienblaster")
+ (version "1.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://www.schwardtnet.de/alienblaster/archives/"
+ name "-" version ".tgz"))
+ (sha256
+ (base32
+ "104rfsfsv446n4y52p5zw9h8mhgjyrbca8fpyhnxkkasq141a264"))))
+ (build-system gnu-build-system)
+ (inputs (list sdl sdl-mixer))
+ (arguments
+ '(#:tests? #f ;; no tests
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'fix-sdl-paths
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (share (string-append out "/share"))
+ (sdl-mixer (assoc-ref inputs "sdl-mixer")))
+
+ ;; fix name and append path to SDL_mixer.h
+ (substitute* "src/Makefile"
+ (("GAME_NAME=alienBlaster")
+ "GAME_NAME=alienblaster")
+ (("SDL_FLAGS=\\$\\(shell sdl-config --cflags\\)" line)
+ (string-append line " -I" sdl-mixer "/include/SDL")))
+
+ ;; substitute relative paths in .cfg and source/header files
+ (substitute* (find-files "./cfg")
+ (("(\\./)?images") (string-append share "/images")))
+ (substitute* (list "src/global.h" "src/global.cc")
+ (("./images") (string-append share "/images"))
+ (("./sound") (string-append share "/sound"))
+ (("./cfg") (string-append share "/cfg"))))))
+
+ (delete 'configure)
+
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (install-file "alienblaster" bin)
+ (for-each
+ (lambda (dir)
+ (copy-recursively dir (string-append out "/share/" dir)))
+ '("images" "sound" "cfg")))
+ #t)))))
+ (home-page "http://www.schwardtnet.de/alienblaster/")
+ (synopsis "Action-loaded 2D arcade shooter game")
+ (description "Alien Blaster is an action-loaded 2D arcade shooter
+game. Your mission in the game is simple: stop the invasion of the aliens by
+blasting them. Simultaneous two-player mode is available.")
+ (license license:gpl2)))
+
(define glkterm
(package
(name "glkterm")
--
2.39.2
Information forwarded
to
guix-patches <at> gnu.org
:
bug#62550
; Package
guix-patches
.
(Fri, 31 Mar 2023 10:42:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 62550 <at> debbugs.gnu.org (full text, mbox):
Hi Yovan,
On 2023-03-30 20:26, Yovan Naumovski via Guix-patches via wrote:
> + (arguments
> + '(#:tests? #f ;; no tests
> + #:phases
> + (modify-phases %standard-phases
> + (add-after 'unpack 'fix-sdl-paths
> + (lambda* (#:key inputs outputs #:allow-other-keys)
> + (let* ((out (assoc-ref outputs "out"))
> + (share (string-append out "/share"))
> + (sdl-mixer (assoc-ref inputs "sdl-mixer")))
> +
> + ;; fix name and append path to SDL_mixer.h
> + (substitute* "src/Makefile"
> + (("GAME_NAME=alienBlaster")
> + "GAME_NAME=alienblaster")
> + (("SDL_FLAGS=\\$\\(shell sdl-config --cflags\\)" line)
> + (string-append line " -I" sdl-mixer "/include/SDL")))
> +
> + ;; substitute relative paths in .cfg and source/header files
> + (substitute* (find-files "./cfg")
> + (("(\\./)?images") (string-append share "/images")))
> + (substitute* (list "src/global.h" "src/global.cc")
> + (("./images") (string-append share "/images"))
> + (("./sound") (string-append share "/sound"))
> + (("./cfg") (string-append share "/cfg"))))))
> +
> + (delete 'configure)
> +
> + (replace 'install
> + (lambda* (#:key outputs #:allow-other-keys)
> + (let* ((out (assoc-ref outputs "out"))
> + (bin (string-append out "/bin")))
> + (install-file "alienblaster" bin)
> + (for-each
> + (lambda (dir)
> + (copy-recursively dir (string-append out "/share/" dir)))
> + '("images" "sound" "cfg")))
> + #t)))))
You should use G-Expressions here, i.e.
(arguments
(list
#:tests? #f ; no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-sdl-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(share (string-append #$output "/share"))
(sdl-mixer (assoc-ref inputs "sdl-mixer")))
;; fix name and append path to SDL_mixer.h
(substitute* "src/Makefile"
(("GAME_NAME=alienBlaster")
"GAME_NAME=alienblaster")
(("SDL_FLAGS=\\$\\(shell sdl-config --cflags\\)" line)
(string-append line " -I" sdl-mixer "/include/SDL")))
;; substitute relative paths in .cfg and source/header files
(substitute* (find-files "./cfg")
(("(\\./)?images") (string-append share "/images")))
(substitute* (list "src/global.h" "src/global.cc")
(("./images") (string-append share "/images"))
(("./sound") (string-append share "/sound"))
(("./cfg") (string-append share "/cfg"))))))
… )
Take a look at the existing packages that use G-Expressions for inspiration.
(examples that come to mind are mympd, libavif, autokey, rng-tools,
dropwatch, nvme-cli, …)
> + (home-page "http://www.schwardtnet.de/alienblaster/")
> + (synopsis "Action-loaded 2D arcade shooter game")
> + (description "Alien Blaster is an action-loaded 2D arcade shooter
> +game. Your mission in the game is simple: stop the invasion of the aliens by
> +blasting them. Simultaneous two-player mode is available.")
Keep the sentences separated with two spaces between them. (Texinfo syntax)
Thanks,
Bruno
Information forwarded
to
guix-patches <at> gnu.org
:
bug#62550
; Package
guix-patches
.
(Fri, 31 Mar 2023 16:05:02 GMT)
Full text and
rfc822 format available.
Message #11 received at 62550 <at> debbugs.gnu.org (full text, mbox):
Thank you for your tips and feedback Bruno!
* gnu/packages/games.scm (alienblaster): New variable.
---
gnu/packages/games.scm | 55 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 55 insertions(+)
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 5825b8d936..394f68cd50 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -3705,6 +3705,61 @@ (define-public mars
match, cannon keep, and grave-itation pit.")
(license license:gpl3+))))
+(define-public alienblaster
+ (package
+ (name "alienblaster")
+ (version "1.1.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "http://www.schwardtnet.de/alienblaster/archives/"
+ name "-" version ".tgz"))
+ (sha256
+ (base32
+ "104rfsfsv446n4y52p5zw9h8mhgjyrbca8fpyhnxkkasq141a264"))))
+ (build-system gnu-build-system)
+ (inputs (list sdl sdl-mixer))
+ (arguments
+ (list
+ #:tests? #f ; no tests
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'fix-sdl-paths
+ (lambda _
+ (let ((share (string-append #$output "/share")))
+ ;; fix name and append path to SDL_mixer.h
+ (substitute* "src/Makefile"
+ (("GAME_NAME=alienBlaster")
+ "GAME_NAME=alienblaster")
+ (("SDL_FLAGS=\\$\\(shell sdl-config --cflags\\)" line)
+ (string-append line " -I" #$sdl-mixer "/include/SDL")))
+
+ ;; substitute relative paths in .cfg and source/header files
+ (substitute* (find-files "./cfg")
+ (("(\\./)?images") (string-append share "/images")))
+ (substitute* (list "src/global.h" "src/global.cc")
+ (("./images") (string-append share "/images"))
+ (("./sound") (string-append share "/sound"))
+ (("./cfg") (string-append share "/cfg"))))))
+
+ (delete 'configure)
+
+ (replace 'install
+ (lambda _
+ (let ((bin (string-append #$output "/bin")))
+ (install-file "alienblaster" bin)
+ (for-each
+ (lambda (dir)
+ (copy-recursively dir (string-append #$output "/share/" dir)))
+ '("images" "sound" "cfg")))
+ #t)))))
+ (home-page "http://www.schwardtnet.de/alienblaster/")
+ (synopsis "Action-loaded 2D arcade shooter game")
+ (description "Alien Blaster is an action-loaded 2D arcade shooter
+game. Your mission in the game is simple: stop the invasion of the aliens by
+blasting them. Simultaneous two-player mode is available.")
+ (license license:gpl2)))
+
(define glkterm
(package
(name "glkterm")
--
2.39.2
Information forwarded
to
guix-patches <at> gnu.org
:
bug#62550
; Package
guix-patches
.
(Fri, 21 Apr 2023 09:00:03 GMT)
Full text and
rfc822 format available.
Message #14 received at submit <at> debbugs.gnu.org (full text, mbox):
Hello,
Yovan Naumovski via Guix-patches via <guix-patches <at> gnu.org> writes:
> * gnu/packages/games.scm (alienblaster): New variable.
Thank you. I applied your patch with the following changes.
> + (uri (string-append "http://www.schwardtnet.de/alienblaster/archives/"
> + name "-" version ".tgz"))
I replaced name with alienblaster.
> + (sha256
> + (base32
> + "104rfsfsv446n4y52p5zw9h8mhgjyrbca8fpyhnxkkasq141a264"))))
> + (build-system gnu-build-system)
> + (inputs (list sdl sdl-mixer))
Nitpick: I moved inputs after arguments… out of habit.
> + (arguments
> + (list
> + #:tests? #f ; no tests
> + #:phases
> + #~(modify-phases %standard-phases
> + (add-after 'unpack 'fix-sdl-paths
> + (lambda _
> + (let ((share (string-append #$output "/share")))
> + ;; fix name and append path to SDL_mixer.h
Nitpick: I used proper capitalization and typography (missing final
full stop).
> + (substitute* "src/Makefile"
> + (("GAME_NAME=alienBlaster")
> + "GAME_NAME=alienblaster")
> + (("SDL_FLAGS=\\$\\(shell sdl-config --cflags\\)" line)
> + (string-append line " -I" #$sdl-mixer "/include/SDL")))
I replace #$sdl-mixer with #$(this-package-inputs "sdl-mixer") for
compatibility with package transformations.
> + ;; substitute relative paths in .cfg and source/header files
Nitpick: Here too, I slightly reformatted the comment.
> + (substitute* (find-files "./cfg")
> + (("(\\./)?images") (string-append share "/images")))
> + (substitute* (list "src/global.h" "src/global.cc")
> + (("./images") (string-append share "/images"))
> + (("./sound") (string-append share "/sound"))
> + (("./cfg") (string-append share "/cfg"))))))
> +
> + (delete 'configure)
> +
> + (replace 'install
> + (lambda _
> + (let ((bin (string-append #$output "/bin")))
> + (install-file "alienblaster" bin)
> + (for-each
> + (lambda (dir)
> + (copy-recursively dir (string-append #$output "/share/" dir)))
> + '("images" "sound" "cfg")))
> + #t)))))
I removed the trailing #T, which is not necessary in new package style.
Regards,
--
Nicolas Goaziou
Reply sent
to
Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
:
You have taken responsibility.
(Fri, 21 Apr 2023 09:00:04 GMT)
Full text and
rfc822 format available.
Notification sent
to
Yovan Naumovski <yovan <at> gorski.stream>
:
bug acknowledged by developer.
(Fri, 21 Apr 2023 09:00:04 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Fri, 19 May 2023 11:24:09 GMT)
Full text and
rfc822 format available.
This bug report was last modified 2 years and 30 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.