From c52e3c3979bd89e4e9a39557456ab130c66434233a19a945caaaffaf811216a6 Mon Sep 17 00:00:00 2001 From: Dominique Leuenberger Date: Tue, 13 Sep 2022 08:37:09 +0000 Subject: [PATCH 1/3] Accepting request 1003008 from GNOME:Next Resub! - Add so_ver_ext define and set to 1 following upstream changes. Further, add a soname define, and set it to libgtkhex-%%{so_ver}-%%{so_ver_ext}, ease future updates. - Update to version 43.alpha: + Port to libadwaita, and fix UI papercuts that stood out more thereafter. + Introduce custom statusbar with monospace support + HexWidget: - Add API to show/hide specific columns. - Disallow keyboard shortcuts to activate hidden panes. - Support PRIMARY selection. + Find and Replace improvements: - Support options for case-sensitivity, regex. - Choose visibility of hex/ascii/both in find/replace dialogs. - Show number of replacements with Replace All. + New backend: HexBufferDirect, and support for reading/writing block devices. + Load default backend plugins more intelligently. + docs: document slight change in hex_buffer_util_new behaviour when a non-existent plugin is requested (return NULL instead of falling back to malloc). + chartable: ESC should close dialog. + Animate opening and closing of find/replace and conversions panes. + paste-special: Move space-delim hex pairs to UTF8 list. + build: Fix incorrect soname numbering; split resources between app and library. + docs: document expanded HexDocument and HexWidget APIs. + Error handling improvements and code cleanups. OBS-URL: https://build.opensuse.org/request/show/1003008 OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/ghex?expand=0&rev=71 --- ghex-42.3.tar.xz | 3 --- ghex-43.alpha.tar.xz | 3 +++ ghex.changes | 37 +++++++++++++++++++++++++++++++++++++ ghex.spec | 26 +++++++++++++++----------- 4 files changed, 55 insertions(+), 14 deletions(-) delete mode 100644 ghex-42.3.tar.xz create mode 100644 ghex-43.alpha.tar.xz diff --git a/ghex-42.3.tar.xz b/ghex-42.3.tar.xz deleted file mode 100644 index 5d576bd..0000000 --- a/ghex-42.3.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:add40f8ab24921db30d27be58f00273201977d87fdc8d79eceadfa8b0e354def -size 1003928 diff --git a/ghex-43.alpha.tar.xz b/ghex-43.alpha.tar.xz new file mode 100644 index 0000000..c60bc45 --- /dev/null +++ b/ghex-43.alpha.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:b49b6d54727c266a36d89423d2bfb538507f6955374362282fc5222cc2310b8f +size 1016068 diff --git a/ghex.changes b/ghex.changes index 17a8405..1133710 100644 --- a/ghex.changes +++ b/ghex.changes @@ -1,3 +1,40 @@ +------------------------------------------------------------------- +Fri Aug 5 08:26:11 UTC 2022 - Bjørn Lie + +- Add so_ver_ext define and set to 1 following upstream changes. + Further, add a soname define, and set it to + libgtkhex-%%{so_ver}-%%{so_ver_ext}, ease future updates. + +------------------------------------------------------------------- +Thu Jul 7 13:30:03 UTC 2022 - Dominique Leuenberger + +- Update to version 43.alpha: + + Port to libadwaita, and fix UI papercuts that stood out more + thereafter. + + Introduce custom statusbar with monospace support + + HexWidget: + - Add API to show/hide specific columns. + - Disallow keyboard shortcuts to activate hidden panes. + - Support PRIMARY selection. + + Find and Replace improvements: + - Support options for case-sensitivity, regex. + - Choose visibility of hex/ascii/both in find/replace dialogs. + - Show number of replacements with Replace All. + + New backend: HexBufferDirect, and support for reading/writing + block devices. + + Load default backend plugins more intelligently. + + docs: document slight change in hex_buffer_util_new behaviour + when a non-existent plugin is requested (return NULL instead of + falling back to malloc). + + chartable: ESC should close dialog. + + Animate opening and closing of find/replace and conversions + panes. + + paste-special: Move space-delim hex pairs to UTF8 list. + + build: Fix incorrect soname numbering; split resources between + app and library. + + docs: document expanded HexDocument and HexWidget APIs. + + Error handling improvements and code cleanups. + ------------------------------------------------------------------- Wed Jun 15 11:22:07 UTC 2022 - Bjørn Lie diff --git a/ghex.spec b/ghex.spec index 71ce7ff..9338d81 100644 --- a/ghex.spec +++ b/ghex.spec @@ -17,15 +17,17 @@ %define so_ver 4 +%define so_ver_ext 1 +%define soname libgtkhex-%{so_ver}-%{so_ver_ext} Name: ghex -Version: 42.3 +Version: 43.alpha Release: 0 Summary: GNOME Binary Editor License: GPL-2.0-or-later Group: Development/Tools/Other URL: https://wiki.gnome.org/Apps/Ghex -Source: https://download.gnome.org/sources/ghex/42/%{name}-%{version}.tar.xz +Source: https://download.gnome.org/sources/ghex/43/%{name}-%{version}.tar.xz BuildRequires: fdupes BuildRequires: meson >= 0.50.0 @@ -38,17 +40,18 @@ BuildRequires: pkgconfig(gi-docgen) BuildRequires: pkgconfig(gio-2.0) >= 2.31.10 BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(gtk4) +BuildRequires: pkgconfig(libadwaita-1) %description GHex allows the user to load data from any file and to view and edit it in either hex or ASCII. It is a must for anyone playing games that use a non-ASCII format for saving. -%package -n libgtkhex-%{so_ver}-0 +%package -n %{soname} Summary: GNOME Binary Editor -- Library Group: System/Libraries -%description -n libgtkhex-%{so_ver}-0 +%description -n %{soname} GHex allows the user to load data from any file and to view and edit it in either hex or ASCII. It is a must for anyone playing games that use a non-ASCII format for saving. @@ -56,7 +59,7 @@ a non-ASCII format for saving. %package devel Summary: GNOME Binary Editor -- Development Files Group: Development/Libraries/GNOME -Requires: libgtkhex-%{so_ver}-0 = %{version} +Requires: %{soname} = %{version} %description devel GHex allows the user to load data from any file and to view and edit it @@ -83,10 +86,10 @@ This package provides introspection bindings for ghex. %meson_install %suse_update_desktop_file -r org.gnome.GHex GNOME Utility Editor -%find_lang %{name} ghex-%{so_ver}.0.lang %{?no_lang_C} +%find_lang %{name} ghex-%{so_ver}-%{so_ver_ext}.0.lang %{?no_lang_C} %fdupes -s %{buildroot}%{_datadir} -%ldconfig_scriptlets -n libgtkhex-%{so_ver}-0 +%ldconfig_scriptlets -n %{soname} %files %license COPYING @@ -97,11 +100,12 @@ This package provides introspection bindings for ghex. %{_datadir}/applications/org.gnome.GHex.desktop %{_datadir}/glib-2.0/schemas/org.gnome.GHex.gschema.xml %{_datadir}/icons/hicolor/*/apps/org.gnome.GHex* +%{_datadir}/icons/hicolor/scalable/actions/document-modified-symbolic.svg -%files -n libgtkhex-%{so_ver}-0 -%dir %{_libdir}/gtkhex-4.0 +%files -n %{soname} +%dir %{_libdir}/gtkhex-%{so_ver}.0 %{_libdir}/libgtkhex-%{so_ver}.so.* -%{_libdir}/gtkhex-4.0/*.so +%{_libdir}/gtkhex-%{so_ver}.0/*.so %files -n typelib-1_0-Hex-%{so_ver} %{_libdir}/girepository-1.0/Hex-%{so_ver}.typelib @@ -112,6 +116,6 @@ This package provides introspection bindings for ghex. %{_libdir}/pkgconfig/gtkhex-%{so_ver}.pc %{_datadir}/gir-1.0/Hex-%{so_ver}.gir -%files lang -f %{name}-%{so_ver}.0.lang +%files lang -f %{name}-%{so_ver}-%{so_ver_ext}.0.lang %changelog From 1d110c32cc775d9e8a998f5f84f9653d7b1ecc0efc4a8644efd966089c0fee4e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Lie?= Date: Thu, 15 Sep 2022 20:45:32 +0000 Subject: [PATCH 2/3] Accepting request 1003584 from GNOME:Next Suggestion on how to get out of our current problem v3 OBS-URL: https://build.opensuse.org/request/show/1003584 OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/ghex?expand=0&rev=72 --- ghex.changes | 11 ++++++++--- ghex.spec | 36 ++++++++++++++++++++---------------- 2 files changed, 28 insertions(+), 19 deletions(-) diff --git a/ghex.changes b/ghex.changes index 1133710..0a7fdaa 100644 --- a/ghex.changes +++ b/ghex.changes @@ -1,9 +1,14 @@ ------------------------------------------------------------------- Fri Aug 5 08:26:11 UTC 2022 - Bjørn Lie -- Add so_ver_ext define and set to 1 following upstream changes. - Further, add a soname define, and set it to - libgtkhex-%%{so_ver}-%%{so_ver_ext}, ease future updates. +- Add ghex_abi and so_ver_ext define and set to 4 and 0 following + upstream changes and set so_ver define to 1. Further, add a + soname define, and set it to libgtkhex-%%{ghex_abi}-%%{so_ver}, + ease future updates. +- Move gtkhex-*/*.so to main package, and obsolete older versions + of libgtkhex-* from the same. These private so files (plugins) + should never have been packaged in the shared library package, so + now we have to clean up our previous sins. ------------------------------------------------------------------- Thu Jul 7 13:30:03 UTC 2022 - Dominique Leuenberger diff --git a/ghex.spec b/ghex.spec index 9338d81..02951f1 100644 --- a/ghex.spec +++ b/ghex.spec @@ -16,9 +16,10 @@ # -%define so_ver 4 -%define so_ver_ext 1 -%define soname libgtkhex-%{so_ver}-%{so_ver_ext} +%define ghex_abi 4 +%define so_ver 1 +%define so_ver_ext 0 +%define soname libgtkhex-%{ghex_abi}-%{so_ver} Name: ghex Version: 43.alpha @@ -41,6 +42,8 @@ BuildRequires: pkgconfig(gio-2.0) >= 2.31.10 BuildRequires: pkgconfig(gobject-introspection-1.0) BuildRequires: pkgconfig(gtk4) BuildRequires: pkgconfig(libadwaita-1) +# Obsoletes libgtkhex-4-0 can be dropped when SLED/Leap 15.5 is out of support +Obsoletes: libgtkhex-4-0 < %{version} %description GHex allows the user to load data from any file and to view and edit it @@ -66,11 +69,11 @@ GHex allows the user to load data from any file and to view and edit it in either hex or ASCII. It is a must for anyone playing games that use a non-ASCII format for saving. -%package -n typelib-1_0-Hex-%{so_ver} +%package -n typelib-1_0-Hex-%{ghex_abi} Summary: Introspection bindings for ghex Group: System/Libraries -%description -n typelib-1_0-Hex-%{so_ver} +%description -n typelib-1_0-Hex-%{ghex_abi} This package provides introspection bindings for ghex. %lang_package @@ -86,7 +89,7 @@ This package provides introspection bindings for ghex. %meson_install %suse_update_desktop_file -r org.gnome.GHex GNOME Utility Editor -%find_lang %{name} ghex-%{so_ver}-%{so_ver_ext}.0.lang %{?no_lang_C} +%find_lang %{name} ghex-%{ghex_abi}-%{so_ver}.%{so_ver_ext}.lang %{?no_lang_C} %fdupes -s %{buildroot}%{_datadir} %ldconfig_scriptlets -n %{soname} @@ -101,21 +104,22 @@ This package provides introspection bindings for ghex. %{_datadir}/glib-2.0/schemas/org.gnome.GHex.gschema.xml %{_datadir}/icons/hicolor/*/apps/org.gnome.GHex* %{_datadir}/icons/hicolor/scalable/actions/document-modified-symbolic.svg +# Not split out as they are private to ghex +%dir %{_libdir}/gtkhex-%{ghex_abi}.%{so_ver_ext} +%{_libdir}/gtkhex-%{ghex_abi}.%{so_ver_ext}/*.so %files -n %{soname} -%dir %{_libdir}/gtkhex-%{so_ver}.0 -%{_libdir}/libgtkhex-%{so_ver}.so.* -%{_libdir}/gtkhex-%{so_ver}.0/*.so +%{_libdir}/libgtkhex-%{ghex_abi}.so.* -%files -n typelib-1_0-Hex-%{so_ver} -%{_libdir}/girepository-1.0/Hex-%{so_ver}.typelib +%files -n typelib-1_0-Hex-%{ghex_abi} +%{_libdir}/girepository-1.0/Hex-%{ghex_abi}.typelib %files devel -%{_includedir}/gtkhex-%{so_ver}/ -%{_libdir}/libgtkhex-%{so_ver}.so -%{_libdir}/pkgconfig/gtkhex-%{so_ver}.pc -%{_datadir}/gir-1.0/Hex-%{so_ver}.gir +%{_includedir}/gtkhex-%{ghex_abi}/ +%{_libdir}/libgtkhex-%{ghex_abi}.so +%{_libdir}/pkgconfig/gtkhex-%{ghex_abi}.pc +%{_datadir}/gir-1.0/Hex-%{ghex_abi}.gir -%files lang -f %{name}-%{so_ver}-%{so_ver_ext}.0.lang +%files lang -f %{name}-%{ghex_abi}-%{so_ver}.%{so_ver_ext}.lang %changelog From f4febfcf0e07e51c5b8e701a4c1668ab5c602f9419ca8a8706b01b495110f1f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Lie?= Date: Mon, 19 Sep 2022 11:07:10 +0000 Subject: [PATCH 3/3] Accepting request 1004634 from GNOME:Next OBS-URL: https://build.opensuse.org/request/show/1004634 OBS-URL: https://build.opensuse.org/package/show/GNOME:Apps/ghex?expand=0&rev=73 --- 8927f9a7.patch | 31 +++++++++++++++++++++++++++++++ ghex.changes | 6 ++++++ ghex.spec | 3 ++- 3 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 8927f9a7.patch diff --git a/8927f9a7.patch b/8927f9a7.patch new file mode 100644 index 0000000..8876922 --- /dev/null +++ b/8927f9a7.patch @@ -0,0 +1,31 @@ +From 8927f9a71e6b0fa46d9c9c11d318333ce6524bf2 Mon Sep 17 00:00:00 2001 +From: Logan Rathbone +Date: Wed, 7 Sep 2022 16:26:44 -0400 +Subject: [PATCH] icons: Make document-modified-symbolic a resource + +Fixes #52 +--- + .../scalable/actions => src}/document-modified-symbolic.svg | 0 + src/ghex.gresource.xml.in | 3 +++ + 2 files changed, 3 insertions(+) + rename {icons/hicolor/scalable/actions => src}/document-modified-symbolic.svg (100%) + +diff --git a/icons/hicolor/scalable/actions/document-modified-symbolic.svg b/src/document-modified-symbolic.svg +similarity index 100% +rename from icons/hicolor/scalable/actions/document-modified-symbolic.svg +rename to src/document-modified-symbolic.svg +diff --git a/src/ghex.gresource.xml.in b/src/ghex.gresource.xml.in +index 512f174..d1e1cf0 100644 +--- a/src/ghex.gresource.xml.in ++++ b/src/ghex.gresource.xml.in +@@ -39,4 +39,7 @@ + + help-overlay.ui + ++ ++ document-modified-symbolic.svg ++ + +-- +GitLab + diff --git a/ghex.changes b/ghex.changes index 0a7fdaa..d4dd91f 100644 --- a/ghex.changes +++ b/ghex.changes @@ -1,3 +1,9 @@ +------------------------------------------------------------------- +Mon Sep 19 08:50:36 UTC 2022 - Bjørn Lie + +- Add 8927f9a7.patch: icons: Make document-modified-symbolic a + resource. + ------------------------------------------------------------------- Fri Aug 5 08:26:11 UTC 2022 - Bjørn Lie diff --git a/ghex.spec b/ghex.spec index 02951f1..b201536 100644 --- a/ghex.spec +++ b/ghex.spec @@ -29,6 +29,8 @@ License: GPL-2.0-or-later Group: Development/Tools/Other URL: https://wiki.gnome.org/Apps/Ghex Source: https://download.gnome.org/sources/ghex/43/%{name}-%{version}.tar.xz +# PATCH-FIX-UPSTREAM 8927f9a7.patch -- icons: Make document-modified-symbolic a resource +Patch: https://gitlab.gnome.org/GNOME/ghex/-/commit/8927f9a7.patch BuildRequires: fdupes BuildRequires: meson >= 0.50.0 @@ -103,7 +105,6 @@ This package provides introspection bindings for ghex. %{_datadir}/applications/org.gnome.GHex.desktop %{_datadir}/glib-2.0/schemas/org.gnome.GHex.gschema.xml %{_datadir}/icons/hicolor/*/apps/org.gnome.GHex* -%{_datadir}/icons/hicolor/scalable/actions/document-modified-symbolic.svg # Not split out as they are private to ghex %dir %{_libdir}/gtkhex-%{ghex_abi}.%{so_ver_ext} %{_libdir}/gtkhex-%{ghex_abi}.%{so_ver_ext}/*.so