diff options
| author | Cem Keylan <cem@ckyln.com> | 2024-02-27 14:16:10 +0100 | 
|---|---|---|
| committer | Cem Keylan <cem@ckyln.com> | 2024-02-27 14:16:10 +0100 | 
| commit | 2ea4eeac8c9fe7d0e786e99e188948d4c981a3f5 (patch) | |
| tree | 2a42e5cfe807436e1fa01c762ad7d101deb3c53e /community | |
| parent | 4646a7da6ec67dc36b94a7c850fd5b30d979ad51 (diff) | |
| download | repository-2ea4eeac8c9fe7d0e786e99e188948d4c981a3f5.tar.gz | |
yad: add new package at 13.0
Diffstat (limited to 'community')
| -rwxr-xr-x | community/yad/build | 22 | ||||
| -rw-r--r-- | community/yad/checksums | 3 | ||||
| -rw-r--r-- | community/yad/depends | 9 | ||||
| -rw-r--r-- | community/yad/meta | 3 | ||||
| -rw-r--r-- | community/yad/patches/0001-Separate-X11-dependent-modules.patch | 430 | ||||
| -rw-r--r-- | community/yad/sources | 2 | ||||
| -rw-r--r-- | community/yad/version | 1 | 
7 files changed, 470 insertions, 0 deletions
| diff --git a/community/yad/build b/community/yad/build new file mode 100755 index 00000000..4a772b7a --- /dev/null +++ b/community/yad/build @@ -0,0 +1,22 @@ +#!/bin/sh -e + +patch -p1 < 0001-Separate-X11-dependent-modules.patch + +autoreconf -fi + +./configure \ +    --prefix=/usr \ +    --disable-nls \ +    --disable-html \ +    --disable-sourceview \ +    --disable-spell \ +    --disable-tray + +clsed '/gdkx\.h/d;s/Window xid/unsigned long xid/' src/yad.h +clsed 's/gdk\/gdkx\.h/gtk\/gtkx.h/' src/main.c + + +make +make DESTDIR="$1" install + +rm -r "$1/usr/share/locale" diff --git a/community/yad/checksums b/community/yad/checksums new file mode 100644 index 00000000..38a6c226 --- /dev/null +++ b/community/yad/checksums @@ -0,0 +1,3 @@ +%BLAKE3 +1653edf7002cdf9c96fa6b28dbc7e06c77917752a0d72437c92fbd635b99b77f  yad-13.0.tar.xz +5c10ad490b77d29baabe1f5e7373bc667937d6aaf63576df8d3f6a7ea82080ac  0001-Separate-X11-dependent-modules.patch diff --git a/community/yad/depends b/community/yad/depends new file mode 100644 index 00000000..79b55788 --- /dev/null +++ b/community/yad/depends @@ -0,0 +1,9 @@ +atk +automake make +cairo +freetype-harfbuzz +gdk-pixbuf +gettext-tiny make +glib +gtk+3 +pango diff --git a/community/yad/meta b/community/yad/meta new file mode 100644 index 00000000..7eaf97d5 --- /dev/null +++ b/community/yad/meta @@ -0,0 +1,3 @@ +description: Yet Another Dialog (GTK+3) +license: GPL-3.0-or-later +maintainer: Cem Keylan <cem@carbslinux.org> diff --git a/community/yad/patches/0001-Separate-X11-dependent-modules.patch b/community/yad/patches/0001-Separate-X11-dependent-modules.patch new file mode 100644 index 00000000..b2df5043 --- /dev/null +++ b/community/yad/patches/0001-Separate-X11-dependent-modules.patch @@ -0,0 +1,430 @@ +From add8246df3a3e7e2bda84a813d4fabcf17ce39d7 Mon Sep 17 00:00:00 2001 +From: Cem Keylan <cem@ckyln.com> +Date: Tue, 27 Feb 2024 13:01:10 +0100 +Subject: [PATCH] Separate X11-dependent modules + +--- + configure.ac    | 17 +++++++++++++++++ + src/Makefile.am |  6 ++++-- + src/main.c      | 28 ++++++++++++++++++++++++---- + src/option.c    | 26 +++++++++++++++++++++++--- + src/util.c      |  4 ++++ + src/yad.h       |  8 +++++++- + 6 files changed, 79 insertions(+), 10 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 252cace..e0adf21 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -46,6 +46,23 @@ if test x$have_html = xyes; then +     AC_DEFINE([HAVE_HTML], [1], [Define this if you have webkit2gt library]) + fi +  ++dnl paned and notebook ++AC_ARG_WITH([x11], ++    [AS_HELP_STRING([--with-x11], ++        [Build YAD modules that require x11 (notebook, paned)])], ++    [with_x11=$enableval], [with_x11=yes] ++) ++if test x$with_html = xyes; then ++   PKG_CHECK_MODULES([GTK_X11], [gtk+-x11-3.0], [with_x11=yes], [with_x11=no]) ++else ++    with_x11=no ++fi ++AM_CONDITIONAL([X11], [test x$with_x11 = xyes]) ++ ++if test x$with_x11 = xyes; then ++   AC_DEFINE([HAVE_X11], [1], [Define this if you are using GTK+3 with X11 backend]) ++fi ++ + dnl status icon widget + AC_ARG_ENABLE([tray], + 	[AS_HELP_STRING([--enable-tray], +diff --git a/src/Makefile.am b/src/Makefile.am +index efe905c..f9f2d55 100644 +--- a/src/Makefile.am ++++ b/src/Makefile.am +@@ -20,9 +20,7 @@ yad_SOURCES = 		\ + 	form.c			\ + 	icons.c			\ + 	list.c			\ +-	notebook.c		\ + 	option.c		\ +-	paned.c			\ + 	picture.c       \ + 	print.c			\ + 	progress.c		\ +@@ -42,6 +40,10 @@ if HTML + yad_SOURCES += html.c + endif +  ++if X11 ++yad_SOURCES += notebook.c paned.c ++endif ++ + if STANDALONE + yad_SOURCES += defaults.h + endif +diff --git a/src/main.c b/src/main.c +index 1359a14..53e7a43 100644 +--- a/src/main.c ++++ b/src/main.c +@@ -28,7 +28,9 @@ +  + #ifndef G_OS_WIN32 + # include <sys/shm.h> +-# include <gdk/gdkx.h> ++#endif ++#ifdef HAVE_X11 ++#include <gdk/gdkx.h> + #endif +  + #include "yad.h" +@@ -290,6 +292,7 @@ create_layout (GtkWidget *dlg) +     case YAD_MODE_LIST: +       mw = list_create_widget (dlg); +       break; ++#ifdef HAVE_X11 +     case YAD_MODE_NOTEBOOK: +       if (options.plug == -1) +         mw = notebook_create_widget (dlg); +@@ -298,6 +301,7 @@ create_layout (GtkWidget *dlg) +       if (options.plug == -1) +         mw = paned_create_widget (dlg); +       break; ++#endif +     case YAD_MODE_PICTURE: +       mw = picture_create_widget (dlg); +       break; +@@ -612,6 +616,7 @@ create_dialog (void) +         gtk_window_fullscreen (GTK_WINDOW (dlg)); +     } +  ++#ifdef HAVE_X11 +   /* print xid */ +   if (is_x11 && options.print_xid) +     { +@@ -632,6 +637,7 @@ create_dialog (void) +             fflush (xf); +         } +     } ++#endif +  +   return dlg; + } +@@ -648,10 +654,12 @@ create_plug (void) +       tabs = get_tabs (options.plug, FALSE); +     } +  ++#ifdef HAVE_X11 +   while (!tabs[0].xid) +     usleep (1000); +  +   win = gtk_plug_new (0); ++#endif +   /* set window borders */ +   if (options.data.borders == -1) +     options.data.borders = (gint) gtk_container_get_border_width (GTK_CONTAINER (win)); +@@ -666,7 +674,9 @@ create_plug (void) +   /* add plug data */ +   /* notebook/paned will count non-zero xids */ +   tabs[options.tabnum].pid = getpid (); ++#ifdef HAVE_X11 +   tabs[options.tabnum].xid = gtk_plug_get_id (GTK_PLUG (win)); ++#endif +   shmdt (tabs); + } +  +@@ -699,12 +709,14 @@ yad_print_result (void) +     case YAD_MODE_LIST: +       list_print_result (); +       break; ++#ifdef HAVE_X11 +     case YAD_MODE_NOTEBOOK: +       notebook_print_result (); +       break; +     case YAD_MODE_PANED: +       paned_print_result (); +       break; ++#endif +     case YAD_MODE_SCALE: +       scale_print_result (); +       break; +@@ -885,6 +897,7 @@ main (gint argc, gchar ** argv) +       return ret; +     } +  ++#ifdef HAVE_X11 +   if (!is_x11) +     { +       if (options.mode == YAD_MODE_NOTEBOOK || options.mode == YAD_MODE_PANED +@@ -897,6 +910,7 @@ main (gint argc, gchar ** argv) +           return 1; +         } +     } ++#endif +  +   switch (options.mode) +     { +@@ -921,20 +935,24 @@ main (gint argc, gchar ** argv) +     default: +       dialog = create_dialog (); +  ++#ifdef HAVE_X11 +       if (is_x11) +         { +           /* add YAD_XID variable */ +           str = g_strdup_printf ("0x%lX", GDK_WINDOW_XID (gtk_widget_get_window (dialog))); +           g_setenv ("YAD_XID", str, TRUE); +         } ++#endif +  +       /* make some specific init actions */ +-      if (options.mode == YAD_MODE_NOTEBOOK) ++      if (options.mode == YAD_MODE_TEXTINFO) ++        text_goto_line (); ++#ifdef HAVE_X11 ++      else if (options.mode == YAD_MODE_NOTEBOOK) +         notebook_swallow_childs (); +       else if (options.mode == YAD_MODE_PANED) +         paned_swallow_childs (); +-      else if (options.mode == YAD_MODE_TEXTINFO) +-        text_goto_line (); ++#endif +       else if (options.mode == YAD_MODE_PICTURE) +         { +           if (options.picture_data.size == YAD_PICTURE_FIT) +@@ -963,10 +981,12 @@ main (gint argc, gchar ** argv) +             } +         } + #ifndef G_OS_WIN32 ++#ifdef HAVE_X11 +       if (options.mode == YAD_MODE_NOTEBOOK) +         notebook_close_childs (); +       else if (options.mode == YAD_MODE_PANED) +         paned_close_childs (); ++#endif +       /* autokill option for progress dialog */ +       if (!options.kill_parent) +         { +diff --git a/src/option.c b/src/option.c +index 322e2b1..e6577ae 100644 +--- a/src/option.c ++++ b/src/option.c +@@ -77,11 +77,13 @@ static gboolean html_mode = FALSE; + #endif + static gboolean icons_mode = FALSE; + static gboolean list_mode = FALSE; ++#ifdef HAVE_X11 + static gboolean notebook_mode = FALSE; ++static gboolean paned_mode = FALSE; ++#endif + #ifdef HAVE_TRAY + static gboolean notification_mode = FALSE; + #endif +-static gboolean paned_mode = FALSE; + static gboolean picture_mode = FALSE; + static gboolean print_mode = FALSE; + static gboolean progress_mode = FALSE; +@@ -519,6 +521,7 @@ static GOptionEntry list_options[] = { +   { NULL } + }; +  ++#ifdef HAVE_X11 + static GOptionEntry notebook_options[] = { +   { "notebook", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE, ¬ebook_mode, +     N_("Display notebook dialog"), NULL }, +@@ -536,6 +539,7 @@ static GOptionEntry notebook_options[] = { +     N_("Use stack mode"), NULL }, +   { NULL } + }; ++#endif +  + #ifdef HAVE_TRAY + static GOptionEntry notification_options[] = { +@@ -553,6 +557,7 @@ static GOptionEntry notification_options[] = { + }; + #endif +  ++#ifdef HAVE_X11 + static GOptionEntry paned_options[] = { +   { "paned", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE, &paned_mode, +     N_("Display paned dialog"), NULL }, +@@ -564,6 +569,7 @@ static GOptionEntry paned_options[] = { +     N_("Set focused pane (1 or 2)"), N_("PANE") }, +   { NULL } + }; ++#endif +  + static GOptionEntry picture_options[] = { +   { "picture", 0, G_OPTION_FLAG_IN_MAIN, G_OPTION_ARG_NONE, &picture_mode, +@@ -1128,6 +1134,7 @@ set_justify (const gchar * option_name, const gchar * value, gpointer data, GErr +   return TRUE; + } +  ++#ifdef HAVE_X11 + static gboolean + set_tab_pos (const gchar * option_name, const gchar * value, gpointer data, GError ** err) + { +@@ -1144,6 +1151,7 @@ set_tab_pos (const gchar * option_name, const gchar * value, gpointer data, GErr +  +   return TRUE; + } ++#endif +  + static gboolean + set_expander (const gchar * option_name, const gchar * value, gpointer data, GError ** err) +@@ -1182,6 +1190,7 @@ set_ellipsize (const gchar * option_name, const gchar * value, gpointer data, GE +   return TRUE; + } +  ++#ifdef HAVE_X11 + static gboolean + set_orient (const gchar * option_name, const gchar * value, gpointer data, GError ** err) + { +@@ -1194,6 +1203,7 @@ set_orient (const gchar * option_name, const gchar * value, gpointer data, GErro +  +   return TRUE; + } ++#endif +  + static gboolean + set_print_type (const gchar * option_name, const gchar * value, gpointer data, GError ** err) +@@ -1534,14 +1544,16 @@ yad_set_mode (void) +     options.mode = YAD_MODE_ICONS; +   else if (list_mode) +     options.mode = YAD_MODE_LIST; ++#ifdef HAVE_X11 +   else if (notebook_mode) +     options.mode = YAD_MODE_NOTEBOOK; ++  else if (paned_mode) ++    options.mode = YAD_MODE_PANED; ++#endif + #ifdef HAVE_TRAY +   else if (notification_mode) +     options.mode = YAD_MODE_NOTIFICATION; + #endif +-  else if (paned_mode) +-    options.mode = YAD_MODE_PANED; +   else if (picture_mode) +     options.mode = YAD_MODE_PICTURE; +   else if (print_mode) +@@ -1821,6 +1833,7 @@ yad_options_init (void) +   options.list_data.col_align = NULL; +   options.list_data.hdr_align = NULL; +  ++#ifdef HAVE_X11 +   /* Initialize notebook data */ +   options.notebook_data.tabs = NULL; +   options.notebook_data.borders = 5; +@@ -1828,6 +1841,7 @@ yad_options_init (void) +   options.notebook_data.active = 1; +   options.notebook_data.expand = FALSE; +   options.notebook_data.stack = FALSE; ++#endif +  + #ifdef HAVE_TRAY +   /* Initialize notification data */ +@@ -1836,10 +1850,12 @@ yad_options_init (void) +   options.notification_data.menu = NULL; + #endif +  ++#ifdef HAVE_X11 +   /* Initialize paned data */ +   options.paned_data.orient = GTK_ORIENTATION_VERTICAL; +   options.paned_data.splitter = -1; +   options.paned_data.focused = 1; ++#endif +  +   /* Initialize picture data */ +   options.picture_data.size = YAD_PICTURE_ORIG; +@@ -2029,11 +2045,13 @@ yad_create_context (void) +   g_option_group_set_translation_domain (a_group, GETTEXT_PACKAGE); +   g_option_context_add_group (tmp_ctx, a_group); +  ++#ifdef HAVE_X11 +   /* Adds notebook option entries */ +   a_group = g_option_group_new ("notebook", _("Notebook options"), _("Show notebook dialog options"), NULL, NULL); +   g_option_group_add_entries (a_group, notebook_options); +   g_option_group_set_translation_domain (a_group, GETTEXT_PACKAGE); +   g_option_context_add_group (tmp_ctx, a_group); ++#endif +  + #ifdef HAVE_TRAY +   /* Adds notification option entries */ +@@ -2044,11 +2062,13 @@ yad_create_context (void) +   g_option_context_add_group (tmp_ctx, a_group); + #endif +  ++#ifdef HAVE_X11 +   /* Adds paned option entries */ +   a_group = g_option_group_new ("paned", _("Paned dialog options"), _("Show paned dialog options"), NULL, NULL); +   g_option_group_add_entries (a_group, paned_options); +   g_option_group_set_translation_domain (a_group, GETTEXT_PACKAGE); +   g_option_context_add_group (tmp_ctx, a_group); ++#endif +  +   /* Adds picture option entries */ +   a_group = g_option_group_new ("picture", _("Picture dialog options"), _("Show picture dialog options"), NULL, NULL); +diff --git a/src/util.c b/src/util.c +index 6750dff..c65f0f4 100644 +--- a/src/util.c ++++ b/src/util.c +@@ -305,11 +305,15 @@ get_tabs (key_t key, gboolean create) +       for (i = 1; i < max_tab; i++) +         { +           t[i].pid = -1; ++#ifdef HAVE_X11 +           t[i].xid = 0; ++#endif +         } +       t[0].pid = shmid; +       /* lastly, allow plugs to write shmem */ ++#ifdef HAVE_X11 +       t[0].xid = 1; ++#endif +     } +  +   return t; +diff --git a/src/yad.h b/src/yad.h +index 2ed7be9..bc05c9e 100644 +--- a/src/yad.h ++++ b/src/yad.h +@@ -27,7 +27,9 @@ + #include <sys/ipc.h> + #include <fcntl.h> +  ++#ifdef HAVE_X11 + #include <gdk/gdkx.h> ++#endif +  + #include <gtk/gtk.h> + #include <gtk/gtkx.h> +@@ -82,11 +84,13 @@ typedef enum { + #endif +   YAD_MODE_ICONS, +   YAD_MODE_LIST, ++#ifdef HAVE_X11 +   YAD_MODE_NOTEBOOK, ++  YAD_MODE_PANED, ++#endif + #ifdef HAVE_TRAY +   YAD_MODE_NOTIFICATION, + #endif +-  YAD_MODE_PANED, +   YAD_MODE_PICTURE, +   YAD_MODE_PRINT, +   YAD_MODE_PROGRESS, +@@ -629,7 +633,9 @@ extern gboolean ignore_esc; + /* TABS */ + typedef struct { +   pid_t pid; ++#ifdef HAVE_X11 +   Window xid; ++#endif + } YadNTabs; +  + /* pointer to shared memory for tabbed dialog */ +--  +2.43.2 + diff --git a/community/yad/sources b/community/yad/sources new file mode 100644 index 00000000..7134f9b8 --- /dev/null +++ b/community/yad/sources @@ -0,0 +1,2 @@ +https://github.com/v1cont/yad/releases/download/v13.0/yad-13.0.tar.xz +patches/0001-Separate-X11-dependent-modules.patch diff --git a/community/yad/version b/community/yad/version new file mode 100644 index 00000000..04c7d3c8 --- /dev/null +++ b/community/yad/version @@ -0,0 +1 @@ +13.0 1 | 
