Hi, The patch below updates geeqie to the latest version and fixes crashing 1.7.x versions. It also adds HEIF support (some of my friends are using this format) but it is is light dependency. OK? Comments?
Index: Makefile
===================================================================
RCS file: /cvs/ports/graphics/geeqie/Makefile,v
retrieving revision 1.32
diff -u -p -u -p -r1.32 Makefile
--- Makefile 11 Mar 2022 19:22:21 -0000 1.32
+++ Makefile 22 Jun 2022 12:09:22 -0000
@@ -1,24 +1,24 @@
COMMENT= lightweight Gtk+3 based image viewer
-DISTNAME= geeqie-1.6
+V= 1.7.3
+DISTNAME= geeqie-${V}
EXTRACT_SUFX= .tar.xz
CATEGORIES= graphics
EPOCH= 0
-REVISION= 0
-HOMEPAGE= http://geeqie.org/
+HOMEPAGE= https://www.geeqie.org/
# GPLv2+
PERMIT_PACKAGE= Yes
WANTLIB += ${COMPILER_LIBCXX} atk-1.0 c cairo cairo-gobject exiv2
WANTLIB += gdk-3 gdk_pixbuf-2.0 gio-2.0 glib-2.0 gobject-2.0 gthread-2.0
-WANTLIB += gtk-3 harfbuzz intl jpeg lcms2 m openjp2 pango-1.0
-WANTLIB += pangocairo-1.0 tiff
+WANTLIB += gtk-3 harfbuzz heif intl jpeg lcms2 m openjp2 pango-1.0
+WANTLIB += pangocairo-1.0 raw tiff
COMPILER= base-clang ports-gcc base-gcc
-MASTER_SITES= http://geeqie.org/
+MASTER_SITES=
https://github.com/BestImageViewer/geeqie/releases/download/v${V}/
MODULES= textproc/intltool
@@ -37,13 +37,14 @@ CONFIGURE_STYLE= autoreconf
CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include" \
LDFLAGS="-L${LOCALBASE}/lib"
CONFIGURE_ARGS= --disable-doxygen-doc \
+ --disable-doxygen-html \
+ --disable-archive \
--disable-lirc \
--disable-lua \
--disable-ffmpegthumbnailer \
--disable-gpu-accel \
--disable-pdf \
--disable-djvu \
- --disable-heif \
--disable-webp \
--enable-gtk3 \
--with-htmldir=${PREFIX}/share/doc/geeqie \
@@ -58,7 +59,14 @@ MAKE_ENV= MKDIR_P='mkdir -p'
# lxml.ElementInclude.FatalIncludeError: cannot load
'GuideMainWindowFilePane.xml' as 'xml'
CONFIGURE_ENV += ac_cv_path_GNOME_DOC_TOOL=
+SEPARATE_BUILD= Yes
+
+post-extract:
+ perl -pi -e 's,bash,sh,g' ${WRKSRC}/version.sh
+ perl -pi -e 's,./create-doxygen-lua-api.sh,,' \
+ ${WRKSRC}/doc/Makefile.am
+ perl -pi -e 's,-Werror ,,g' ${WRKSRC}/configure.ac
post-install:
- rm -rf ${PREFIX}/share/doc/
+ rm -r ${PREFIX}/share/doc/
.include <bsd.port.mk>
Index: distinfo
===================================================================
RCS file: /cvs/ports/graphics/geeqie/distinfo,v
retrieving revision 1.8
diff -u -p -u -p -r1.8 distinfo
--- distinfo 24 Jan 2021 18:43:28 -0000 1.8
+++ distinfo 22 Jun 2022 12:09:22 -0000
@@ -1,2 +1,2 @@
-SHA256 (geeqie-1.6.tar.xz) = SPikR0RU0YI1MQDkOHh1S3YifzuPMM/CWK/J2QpOGSA=
-SIZE (geeqie-1.6.tar.xz) = 1693488
+SHA256 (geeqie-1.7.3.tar.xz) = JbH3HPkb2alvOZ0qnnBQflS7N3pW5k2JUhwPepzl3Tg=
+SIZE (geeqie-1.7.3.tar.xz) = 1949696
Index: pkg/PLIST
===================================================================
RCS file: /cvs/ports/graphics/geeqie/pkg/PLIST,v
retrieving revision 1.12
diff -u -p -u -p -r1.12 PLIST
--- pkg/PLIST 11 Mar 2022 19:22:21 -0000 1.12
+++ pkg/PLIST 22 Jun 2022 12:09:22 -0000
@@ -20,7 +20,6 @@ share/geeqie/
share/geeqie/applications/
share/geeqie/applications/camera-import.desktop
share/geeqie/applications/export-jpeg.desktop
-share/geeqie/applications/geeqie-ufraw-id.desktop
@comment share/geeqie/applications/geeqie-ufraw-recursive.desktop
@comment share/geeqie/applications/geeqie-ufraw.desktop
share/geeqie/applications/image-crop.desktop
Index: patches/patch-src_advanced_exif_c
===================================================================
RCS file: patches/patch-src_advanced_exif_c
diff -N patches/patch-src_advanced_exif_c
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ patches/patch-src_advanced_exif_c 17 Jul 2022 20:38:14 -0000
@@ -0,0 +1,33 @@
+Upstream commit 5ef5596d879a28a9876271fb2d54e1021430aba7
+
+Index: src/advanced_exif.c
+--- src/advanced_exif.c.orig
++++ src/advanced_exif.c
+@@ -280,18 +280,25 @@ void advanced_exif_close(ExifWin *ew)
+ if (!ew) return;
+
+ advanced_exif_window_get_geometry(ew);
++ file_data_unref(ew->fd);
+
+ gtk_widget_destroy(ew->window);
++
++ g_free(ew);
+ }
+
+-static void advanced_exif_delete_cb(GtkWidget *widget, GdkEvent *event,
gpointer data)
++static gboolean advanced_exif_delete_cb(GtkWidget *widget, GdkEvent *event,
gpointer data)
+ {
+ ExifWin *ew = data;
+
+- advanced_exif_window_get_geometry(ew);
++ if (!ew) return FALSE;
+
++ advanced_exif_window_get_geometry(ew);
+ file_data_unref(ew->fd);
++
+ g_free(ew);
++
++ return FALSE;
+ }
+
+ static gint advanced_exif_sort_cb(GtkTreeModel *model, GtkTreeIter *a,
GtkTreeIter *b, gpointer data)
Index: patches/patch-src_layout_util_c
===================================================================
RCS file: /cvs/ports/graphics/geeqie/patches/patch-src_layout_util_c,v
retrieving revision 1.2
diff -u -p -u -r1.2 patch-src_layout_util_c
--- patches/patch-src_layout_util_c 11 Mar 2022 19:22:21 -0000 1.2
+++ patches/patch-src_layout_util_c 17 Jul 2022 20:38:14 -0000
@@ -1,3 +1,5 @@
+Second chunk upstream commit 5ef5596d879a28a9876271fb2d54e1021430aba7
+
Index: src/layout_util.c
--- src/layout_util.c.orig
+++ src/layout_util.c
@@ -9,3 +11,17 @@ Index: src/layout_util.c
#include "main.h"
#include "layout_util.h"
+@@ -4167,10 +4167,12 @@ void layout_bars_close(LayoutWindow *lw)
+ layout_bar_close(lw);
+ }
+
+-static void layout_exif_window_destroy(GtkWidget *widget, gpointer data)
++static gboolean layout_exif_window_destroy(GtkWidget *widget, gpointer data)
+ {
+ LayoutWindow *lw = data;
+ lw->exif_window = NULL;
++
++ return TRUE;
+ }
+
+ void layout_exif_window_new(LayoutWindow *lw)
geeqie-1.7.3.diff
Description: Binary data
