all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [PATCHES] Add Aseprite and Allegro 4
@ 2016-01-29 22:01 David Thompson
  2016-01-29 22:20 ` Eric Bavier
  0 siblings, 1 reply; 3+ messages in thread
From: David Thompson @ 2016-01-29 22:01 UTC (permalink / raw)
  To: guix-devel

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

Hello Guix!

I found out about a really neat little pixel art editing tool called
Aseprite, so I packaged it!

Allegro 4 is licensed under a weird license called the "giftware"
license that is *very* similar to the Expat license.  But fear not, it
is a free license and Allegro 4 is included in Debian and fully free
distros like Trisquel.  I named the Allegro 4 variable "allegro-4"
instead of just "allegro" because Allegro 5 is the latest and greatest
version of Allegro but I just haven't packaged it yet.

TIA for review!

P.S. - Have a happy FOSDEM!

- Dave


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-license-Add-giftware.patch --]
[-- Type: text/x-patch, Size: 1096 bytes --]

From 15327686420a477b91d11377a1586188592ec431 Mon Sep 17 00:00:00 2001
From: David Thompson <dthompson2@worcester.edu>
Date: Fri, 29 Jan 2016 16:03:50 -0500
Subject: [PATCH 1/3] license: Add giftware.

* guix/licenses.scm (giftware): New variable.
---
 guix/licenses.scm | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/guix/licenses.scm b/guix/licenses.scm
index 1def1ac..cb23734 100644
--- a/guix/licenses.scm
+++ b/guix/licenses.scm
@@ -40,6 +40,7 @@
             epl1.0
             expat
             freetype
+            giftware
             gpl1 gpl1+ gpl2 gpl2+ gpl3 gpl3+
             gfl1.0
             fdl1.3+
@@ -201,6 +202,11 @@ at URI, which may be a file:// URI pointing the package's tree."
            "http://directory.fsf.org/wiki/License:Freetype"
            "https://www.gnu.org/licenses/license-list.html#freetype"))
 
+(define giftware
+  (license "Giftware"
+           "http://liballeg.org/license.html"
+           "The Allegro 4 license"))
+
 (define gpl1
   (license "GPL 1"
            "https://www.gnu.org/licenses/old-licenses/gpl-1.0.html"
-- 
2.5.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 0002-gnu-Add-allegro-4.patch --]
[-- Type: text/x-patch, Size: 2189 bytes --]

From 027f4108e5b4e982dfc72b8216e910d5f504cb30 Mon Sep 17 00:00:00 2001
From: David Thompson <dthompson2@worcester.edu>
Date: Fri, 29 Jan 2016 16:08:12 -0500
Subject: [PATCH 2/3] gnu: Add allegro-4.

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

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 0274904..71543e1 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -295,3 +295,41 @@ archive on a per-file basis.")
 programming language.")
     (home-page "https://love2d.org/")
     (license license:zlib)))
+
+(define-public allegro-4
+  (package
+    (name "allegro")
+    (version "4.4.2")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "http://download.gna.org/allegro/allegro/"
+                                  version "/allegro-" version ".tar.gz"))
+              (sha256
+               (base32
+                "1p0ghkmpc4kwij1z9rzxfv7adnpy4ayi0ifahlns1bdzgmbyf88v"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-build-system
+           (lambda _
+             ;; Build addons as shared libraries.  Trying to set ADDON_LINKAGE
+             ;; via a command line option doesn't work because it is
+             ;; unconditionally clobbered in the build script.
+             (substitute* '("CMakeLists.txt")
+               (("ADDON_LINKAGE STATIC")
+                "ADDON_LINKAGE SHARED"))
+             #t)))))
+    (inputs
+     `(("glu" ,glu)
+       ("libpng" ,libpng)
+       ("libvorbis" ,libvorbis)
+       ("mesa" ,mesa)
+       ("zlib" ,zlib)))
+    (synopsis "Game programming library")
+    (description "Allegro is a library mainly aimed at video game and
+multimedia programming.  It handles common, low-level tasks such as creating
+windows, accepting user input, loading data, drawing images, playing sounds,
+etc.")
+    (home-page "http://liballeg.org")
+    (license license:giftware)))
-- 
2.5.0


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: 0003-gnu-Add-aseprite.patch --]
[-- Type: text/x-patch, Size: 4285 bytes --]

From 0678e9501403b55f6cb3ba772070e91a9aa48127 Mon Sep 17 00:00:00 2001
From: David Thompson <dthompson2@worcester.edu>
Date: Fri, 29 Jan 2016 16:17:45 -0500
Subject: [PATCH 3/3] gnu: Add aseprite.

* gnu/packages/game-development.scm (aseprite): New variable.
---
 gnu/packages/game-development.scm | 72 ++++++++++++++++++++++++++++++++++++++-
 1 file changed, 71 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 71543e1..f7ec9e8 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -24,9 +24,11 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages doxygen)
   #:use-module (gnu packages glib)
@@ -40,6 +42,7 @@
   #:use-module (gnu packages gl)
   #:use-module (gnu packages linux)
   #:use-module (gnu packages xorg)
+  #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages image)
   #:use-module (gnu packages audio)
@@ -50,7 +53,8 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages lua)
-  #:use-module (gnu packages mp3))
+  #:use-module (gnu packages mp3)
+  #:use-module (gnu packages xml))
 
 (define-public bullet
   (package
@@ -333,3 +337,69 @@ windows, accepting user input, loading data, drawing images, playing sounds,
 etc.")
     (home-page "http://liballeg.org")
     (license license:giftware)))
+
+(define-public aseprite
+  (package
+    (name "aseprite")
+    (version "1.1.1")
+    ;; The release tarball isn't good enough because it's missing some
+    ;; necessary code that is only in git submodules.
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/aseprite/aseprite.git")
+                    (commit "v1.1.1")
+                    (recursive? #t)))
+              (sha256
+               (base32
+                "1yr0l3bc68lyrffrzxgw98zznv8yz5ldl98lyvp6s5grny4s4jyk"))))
+    (build-system cmake-build-system)
+    (arguments
+     '(#:configure-flags
+       ;; Use shared libraries instead of building bundled source.
+       (list "-DWITH_WEBP_SUPPORT=1"
+             "-DUSE_SHARED_CURL=1"
+             "-DUSE_SHARED_GIFLIB=1"
+             "-DUSE_SHARED_JPEGLIB=1"
+             "-DUSE_SHARED_ZLIB=1"
+             "-DUSE_SHARED_LIBPNG=1"
+             "-DUSE_SHARED_LIBLOADPNG=1"
+             "-DUSE_SHARED_LIBWEBP=1"
+             "-DUSE_SHARED_TINYXML=1"
+             "-DUSE_SHARED_PIXMAN=1"
+             "-DUSE_SHARED_FREETYPE=1"
+             "-DUSE_SHARED_ALLEGRO4=1"
+             "-DENABLE_UPDATER=0" ; no auto-updates.
+             (string-append "-DFREETYPE_INCLUDE_DIR="
+                            (assoc-ref %build-inputs "freetype")
+                            "/include/freetype2"))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'patch-freetype-utils
+           (lambda _
+             ;; Fix C preprocessor include directive.
+             (substitute* '("src/app/util/freetype_utils.cpp")
+               (("freetype/") ""))
+             #t)))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)))
+    (inputs
+     `(("allegro" ,allegro-4)
+       ("curl" ,curl)
+       ("freetype" ,freetype)
+       ("giflib" ,giflib)
+       ("libjpeg" ,libjpeg)
+       ("libpng" ,libpng)
+       ("libwebp" ,libwebp)
+       ("libx11" ,libx11)
+       ("libxext" ,libxext)
+       ("libxxf86vm" ,libxxf86vm)
+       ("pixman" ,pixman)
+       ("tinyxml" ,tinyxml)
+       ("zlib" ,zlib)))
+    (synopsis "Animated sprite editor and pixel art tool")
+    (description "Aseprite 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.")
+    (home-page "http://www.aseprite.org/")
+    (license license:gpl2+)))
-- 
2.5.0


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

* Re: [PATCHES] Add Aseprite and Allegro 4
  2016-01-29 22:01 [PATCHES] Add Aseprite and Allegro 4 David Thompson
@ 2016-01-29 22:20 ` Eric Bavier
  2016-01-31 20:46   ` Thompson, David
  0 siblings, 1 reply; 3+ messages in thread
From: Eric Bavier @ 2016-01-29 22:20 UTC (permalink / raw)
  To: David Thompson; +Cc: guix-devel, guix-devel-bounces+ericbavier=openmailbox.org

On 2016-01-29 16:01, David Thompson wrote:
> I found out about a really neat little pixel art editing tool called
> Aseprite, so I packaged it!

All LGTM.

-- 
`~Eric

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

* Re: [PATCHES] Add Aseprite and Allegro 4
  2016-01-29 22:20 ` Eric Bavier
@ 2016-01-31 20:46   ` Thompson, David
  0 siblings, 0 replies; 3+ messages in thread
From: Thompson, David @ 2016-01-31 20:46 UTC (permalink / raw)
  To: Eric Bavier; +Cc: guix-devel, guix-devel-bounces+ericbavier=openmailbox.org

On Fri, Jan 29, 2016 at 5:20 PM, Eric Bavier <ericbavier@openmailbox.org> wrote:
> On 2016-01-29 16:01, David Thompson wrote:
>>
>> I found out about a really neat little pixel art editing tool called
>> Aseprite, so I packaged it!
>
>
> All LGTM.

Pushed, thanks!

- Dave

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

end of thread, other threads:[~2016-01-31 20:46 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-01-29 22:01 [PATCHES] Add Aseprite and Allegro 4 David Thompson
2016-01-29 22:20 ` Eric Bavier
2016-01-31 20:46   ` Thompson, David

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.