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)

Attachment: geeqie-1.7.3.diff
Description: Binary data

Reply via email to