Subject: [bug#76670] [PATCH] gnu: Remove gnash.

From: Vinicius Monego <[email-masked]>
Date: Sun, 2 Mar 2025 01:44:10 +0000

Gnash is unmaintained since 2019, does not compile with recent versions
of Boost, does not compile with C++17 and above and requires an older
version of GCC and deprecated dependencies. It will be a problem to
support it in the long term. Furthermore, it can be replaced by
Lightspark (a modern and active alternative) in the majority of cases.

* gnu/packages/animation.scm (gnash): Delete variable.
* gnu/packages/patches/gnash-fix-giflib-version.patch: Delete patch.
* gnu/local.mk (dist_patch_DATA): Remove it.

Change-Id: I5d65ee7808ab80fbc9b79940c5403a18cc07d96d
---
"Fixes" https://issues.guix.gnu.org/62645

 gnu/local.mk                                  |  1 -
 gnu/packages/animation.scm                    | 83 -------------------
 .../patches/gnash-fix-giflib-version.patch    | 17 ----
 3 files changed, 101 deletions(-)
 delete mode 100644 gnu/packages/patches/gnash-fix-giflib-version.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 09b29da79f..34ff404b8c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1492,7 +1492,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/gmobile-make-it-installable.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-2048-fix-positional-argument.patch	\
   %D%/packages/patches/gnome-control-center-firmware-security.patch	\
   %D%/packages/patches/gnome-control-center-libexecdir.patch	\
diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm
index 5dbc208f5c..b06aa26b48 100644
--- a/gnu/packages/animation.scm
+++ b/gnu/packages/animation.scm
@@ -204,89 +204,6 @@ (define-public synfigstudio
 contains the graphical user interface for synfig.")
     (license license:gpl3+)))
 
-;; 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)
-         ("at-spi2-core" ,at-spi2-core)
-         ("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+))))
-
 ;; This package provides a standalone (no browser plugin) version of
 ;; Lightspark.
 (define-public lightspark
diff --git a/gnu/packages/patches/gnash-fix-giflib-version.patch b/gnu/packages/patches/gnash-fix-giflib-version.patch
deleted file mode 100644
index 44816d2a14..0000000000
--- a/gnu/packages/patches/gnash-fix-giflib-version.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-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);

base-commit: e7b87dcde25b5ef278441d6ea42a7f662fe6d53f
-- 
2.48.1