GNU bug report logs - #44768
[PATCH 1/2] gnu: Add gnash.

Previous Next

Package: guix-patches;

Reported by: Vinicius Monego <monego <at> posteo.net>

Date: Fri, 20 Nov 2020 20:07:02 UTC

Severity: normal

Tags: moreinfo, 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 44768 in the body.
You can then email your comments to 44768 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Fri, 20 Nov 2020 20:07:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to Vinicius Monego <monego <at> posteo.net>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Fri, 20 Nov 2020 20:07:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: Vinicius Monego <monego <at> posteo.net>
To: guix-patches <at> gnu.org
Cc: Vinicius Monego <monego <at> posteo.net>
Subject: [PATCH 1/2] gnu: Add gnash.
Date: Fri, 20 Nov 2020 17:05:51 -0300
* gnu/packages/animation.scm (gnash): New variable.
* gnu/packages/patches/gnash-do-not-depend-on-pangox: New file.
* gnu/packages/patches/gnash-fix-giflib-version: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
Patch sources:

https://savannah.gnu.org/patch/download.php?file_id=48366
https://savannah.gnu.org/patch/download.php?file_id=47859

 gnu/local.mk                                  |  3 +
 gnu/packages/animation.scm                    | 94 ++++++++++++++++++-
 .../gnash-do-not-depend-on-pangox.patch       | 35 +++++++
 .../patches/gnash-fix-giflib-version.patch    | 13 +++
 4 files changed, 144 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/gnash-do-not-depend-on-pangox.patch
 create mode 100644 gnu/packages/patches/gnash-fix-giflib-version.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 3a8f1e30fc..94ff78a3d4 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -38,6 +38,7 @@
 # Copyright © 2020 Tanguy Le Carrour <tanguy <at> bioneland.org>
 # Copyright © 2020 Martin Becze <mjbecze <at> riseup.net>
 # Copyright © 2020 Malte Frank Gerdes <mate.f.gerdes <at> gmail.com>
+# Copyright © 2020 Vinicius Monego <monego <at> posteo.net>
 #
 # This file is part of GNU Guix.
 #
@@ -1083,6 +1084,8 @@ dist_patch_DATA =						\
   %D%/packages/patches/glibc-supported-locales.patch     	\
   %D%/packages/patches/gmp-arm-asm-nothumb.patch		\
   %D%/packages/patches/gmp-faulty-test.patch			\
+  %D%/packages/patches/gnash-do-not-depend-on-pangox.patch	\
+  %D%/packages/patches/gnash-fix-giflib-version.patch	        \
   %D%/packages/patches/gnome-shell-theme.patch			\
   %D%/packages/patches/gnome-shell-disable-test.patch		\
   %D%/packages/patches/gnome-settings-daemon-gc.patch		\
diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 3176a1237a..3df3ce3eba 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado <at> elephly.net>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2019 Pkill -9 <pkill9 <at> runbox.com>
+;;; Copyright © 2020 Vinicius Monego <monego <at> posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,19 +28,27 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages dejagnu)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages graphics)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
   #:use-module (gnu packages qt)
-  #:use-module (gnu packages video))
+  #:use-module (gnu packages sdl)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph))
 
 ;; ETL, synfig, and Synfig Studio are updated in tandem.
 (define synfig-version "1.2.2")
@@ -301,3 +310,86 @@ waveform until they line up with the proper sounds.")
 lets you create traditional hand-drawn animations (cartoons) using both bitmap
 and vector graphics.")
     (license license:gpl2)))
+
+;; This package provides a standalone (no browser plugin) version of Gnash.
+(define-public gnash
+  ;; The last tagged release of Gnash was in 2012.
+  (let ((commit "583ccbc1275c7701dc4843ec12142ff86bb305b4")
+        (revision "0"))
+    (package
+      (name "gnash")
+      (version (git-version "0.8.11" ;upstream has no version number
+                            revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://git.savannah.gnu.org/git/gnash.git/")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (patches (search-patches "gnash-do-not-depend-on-pangox.patch"
+                                  "gnash-fix-giflib-version.patch"))
+         (sha256
+          (base32 "0fh0bljn0i6ypyh6l99afi855p7ki7lm869nq1qj6k8hrrwhmfry"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:configure-flags
+         (list "--disable-static"
+               ;; Plugins are based on XULRunner and NPAPI only.  Disable.
+               "--disable-plugins"
+               "--disable-jemalloc" ;FIXME: not found by pkg-config
+               "--enable-gui=gtk"
+               "--enable-media=ffmpeg"
+               (string-append "--with-boost-incl="
+                              (assoc-ref %build-inputs "boost") "/include")
+               (string-append "--with-boost-lib="
+                              (assoc-ref %build-inputs "boost") "/lib")
+               (string-append "--with-ffmpeg-incl="
+                              (assoc-ref %build-inputs "ffmpeg")
+                              "/include/libavcodec")
+               (string-append "--with-speex-incl="
+                              (assoc-ref %build-inputs "speex") "/include")
+               (string-append "--with-speex-lib="
+                              (assoc-ref %build-inputs "speex") "/lib")
+               (string-append "--with-jpeg-incl="
+                              (assoc-ref %build-inputs "libjpeg") "/include")
+               (string-append "--with-zlib-incl="
+                              (assoc-ref %build-inputs "zlib") "/include")
+               (string-append "--with-png-incl="
+                              (assoc-ref %build-inputs "libpng")
+                              "/include"))))
+      (native-inputs
+       `(("autoconf" ,autoconf)
+         ("automake" ,automake)
+         ("dejagnu" ,dejagnu) ;for tests
+         ("gettext" ,gettext-minimal)
+         ("libtool" ,libtool)
+         ("perl" ,perl)
+         ("pkg-config" ,pkg-config)))
+      (inputs
+       `(("agg" ,agg)
+         ("atk" ,atk)
+         ("boost" ,boost)
+         ("curl" ,curl)
+         ("ffmpeg" ,ffmpeg-2.8)
+         ("freeglut" ,freeglut)
+         ("gconf" ,gconf)
+         ("giflib" ,giflib)
+         ("glib" ,glib)
+         ("gtk+" ,gtk+-2)
+         ("gtkglext" ,gtkglext)
+         ;;("jemalloc" ,jemalloc)
+         ("libjpeg" ,libjpeg-turbo)
+         ("libltdl" ,libltdl)
+         ("libpng" ,libpng)
+         ("pango" ,pango)
+         ("sdl" ,sdl)
+         ("speex" ,speex)))
+      (synopsis "Flash movie player")
+      (description
+       "Gnash is a Flash movie player.  It supports SWF version v7 and some
+of v8 and v9.  It is possible to configure Gnash to use several differemt
+audio or video backends, ensuring good performance.")
+      (home-page "https://www.gnu.org/software/gnash/")
+      (license license:gpl3+))))
+
diff --git a/gnu/packages/patches/gnash-do-not-depend-on-pangox.patch b/gnu/packages/patches/gnash-do-not-depend-on-pangox.patch
new file mode 100644
index 0000000000..489baa089c
--- /dev/null
+++ b/gnu/packages/patches/gnash-do-not-depend-on-pangox.patch
@@ -0,0 +1,35 @@
+From c63b5843ca1bb56bb825ba0521c3df81861f88c4 Mon Sep 17 00:00:00 2001
+From: Jan Tojnar <jtojnar <at> gmail.com>
+Date: Thu, 6 Feb 2020 23:59:49 +0100
+Subject: [PATCH] Do not depend on pangox
+
+pangox has been removed from Pango years ago breaking the build
+on modern distros.
+
+Gnash does not actually use pango directly at all. It looks like
+it was added for static linking against GTK when not using pkg-config
+but it was not updated or limited to non-pkg-config GTK builds
+(pkg-config would provide the necessary transitive dependencies automatically).
+
+The proper solution would be removing all the pango checks and relying
+on pkg-config but as a quick hack this should suffice.
+---
+ macros/pango.m4 | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/macros/pango.m4 b/macros/pango.m4
+index 96f0457e2..6f24eb2a2 100644
+--- a/macros/pango.m4
++++ b/macros/pango.m4
+@@ -34,7 +34,7 @@ AC_DEFUN([GNASH_PATH_PANGO],
+   if test x$windows = xyes; then
+     pango_pkg=pangowin32
+   else
+-    pango_pkg=pangox
++    pango_pkg=pango
+   fi
+ 
+   if test x$cross_compiling = xno; then
+-- 
+2.25.0
+
diff --git a/gnu/packages/patches/gnash-fix-giflib-version.patch b/gnu/packages/patches/gnash-fix-giflib-version.patch
new file mode 100644
index 0000000000..37213dac9b
--- /dev/null
+++ b/gnu/packages/patches/gnash-fix-giflib-version.patch
@@ -0,0 +1,13 @@
+diff --git a/libbase/GnashImageGif.cpp b/libbase/GnashImageGif.cpp
+index 2ae5ddb..b87b1e7 100644
+--- a/libbase/GnashImageGif.cpp
++++ b/libbase/GnashImageGif.cpp
+@@ -120,7 +120,7 @@ GifInput::GifInput(std::shared_ptr<IOChannel> in)
+ GifInput::~GifInput()
+ {
+     // Clean up allocated data.
+-#if GIFLIB_MAJOR==5 && GIFLIB_MINOR==1
++#if GIFLIB_MAJOR==5 && GIFLIB_MINOR!=0
+ 	DGifCloseFile(_gif, 0);
+ #else
+ 	DGifCloseFile(_gif);
-- 
2.20.1





Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Fri, 20 Nov 2020 20:09:01 GMT) Full text and rfc822 format available.

Message #8 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Vinicius Monego <monego <at> posteo.net>
To: 44768 <at> debbugs.gnu.org
Cc: Vinicius Monego <monego <at> posteo.net>
Subject: [PATCH 2/2] gnu: Add lightspark.
Date: Fri, 20 Nov 2020 17:07:51 -0300
* gnu/packages/animation.scm (lightspark): New variable.
---
 gnu/packages/animation.scm | 66 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 66 insertions(+)

diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 3df3ce3eba..b43b1a4beb 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -25,9 +25,11 @@
   #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages assembly)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
@@ -42,11 +44,15 @@
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages networking)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages sdl)
+  #:use-module (gnu packages tls)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xiph))
 
@@ -393,3 +399,63 @@ audio or video backends, ensuring good performance.")
       (home-page "https://www.gnu.org/software/gnash/")
       (license license:gpl3+))))
 
+(define-public lightspark
+  (package
+    (name "lightspark")
+    (version "0.8.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/lightspark/lightspark")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0rgqqppnv4n3kv623sgr1zpc2fdsnrqzfiqgk4clcmfl5ipklg6f"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ;requires Adobe Flex SDK, see README.tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'relative-etc-dir
+           ;; Write default config file to ./etc instead of /etc.
+           (lambda _
+             (substitute* "CMakeLists.txt" (("\\/etc") "etc"))
+             #t))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (if tests?
+                 (begin
+                   (invoke "./tests"))
+                 #t))))))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("nasm" ,nasm)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)))
+    (inputs
+     `(("cairo" ,cairo)
+       ("curl" ,curl)
+       ("ffmpeg" ,ffmpeg)
+       ("freeglut" ,freeglut)
+       ("glew" ,glew)
+       ("glibmm" ,glibmm)
+       ("gnash" ,gnash)
+       ("libjpeg" ,libjpeg-turbo)
+       ("openssl" ,openssl)
+       ("pango" ,pango)
+       ("pcre2" ,pcre2)
+       ("rtmpdump" ,rtmpdump)
+       ("sdl2" ,sdl2)
+       ("sdl2-mixer" ,sdl2-mixer)
+       ("zlib" ,zlib)))
+    (home-page "https://lightspark.github.io/")
+    (synopsis "Flash player implementation")
+    (description
+     "Lightspark is a Flash player implementation for playing files in the SWF
+format.  Lightspark can run as a web browser plugin or as a standalone
+application.  Lightspark supports SWF files written on all versions of the
+ActionScript language.")
+    (license license:lgpl3+)))
-- 
2.20.1





Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Tue, 24 Nov 2020 23:06:02 GMT) Full text and rfc822 format available.

Message #11 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Vinicius Monego <monego <at> posteo.net>
To: 44768 <at> debbugs.gnu.org
Cc: Vinicius Monego <monego <at> posteo.net>
Subject: [PATCH v2] gnu: Add gnash.
Date: Tue, 24 Nov 2020 20:04:46 -0300
* gnu/packages/animation.scm (gnash): New variable.
* gnu/packages/patches/gnash-fix-giflib-version: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
I fixed some problems in the first patch. Resending a v2.

Removed pangox patch, use pangox-compat input instead.
Fixed year in the comment of last version.
Removed a stray comment in version.
Fixed jemalloc path.
Added python-wrapper to native-inputs.

 gnu/local.mk                                  |  2 +
 gnu/packages/animation.scm                    | 98 ++++++++++++++++++-
 .../patches/gnash-fix-giflib-version.patch    | 13 +++
 3 files changed, 112 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/gnash-fix-giflib-version.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 14b626c600..cddca06b2c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -38,6 +38,7 @@
 # Copyright © 2020 Tanguy Le Carrour <tanguy <at> bioneland.org>
 # Copyright © 2020 Martin Becze <mjbecze <at> riseup.net>
 # Copyright © 2020 Malte Frank Gerdes <mate.f.gerdes <at> gmail.com>
+# Copyright © 2020 Vinicius Monego <monego <at> posteo.net>
 #
 # This file is part of GNU Guix.
 #
@@ -1090,6 +1091,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/glibc-supported-locales.patch     	\
   %D%/packages/patches/gmp-arm-asm-nothumb.patch		\
   %D%/packages/patches/gmp-faulty-test.patch			\
+  %D%/packages/patches/gnash-fix-giflib-version.patch	        \
   %D%/packages/patches/gnome-shell-theme.patch			\
   %D%/packages/patches/gnome-shell-disable-test.patch		\
   %D%/packages/patches/gnome-settings-daemon-gc.patch		\
diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 3176a1237a..245f36df3f 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado <at> elephly.net>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2019 Pkill -9 <pkill9 <at> runbox.com>
+;;; Copyright © 2020 Vinicius Monego <monego <at> posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,19 +28,30 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages dejagnu)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages graphics)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
-  #:use-module (gnu packages video))
+  #:use-module (gnu packages sdl)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph))
 
 ;; ETL, synfig, and Synfig Studio are updated in tandem.
 (define synfig-version "1.2.2")
@@ -301,3 +313,87 @@ waveform until they line up with the proper sounds.")
 lets you create traditional hand-drawn animations (cartoons) using both bitmap
 and vector graphics.")
     (license license:gpl2)))
+
+;; This package provides a standalone (no browser plugin) version of Gnash.
+(define-public gnash
+  ;; The last tagged release of Gnash was in 2013.
+  (let ((commit "583ccbc1275c7701dc4843ec12142ff86bb305b4")
+        (revision "0"))
+    (package
+      (name "gnash")
+      (version (git-version "0.8.11" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://git.savannah.gnu.org/git/gnash.git/")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (patches (search-patches "gnash-fix-giflib-version.patch"))
+         (sha256
+          (base32 "0fh0bljn0i6ypyh6l99afi855p7ki7lm869nq1qj6k8hrrwhmfry"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:configure-flags
+         (list "--disable-static"
+               ;; Plugins are based on XULRunner and NPAPI only.  Disable.
+               "--disable-plugins"
+               "--enable-gui=gtk"
+               "--enable-media=ffmpeg"
+               (string-append "--with-boost-incl="
+                              (assoc-ref %build-inputs "boost") "/include")
+               (string-append "--with-boost-lib="
+                              (assoc-ref %build-inputs "boost") "/lib")
+               (string-append "--with-ffmpeg-incl="
+                              (assoc-ref %build-inputs "ffmpeg")
+                              "/include/libavcodec")
+               (string-append "--with-speex-incl="
+                              (assoc-ref %build-inputs "speex") "/include")
+               (string-append "--with-jemalloc-incl="
+                              (assoc-ref %build-inputs "jemalloc")
+                              "/include/jemalloc")
+               (string-append "--with-speex-lib="
+                              (assoc-ref %build-inputs "speex") "/lib")
+               (string-append "--with-jpeg-incl="
+                              (assoc-ref %build-inputs "libjpeg") "/include")
+               (string-append "--with-zlib-incl="
+                              (assoc-ref %build-inputs "zlib") "/include")
+               (string-append "--with-png-incl="
+                              (assoc-ref %build-inputs "libpng")
+                              "/include"))))
+      (native-inputs
+       `(("autoconf" ,autoconf)
+         ("automake" ,automake)
+         ("dejagnu" ,dejagnu) ;for tests
+         ("gettext" ,gettext-minimal)
+         ("libtool" ,libtool)
+         ("perl" ,perl)
+         ("pkg-config" ,pkg-config)
+         ("python" ,python-wrapper)))
+      (inputs
+       `(("agg" ,agg)
+         ("atk" ,atk)
+         ("boost" ,boost)
+         ("curl" ,curl)
+         ("ffmpeg" ,ffmpeg-2.8)
+         ("freeglut" ,freeglut)
+         ("gconf" ,gconf)
+         ("giflib" ,giflib)
+         ("glib" ,glib)
+         ("gtk+" ,gtk+-2)
+         ("gtkglext" ,gtkglext)
+         ("jemalloc" ,jemalloc)
+         ("libjpeg" ,libjpeg-turbo)
+         ("libltdl" ,libltdl)
+         ("libpng" ,libpng)
+         ("pangox-compat" ,pangox-compat)
+         ("sdl" ,sdl)
+         ("speex" ,speex)))
+      (synopsis "Flash movie player")
+      (description
+       "Gnash is a Flash movie player.  It supports SWF version v7 and some
+of v8 and v9.  It is possible to configure Gnash to use several differemt
+audio or video backends, ensuring good performance.")
+      (home-page "https://www.gnu.org/software/gnash/")
+      (license license:gpl3+))))
+
diff --git a/gnu/packages/patches/gnash-fix-giflib-version.patch b/gnu/packages/patches/gnash-fix-giflib-version.patch
new file mode 100644
index 0000000000..37213dac9b
--- /dev/null
+++ b/gnu/packages/patches/gnash-fix-giflib-version.patch
@@ -0,0 +1,13 @@
+diff --git a/libbase/GnashImageGif.cpp b/libbase/GnashImageGif.cpp
+index 2ae5ddb..b87b1e7 100644
+--- a/libbase/GnashImageGif.cpp
++++ b/libbase/GnashImageGif.cpp
+@@ -120,7 +120,7 @@ GifInput::GifInput(std::shared_ptr<IOChannel> in)
+ GifInput::~GifInput()
+ {
+     // Clean up allocated data.
+-#if GIFLIB_MAJOR==5 && GIFLIB_MINOR==1
++#if GIFLIB_MAJOR==5 && GIFLIB_MINOR!=0
+ 	DGifCloseFile(_gif, 0);
+ #else
+ 	DGifCloseFile(_gif);
-- 
2.20.1





Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Wed, 25 Nov 2020 13:19:01 GMT) Full text and rfc822 format available.

Message #14 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Mathieu Othacehe <othacehe <at> gnu.org>
To: Vinicius Monego <monego <at> posteo.net>
Cc: 44768 <at> debbugs.gnu.org
Subject: Re: [bug#44768] [PATCH v2] gnu: Add gnash.
Date: Wed, 25 Nov 2020 14:17:53 +0100
Hey Vinicius,

> +of v8 and v9.  It is possible to configure Gnash to use several differemt

Small typo here: "different".
                                                                       
> +     // Clean up allocated data.
> +-#if GIFLIB_MAJOR==5 && GIFLIB_MINOR==1
> ++#if GIFLIB_MAJOR==5 && GIFLIB_MINOR!=0

It would be nice to add a small comment with the patch to explain what
it does and who is the author.

Could you also rebase your "lightspark" patch on top of the gnash v2?

Thanks,

Mathieu




Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Wed, 25 Nov 2020 17:20:02 GMT) Full text and rfc822 format available.

Message #17 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Vinicius Monego <monego <at> posteo.net>
To: 44768 <at> debbugs.gnu.org
Cc: Vinicius Monego <monego <at> posteo.net>
Subject: [PATCH v3 1/2] gnu: Add gnash.
Date: Wed, 25 Nov 2020 14:18:56 -0300
* gnu/packages/animation.scm (gnash): New variable.
* gnu/packages/patches/gnash-fix-giflib-version: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
Corrected typo in the description
Added data about the patch in patch file

 gnu/local.mk                                  |  2 +
 gnu/packages/animation.scm                    | 98 ++++++++++++++++++-
 .../patches/gnash-fix-giflib-version.patch    | 17 ++++
 3 files changed, 116 insertions(+), 1 deletion(-)
 create mode 100644 gnu/packages/patches/gnash-fix-giflib-version.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 14b626c600..cddca06b2c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -38,6 +38,7 @@
 # Copyright © 2020 Tanguy Le Carrour <tanguy <at> bioneland.org>
 # Copyright © 2020 Martin Becze <mjbecze <at> riseup.net>
 # Copyright © 2020 Malte Frank Gerdes <mate.f.gerdes <at> gmail.com>
+# Copyright © 2020 Vinicius Monego <monego <at> posteo.net>
 #
 # This file is part of GNU Guix.
 #
@@ -1090,6 +1091,7 @@ dist_patch_DATA =						\
   %D%/packages/patches/glibc-supported-locales.patch     	\
   %D%/packages/patches/gmp-arm-asm-nothumb.patch		\
   %D%/packages/patches/gmp-faulty-test.patch			\
+  %D%/packages/patches/gnash-fix-giflib-version.patch	        \
   %D%/packages/patches/gnome-shell-theme.patch			\
   %D%/packages/patches/gnome-shell-disable-test.patch		\
   %D%/packages/patches/gnome-settings-daemon-gc.patch		\
diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 3176a1237a..102b0f47f7 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -2,6 +2,7 @@
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado <at> elephly.net>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2019 Pkill -9 <pkill9 <at> runbox.com>
+;;; Copyright © 2020 Vinicius Monego <monego <at> posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,19 +28,30 @@
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages curl)
+  #:use-module (gnu packages dejagnu)
   #:use-module (gnu packages fontutils)
+  #:use-module (gnu packages gettext)
+  #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
   #:use-module (gnu packages graphics)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
-  #:use-module (gnu packages video))
+  #:use-module (gnu packages sdl)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages video)
+  #:use-module (gnu packages xiph))
 
 ;; ETL, synfig, and Synfig Studio are updated in tandem.
 (define synfig-version "1.2.2")
@@ -301,3 +313,87 @@ waveform until they line up with the proper sounds.")
 lets you create traditional hand-drawn animations (cartoons) using both bitmap
 and vector graphics.")
     (license license:gpl2)))
+
+;; This package provides a standalone (no browser plugin) version of Gnash.
+(define-public gnash
+  ;; The last tagged release of Gnash was in 2013.
+  (let ((commit "583ccbc1275c7701dc4843ec12142ff86bb305b4")
+        (revision "0"))
+    (package
+      (name "gnash")
+      (version (git-version "0.8.11" revision commit))
+      (source
+       (origin
+         (method git-fetch)
+         (uri (git-reference
+               (url "https://git.savannah.gnu.org/git/gnash.git/")
+               (commit commit)))
+         (file-name (git-file-name name version))
+         (patches (search-patches "gnash-fix-giflib-version.patch"))
+         (sha256
+          (base32 "0fh0bljn0i6ypyh6l99afi855p7ki7lm869nq1qj6k8hrrwhmfry"))))
+      (build-system gnu-build-system)
+      (arguments
+       `(#:configure-flags
+         (list "--disable-static"
+               ;; Plugins are based on XULRunner and NPAPI only.  Disable.
+               "--disable-plugins"
+               "--enable-gui=gtk"
+               "--enable-media=ffmpeg"
+               (string-append "--with-boost-incl="
+                              (assoc-ref %build-inputs "boost") "/include")
+               (string-append "--with-boost-lib="
+                              (assoc-ref %build-inputs "boost") "/lib")
+               (string-append "--with-ffmpeg-incl="
+                              (assoc-ref %build-inputs "ffmpeg")
+                              "/include/libavcodec")
+               (string-append "--with-speex-incl="
+                              (assoc-ref %build-inputs "speex") "/include")
+               (string-append "--with-jemalloc-incl="
+                              (assoc-ref %build-inputs "jemalloc")
+                              "/include/jemalloc")
+               (string-append "--with-speex-lib="
+                              (assoc-ref %build-inputs "speex") "/lib")
+               (string-append "--with-jpeg-incl="
+                              (assoc-ref %build-inputs "libjpeg") "/include")
+               (string-append "--with-zlib-incl="
+                              (assoc-ref %build-inputs "zlib") "/include")
+               (string-append "--with-png-incl="
+                              (assoc-ref %build-inputs "libpng")
+                              "/include"))))
+      (native-inputs
+       `(("autoconf" ,autoconf)
+         ("automake" ,automake)
+         ("dejagnu" ,dejagnu) ;for tests
+         ("gettext" ,gettext-minimal)
+         ("libtool" ,libtool)
+         ("perl" ,perl)
+         ("pkg-config" ,pkg-config)
+         ("python" ,python-wrapper)))
+      (inputs
+       `(("agg" ,agg)
+         ("atk" ,atk)
+         ("boost" ,boost)
+         ("curl" ,curl)
+         ("ffmpeg" ,ffmpeg-2.8)
+         ("freeglut" ,freeglut)
+         ("gconf" ,gconf)
+         ("giflib" ,giflib)
+         ("glib" ,glib)
+         ("gtk+" ,gtk+-2)
+         ("gtkglext" ,gtkglext)
+         ("jemalloc" ,jemalloc)
+         ("libjpeg" ,libjpeg-turbo)
+         ("libltdl" ,libltdl)
+         ("libpng" ,libpng)
+         ("pangox-compat" ,pangox-compat)
+         ("sdl" ,sdl)
+         ("speex" ,speex)))
+      (synopsis "Flash movie player")
+      (description
+       "Gnash is a Flash movie player.  It supports SWF version v7 and some
+of v8 and v9.  It is possible to configure Gnash to use several different
+audio or video backends, ensuring good performance.")
+      (home-page "https://www.gnu.org/software/gnash/")
+      (license license:gpl3+))))
+
diff --git a/gnu/packages/patches/gnash-fix-giflib-version.patch b/gnu/packages/patches/gnash-fix-giflib-version.patch
new file mode 100644
index 0000000000..44816d2a14
--- /dev/null
+++ b/gnu/packages/patches/gnash-fix-giflib-version.patch
@@ -0,0 +1,17 @@
+Description: Change GIFLIB_MINOR to allow matching with v5.2+
+Source: https://savannah.gnu.org/patch/index.php?9873
+Author: marius851000
+
+diff --git a/libbase/GnashImageGif.cpp b/libbase/GnashImageGif.cpp
+index 2ae5ddb..b87b1e7 100644
+--- a/libbase/GnashImageGif.cpp
++++ b/libbase/GnashImageGif.cpp
+@@ -120,7 +120,7 @@ GifInput::GifInput(std::shared_ptr<IOChannel> in)
+ GifInput::~GifInput()
+ {
+     // Clean up allocated data.
+-#if GIFLIB_MAJOR==5 && GIFLIB_MINOR==1
++#if GIFLIB_MAJOR==5 && GIFLIB_MINOR!=0
+ 	DGifCloseFile(_gif, 0);
+ #else
+ 	DGifCloseFile(_gif);
-- 
2.20.1





Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Wed, 25 Nov 2020 17:20:02 GMT) Full text and rfc822 format available.

Message #20 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Vinicius Monego <monego <at> posteo.net>
To: 44768 <at> debbugs.gnu.org
Cc: Vinicius Monego <monego <at> posteo.net>
Subject: [PATCH v3 2/2] gnu: Add lightspark.
Date: Wed, 25 Nov 2020 14:18:57 -0300
* gnu/packages/animation.scm (lightspark): New variable.
---
Rebased on the previous commit

 gnu/packages/animation.scm | 64 ++++++++++++++++++++++++++++++++++++++
 1 file changed, 64 insertions(+)

diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 102b0f47f7..9b94c1d214 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -25,9 +25,11 @@
   #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages assembly)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages compression)
@@ -43,6 +45,8 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages networking)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
@@ -397,3 +401,63 @@ audio or video backends, ensuring good performance.")
       (home-page "https://www.gnu.org/software/gnash/")
       (license license:gpl3+))))
 
+(define-public lightspark
+  (package
+    (name "lightspark")
+    (version "0.8.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/lightspark/lightspark")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0rgqqppnv4n3kv623sgr1zpc2fdsnrqzfiqgk4clcmfl5ipklg6f"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ;requires Adobe Flex SDK, see README.tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'relative-etc-dir
+           ;; Write default config file to ./etc instead of /etc.
+           (lambda _
+             (substitute* "CMakeLists.txt" (("\\/etc") "etc"))
+             #t))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (if tests?
+                 (begin
+                   (invoke "./tests"))
+                 #t))))))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("nasm" ,nasm)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)))
+    (inputs
+     `(("cairo" ,cairo)
+       ("curl" ,curl)
+       ("ffmpeg" ,ffmpeg)
+       ("freeglut" ,freeglut)
+       ("glew" ,glew)
+       ("glibmm" ,glibmm)
+       ("gnash" ,gnash)
+       ("libjpeg" ,libjpeg-turbo)
+       ("openssl" ,openssl)
+       ("pango" ,pango)
+       ("pcre2" ,pcre2)
+       ("rtmpdump" ,rtmpdump)
+       ("sdl2" ,sdl2)
+       ("sdl2-mixer" ,sdl2-mixer)
+       ("zlib" ,zlib)))
+    (home-page "https://lightspark.github.io/")
+    (synopsis "Flash player implementation")
+    (description
+     "Lightspark is a Flash player implementation for playing files in the SWF
+format.  Lightspark can run as a web browser plugin or as a standalone
+application.  Lightspark supports SWF files written on all versions of the
+ActionScript language.")
+    (license license:lgpl3+)))
-- 
2.20.1





Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Sat, 28 Nov 2020 16:13:01 GMT) Full text and rfc822 format available.

Message #23 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: Vinicius Monego <monego <at> posteo.net>
Cc: 44768 <at> debbugs.gnu.org
Subject: Re: [bug#44768] [PATCH v3 1/2] gnu: Add gnash.
Date: Sat, 28 Nov 2020 16:12:17 +0000
[Message part 1 (text/plain, inline)]
Vinicius Monego <monego <at> posteo.net> writes:

> * gnu/packages/animation.scm (gnash): New variable.
> * gnu/packages/patches/gnash-fix-giflib-version: New file.
> * gnu/local.mk (dist_patch_DATA): Add it.
> ---
> Corrected typo in the description
> Added data about the patch in patch file

Hi!

I've gone ahead and pushed this patch for gnash to master as
c76d0201f7cc639f51dbf259779d86dad62417cd.

The only thing I changed was moving the package up off the bottom of the
file.

I'll send another email about lightspark.

Thanks,

Chris
[signature.asc (application/pgp-signature, inline)]

Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Sat, 28 Nov 2020 16:16:02 GMT) Full text and rfc822 format available.

Message #26 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Christopher Baines <mail <at> cbaines.net>
To: Vinicius Monego <monego <at> posteo.net>
Cc: 44768 <at> debbugs.gnu.org
Subject: Re: [bug#44768] [PATCH v3 2/2] gnu: Add lightspark.
Date: Sat, 28 Nov 2020 16:15:01 +0000
[Message part 1 (text/plain, inline)]
Vinicius Monego <monego <at> posteo.net> writes:

> * gnu/packages/animation.scm (lightspark): New variable.
> ---
> Rebased on the previous commit

Thanks for the patch, the main thing I noticed with this is that there's
some bundled code, at least I spotted pugixml included in the lightspark
code, and Guix already has a package for pugixml.

If possible, lightspark should be built with pugixml from Guix.

>  gnu/packages/animation.scm | 64 ++++++++++++++++++++++++++++++++++++++
>  1 file changed, 64 insertions(+)
>
> diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
> index 102b0f47f7..9b94c1d214 100644
> --- a/gnu/packages/animation.scm
> +++ b/gnu/packages/animation.scm
> @@ -25,9 +25,11 @@
>    #:use-module (guix git-download)
>    #:use-module (guix utils)
>    #:use-module ((guix licenses) #:prefix license:)
> +  #:use-module (guix build-system cmake)
>    #:use-module (guix build-system gnu)
>    #:use-module (gnu packages)
>    #:use-module (gnu packages algebra)
> +  #:use-module (gnu packages assembly)
>    #:use-module (gnu packages autotools)
>    #:use-module (gnu packages boost)
>    #:use-module (gnu packages compression)
> @@ -43,6 +45,8 @@
>    #:use-module (gnu packages image)
>    #:use-module (gnu packages imagemagick)
>    #:use-module (gnu packages jemalloc)
> +  #:use-module (gnu packages networking)
> +  #:use-module (gnu packages pcre)
>    #:use-module (gnu packages perl)
>    #:use-module (gnu packages pkg-config)
>    #:use-module (gnu packages pulseaudio)
> @@ -397,3 +401,63 @@ audio or video backends, ensuring good performance.")
>        (home-page "https://www.gnu.org/software/gnash/")
>        (license license:gpl3+))))
>  
> +(define-public lightspark
> +  (package
> +    (name "lightspark")
> +    (version "0.8.3")
> +    (source
> +     (origin
> +       (method git-fetch)
> +       (uri (git-reference
> +             (url "https://github.com/lightspark/lightspark")
> +             (commit version)))
> +       (file-name (git-file-name name version))
> +       (sha256
> +        (base32 "0rgqqppnv4n3kv623sgr1zpc2fdsnrqzfiqgk4clcmfl5ipklg6f"))))
> +    (build-system cmake-build-system)
> +    (arguments
> +     `(#:tests? #f ;requires Adobe Flex SDK, see README.tests
> +       #:phases
> +       (modify-phases %standard-phases
> +         (add-after 'unpack 'relative-etc-dir
> +           ;; Write default config file to ./etc instead of /etc.
> +           (lambda _
> +             (substitute* "CMakeLists.txt" (("\\/etc") "etc"))
> +             #t))
> +         (replace 'check
> +           (lambda* (#:key tests? #:allow-other-keys)
> +             (if tests?
> +                 (begin
> +                   (invoke "./tests"))
> +                 #t))))))

I'd normally write this as:

  (when tests?
    (invoke "./tests"))
  #t

> +    (native-inputs
> +     `(("gettext" ,gettext-minimal)
> +       ("glib:bin" ,glib "bin")
> +       ("nasm" ,nasm)
> +       ("perl" ,perl)
> +       ("pkg-config" ,pkg-config)
> +       ("python" ,python-wrapper)))
> +    (inputs
> +     `(("cairo" ,cairo)
> +       ("curl" ,curl)
> +       ("ffmpeg" ,ffmpeg)
> +       ("freeglut" ,freeglut)
> +       ("glew" ,glew)
> +       ("glibmm" ,glibmm)
> +       ("gnash" ,gnash)
> +       ("libjpeg" ,libjpeg-turbo)
> +       ("openssl" ,openssl)
> +       ("pango" ,pango)
> +       ("pcre2" ,pcre2)
> +       ("rtmpdump" ,rtmpdump)
> +       ("sdl2" ,sdl2)
> +       ("sdl2-mixer" ,sdl2-mixer)
> +       ("zlib" ,zlib)))
> +    (home-page "https://lightspark.github.io/")
> +    (synopsis "Flash player implementation")
> +    (description
> +     "Lightspark is a Flash player implementation for playing files in the SWF
> +format.  Lightspark can run as a web browser plugin or as a standalone
> +application.  Lightspark supports SWF files written on all versions of the
> +ActionScript language.")
> +    (license license:lgpl3+)))

[signature.asc (application/pgp-signature, inline)]

Added tag(s) moreinfo. Request was from Ludovic Courtès <ludo <at> gnu.org> to control <at> debbugs.gnu.org. (Fri, 18 Dec 2020 12:55:02 GMT) Full text and rfc822 format available.

Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Tue, 02 Feb 2021 17:13:02 GMT) Full text and rfc822 format available.

Message #31 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Vinicius Monego <monego <at> posteo.net>
To: Christopher Baines <mail <at> cbaines.net>
Cc: 44768 <at> debbugs.gnu.org
Subject: Re: [bug#44768] [PATCH v3 2/2] gnu: Add lightspark.
Date: Tue, 02 Feb 2021 14:10:20 -0300
Christopher Baines writes:

> Vinicius Monego <monego <at> posteo.net> writes:
>
>> * gnu/packages/animation.scm (lightspark): New variable.
>> ---
>> Rebased on the previous commit
>
> Thanks for the patch, the main thing I noticed with this is that there's
> some bundled code, at least I spotted pugixml included in the lightspark
> code, and Guix already has a package for pugixml.
>
> If possible, lightspark should be built with pugixml from Guix.
>

Hello,

Sorry for the late response. I noticed that jxrlib is also in Guix, and
tried to unbundle both jxrlib and pugixml unsuccesfully.

In the case of jxrlib, JXRGlue fails to include JXRMeta:

 #include <JXRMeta.h>
          ^~~~~~~~~~~

IIUC the include syntax is jxrlib/JXRMeta.h. It also fails in the Debian
package from where Guix pulls from.

In the case of pugixml the build fails with undefined references. I also
found this comment in the changelog:

* switch to internal xml parsing (based on pugixml)

which implies that the bundled pugixml is a fork and not a snapshot.

>>  gnu/packages/animation.scm | 64 ++++++++++++++++++++++++++++++++++++++
>>  1 file changed, 64 insertions(+)
>>
>> diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
>> index 102b0f47f7..9b94c1d214 100644
>> --- a/gnu/packages/animation.scm
>> +++ b/gnu/packages/animation.scm
>> @@ -25,9 +25,11 @@
>>    #:use-module (guix git-download)
>>    #:use-module (guix utils)
>>    #:use-module ((guix licenses) #:prefix license:)
>> +  #:use-module (guix build-system cmake)
>>    #:use-module (guix build-system gnu)
>>    #:use-module (gnu packages)
>>    #:use-module (gnu packages algebra)
>> +  #:use-module (gnu packages assembly)
>>    #:use-module (gnu packages autotools)
>>    #:use-module (gnu packages boost)
>>    #:use-module (gnu packages compression)
>> @@ -43,6 +45,8 @@
>>    #:use-module (gnu packages image)
>>    #:use-module (gnu packages imagemagick)
>>    #:use-module (gnu packages jemalloc)
>> +  #:use-module (gnu packages networking)
>> +  #:use-module (gnu packages pcre)
>>    #:use-module (gnu packages perl)
>>    #:use-module (gnu packages pkg-config)
>>    #:use-module (gnu packages pulseaudio)
>> @@ -397,3 +401,63 @@ audio or video backends, ensuring good performance.")
>>        (home-page "https://www.gnu.org/software/gnash/")
>>        (license license:gpl3+))))
>>  
>> +(define-public lightspark
>> +  (package
>> +    (name "lightspark")
>> +    (version "0.8.3")
>> +    (source
>> +     (origin
>> +       (method git-fetch)
>> +       (uri (git-reference
>> +             (url "https://github.com/lightspark/lightspark")
>> +             (commit version)))
>> +       (file-name (git-file-name name version))
>> +       (sha256
>> +        (base32 "0rgqqppnv4n3kv623sgr1zpc2fdsnrqzfiqgk4clcmfl5ipklg6f"))))
>> +    (build-system cmake-build-system)
>> +    (arguments
>> +     `(#:tests? #f ;requires Adobe Flex SDK, see README.tests
>> +       #:phases
>> +       (modify-phases %standard-phases
>> +         (add-after 'unpack 'relative-etc-dir
>> +           ;; Write default config file to ./etc instead of /etc.
>> +           (lambda _
>> +             (substitute* "CMakeLists.txt" (("\\/etc") "etc"))
>> +             #t))
>> +         (replace 'check
>> +           (lambda* (#:key tests? #:allow-other-keys)
>> +             (if tests?
>> +                 (begin
>> +                   (invoke "./tests"))
>> +                 #t))))))
>
> I'd normally write this as:
>
>   (when tests?
>     (invoke "./tests"))
>   #t
>

Ok, I will send an update soon with this change and an update to the
license list because I initially overlooked the 3rd party bundles.

>> +    (native-inputs
>> +     `(("gettext" ,gettext-minimal)
>> +       ("glib:bin" ,glib "bin")
>> +       ("nasm" ,nasm)
>> +       ("perl" ,perl)
>> +       ("pkg-config" ,pkg-config)
>> +       ("python" ,python-wrapper)))
>> +    (inputs
>> +     `(("cairo" ,cairo)
>> +       ("curl" ,curl)
>> +       ("ffmpeg" ,ffmpeg)
>> +       ("freeglut" ,freeglut)
>> +       ("glew" ,glew)
>> +       ("glibmm" ,glibmm)
>> +       ("gnash" ,gnash)
>> +       ("libjpeg" ,libjpeg-turbo)
>> +       ("openssl" ,openssl)
>> +       ("pango" ,pango)
>> +       ("pcre2" ,pcre2)
>> +       ("rtmpdump" ,rtmpdump)
>> +       ("sdl2" ,sdl2)
>> +       ("sdl2-mixer" ,sdl2-mixer)
>> +       ("zlib" ,zlib)))
>> +    (home-page "https://lightspark.github.io/")
>> +    (synopsis "Flash player implementation")
>> +    (description
>> +     "Lightspark is a Flash player implementation for playing files in the SWF
>> +format.  Lightspark can run as a web browser plugin or as a standalone
>> +application.  Lightspark supports SWF files written on all versions of the
>> +ActionScript language.")
>> +    (license license:lgpl3+)))





Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Tue, 02 Feb 2021 17:32:01 GMT) Full text and rfc822 format available.

Message #34 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Vinicius Monego <monego <at> posteo.net>
To: 44768 <at> debbugs.gnu.org
Cc: Vinicius Monego <monego <at> posteo.net>
Subject: [PATCH v4] gnu: Add lightspark.
Date: Tue,  2 Feb 2021 14:29:34 -0300
* gnu/packages/animation.scm (lightspark): New variable.
---
Updated check phase, copyright year and licenses.

 gnu/packages/animation.scm | 70 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 69 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index c92c4ae7e7..180a9e4ee4 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado <at> elephly.net>
 ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2019 Pkill -9 <pkill9 <at> runbox.com>
-;;; Copyright © 2020 Vinicius Monego <monego <at> posteo.net>
+;;; Copyright © 2020, 2021 Vinicius Monego <monego <at> posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -25,10 +25,12 @@
   #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system meson)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages assembly)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
@@ -45,6 +47,8 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages networking)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
@@ -320,6 +324,70 @@ audio or video backends, ensuring good performance.")
       (home-page "https://www.gnu.org/software/gnash/")
       (license license:gpl3+))))
 
+(define-public lightspark
+  (package
+    (name "lightspark")
+    (version "0.8.3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/lightspark/lightspark")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "0rgqqppnv4n3kv623sgr1zpc2fdsnrqzfiqgk4clcmfl5ipklg6f"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ;requires Adobe Flex SDK, see README.tests
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'prepare-build-environment
+           (lambda _
+             ;; Write default config file to ./etc instead of /etc.
+             (substitute* "CMakeLists.txt" (("\\/etc") "etc"))
+             #t))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               (invoke "./tests"))
+                 #t)))))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("nasm" ,nasm)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)))
+    (inputs
+     `(("cairo" ,cairo)
+       ("curl" ,curl)
+       ("ffmpeg" ,ffmpeg)
+       ("freeglut" ,freeglut)
+       ("glew" ,glew)
+       ("glibmm" ,glibmm)
+       ("gnash" ,gnash)
+       ("gnutls" ,gnutls)
+       ("libjpeg" ,libjpeg-turbo)
+       ("openssl" ,openssl)
+       ("pango" ,pango)
+       ("pcre2" ,pcre2)
+       ("rtmpdump" ,rtmpdump)
+       ("sdl2" ,sdl2)
+       ("sdl2-mixer" ,sdl2-mixer)
+       ("zlib" ,zlib)))
+    (home-page "https://lightspark.github.io/")
+    (synopsis "Flash player implementation")
+    (description
+     "Lightspark is a Flash player implementation for playing files in the SWF
+format.  Lightspark can run as a web browser plugin or as a standalone
+application.  Lightspark supports SWF files written on all versions of the
+ActionScript language.")
+    (license (list license:lgpl3+ ;lightspark
+                   license:mpl2.0 ;avmplus
+                   license:bsd-2 ;jxrlib
+                   license:expat)))) ;pugixml, PerlinNoise
+
 (define-public papagayo
   (let ((commit "e143684b30e59fe4a554f965cb655d23cbe93ee7")
         (revision "1"))
-- 
2.30.0





Information forwarded to guix-patches <at> gnu.org:
bug#44768; Package guix-patches. (Fri, 30 Apr 2021 00:24:02 GMT) Full text and rfc822 format available.

Message #37 received at 44768 <at> debbugs.gnu.org (full text, mbox):

From: Vinicius Monego <monego <at> posteo.net>
To: 44768 <at> debbugs.gnu.org
Cc: Vinicius Monego <monego <at> posteo.net>
Subject: [PATCH v5] gnu: Add lightspark.
Date: Fri, 30 Apr 2021 00:22:54 +0000
* gnu/packages/animation.scm (lightspark): New variable.
---
Updated version to 0.8.4.
Clarified some parts with comments.
Disabled NPAPI and PPAPI plugins in #:configure-flags.
Changed description.

 gnu/packages/animation.scm | 80 +++++++++++++++++++++++++++++++++++++-
 1 file changed, 79 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 3a915c7fda..6b9a1cf00e 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -2,7 +2,7 @@
 ;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado <at> elephly.net>
 ;;; Copyright © 2018–2021 Tobias Geerinckx-Rice <me <at> tobias.gr>
 ;;; Copyright © 2019 Pkill -9 <pkill9 <at> runbox.com>
-;;; Copyright © 2020 Vinicius Monego <monego <at> posteo.net>
+;;; Copyright © 2020, 2021 Vinicius Monego <monego <at> posteo.net>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -25,10 +25,12 @@
   #:use-module (guix git-download)
   #:use-module (guix utils)
   #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix build-system cmake)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system meson)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages assembly)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages boost)
   #:use-module (gnu packages check)
@@ -45,6 +47,8 @@
   #:use-module (gnu packages image)
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages jemalloc)
+  #:use-module (gnu packages networking)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages pulseaudio)
@@ -320,6 +324,80 @@ audio or video backends, ensuring good performance.")
       (home-page "https://www.gnu.org/software/gnash/")
       (license license:gpl3+))))
 
+;; This package provides a standalone (no browser plugin) version of
+;; Lightspark.
+(define-public lightspark
+  (package
+    (name "lightspark")
+    (version "0.8.4")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/lightspark/lightspark")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1mkvjmrjdqx4rsvavd619m144pdfkgs3jb6z7i9fmzyvh4i0jp37"))))
+    (build-system cmake-build-system)
+    (arguments
+     `(#:tests? #f ;requires Adobe Flex SDK, see README.tests
+       ;; Disable browser plugins because neither NPAPI nor PPAPI is
+       ;; supported in the browsers we have.
+       #:configure-flags
+       '("-DCOMPILE_NPAPI_PLUGIN=FALSE"
+         "-DCOMPILE_PPAPI_PLUGIN=FALSE")
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'prepare-build-environment
+           (lambda _
+             ;; Use relative etc path.
+             (substitute* "CMakeLists.txt" (("\\/etc") "etc"))
+             #t))
+         (replace 'check
+           (lambda* (#:key tests? #:allow-other-keys)
+             (when tests?
+               (invoke "./tests"))
+             #t)))))
+    (native-inputs
+     `(("gettext" ,gettext-minimal)
+       ("glib:bin" ,glib "bin")
+       ("nasm" ,nasm)
+       ("perl" ,perl)
+       ("pkg-config" ,pkg-config)
+       ("python" ,python-wrapper)))
+    (inputs
+     `(("cairo" ,cairo)
+       ("curl" ,curl)
+       ("ffmpeg" ,ffmpeg)
+       ("freeglut" ,freeglut)
+       ("glew" ,glew)
+       ("glibmm" ,glibmm)
+       ("gnash" ,gnash)
+       ("gnutls" ,gnutls)
+       ("libjpeg" ,libjpeg-turbo)
+       ("openssl" ,openssl)
+       ("pango" ,pango)
+       ("pcre2" ,pcre2)
+       ("rtmpdump" ,rtmpdump)
+       ("sdl2" ,sdl2)
+       ("sdl2-mixer" ,sdl2-mixer)
+       ("zlib" ,zlib)))
+    (home-page "https://lightspark.github.io/")
+    (synopsis "Flash player implementation")
+    (description
+     "Lightspark is a Flash player implementation for playing files in the SWF
+format.  It supports SWF files written on all versions of the ActionScript
+language.")
+    ;; NOTE: The bundled pugixml is a fork specific to Lightspark and
+    ;; incompatible with the one we have.
+    ;; FIXME: we also have jxrlib, but the build fails to find JXRMeta.h so we
+    ;; use the bundled one for now.
+    (license (list license:lgpl3+ ;lightspark
+                   license:mpl2.0 ;avmplus
+                   license:bsd-2 ;jxrlib
+                   license:expat)))) ;pugixml, PerlinNoise
+
 (define-public papagayo
   (let ((commit "e143684b30e59fe4a554f965cb655d23cbe93ee7")
         (revision "1"))
-- 
2.31.1





Reply sent to Nicolas Goaziou <mail <at> nicolasgoaziou.fr>:
You have taken responsibility. (Wed, 26 May 2021 13:36:01 GMT) Full text and rfc822 format available.

Notification sent to Vinicius Monego <monego <at> posteo.net>:
bug acknowledged by developer. (Wed, 26 May 2021 13:36:02 GMT) Full text and rfc822 format available.

Message #42 received at 44768-done <at> debbugs.gnu.org (full text, mbox):

From: Nicolas Goaziou <mail <at> nicolasgoaziou.fr>
To: Vinicius Monego <monego <at> posteo.net>
Cc: 44768-done <at> debbugs.gnu.org
Subject: Re: [bug#44768] [PATCH v5] gnu: Add lightspark.
Date: Wed, 26 May 2021 15:34:55 +0200
Hello,

Vinicius Monego <monego <at> posteo.net> writes:

> * gnu/packages/animation.scm (lightspark): New variable.

I removed #t at the end of phases and applied the patch. Thank you!

Regards,
-- 
Nicolas Goaziou




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 24 Jun 2021 11:24:08 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 305 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.