Sync from SUSE:SLFO:Main gtk4 revision 8779794edd9d57f59e9475c0ecca645c
This commit is contained in:
commit
f82e47e8ce
23
.gitattributes
vendored
Normal file
23
.gitattributes
vendored
Normal file
@ -0,0 +1,23 @@
|
|||||||
|
## Default LFS
|
||||||
|
*.7z filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bsp filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.bz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gem filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.gz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.jar filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.lzma filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.obscpio filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.oxt filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.pdf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.png filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.rpm filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tbz2 filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.tgz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.ttf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.txz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.whl filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.xz filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zip filter=lfs diff=lfs merge=lfs -text
|
||||||
|
*.zst filter=lfs diff=lfs merge=lfs -text
|
117
0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
Normal file
117
0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
Normal file
@ -0,0 +1,117 @@
|
|||||||
|
From 5f5fd77f096174c45f8335afe6efd6745796d9a5 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Kalev Lember <klember@redhat.com>
|
||||||
|
Date: Mon, 25 Jul 2022 16:21:50 +0200
|
||||||
|
Subject: [PATCH] Revert "Meson: Simplify pkgconfig file generator"
|
||||||
|
|
||||||
|
Temporarily revert this until we figure out how to best restore
|
||||||
|
private requires that are needed for rpm automatic dep extraction.
|
||||||
|
|
||||||
|
https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
|
||||||
|
|
||||||
|
This reverts commit 802bf4199911c811938b0454a876089bafa97dba.
|
||||||
|
---
|
||||||
|
meson.build | 47 +++++++++++++++++++++++++++++++++--------------
|
||||||
|
1 file changed, 33 insertions(+), 14 deletions(-)
|
||||||
|
|
||||||
|
Index: gtk-4.10.1/meson.build
|
||||||
|
===================================================================
|
||||||
|
--- gtk-4.10.1.orig/meson.build
|
||||||
|
+++ gtk-4.10.1/meson.build
|
||||||
|
@@ -438,6 +438,9 @@ if not os_win32
|
||||||
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
+
|
||||||
|
+pc_gdk_extra_libs = []
|
||||||
|
+
|
||||||
|
cairo_backends = []
|
||||||
|
foreach backend: [ ['cairo-xlib', cairo_req, x11_enabled],
|
||||||
|
['cairo-win32', cairo_req, win32_enabled],
|
||||||
|
@@ -566,14 +569,26 @@ if x11_enabled
|
||||||
|
cdata.set('HAVE_RANDR15', xrandr15_dep.found())
|
||||||
|
endif
|
||||||
|
|
||||||
|
+if broadway_enabled
|
||||||
|
+ pc_gdk_extra_libs += ['-lz']
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
+if macos_enabled
|
||||||
|
+ pc_gdk_extra_libs += ['-framework Cocoa', '-framework Carbon']
|
||||||
|
+endif
|
||||||
|
+
|
||||||
|
extra_demo_ldflags = []
|
||||||
|
if win32_enabled
|
||||||
|
+ pc_gdk_extra_libs += ['-lgdi32', '-limm32', '-lshell32', '-lole32']
|
||||||
|
if cc.get_id() == 'msvc'
|
||||||
|
# Since the demo programs are now built as pure GUI programs, we
|
||||||
|
# need to pass in /entry:mainCRTStartup so that they will properly
|
||||||
|
# link on Visual Studio builds
|
||||||
|
extra_demo_ldflags = ['/entry:mainCRTStartup']
|
||||||
|
+ else
|
||||||
|
+ pc_gdk_extra_libs += ['-Wl,-luuid']
|
||||||
|
endif
|
||||||
|
+ pc_gdk_extra_libs += ['-lwinmm', '-ldwmapi', '-lsetupapi', '-lcfgmgr32', '-lhid']
|
||||||
|
|
||||||
|
# Check whether libepoxy is built with EGL support on Windows
|
||||||
|
endif
|
||||||
|
@@ -803,7 +818,16 @@ gsk_private_packages = [] # all already
|
||||||
|
pangoft2_pkgs = (wayland_enabled or x11_enabled) ? ['pangoft2'] : []
|
||||||
|
gtk_private_packages = pangoft2_pkgs
|
||||||
|
|
||||||
|
-pkgs = []
|
||||||
|
+gdk_extra_libs = pc_gdk_extra_libs
|
||||||
|
+gsk_extra_libs = []
|
||||||
|
+gtk_extra_libs = []
|
||||||
|
+
|
||||||
|
+gdk_extra_cflags = []
|
||||||
|
+gsk_extra_cflags = []
|
||||||
|
+gtk_extra_cflags = []
|
||||||
|
+
|
||||||
|
+pkgs = [ 'gtk4' ]
|
||||||
|
+
|
||||||
|
pkg_targets = []
|
||||||
|
display_backends = []
|
||||||
|
foreach backend: [ 'broadway', 'macos', 'wayland', 'win32', 'x11', ]
|
||||||
|
@@ -820,23 +844,18 @@ common_pc_variables = [
|
||||||
|
'gtk_host=@0@-@1@'.format(host_machine.cpu_family(), host_machine.system()), # FIXME
|
||||||
|
]
|
||||||
|
|
||||||
|
-pkg_config.generate(libgtk,
|
||||||
|
- filebase: 'gtk4',
|
||||||
|
- unescaped_variables: common_pc_variables,
|
||||||
|
- name: 'GTK',
|
||||||
|
- description: 'GTK Graphical UI Library',
|
||||||
|
- requires: gdk_packages + gsk_packages + gtk_packages,
|
||||||
|
- subdirs: ['gtk-@0@'.format(gtk_api_version)],
|
||||||
|
-)
|
||||||
|
-meson.override_dependency('gtk4', libgtk_dep)
|
||||||
|
-
|
||||||
|
foreach pkg: pkgs
|
||||||
|
pkg_config.generate(
|
||||||
|
filebase: pkg,
|
||||||
|
unescaped_variables: common_pc_variables,
|
||||||
|
name: 'GTK',
|
||||||
|
description: 'GTK Graphical UI Library',
|
||||||
|
- requires: 'gtk4',
|
||||||
|
+ requires: gdk_packages + gsk_packages + gtk_packages,
|
||||||
|
+ requires_private: gdk_private_packages + gsk_private_packages + gtk_private_packages,
|
||||||
|
+ libraries: ['-L${libdir}', '-lgtk-4'],
|
||||||
|
+ libraries_private: gdk_extra_libs + gsk_extra_libs + gtk_extra_libs,
|
||||||
|
+ subdirs: ['gtk-@0@'.format(gtk_api_version)],
|
||||||
|
+ extra_cflags: gdk_extra_cflags + gsk_extra_cflags + gtk_extra_cflags,
|
||||||
|
)
|
||||||
|
meson.override_dependency(pkg, libgtk_dep)
|
||||||
|
endforeach
|
||||||
|
@@ -847,10 +866,10 @@ if os_unix
|
||||||
|
unescaped_variables: common_pc_variables,
|
||||||
|
name: 'GTK',
|
||||||
|
description: 'GTK Unix print support',
|
||||||
|
- requires: 'gtk4',
|
||||||
|
+ requires: ['gtk4'] + gtk_packages,
|
||||||
|
+ libraries: [],
|
||||||
|
subdirs: ['gtk-@0@/unix-print'.format(gtk_api_version)],
|
||||||
|
)
|
||||||
|
- meson.override_dependency('gtk4-unix-print', libgtk_dep)
|
||||||
|
endif
|
||||||
|
|
||||||
|
subdir('po')
|
118
966a2350.patch
Normal file
118
966a2350.patch
Normal file
@ -0,0 +1,118 @@
|
|||||||
|
From 966a23503a2e8bbb948270e06f3eb13ca4c06632 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Benjamin Otte <otte@redhat.com>
|
||||||
|
Date: Tue, 2 May 2023 19:48:54 +0200
|
||||||
|
Subject: [PATCH] css: Don't transition to currentColor
|
||||||
|
|
||||||
|
Transition to the color that is in use instead.
|
||||||
|
|
||||||
|
Fixes crashes because currentColor is not an RGBA color and
|
||||||
|
therefor could not be queried later.
|
||||||
|
|
||||||
|
Fixes #5798
|
||||||
|
---
|
||||||
|
gtk/gtkcssfiltervalue.c | 16 ++++++++--------
|
||||||
|
gtk/gtkcssshadowvalue.c | 4 ++--
|
||||||
|
gtk/gtkcssshadowvalueprivate.h | 2 +-
|
||||||
|
3 files changed, 11 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/gtk/gtkcssfiltervalue.c b/gtk/gtkcssfiltervalue.c
|
||||||
|
index ed334979cb6..84f581121c5 100644
|
||||||
|
--- a/gtk/gtkcssfiltervalue.c
|
||||||
|
+++ b/gtk/gtkcssfiltervalue.c
|
||||||
|
@@ -102,10 +102,10 @@ gtk_css_filter_clear (GtkCssFilter *filter)
|
||||||
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
-gtk_css_filter_init_identity (GtkCssFilter *filter,
|
||||||
|
- GtkCssFilterType type)
|
||||||
|
+gtk_css_filter_init_identity (GtkCssFilter *filter,
|
||||||
|
+ const GtkCssFilter *other)
|
||||||
|
{
|
||||||
|
- switch (type)
|
||||||
|
+ switch (other->type)
|
||||||
|
{
|
||||||
|
case GTK_CSS_FILTER_BRIGHTNESS:
|
||||||
|
filter->brightness.value = _gtk_css_number_value_new (1, GTK_CSS_NUMBER);
|
||||||
|
@@ -135,7 +135,7 @@ gtk_css_filter_init_identity (GtkCssFilter *filter,
|
||||||
|
filter->blur.value = _gtk_css_number_value_new (0, GTK_CSS_PX);
|
||||||
|
break;
|
||||||
|
case GTK_CSS_FILTER_DROP_SHADOW:
|
||||||
|
- filter->drop_shadow.value = gtk_css_shadow_value_new_filter ();
|
||||||
|
+ filter->drop_shadow.value = gtk_css_shadow_value_new_filter (other->drop_shadow.value);
|
||||||
|
break;
|
||||||
|
case GTK_CSS_FILTER_NONE:
|
||||||
|
default:
|
||||||
|
@@ -143,7 +143,7 @@ gtk_css_filter_init_identity (GtkCssFilter *filter,
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
- filter->type = type;
|
||||||
|
+ filter->type = other->type;
|
||||||
|
}
|
||||||
|
|
||||||
|
#define R 0.2126
|
||||||
|
@@ -466,7 +466,7 @@ gtk_css_value_filter_equal (const GtkCssValue *value1,
|
||||||
|
{
|
||||||
|
GtkCssFilter filter;
|
||||||
|
|
||||||
|
- gtk_css_filter_init_identity (&filter, larger->filters[i].type);
|
||||||
|
+ gtk_css_filter_init_identity (&filter, &larger->filters[i]);
|
||||||
|
|
||||||
|
if (!gtk_css_filter_equal (&larger->filters[i], &filter))
|
||||||
|
{
|
||||||
|
@@ -590,7 +590,7 @@ gtk_css_value_filter_transition (GtkCssValue *start,
|
||||||
|
{
|
||||||
|
GtkCssFilter filter;
|
||||||
|
|
||||||
|
- gtk_css_filter_init_identity (&filter, start->filters[i].type);
|
||||||
|
+ gtk_css_filter_init_identity (&filter, &start->filters[i]);
|
||||||
|
gtk_css_filter_transition (&result->filters[i],
|
||||||
|
&start->filters[i],
|
||||||
|
&filter,
|
||||||
|
@@ -602,7 +602,7 @@ gtk_css_value_filter_transition (GtkCssValue *start,
|
||||||
|
{
|
||||||
|
GtkCssFilter filter;
|
||||||
|
|
||||||
|
- gtk_css_filter_init_identity (&filter, end->filters[i].type);
|
||||||
|
+ gtk_css_filter_init_identity (&filter, &end->filters[i]);
|
||||||
|
gtk_css_filter_transition (&result->filters[i],
|
||||||
|
&filter,
|
||||||
|
&end->filters[i],
|
||||||
|
diff --git a/gtk/gtkcssshadowvalue.c b/gtk/gtkcssshadowvalue.c
|
||||||
|
index 66029dbff44..fead476c00a 100644
|
||||||
|
--- a/gtk/gtkcssshadowvalue.c
|
||||||
|
+++ b/gtk/gtkcssshadowvalue.c
|
||||||
|
@@ -331,7 +331,7 @@ gtk_css_shadow_value_new (ShadowValue *shadows,
|
||||||
|
}
|
||||||
|
|
||||||
|
GtkCssValue *
|
||||||
|
-gtk_css_shadow_value_new_filter (void)
|
||||||
|
+gtk_css_shadow_value_new_filter (const GtkCssValue *other)
|
||||||
|
{
|
||||||
|
ShadowValue value;
|
||||||
|
|
||||||
|
@@ -340,7 +340,7 @@ gtk_css_shadow_value_new_filter (void)
|
||||||
|
value.voffset = _gtk_css_number_value_new (0, GTK_CSS_NUMBER);
|
||||||
|
value.radius = _gtk_css_number_value_new (0, GTK_CSS_NUMBER);
|
||||||
|
value.spread = _gtk_css_number_value_new (0, GTK_CSS_NUMBER);
|
||||||
|
- value.color = _gtk_css_color_value_new_current_color ();
|
||||||
|
+ value.color = gtk_css_value_ref (other->shadows[0].color);
|
||||||
|
|
||||||
|
return gtk_css_shadow_value_new (&value, 1, TRUE);
|
||||||
|
}
|
||||||
|
diff --git a/gtk/gtkcssshadowvalueprivate.h b/gtk/gtkcssshadowvalueprivate.h
|
||||||
|
index 21efac19080..a2cf97688b0 100644
|
||||||
|
--- a/gtk/gtkcssshadowvalueprivate.h
|
||||||
|
+++ b/gtk/gtkcssshadowvalueprivate.h
|
||||||
|
@@ -35,7 +35,7 @@
|
||||||
|
G_BEGIN_DECLS
|
||||||
|
|
||||||
|
GtkCssValue * gtk_css_shadow_value_new_none (void);
|
||||||
|
-GtkCssValue * gtk_css_shadow_value_new_filter (void);
|
||||||
|
+GtkCssValue * gtk_css_shadow_value_new_filter (const GtkCssValue *other);
|
||||||
|
|
||||||
|
GtkCssValue * gtk_css_shadow_value_parse (GtkCssParser *parser,
|
||||||
|
gboolean box_shadow_mode);
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
BIN
gtk-4.10.3.tar.xz
(Stored with Git LFS)
Normal file
BIN
gtk-4.10.3.tar.xz
(Stored with Git LFS)
Normal file
Binary file not shown.
100
gtk4-correctly-refresh-after-delete.patch
Normal file
100
gtk4-correctly-refresh-after-delete.patch
Normal file
@ -0,0 +1,100 @@
|
|||||||
|
From 4f47683710bbb4b56c286c6ee6a5c394fcf2b755 Mon Sep 17 00:00:00 2001
|
||||||
|
From: Matthias Clasen <mclasen@redhat.com>
|
||||||
|
Date: Wed, 29 Mar 2023 02:23:46 +0000
|
||||||
|
Subject: [PATCH] Merge branch 'wip/otte/trelistmodel-fixage' into 'main'
|
||||||
|
|
||||||
|
treelistmodel: Don't add items in reverse
|
||||||
|
|
||||||
|
Closes #5707
|
||||||
|
|
||||||
|
See merge request GNOME/gtk!5744
|
||||||
|
|
||||||
|
(cherry picked from commit c5a53f235a2ed1b0acd0a8c29153e62377262d04)
|
||||||
|
|
||||||
|
1718db14 treelistmodel: Don't add items in reverse
|
||||||
|
cd860beb Add a test for splicing treelistmodel
|
||||||
|
---
|
||||||
|
gtk/gtktreelistmodel.c | 2 +-
|
||||||
|
testsuite/gtk/treelistmodel.c | 46 +++++++++++++++++++++++++++++++++++
|
||||||
|
2 files changed, 47 insertions(+), 1 deletion(-)
|
||||||
|
|
||||||
|
diff --git a/gtk/gtktreelistmodel.c b/gtk/gtktreelistmodel.c
|
||||||
|
index dd3b3009ccc..1e55323c0a4 100644
|
||||||
|
--- a/gtk/gtktreelistmodel.c
|
||||||
|
+++ b/gtk/gtktreelistmodel.c
|
||||||
|
@@ -357,7 +357,7 @@ gtk_tree_list_model_items_changed_cb (GListModel *model,
|
||||||
|
}
|
||||||
|
|
||||||
|
tree_added = added;
|
||||||
|
- for (i = 0; i < added; i++)
|
||||||
|
+ for (i = added; i-- > 0;)
|
||||||
|
{
|
||||||
|
child = gtk_rb_tree_insert_before (node->children, child);
|
||||||
|
child->parent = node;
|
||||||
|
diff --git a/testsuite/gtk/treelistmodel.c b/testsuite/gtk/treelistmodel.c
|
||||||
|
index 941ac3d306b..98493a3ba56 100644
|
||||||
|
--- a/testsuite/gtk/treelistmodel.c
|
||||||
|
+++ b/testsuite/gtk/treelistmodel.c
|
||||||
|
@@ -261,6 +261,51 @@ test_remove_some (void)
|
||||||
|
g_object_unref (tree);
|
||||||
|
}
|
||||||
|
|
||||||
|
+static void
|
||||||
|
+splice (GListStore *store,
|
||||||
|
+ guint pos,
|
||||||
|
+ guint removed,
|
||||||
|
+ guint *numbers,
|
||||||
|
+ guint added)
|
||||||
|
+{
|
||||||
|
+ GObject **objects = g_newa (GObject *, added);
|
||||||
|
+ guint i;
|
||||||
|
+
|
||||||
|
+ for (i = 0; i < added; i++)
|
||||||
|
+ {
|
||||||
|
+ /* 0 cannot be differentiated from NULL, so don't use it */
|
||||||
|
+ g_assert_cmpint (numbers[i], !=, 0);
|
||||||
|
+ objects[i] = g_object_new (G_TYPE_OBJECT, NULL);
|
||||||
|
+ g_object_set_qdata (objects[i], number_quark, GUINT_TO_POINTER (numbers[i]));
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ g_list_store_splice (store, pos, removed, (gpointer *) objects, added);
|
||||||
|
+
|
||||||
|
+ for (i = 0; i < added; i++)
|
||||||
|
+ g_object_unref (objects[i]);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
+static void
|
||||||
|
+test_splice (void)
|
||||||
|
+{
|
||||||
|
+ GtkTreeListModel *tree = new_model (100, TRUE);
|
||||||
|
+ gpointer item;
|
||||||
|
+
|
||||||
|
+ assert_model (tree, "100 100 100 99 98 97 96 95 94 93 92 91 90 90 89 88 87 86 85 84 83 82 81 80 80 79 78 77 76 75 74 73 72 71 70 70 69 68 67 66 65 64 63 62 61 60 60 59 58 57 56 55 54 53 52 51 50 50 49 48 47 46 45 44 43 42 41 40 40 39 38 37 36 35 34 33 32 31 30 30 29 28 27 26 25 24 23 22 21 20 20 19 18 17 16 15 14 13 12 11 10 10 9 8 7 6 5 4 3 2 1");
|
||||||
|
+ assert_changes (tree, "");
|
||||||
|
+
|
||||||
|
+ item = g_list_model_get_item (G_LIST_MODEL (tree), 1);
|
||||||
|
+ g_assert_true (G_IS_LIST_MODEL (item));
|
||||||
|
+ splice (item, 0, 5, (guint[5]) { 300, 301, 302, 303, 304 }, 5);
|
||||||
|
+ /* expected */
|
||||||
|
+ assert_model (tree, "100 100 300 301 302 303 304 95 94 93 92 91 90 90 89 88 87 86 85 84 83 82 81 80 80 79 78 77 76 75 74 73 72 71 70 70 69 68 67 66 65 64 63 62 61 60 60 59 58 57 56 55 54 53 52 51 50 50 49 48 47 46 45 44 43 42 41 40 40 39 38 37 36 35 34 33 32 31 30 30 29 28 27 26 25 24 23 22 21 20 20 19 18 17 16 15 14 13 12 11 10 10 9 8 7 6 5 4 3 2 1");
|
||||||
|
+ /* real outcome */
|
||||||
|
+ // assert_model (tree, "100 100 304 303 302 301 300 95 94 93 92 91 90 90 89 88 87 86 85 84 83 82 81 80 80 79 78 77 76 75 74 73 72 71 70 70 69 68 67 66 65 64 63 62 61 60 60 59 58 57 56 55 54 53 52 51 50 50 49 48 47 46 45 44 43 42 41 40 40 39 38 37 36 35 34 33 32 31 30 30 29 28 27 26 25 24 23 22 21 20 20 19 18 17 16 15 14 13 12 11 10 10 9 8 7 6 5 4 3 2 1");
|
||||||
|
+ assert_changes (tree, "2-5+5");
|
||||||
|
+
|
||||||
|
+ g_object_unref (tree);
|
||||||
|
+}
|
||||||
|
+
|
||||||
|
/* Test for https://gitlab.gnome.org/GNOME/gtk/-/issues/4595 */
|
||||||
|
typedef struct _DemoNode DemoNode;
|
||||||
|
|
||||||
|
@@ -391,6 +436,7 @@ main (int argc, char *argv[])
|
||||||
|
|
||||||
|
g_test_add_func ("/treelistmodel/expand", test_expand);
|
||||||
|
g_test_add_func ("/treelistmodel/remove_some", test_remove_some);
|
||||||
|
+ g_test_add_func ("/treelistmodel/remove_splice", test_splice);
|
||||||
|
g_test_add_func ("/treelistmodel/collapse-change", test_collapse_change);
|
||||||
|
|
||||||
|
return g_test_run ();
|
||||||
|
--
|
||||||
|
GitLab
|
||||||
|
|
4
gtk4-rpmlintrc
Normal file
4
gtk4-rpmlintrc
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
# We're keeping English locales in the tools sub-packages instead of lang.
|
||||||
|
# English should be offered to everybody by default, without installing lang
|
||||||
|
# packages.
|
||||||
|
addFilter("file-not-in-%lang");
|
2306
gtk4.changes
Normal file
2306
gtk4.changes
Normal file
File diff suppressed because it is too large
Load Diff
457
gtk4.spec
Normal file
457
gtk4.spec
Normal file
@ -0,0 +1,457 @@
|
|||||||
|
#
|
||||||
|
# spec file for package gtk4
|
||||||
|
#
|
||||||
|
# Copyright (c) 2023 SUSE LLC
|
||||||
|
# Copyright (c) 2010 Dominique Leuenebrger, Amsterdam, Netherlands
|
||||||
|
#
|
||||||
|
# All modifications and additions to the file contributed by third parties
|
||||||
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
|
# upon. The license for this file, and modifications and additions to the
|
||||||
|
# file, is the same license as for the pristine package itself (unless the
|
||||||
|
# license for the pristine package is not an Open Source License, in which
|
||||||
|
# case the license is the MIT License). An "Open Source License" is a
|
||||||
|
# license that conforms to the Open Source Definition (Version 1.9)
|
||||||
|
# published by the Open Source Initiative.
|
||||||
|
|
||||||
|
# Please submit bugfixes or comments via https://bugs.opensuse.org/
|
||||||
|
#
|
||||||
|
|
||||||
|
|
||||||
|
# When updating the binary version, do not forget to also update baselibs.conf
|
||||||
|
%define gtk_binary_version 4.0.0
|
||||||
|
%define _name gtk
|
||||||
|
|
||||||
|
%bcond_without gst
|
||||||
|
|
||||||
|
# disable gstreamer media player when bootstrapping on workbench
|
||||||
|
%if 0%{?workbench_version} > 0
|
||||||
|
%bcond_with gst
|
||||||
|
%endif
|
||||||
|
|
||||||
|
Name: gtk4
|
||||||
|
Version: 4.10.3
|
||||||
|
Release: 0
|
||||||
|
Summary: The GTK+ toolkit library (version 4)
|
||||||
|
License: LGPL-2.1-or-later
|
||||||
|
Group: Development/Libraries/X11
|
||||||
|
URL: https://www.gtk.org/
|
||||||
|
|
||||||
|
Source: https://download.gnome.org/sources/gtk/4.10/%{_name}-%{version}.tar.xz
|
||||||
|
Source2: settings.ini
|
||||||
|
Source3: macros.gtk4
|
||||||
|
Source99: gtk4-rpmlintrc
|
||||||
|
|
||||||
|
# Temporarily revert this until we figure out how to best restore
|
||||||
|
# private requires that are needed for rpm automatic dep extraction.
|
||||||
|
# https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/4756
|
||||||
|
# PATCH-FIX-OPENSUSE 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch -- Revert "Meson: Simplify pkgconfig file generator"
|
||||||
|
Patch0: 0001-Revert-Meson-Simplify-pkgconfig-file-generator.patch
|
||||||
|
# PATCH-FIX-UPSTREAM gtk4-correctly-refresh-after-delete.patch glgo#GNOME/nautilus#2941 badshah400@gmail.com -- Deleting files causes folders in the directory to disappear and reappear after a refresh
|
||||||
|
Patch1: https://gitlab.gnome.org/GNOME/gtk/-/merge_requests/5873.patch#/gtk4-correctly-refresh-after-delete.patch
|
||||||
|
# PATCH-FIX-UPSTREAM 966a2350.patch glgo#GNOME/gtk#5798 -- css: Don't transition to currentColor
|
||||||
|
Patch2: https://gitlab.gnome.org/GNOME/gtk/-/commit/966a2350.patch
|
||||||
|
|
||||||
|
BuildRequires: cups-devel >= 2.0
|
||||||
|
# We do not support building against cups 2.3 betas
|
||||||
|
BuildConflicts: (cups-devel > 2.3 with cups-devel < 2.3.0)
|
||||||
|
%if 0%{?sle_version} && 0%{?sle_version} <= 150400
|
||||||
|
BuildRequires: Mesa-libGLESv2-devel
|
||||||
|
%endif
|
||||||
|
BuildRequires: Mesa-libGLESv3-devel
|
||||||
|
BuildRequires: docbook-xsl-stylesheets
|
||||||
|
BuildRequires: docutils
|
||||||
|
BuildRequires: fdupes
|
||||||
|
BuildRequires: gcc-c++
|
||||||
|
BuildRequires: gettext-tools >= 0.19.7
|
||||||
|
BuildRequires: hicolor-icon-theme
|
||||||
|
BuildRequires: meson >= 0.50.1
|
||||||
|
BuildRequires: pkgconfig
|
||||||
|
# sassc is ONLY needed when building gitcheckouts, and not when using tarball releases
|
||||||
|
#BuildRequires: sassc
|
||||||
|
# Disabled until upstream enables vulkan support by default
|
||||||
|
# BuildRequires: vulkan-devel
|
||||||
|
BuildRequires: xsltproc
|
||||||
|
BuildRequires: pkgconfig(atk) >= 2.15.1
|
||||||
|
BuildRequires: pkgconfig(atk-bridge-2.0)
|
||||||
|
BuildRequires: pkgconfig(cairo) >= 1.14.0
|
||||||
|
BuildRequires: pkgconfig(cairo-gobject) >= 1.14.0
|
||||||
|
BuildRequires: pkgconfig(cloudproviders) >= 0.3.1
|
||||||
|
BuildRequires: pkgconfig(colord)
|
||||||
|
BuildRequires: pkgconfig(epoxy) >= 1.4
|
||||||
|
BuildRequires: pkgconfig(fontconfig)
|
||||||
|
BuildRequires: pkgconfig(gdk-pixbuf-2.0) >= 2.30.0
|
||||||
|
BuildRequires: pkgconfig(gi-docgen)
|
||||||
|
BuildRequires: pkgconfig(glib-2.0) >= 2.72.0
|
||||||
|
BuildRequires: pkgconfig(gmodule-2.0)
|
||||||
|
BuildRequires: pkgconfig(gobject-2.0) >= 2.53.7
|
||||||
|
BuildRequires: pkgconfig(gobject-introspection-1.0) >= 1.72.0
|
||||||
|
BuildRequires: pkgconfig(graphene-1.0) >= 1.10.0
|
||||||
|
BuildRequires: pkgconfig(graphene-gobject-1.0) >= 1.10.0
|
||||||
|
%if %{with gst}
|
||||||
|
BuildRequires: pkgconfig(gstreamer-gl-1.0)
|
||||||
|
BuildRequires: pkgconfig(gstreamer-player-1.0)
|
||||||
|
%endif
|
||||||
|
BuildRequires: pkgconfig(harfbuzz) >= 2.6.0
|
||||||
|
BuildRequires: pkgconfig(iso-codes)
|
||||||
|
# Disabled until upstream enables ffmpeg support by default
|
||||||
|
# BuildRequires: pkgconfig(libavfilter)
|
||||||
|
BuildRequires: pkgconfig(libjpeg)
|
||||||
|
BuildRequires: pkgconfig(libpng)
|
||||||
|
BuildRequires: pkgconfig(libtiff-4)
|
||||||
|
BuildRequires: pkgconfig(pango) >= 1.50.0
|
||||||
|
BuildRequires: pkgconfig(pangocairo) >= 1.14.0
|
||||||
|
BuildRequires: pkgconfig(pangoft2)
|
||||||
|
BuildRequires: pkgconfig(tracker-sparql-3.0)
|
||||||
|
BuildRequires: pkgconfig(wayland-client) >= 1.21.0
|
||||||
|
BuildRequires: pkgconfig(wayland-cursor) >= 1.9.91
|
||||||
|
BuildRequires: pkgconfig(wayland-egl)
|
||||||
|
BuildRequires: pkgconfig(wayland-protocols) >= 1.25
|
||||||
|
BuildRequires: pkgconfig(x11)
|
||||||
|
BuildRequires: pkgconfig(xcomposite)
|
||||||
|
BuildRequires: pkgconfig(xcursor)
|
||||||
|
BuildRequires: pkgconfig(xdamage)
|
||||||
|
BuildRequires: pkgconfig(xext)
|
||||||
|
BuildRequires: pkgconfig(xfixes)
|
||||||
|
BuildRequires: pkgconfig(xi)
|
||||||
|
BuildRequires: pkgconfig(xinerama)
|
||||||
|
BuildRequires: pkgconfig(xkbcommon)
|
||||||
|
BuildRequires: pkgconfig(xrandr) >= 1.2.99
|
||||||
|
|
||||||
|
%description
|
||||||
|
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
|
||||||
|
Offering a complete set of widgets, GTK+ is suitable for projects
|
||||||
|
ranging from small one-off projects to complete application suites.
|
||||||
|
|
||||||
|
%package -n libgtk-4-1
|
||||||
|
Summary: The GTK+ toolkit library (version 4)
|
||||||
|
# gtk4-data is currently not being built, might be an upstream oversight though
|
||||||
|
Group: System/Libraries
|
||||||
|
Requires: %{name}-schema >= %{version}
|
||||||
|
# Require Adwaita Icon Theme: It's GTKs icon set, that's guaranteed to be there
|
||||||
|
Requires: adwaita-icon-theme
|
||||||
|
# While hicolor is not a Requires strictly speaking, we put it as
|
||||||
|
# such instead of as a Recommends because many applications just
|
||||||
|
# assume it's there and we need to have a low-level package to
|
||||||
|
# bring it in.
|
||||||
|
Requires: hicolor-icon-theme
|
||||||
|
# gtk+ can work without branding/translations. Built in defaults will be used then.
|
||||||
|
Recommends: %{name}-branding
|
||||||
|
Recommends: gvfs
|
||||||
|
Obsoletes: %{name}-data
|
||||||
|
# IM modules have been dropped in 3.94.0
|
||||||
|
Obsoletes: %{name}-immodule-amharic
|
||||||
|
Obsoletes: %{name}-immodule-broadway
|
||||||
|
Obsoletes: %{name}-immodule-inuktitut
|
||||||
|
Obsoletes: %{name}-immodule-multipress
|
||||||
|
Obsoletes: %{name}-immodule-thai
|
||||||
|
Obsoletes: %{name}-immodule-tigrigna
|
||||||
|
Obsoletes: %{name}-immodule-vietnamese
|
||||||
|
Obsoletes: %{name}-immodule-xim
|
||||||
|
# with version 4.0.0, the soname was actually changed to libgtk-4.so.1
|
||||||
|
# but the package was nor correctly renamed
|
||||||
|
Obsoletes: libgtk-4-0 >= 4
|
||||||
|
# Provide main package to make the lang subpackage installable
|
||||||
|
Provides: %{name} = %{version}
|
||||||
|
|
||||||
|
%description -n libgtk-4-1
|
||||||
|
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
|
||||||
|
Offering a complete set of widgets, GTK+ is suitable for projects
|
||||||
|
ranging from small one-off projects to complete application suites.
|
||||||
|
|
||||||
|
%package -n typelib-1_0-Gtk-4_0
|
||||||
|
Summary: Introspection bindings for the GTK+ toolkit library v4
|
||||||
|
Group: System/Libraries
|
||||||
|
Requires: (python3-gobject-Gdk if python3-gobject)
|
||||||
|
Requires: (python310-gobject-Gdk if python310-gobject)
|
||||||
|
Requires: (python38-gobject-Gdk if python38-gobject)
|
||||||
|
Requires: (python39-gobject-Gdk if python39-gobject)
|
||||||
|
|
||||||
|
%description -n typelib-1_0-Gtk-4_0
|
||||||
|
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
|
||||||
|
Offering a complete set of widgets, GTK+ is suitable for projects
|
||||||
|
ranging from small one-off projects to complete application suites.
|
||||||
|
|
||||||
|
This package provides the GObject Introspection bindings for GTK+.
|
||||||
|
|
||||||
|
%package tools
|
||||||
|
Summary: Auxiliary utilities for the GTK+ toolkit library v4
|
||||||
|
Group: System/Libraries
|
||||||
|
|
||||||
|
%description tools
|
||||||
|
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
|
||||||
|
Offering a complete set of widgets, GTK+ is suitable for projects
|
||||||
|
ranging from small one-off projects to complete application suites.
|
||||||
|
|
||||||
|
%package devel-tools
|
||||||
|
Summary: Auxiliary utilities for the GTK+ toolkit library v4
|
||||||
|
Group: System/Libraries
|
||||||
|
|
||||||
|
%description devel-tools
|
||||||
|
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
|
||||||
|
Offering a complete set of widgets, GTK+ is suitable for projects
|
||||||
|
ranging from small one-off projects to complete application suites.
|
||||||
|
|
||||||
|
%package schema
|
||||||
|
Summary: Config schema for the GTK+ toolkit library v4
|
||||||
|
# The schema is shared between gtk3 and gtk4 - gtk4 wins
|
||||||
|
Group: System/Libraries
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description schema
|
||||||
|
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
|
||||||
|
Offering a complete set of widgets, GTK+ is suitable for projects
|
||||||
|
ranging from small one-off projects to complete application suites.
|
||||||
|
|
||||||
|
%package branding-upstream
|
||||||
|
Summary: Upstream theme configuration for the GTK+ toolkit library v4
|
||||||
|
Group: System/Libraries
|
||||||
|
Requires: libgtk-4-1 = %{version}
|
||||||
|
Supplements: (libgtk-4-1 and branding-upstream)
|
||||||
|
Conflicts: %{name}-branding
|
||||||
|
Provides: %{name}-branding = %{version}
|
||||||
|
BuildArch: noarch
|
||||||
|
#BRAND: Provides /usr/share/gtk-4.0/settings.ini, to define default theme and icon
|
||||||
|
#BRAND: theme.
|
||||||
|
#BRAND: Do not forget to add proper Requires in branding package if changing
|
||||||
|
#BRAND: those.
|
||||||
|
|
||||||
|
%description branding-upstream
|
||||||
|
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
|
||||||
|
Offering a complete set of widgets, GTK+ is suitable for projects
|
||||||
|
ranging from small one-off projects to complete application suites.
|
||||||
|
|
||||||
|
This package provides the upstream theme configuration for widgets and
|
||||||
|
icon themes.
|
||||||
|
|
||||||
|
%package docs
|
||||||
|
Summary: Developer documentation for GTK
|
||||||
|
BuildArch: noarch
|
||||||
|
|
||||||
|
%description docs
|
||||||
|
This package contains developer documentation for version 4 of the GTK
|
||||||
|
widget toolkit.
|
||||||
|
|
||||||
|
%package devel
|
||||||
|
Summary: Development files for the GTK+ toolkit library v4
|
||||||
|
Group: Development/Libraries/X11
|
||||||
|
Requires: %{name}-devel-tools = %{version}
|
||||||
|
Requires: %{name}-tools = %{version}
|
||||||
|
Requires: gettext-its-%{name} >= %{version}
|
||||||
|
Requires: libgtk-4-1 = %{version}
|
||||||
|
Requires: typelib-1_0-Gtk-4_0 = %{version}
|
||||||
|
# # Disabled until upstream enables vulkan support by default
|
||||||
|
# Requires: vulkan-devel
|
||||||
|
|
||||||
|
%description devel
|
||||||
|
GTK+ is a multi-platform toolkit for creating graphical user interfaces.
|
||||||
|
Offering a complete set of widgets, GTK+ is suitable for projects
|
||||||
|
ranging from small one-off projects to complete application suites.
|
||||||
|
|
||||||
|
This package contains the development files for GTK+ 4.x.
|
||||||
|
|
||||||
|
%package -n gettext-its-%{name}
|
||||||
|
Summary: International Tag Set for GTK+ 4
|
||||||
|
# The ITS is compatible between GTK3 and GTK4
|
||||||
|
Group: Development/Libraries/X11
|
||||||
|
Provides: gettext-its-gtk3 = %{version}
|
||||||
|
Obsoletes: gettext-its-gtk3 < %{version}
|
||||||
|
|
||||||
|
%description -n gettext-its-%{name}
|
||||||
|
This package enhances gettext with an International Tag Set for GTK+ 4
|
||||||
|
|
||||||
|
%lang_package
|
||||||
|
|
||||||
|
%prep
|
||||||
|
%autosetup -p1 -n %{_name}-%{version}
|
||||||
|
|
||||||
|
%build
|
||||||
|
%meson \
|
||||||
|
-Dgtk_doc=true \
|
||||||
|
-Dbroadway-backend=true \
|
||||||
|
-Dcloudproviders=enabled \
|
||||||
|
-Dcolord=enabled \
|
||||||
|
-Dprint-cups=enabled \
|
||||||
|
-Dwayland-backend=true \
|
||||||
|
-Dx11-backend=true \
|
||||||
|
-Dintrospection=enabled \
|
||||||
|
-Dman-pages=true \
|
||||||
|
-Dtracker=enabled \
|
||||||
|
%if %{with gst}
|
||||||
|
-Dmedia-gstreamer=enabled \
|
||||||
|
%else
|
||||||
|
-Dmedia-gstreamer=disabled \
|
||||||
|
%endif
|
||||||
|
-Dbuild-testsuite=false \
|
||||||
|
-Dbuild-tests=false \
|
||||||
|
-Dbuild-examples=false \
|
||||||
|
%{nil}
|
||||||
|
%meson_build
|
||||||
|
|
||||||
|
%install
|
||||||
|
%meson_install
|
||||||
|
|
||||||
|
%find_lang gtk40 %{?no_lang_C}
|
||||||
|
install -m 644 -D %{SOURCE2} %{buildroot}%{_datadir}/gtk-4.0/settings.ini
|
||||||
|
# create modules directory that should have been created during the build
|
||||||
|
if test ! -d %{buildroot}%{_libdir}/gtk-4.0/modules; then
|
||||||
|
mkdir %{buildroot}%{_libdir}/gtk-4.0/modules
|
||||||
|
else
|
||||||
|
echo 'Remove this no-longer-needed modulesdir hack.'
|
||||||
|
fi
|
||||||
|
# create theming-engines directory that should have been created during the build
|
||||||
|
if test ! -d %{buildroot}%{_libdir}/gtk-4.0/%{gtk_binary_version}/theming-engines; then
|
||||||
|
mkdir %{buildroot}%{_libdir}/gtk-4.0/%{gtk_binary_version}/theming-engines
|
||||||
|
else
|
||||||
|
echo 'Remove this no-longer-needed themingdir hack.'
|
||||||
|
fi
|
||||||
|
# Install rpm macros
|
||||||
|
mkdir -p %{buildroot}%{_rpmmacrodir}
|
||||||
|
cp %{SOURCE3} %{buildroot}%{_rpmmacrodir}
|
||||||
|
%fdupes %{buildroot}%{_datadir}
|
||||||
|
%fdupes %{buildroot}%{_libdir}
|
||||||
|
|
||||||
|
%ldconfig_scriptlets -n libgtk-4-1
|
||||||
|
|
||||||
|
%files -n libgtk-4-1
|
||||||
|
%license COPYING
|
||||||
|
%doc AUTHORS NEWS
|
||||||
|
%dir %{_libdir}/gtk-4.0
|
||||||
|
%dir %{_libdir}/gtk-4.0/%{gtk_binary_version}
|
||||||
|
%dir %{_libdir}/gtk-4.0/%{gtk_binary_version}/printbackends/
|
||||||
|
%{_libdir}/gtk-4.0/%{gtk_binary_version}/printbackends/libprintbackend-cups.so
|
||||||
|
%{_libdir}/gtk-4.0/%{gtk_binary_version}/printbackends/libprintbackend-file.so
|
||||||
|
%if %{with gst}
|
||||||
|
%dir %{_libdir}/gtk-4.0/%{gtk_binary_version}/media/
|
||||||
|
#%%{_libdir}/gtk-4.0/%%{gtk_binary_version}/media/libmedia-ffmpeg.so
|
||||||
|
%{_libdir}/gtk-4.0/%{gtk_binary_version}/media/libmedia-gstreamer.so
|
||||||
|
%endif
|
||||||
|
%dir %{_libdir}/gtk-4.0/%{gtk_binary_version}/theming-engines/
|
||||||
|
%dir %{_libdir}/gtk-4.0/modules
|
||||||
|
%{_libdir}/libgtk-4.so.*
|
||||||
|
|
||||||
|
%files -n typelib-1_0-Gtk-4_0
|
||||||
|
%{_libdir}/girepository-1.0/Gdk-4.0.typelib
|
||||||
|
%{_libdir}/girepository-1.0/GdkWayland-4.0.typelib
|
||||||
|
%{_libdir}/girepository-1.0/GdkX11-4.0.typelib
|
||||||
|
%{_libdir}/girepository-1.0/Gsk-4.0.typelib
|
||||||
|
%{_libdir}/girepository-1.0/Gtk-4.0.typelib
|
||||||
|
|
||||||
|
%files tools
|
||||||
|
%{_bindir}/gtk4-broadwayd
|
||||||
|
%{_bindir}/gtk4-launch
|
||||||
|
%{_bindir}/gtk4-query-settings
|
||||||
|
%{_bindir}/gtk4-update-icon-cache
|
||||||
|
%dir %{_datadir}/gtk-4.0/emoji
|
||||||
|
%{_datadir}/gtk-4.0/emoji/da.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/de.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/es.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/fr.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/hu.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/it.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/ko.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/lt.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/ms.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/nl.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/pl.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/pt.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/ru.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/sv.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/uk.gresource
|
||||||
|
%{_datadir}/gtk-4.0/emoji/zh.gresource
|
||||||
|
%{_mandir}/man1/gtk4-broadwayd.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-launch.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-query-settings.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-update-icon-cache.1%{?ext_man}
|
||||||
|
# English should be offered to every installation by default.
|
||||||
|
%{_datadir}/locale/en/
|
||||||
|
%{_datadir}/locale/en_GB/
|
||||||
|
%{_datadir}/locale/en@shaw/
|
||||||
|
%{_datadir}/locale/en_CA/
|
||||||
|
|
||||||
|
%files devel-tools
|
||||||
|
%{_bindir}/gtk4-builder-tool
|
||||||
|
%{_bindir}/gtk4-demo
|
||||||
|
%{_bindir}/gtk4-demo-application
|
||||||
|
%{_bindir}/gtk4-encode-symbolic-svg
|
||||||
|
%{_bindir}/gtk4-icon-browser
|
||||||
|
%{_bindir}/gtk4-node-editor
|
||||||
|
%{_bindir}/gtk4-print-editor
|
||||||
|
%{_bindir}/gtk4-widget-factory
|
||||||
|
%{_datadir}/applications/org.gtk.Demo4.desktop
|
||||||
|
%{_datadir}/applications/org.gtk.IconBrowser4.desktop
|
||||||
|
%{_datadir}/applications/org.gtk.gtk4.NodeEditor.desktop
|
||||||
|
%{_datadir}/applications/org.gtk.PrintEditor4.desktop
|
||||||
|
%{_datadir}/applications/org.gtk.WidgetFactory4.desktop
|
||||||
|
%dir %{_datadir}/gtk-4.0
|
||||||
|
%{_datadir}/gtk-4.0/gtk4builder.rng
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/org.gtk.Demo4.svg
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/org.gtk.IconBrowser4.svg
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/org.gtk.gtk4.NodeEditor.Devel.svg
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/org.gtk.gtk4.NodeEditor.svg
|
||||||
|
%{_datadir}/icons/hicolor/symbolic/apps/org.gtk.gtk4.NodeEditor-symbolic.svg
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/org.gtk.PrintEditor4.Devel.svg
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/org.gtk.PrintEditor4.svg
|
||||||
|
%{_datadir}/icons/hicolor/scalable/apps/org.gtk.WidgetFactory4.svg
|
||||||
|
%{_datadir}/icons/hicolor/symbolic/apps/org.gtk.Demo4-symbolic.svg
|
||||||
|
%{_datadir}/icons/hicolor/symbolic/apps/org.gtk.IconBrowser4-symbolic.svg
|
||||||
|
%{_datadir}/icons/hicolor/symbolic/apps/org.gtk.PrintEditor4-symbolic.svg
|
||||||
|
%{_datadir}/icons/hicolor/symbolic/apps/org.gtk.WidgetFactory4-symbolic.svg
|
||||||
|
# This schemas file stays here and not in the schemas package
|
||||||
|
%{_datadir}/glib-2.0/schemas/org.gtk.Demo4.gschema.xml
|
||||||
|
%{_datadir}/metainfo/org.gtk.Demo4.appdata.xml
|
||||||
|
%{_datadir}/metainfo/org.gtk.IconBrowser4.appdata.xml
|
||||||
|
%{_datadir}/metainfo/org.gtk.gtk4.NodeEditor.appdata.xml
|
||||||
|
%{_datadir}/metainfo/org.gtk.PrintEditor4.appdata.xml
|
||||||
|
%{_datadir}/metainfo/org.gtk.WidgetFactory4.appdata.xml
|
||||||
|
%{_mandir}/man1/gtk4-builder-tool.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-demo.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-demo-application.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-encode-symbolic-svg.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-icon-browser.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-node-editor.1%{?ext_man}
|
||||||
|
%{_mandir}/man1/gtk4-widget-factory.1%{?ext_man}
|
||||||
|
|
||||||
|
%files schema
|
||||||
|
%{_datadir}/glib-2.0/schemas/org.gtk.gtk4.Settings.ColorChooser.gschema.xml
|
||||||
|
%{_datadir}/glib-2.0/schemas/org.gtk.gtk4.Settings.Debug.gschema.xml
|
||||||
|
%{_datadir}/glib-2.0/schemas/org.gtk.gtk4.Settings.EmojiChooser.gschema.xml
|
||||||
|
%{_datadir}/glib-2.0/schemas/org.gtk.gtk4.Settings.FileChooser.gschema.xml
|
||||||
|
|
||||||
|
%files branding-upstream
|
||||||
|
%{_datadir}/gtk-4.0/settings.ini
|
||||||
|
|
||||||
|
%files docs
|
||||||
|
%{_datadir}/doc/gdk4/
|
||||||
|
%{_datadir}/doc/gdk4-wayland/
|
||||||
|
%{_datadir}/doc/gdk4-x11/
|
||||||
|
%{_datadir}/doc/gsk4/
|
||||||
|
%{_datadir}/doc/gtk4/
|
||||||
|
|
||||||
|
%files devel
|
||||||
|
%doc CONTRIBUTING.md
|
||||||
|
%{_datadir}/gir-1.0/*.gir
|
||||||
|
%{_includedir}/gtk-4.0/
|
||||||
|
%{_libdir}/pkgconfig/gtk4.pc
|
||||||
|
%{_libdir}/pkgconfig/gtk4-broadway.pc
|
||||||
|
%{_libdir}/pkgconfig/gtk4-wayland.pc
|
||||||
|
%{_libdir}/pkgconfig/gtk4-unix-print.pc
|
||||||
|
%{_libdir}/pkgconfig/gtk4-x11.pc
|
||||||
|
%{_libdir}/libgtk-4.so
|
||||||
|
%{_rpmmacrodir}/macros.gtk4
|
||||||
|
%dir %{_datadir}/gtk-4.0/valgrind
|
||||||
|
%{_datadir}/gtk-4.0/valgrind/gtk.supp
|
||||||
|
|
||||||
|
%files -n gettext-its-%{name}
|
||||||
|
%dir %{_datadir}/gettext/
|
||||||
|
%dir %{_datadir}/gettext/its/
|
||||||
|
%{_datadir}/gettext/its/gtk4builder.its
|
||||||
|
%{_datadir}/gettext/its/gtk4builder.loc
|
||||||
|
|
||||||
|
%files lang -f gtk40.lang
|
||||||
|
# Those shouldn't be here in the first place.
|
||||||
|
%exclude %{_datadir}/locale/en/
|
||||||
|
%exclude %{_datadir}/locale/en_GB/
|
||||||
|
%exclude %{_datadir}/locale/en@shaw/
|
||||||
|
%exclude %{_datadir}/locale/en_CA/
|
||||||
|
|
||||||
|
%changelog
|
35
macros.gtk4
Normal file
35
macros.gtk4
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
# RPM macros for packages installing a GTK+ IM module
|
||||||
|
#
|
||||||
|
###
|
||||||
|
#
|
||||||
|
# When a package installs a GTK+ IM module, it should use all
|
||||||
|
# three macros:
|
||||||
|
#
|
||||||
|
# - %gtk4_immodule_requires in the preamble
|
||||||
|
# - %gtk4_immodule_post in %post
|
||||||
|
# - %gtk4_immodule_postun in %postun
|
||||||
|
#
|
||||||
|
###
|
||||||
|
|
||||||
|
%gtk4_immodule_requires \
|
||||||
|
Requires(post): glib2-tools \
|
||||||
|
Requires(postun): glib2-tools
|
||||||
|
|
||||||
|
# On install, update the cache
|
||||||
|
%gtk4_immodule_post \
|
||||||
|
if [[ -x %{_bindir}/gio-querymodules-64 ]]; then \
|
||||||
|
%{_bindir}/gio-querymodules-64 %{_libdir}/gtk-4.0/4.0.0/immodules \
|
||||||
|
else \
|
||||||
|
%{_bindir}/gio-querymodules %{_libdir}/gtk-4.0/4.0.0/immodules \
|
||||||
|
fi
|
||||||
|
|
||||||
|
# On uninstall, update the cache. Note: we ignore upgrades (already
|
||||||
|
# handled in %post of the new package).
|
||||||
|
%gtk4_immodule_postun \
|
||||||
|
if [ $1 -eq 0 ]; then \
|
||||||
|
if [[ -x %{_bindir}/gio-querymodules-64 ]]; then \
|
||||||
|
%{_bindir}/gio-querymodules-64 %{_libdir}/gtk-4.0/4.0.0/immodules \
|
||||||
|
else \
|
||||||
|
%{_bindir}/gio-querymodules %{_libdir}/gtk-4.0/4.0.0/immodules \
|
||||||
|
fi \
|
||||||
|
fi
|
14
settings.ini
Normal file
14
settings.ini
Normal file
@ -0,0 +1,14 @@
|
|||||||
|
#
|
||||||
|
# settings.ini file allows you to define system wide defaults for
|
||||||
|
# all GTK+ applications. This file is branding specific.
|
||||||
|
#
|
||||||
|
# For complete list of available settings see the Settings chapter
|
||||||
|
# in the GTK+ documentation.
|
||||||
|
#
|
||||||
|
# You most probably want to change the following settings.
|
||||||
|
|
||||||
|
[Settings]
|
||||||
|
#gtk-theme-name =
|
||||||
|
#gtk-icon-theme-name =
|
||||||
|
#gtk-fallback-icon-theme = Adwaita
|
||||||
|
#gtk-entry-password-hint-timeout = 600
|
Loading…
Reference in New Issue
Block a user