diff options
-rw-r--r-- | net-news/liferea/files/liferea-1.12.9-webkit-css.patch | 47 | ||||
-rw-r--r-- | net-news/liferea/liferea-1.12.9-r1.ebuild | 75 |
2 files changed, 122 insertions, 0 deletions
diff --git a/net-news/liferea/files/liferea-1.12.9-webkit-css.patch b/net-news/liferea/files/liferea-1.12.9-webkit-css.patch new file mode 100644 index 000000000000..55ceec78b44d --- /dev/null +++ b/net-news/liferea/files/liferea-1.12.9-webkit-css.patch @@ -0,0 +1,47 @@ +From 78fa1f32078eb7a56073ed49fd4b5ce481250f83 Mon Sep 17 00:00:00 2001 +From: Paul Gevers <elbrus@debian.org> +Date: Thu, 29 Apr 2021 20:59:01 +0200 +Subject: [PATCH] Apply patch for easier review + +--- + src/webkit/webkit.c | 17 +++++++++++++++++ + 1 file changed, 17 insertions(+) + +diff --git a/src/webkit/webkit.c b/src/webkit/webkit.c +index 5be72130..70823359 100644 +--- a/src/webkit/webkit.c ++++ b/src/webkit/webkit.c +@@ -369,6 +369,21 @@ liferea_webkit_impl_download_started (WebKitWebContext *context, + enclosure_download (NULL, webkit_uri_request_get_uri (request), TRUE); + } + ++static void ++liferea_webkit_handle_liferea_scheme (WebKitURISchemeRequest *request, gpointer user_data) ++{ ++ const gchar *uri = webkit_uri_scheme_request_get_uri (request); ++ GInputStream *stream; ++ gssize length; ++ gchar *contents; ++ ++ contents = g_strdup_printf ("Placeholder handler for liferea scheme. URI requested : %s", uri); ++ length = (gssize) strlen (contents); ++ stream = g_memory_input_stream_new_from_data (contents, length, g_free); ++ webkit_uri_scheme_request_finish (request, stream, length, "text/plain"); ++ g_object_unref (stream); ++} ++ + static void + liferea_webkit_impl_init (LifereaWebKitImpl *self) + { +@@ -379,6 +394,8 @@ liferea_webkit_impl_init (LifereaWebKitImpl *self) + self->dbus_connections = NULL; + self->settings = webkit_settings_new (); + font = webkit_get_font (&fontSize); ++ webkit_web_context_register_uri_scheme (webkit_web_context_get_default(), "liferea", ++ (WebKitURISchemeRequestCallback) liferea_webkit_handle_liferea_scheme,NULL,NULL); + + security_manager = webkit_web_context_get_security_manager (webkit_web_context_get_default ()); + webkit_security_manager_register_uri_scheme_as_local (security_manager, "liferea"); +-- +GitLab + diff --git a/net-news/liferea/liferea-1.12.9-r1.ebuild b/net-news/liferea/liferea-1.12.9-r1.ebuild new file mode 100644 index 000000000000..9bd12dbb82f1 --- /dev/null +++ b/net-news/liferea/liferea-1.12.9-r1.ebuild @@ -0,0 +1,75 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{7..9} ) + +inherit autotools gnome2-utils python-single-r1 xdg + +DESCRIPTION="News Aggregator for RDF/RSS/CDF/Atom/Echo feeds" +HOMEPAGE="https://lzone.de/liferea/" +SRC_URI="https://github.com/lwindolf/${PN}/releases/download/v${PV}/${P}.tar.bz2" + +LICENSE="GPL-2+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~x86" +IUSE="" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +RDEPEND="${PYTHON_DEPS} + dev-db/sqlite:3 + dev-libs/glib:2 + dev-libs/gobject-introspection + dev-libs/json-glib + dev-libs/libpeas[gtk,python,${PYTHON_SINGLE_USEDEP}] + dev-libs/libxml2:2 + dev-libs/libxslt + gnome-base/gsettings-desktop-schemas + net-libs/libsoup:2.4 + net-libs/webkit-gtk:4 + x11-libs/gtk+:3 + x11-libs/pango" +DEPEND="${RDEPEND}" +BDEPEND="dev-util/intltool + virtual/pkgconfig" + +PATCHES=( + "${FILESDIR}"/${P}-webkit-css.patch +) + +src_prepare() { + xdg_src_prepare + + sed -i -e 's#$(datadir)/appdata#$(datadir)/metainfo#g' \ + Makefile.am || die + eautoreconf +} + +src_configure() { + econf --disable-static +} + +src_compile() { + # Workaround crash in libwebkit2gtk-4.0.so + # https://bugs.gentoo.org/704594 + WEBKIT_DISABLE_COMPOSITING_MODE=1 \ + default +} + +src_install() { + default + find "${D}" -name '*.la' -delete || die +} + +pkg_postinst() { + xdg_pkg_postinst + gnome2_schemas_update + + elog "Additional features can be enabled via" + elog "\tapp-crypt/libsecret[introspection] for Libsecret Support plugin" + elog "\tdev-python/pycairo and x11-libs/gdk-pixbuf[introspection] for Tray Icon (GNOME Classic) plugin" + elog "\tmedia-libs/gstreamer[introspection] for Media Player plugin" + elog "\tnet-misc/networkmanager for monitoring network status" + elog "\tx11-libs/libnotify[introspection] for Popup Notifications plugin" +} |