diff options
author | ptrcnull <git@ptrcnull.me> | 2023-01-16 01:51:51 +0100 |
---|---|---|
committer | ptrcnull <git@ptrcnull.me> | 2023-01-16 02:17:48 +0100 |
commit | e4b6fbc35707ed3f9a5dada192be951200dd590e (patch) | |
tree | 4f8b483ef5a79a5d645c29ac06ff29bd330a8a14 | |
parent | 229eeb5722a7d90bb6ce06e16473e743ef702a79 (diff) |
community/highscore: build with libsoup3
-rw-r--r-- | community/highscore/APKBUILD | 6 | ||||
-rw-r--r-- | community/highscore/libsoup3.patch | 107 |
2 files changed, 111 insertions, 2 deletions
diff --git a/community/highscore/APKBUILD b/community/highscore/APKBUILD index ba7bf50ba25..9b2165191d2 100644 --- a/community/highscore/APKBUILD +++ b/community/highscore/APKBUILD @@ -2,7 +2,7 @@ # Maintainer: Patrycja Rosa <alpine@ptrcnull.me> pkgname=highscore pkgver=40.0 -pkgrel=1 +pkgrel=2 pkgdesc="Retro gaming application" url="https://gitlab.gnome.org/World/highscore" arch="all !s390x" # grilo @@ -14,7 +14,7 @@ makedepends=" libhandy1-dev libmanette-dev librsvg-dev - libsoup-dev + libsoup3-dev libxml2-dev meson retro-gtk-dev @@ -26,6 +26,7 @@ subpackages="$pkgname-lang" source="https://gitlab.gnome.org/World/highscore/-/archive/$pkgver/highscore-$pkgver.tar.gz 0001-merge-file.patch 0002-use-tracker-3.0.patch + libsoup3.patch " options="!check" @@ -45,4 +46,5 @@ sha512sums=" 39e1abfe4dae8a349449d8a42070a5f1eb9e7556c5857477ef24213710aff09faebffd0e77ce1aaf22f65ea3e7d057c6f8b590810dcab97324f8772dd22a31fa highscore-40.0.tar.gz e303490fc6b972e42b2c7f32e48f70560762923561ce278479c97e9106e9356c8042b84f5282ca24d411d1cb2f883ca035c8e979a2640645dc0dd31042e3b4cc 0001-merge-file.patch 4568cfc6b34ff6e28102f2da2bf6edc93448076c2246e65ad9137288299917afc69d6ee9a0470b15d5226974f1e9088ef9c23a363fdc5a3da6ed61c506e8760b 0002-use-tracker-3.0.patch +d02a285893435d741569df8a4f9ecc5416212e239393784d3b69ec50ad8f7f13448a8478be7ac8cad17cd8692f796001b05d60eaa384d24ca40cbbaa662bbea9 libsoup3.patch " diff --git a/community/highscore/libsoup3.patch b/community/highscore/libsoup3.patch new file mode 100644 index 00000000000..93124ed65e1 --- /dev/null +++ b/community/highscore/libsoup3.patch @@ -0,0 +1,107 @@ +as community/grilo-libs is being built against libsoup-3.0, +we cannot use libsoup-2.4 here; upstream has migrated away +from using libsoup entirely, but they haven't released a new +version since march 2021 :/ + +the only change here is migrating from session.queue_message +(removed [here][1]) to newer session.send_and_read_async + +[1]: https://gitlab.gnome.org/GNOME/libsoup/-/merge_requests/139 + +diff --git a/meson.build b/meson.build +index 2c70551..c97352e 100644 +--- a/meson.build ++++ b/meson.build +@@ -43,7 +43,7 @@ m_dep = cc.find_library('m', required : false) + manette_dep = dependency ('manette-0.2', version: '>=' + manette_min_version) + retro_gtk_dep = dependency ('retro-gtk-1', version: '>=' + retro_gtk_min_version) + rsvg_dep = dependency ('librsvg-2.0') +-soup_dep = dependency ('libsoup-2.4') ++soup_dep = dependency ('libsoup-3.0') + sqlite_dep = dependency ('sqlite3') + tracker_sparql_dep = dependency ('tracker-sparql-2.0') + xml_dep = dependency ('libxml-2.0') +diff --git a/plugins/steam/src/steam-cover.vala b/plugins/steam/src/steam-cover.vala +index 6023956..55e08cb 100644 +--- a/plugins/steam/src/steam-cover.vala ++++ b/plugins/steam/src/steam-cover.vala +@@ -56,24 +56,24 @@ public class Games.SteamCover : Object, Cover { + var message = new Soup.Message ("GET", uri); + var success = false; + +- session.queue_message (message, (sess, mess) => { +- if (mess.status_code != Soup.Status.OK) { +- debug ("Failed to load %s: %u %s.", uri, mess.status_code, mess.reason_phrase); +- fetch_cover.callback (); +- return; +- } +- +- try { +- FileUtils.set_data (cover_path, mess.response_body.data); +- load_cover (); +- success = true; +- } catch (Error e) { +- warning (e.message); +- } ++ var bytes = yield session.send_and_read_async(message, 0, null); + ++ if (message.status_code != Soup.Status.OK) { ++ debug ("Failed to load %s: %u %s.", uri, message.status_code, message.reason_phrase); + fetch_cover.callback (); +- }); +- yield; ++ return success; ++ } ++ ++ try { ++ FileUtils.set_data (cover_path, bytes.get_data()); ++ load_cover (); ++ success = true; ++ } catch (Error e) { ++ warning (e.message); ++ } ++ ++ fetch_cover.callback (); ++ + return success; + } + +diff --git a/src/grilo/grilo-cover.vala b/src/grilo/grilo-cover.vala +index a401576..0d02816 100644 +--- a/src/grilo/grilo-cover.vala ++++ b/src/grilo/grilo-cover.vala +@@ -76,20 +76,20 @@ public class Games.GriloCover : Object, Cover { + var session = new Soup.Session (); + var message = new Soup.Message ("GET", uri); + +- session.queue_message (message, (sess, mess) => { +- if (mess.status_code != Soup.Status.OK) { +- debug ("Failed to load %s: %u %s.", uri, mess.status_code, mess.reason_phrase); +- +- return; +- } +- +- try { +- FileUtils.set_data (cover_path, mess.response_body.data); +- load_cover (); +- } catch (Error e) { +- warning (e.message); +- } +- }); ++ var bytes = yield session.send_and_read_async(message, 0, null); ++ ++ if (message.status_code != Soup.Status.OK) { ++ debug ("Failed to load %s: %u %s.", uri, message.status_code, message.reason_phrase); ++ ++ return; ++ } ++ ++ try { ++ FileUtils.set_data (cover_path, bytes.get_data()); ++ load_cover (); ++ } catch (Error e) { ++ warning (e.message); ++ } + } + + private void load_cover () throws Error { |