[PATCH] gnu: Add libresprite.

  • Done
  • quality assurance status badge
Details
2 participants
  • Ekaitz Zarraga
  • Liliana Marie Prikler
Owner
unassigned
Submitted by
Ekaitz Zarraga
Severity
normal
E
E
Ekaitz Zarraga wrote on 18 Nov 2021 15:58
(name . guix-patches@gnu.org)(address . guix-patches@gnu.org)
0YW5e3TveS73aXIyD0YkeVdne1S88mV6wqBbEwkyn_cvXnzjyizVgeiAVCRpw8W9_7Gj3vignMYpLg1z0jFy0jF7kqW_HBZX0aOMeT6ah0Q=@elenq.tech
From ebf5421f72e91d3b215bb4eb4f4b642d7a4ffa98 Mon Sep 17 00:00:00 2001
From: Ekaitz Zarraga <ekaitz@elenq.tech>
Date: Thu, 18 Nov 2021 15:56:38 +0100
Subject: [PATCH] gnu: Add libresprite.

* gnu/packages/game-development.scm (libresprite): New variable.
---
gnu/packages/game-development.scm | 54 +++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (72 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 51ec4a5fc2..1f6dcdc0e6 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -23,6 +23,7 @@
;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2021 Dmitry Polyakov <polyakov@liltechdude.xyz>
;;; Copyright © 2020-2021 James Smith <jsubuntuxp@disroot.org>
+;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1016,6 +1017,59 @@ (define-public aseprite
(home-page "https://www.aseprite.org/")
(license license:gpl2+)))

+(define-public libresprite
+ (package
+ (name "libresprite")
+ (version "1.0")
+ ;; TODO: Unbundle third party software.
+ ;; - duktape is bundled inside the project but it's hard to unbundle:
+ ;; there are many differences from a version to the next and it is not
+ ;; really designed to work as a shared lib.
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/LibreSprite/LibreSprite")
+ (commit (string-append "v" version))
+ (recursive? #t)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0djbjjh21ahlxzh0b0jp4mpfycam8h9157i4wbxkd618fraadhbp"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:configure-flags
+ (list "-DWITH_WEBP_SUPPORT=1")
+ ;; Tests are unmaintained
+ #:tests? #f))
+ (native-inputs
+ `(("gcc@10" ,gcc-10) ; Requires 8.5 or higher
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("curl" ,curl)
+ ("freetype" ,freetype)
+ ("giflib" ,giflib)
+ ("googletest" ,googletest)
+ ("libjpeg" ,libjpeg-turbo)
+ ("libpng" ,libpng)
+ ("libwebp" ,libwebp)
+ ("libx11" ,libx11)
+ ("libxext" ,libxext)
+ ("libxxf86dga" ,libxxf86dga)
+ ("libxxf86vm" ,libxxf86vm)
+ ("lua" ,lua) ; Optional
+ ("pixman" ,pixman)
+ ("sdl2" ,sdl2)
+ ("sdl2-image" ,sdl2-image)
+ ("tinyxml" ,tinyxml)
+ ("zlib" ,zlib)))
+ (synopsis "Animated sprite editor and pixel art tool")
+ (description "LibreSprite is a tool for creating 2D pixel art for video
+games. In addition to basic pixel editing features, Aseprite can assist in the
+creation of animations, tiled graphics, texture atlases, and more. LibreSprite
+is a fork of the latest GPLv2 commit of Aseprite.")
+ (home-page "https://libresprite.github.io/")
+ (license license:gpl2+)))
+
(define-public qqwing
(package
(name "qqwing")
--
2.34.0
E
E
Ekaitz Zarraga wrote on 18 Nov 2021 16:24
(name . 51951@debbugs.gnu.org)(address . 51951@debbugs.gnu.org)
DqUzoUim6-hBeuQexa4GvszFiYehZL44qlkmHQ--2riuLq8w6M0LL7blVqFakZ2Gyfc00QTt8QKRz6mh_hki12n0GJ0Wkavx94l_YAdGPU0=@elenq.tech
Corrected the description. It had a reference to Aseprite.
Sorry for the noise.


From 094c876b6d11464916ad021ad6c777f245e3c8df Mon Sep 17 00:00:00 2001
From: Ekaitz Zarraga <ekaitz@elenq.tech>
Date: Thu, 18 Nov 2021 15:56:38 +0100
Subject: [PATCH] gnu: Add libresprite.

* gnu/packages/game-development.scm (libresprite): New variable.
---
gnu/packages/game-development.scm | 54 +++++++++++++++++++++++++++++++
1 file changed, 54 insertions(+)

Toggle diff (72 lines)
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 51ec4a5fc2..f822b496be 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -23,6 +23,7 @@
;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
;;; Copyright © 2021 Dmitry Polyakov <polyakov@liltechdude.xyz>
;;; Copyright © 2020-2021 James Smith <jsubuntuxp@disroot.org>
+;;; Copyright © 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -1016,6 +1017,59 @@ (define-public aseprite
(home-page "https://www.aseprite.org/")
(license license:gpl2+)))

+(define-public libresprite
+ (package
+ (name "libresprite")
+ (version "1.0")
+ ;; TODO: Unbundle third party software.
+ ;; - duktape is bundled inside the project but it's hard to unbundle:
+ ;; there are many differences from a version to the next and it is not
+ ;; really designed to work as a shared lib.
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/LibreSprite/LibreSprite")
+ (commit (string-append "v" version))
+ (recursive? #t)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0djbjjh21ahlxzh0b0jp4mpfycam8h9157i4wbxkd618fraadhbp"))))
+ (build-system cmake-build-system)
+ (arguments
+ '(#:configure-flags
+ (list "-DWITH_WEBP_SUPPORT=1")
+ ;; Tests are unmaintained
+ #:tests? #f))
+ (native-inputs
+ `(("gcc@10" ,gcc-10) ; Requires 8.5 or higher
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("curl" ,curl)
+ ("freetype" ,freetype)
+ ("giflib" ,giflib)
+ ("googletest" ,googletest)
+ ("libjpeg" ,libjpeg-turbo)
+ ("libpng" ,libpng)
+ ("libwebp" ,libwebp)
+ ("libx11" ,libx11)
+ ("libxext" ,libxext)
+ ("libxxf86dga" ,libxxf86dga)
+ ("libxxf86vm" ,libxxf86vm)
+ ("lua" ,lua) ; Optional
+ ("pixman" ,pixman)
+ ("sdl2" ,sdl2)
+ ("sdl2-image" ,sdl2-image)
+ ("tinyxml" ,tinyxml)
+ ("zlib" ,zlib)))
+ (synopsis "Animated sprite editor and pixel art tool")
+ (description "LibreSprite is a tool for creating 2D pixel art for video
+games. In addition to basic pixel editing features, LibreSprite can assist in
+the creation of animations, tiled graphics, texture atlases, and more.
+LibreSprite is a fork of the latest GPLv2 commit of Aseprite.")
+ (home-page "https://libresprite.github.io/")
+ (license license:gpl2+)))
+
(define-public qqwing
(package
(name "qqwing")
--
2.34.0
L
L
Liliana Marie Prikler wrote on 20 Nov 2021 12:18
034e97f3a736e55d485c5fc36b815b2310b4757a.camel@gmail.com
Am Donnerstag, den 18.11.2021, 15:24 +0000 schrieb Ekaitz Zarraga:
Toggle quote (2 lines)
> Corrected the description. It had a reference to Aseprite.
> Sorry for the noise.
Your noise is pardoned.

As for the unbundling, it's sadly the same state as Aseprite (*sigh*).
I sure hope LibreSprite will clean things up and build from upstream
one day.

Thanks
Closed
E
E
Ekaitz Zarraga wrote on 20 Nov 2021 12:20
(name . Liliana Marie Prikler)(address . liliana.prikler@gmail.com)(address . 51951-done@debbugs.gnu.org)
5qgdBti_H-YqBTa7bjZDq-aG3pYeFsho5YEqQCdVUWNQe0Epu20ioPmqJeqfQ9tD0focpGIC2U06zBzC1PENnJhXcwqMwYIp3Ljd4PPZCgg=@elenq.tech
Toggle quote (3 lines)
> As for the unbundling, it's sadly the same state as Aseprite (sigh).
> I sure hope LibreSprite will clean things up and build from upstream one day.

They are aware of the issue but duktape is a pretty weird package.
They told me it might be easier in the next duktape release (3.0 I think).

I'll be there when it happens and see if I can unbundle it.

Thanks!
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 51951@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 51951
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch