Index: head/x11/wofi/Makefile =================================================================== --- head/x11/wofi/Makefile (revision 543672) +++ head/x11/wofi/Makefile (revision 543673) @@ -1,31 +1,30 @@ # $FreeBSD$ PORTNAME= wofi DISTVERSIONPREFIX= v -DISTVERSION= 1.1.2 +DISTVERSION= 1.2.1 CATEGORIES= x11 #MASTER_SITES= https://hg.sr.ht/~scoopta/${PORTNAME}/archive/${DISTVERSIONFULL}${EXTRACT_SUFX}?dummy=/ MASTER_SITES+= LOCAL/jbeich # https://todo.sr.ht/~sircmpwn/hg.sr.ht/33 MAINTAINER= jbeich@FreeBSD.org COMMENT= Launcher/menu program for wlroots-based compositors LICENSE= GPLv3+ LICENSE_FILE= ${WRKSRC}/COPYING.md LIB_DEPENDS= libwayland-client.so:graphics/wayland USES= gnome meson pkgconfig -USE_CSTD= gnu99 # https://lists.sr.ht/~scoopta/wofi/patches/10055 -USE_GNOME= gdkpixbuf2 gtk30 +USE_GNOME= cairo gdkpixbuf2 gtk30 post-patch: @${REINPLACE_CMD} 's,/usr/local,${PREFIX},g' \ ${WRKSRC}/man/${PORTNAME}.7 \ ${WRKSRC}/modes/drun.c # Extract (snapshot) version from the port instead of meson.build @${REINPLACE_CMD} -i .nohg -e 's/hg.found()/false/' \ -e "s/' + version + '/${DISTVERSIONFULL}/" \ ${WRKSRC}/meson.build .include Index: head/x11/wofi/distinfo =================================================================== --- head/x11/wofi/distinfo (revision 543672) +++ head/x11/wofi/distinfo (revision 543673) @@ -1,3 +1,3 @@ -TIMESTAMP = 1583818656 -SHA256 (wofi-v1.1.2.tar.gz) = c7f952e49bf52d3519b52c9f7c88c8d83a800297d16076f7eaefddf0cb6f8371 -SIZE (wofi-v1.1.2.tar.gz) = 64813 +TIMESTAMP = 1595978324 +SHA256 (wofi-v1.2.1.tar.gz) = d1a2c6bf7a193566c87bc95b6ad02241da22aa7623a740dfc80a140b1a1e0ec9 +SIZE (wofi-v1.2.1.tar.gz) = 71357 Index: head/x11/wofi/files/patch-glib-2.56 =================================================================== --- head/x11/wofi/files/patch-glib-2.56 (revision 543672) +++ head/x11/wofi/files/patch-glib-2.56 (revision 543673) @@ -1,44 +1,52 @@ Partially revert https://hg.sr.ht/~scoopta/wofi/rev/6343e02e2478 until devel/glib20 is updated to 2.60 or later. ld: error: undefined symbol: g_app_info_launch_uris_async >>> referenced by drun.c >>> wofi@exe/modes_drun.c.o:(wofi_drun_exec) ld: error: undefined symbol: g_app_info_launch_uris_finish >>> referenced by drun.c >>> wofi@exe/modes_drun.c.o:(launch_done) ---- modes/drun.c.orig 2020-03-10 05:37:36 UTC +--- modes/drun.c.orig 2020-07-28 23:18:44 UTC +++ modes/drun.c -@@ -315,6 +315,7 @@ struct widget* wofi_drun_get_widget(void) { +@@ -19,6 +19,7 @@ + #include + + #include ++#include + + #include + #include +@@ -373,6 +374,7 @@ struct widget* wofi_drun_get_widget(void) { return NULL; } +#if GLIB_CHECK_VERSION(2, 60, 0) static void launch_done(GObject* obj, GAsyncResult* result, gpointer data) { GError* err = NULL; if(g_app_info_launch_uris_finish(G_APP_INFO(obj), result, &err)) { -@@ -329,6 +330,7 @@ static void launch_done(GObject* obj, GAsyncResult* re +@@ -387,6 +389,7 @@ static void launch_done(GObject* obj, GAsyncResult* re } exit(1); } +#endif - void wofi_drun_exec(const gchar* cmd) { - GDesktopAppInfo* info = g_desktop_app_info_new_from_filename(cmd); -@@ -338,7 +340,14 @@ void wofi_drun_exec(const gchar* cmd) { - printf("%s\n", g_app_info_get_commandline(G_APP_INFO(info))); + static void set_dri_prime(GDesktopAppInfo* info) { + bool dri_prime = g_desktop_app_info_get_boolean(info, "PrefersNonDefaultGPU"); +@@ -404,7 +407,14 @@ void wofi_drun_exec(const gchar* cmd) { exit(0); } else { + set_dri_prime(info); +#if GLIB_CHECK_VERSION(2, 60, 0) g_app_info_launch_uris_async(G_APP_INFO(info), NULL, NULL, NULL, launch_done, (gchar*) cmd); +#else + const char* exec = g_app_info_get_executable(G_APP_INFO(info)); + execlp(exec, exec, NULL); + fprintf(stderr, "%s cannot be executed\n", exec); + exit(errno); +#endif } } else if(strrchr(cmd, ' ') != NULL) { char* space = strrchr(cmd, ' '); Index: head/x11/wofi/pkg-plist =================================================================== --- head/x11/wofi/pkg-plist (revision 543672) +++ head/x11/wofi/pkg-plist (revision 543673) @@ -1,15 +1,17 @@ bin/wofi include/wofi-1/config.h include/wofi-1/map.h include/wofi-1/utils.h +include/wofi-1/utils_g.h +include/wofi-1/widget_builder_api.h include/wofi-1/wofi_api.h libdata/pkgconfig/wofi.pc man/man1/wofi.1.gz man/man3/wofi-api.3.gz man/man3/wofi-config.3.gz man/man3/wofi-map.3.gz man/man3/wofi-utils.3.gz man/man3/wofi.3.gz man/man5/wofi.5.gz man/man7/wofi-keys.7.gz man/man7/wofi.7.gz