diff --git a/app-misc/wego/Manifest b/app-misc/wego/Manifest
index c4ec9399ea..8b5e8a5b70 100644
--- a/app-misc/wego/Manifest
+++ b/app-misc/wego/Manifest
@@ -1,14 +1,2 @@
-DIST github.com%2Fmattn%2Fgo-colorable%2F@v%2Fv0.1.12.mod 160 BLAKE2B 63be9d239ea8c5ad48c5bdefaf634f1ef2e3913f9c1f1eb0c48ccf9185a2c14c1030d1542048acd9c7c42399ebb752a8c943e70ed7b11d199ed9067b6e906480 SHA512 f2fa86449f7da9a73f3f8781e6b3dc6ad6e7d491cb37854be0dfb5c3ee086c36f509646e6fa383b4f00c3cb96c535e581016b2a43aedbfd9fe5861bada2f7ce0
-DIST github.com%2Fmattn%2Fgo-colorable%2F@v%2Fv0.1.12.zip 13979 BLAKE2B ab26453c09251ffa89639f5fa0579a853b7b2ee8ca9f48eb8e8b2343acb5d6dbbb67479f21341e37b9cfd28bc4d1fd7facadb8a7ee20f02d0046e8df46baa4b9 SHA512 202a6349397e9f7b4a8252867f4928c694bbba813544b9bb8b8bc4851d18c074f688e3a1f01d7b65e899f492325048705d5250394613924b98bdaece8a2373c9
-DIST github.com%2Fmattn%2Fgo-isatty%2F@v%2Fv0.0.14.mod 104 BLAKE2B e859512911c1621e5ba3e46249c5b9b5e4b0bae854bb3a18d7e39d6da27c93e133d43851d5e6bf2ede44fdee31801b19fe274b55a1f37b1291bf27262e2f2385 SHA512 23b01eb4023ff5018437ff98b55ada053eba49feab2777eed36d033f426c5456b143f3defbc3131dad1251205f3ffb3553e3c10bd98de80f0a462e8450d6d56c
-DIST github.com%2Fmattn%2Fgo-isatty%2F@v%2Fv0.0.14.zip 8919 BLAKE2B fc84f4f16176d14f177f029cae5ecf0221a8f0ce716c499e8b5d49c8e1523673a2fbb600a769ac26be98b591b3cbc3730d447c412b2acd3eff7f878526c271a4 SHA512 c6401cf5af80ea2495cb63800ff39fb9490f212f3aae0ac1d86b3d37ce6734eb35aea00b35bd26532feab77ef80322e765925f302d77f664dd57163f67a8374e
-DIST github.com%2Fmattn%2Fgo-runewidth%2F@v%2Fv0.0.13.mod 84 BLAKE2B d78cb89b5321a10aed4ad5abd88952a190c5051dedea0c9f43f06881be807892152edb9be4ecc9eddfc3cd7b75a441ab85559e25c60feeaf560baf829af373ff SHA512 b96cca212a7024f0039ddd3a744fe818ab2e028b8ac2fd4472ce76ee9b496de3abb0960718c1106a98cf7e6df652dcf2884fe5ed95979bd9016399ea4abd324d
-DIST github.com%2Fmattn%2Fgo-runewidth%2F@v%2Fv0.0.13.zip 20978 BLAKE2B 1114ba9e7289e1a1423e81c4e0ff52860d9232f7e55a626e32282dfbf7a45ef53c21b843f4b6870be92e710db9c619d96f9c197eda0d8c28dac3764160e92105 SHA512 e86a3b69601be1a0a15d7bfd5d93fce8d8c06b52c55c941a9ed62b44f05d3062e436d817661af14bb42838efc45875a63eb6042b196e1684db36e0fe6ed42a7f
-DIST github.com%2Frivo%2Funiseg%2F@v%2Fv0.2.0.mod 39 BLAKE2B c619b92efed318039eb06878b084372e8f3f45426623a9c1f045f21bf44f86347472a28a4164f607cb9fca3c253d4c9df0dd33d1dd8baaa02230af9feb8dc7f6 SHA512 d6089badd618722b8d3584965f1a10290097f259024a444744f625fe5b439fef62c7e14f060fb8593197d003ecd6c29f0cb85700de0bdfbf2511ca66729db3bc
-DIST github.com%2Frivo%2Funiseg%2F@v%2Fv0.2.0.zip 45731 BLAKE2B f4a1442027b29625c694298e10ec9c107edd8437d8749110cd56440dae791c0e6d88a68187240cbc521f79fa7bdc4307e4b3b4edad38d57d5834644342a066e0 SHA512 88f37961ebe3a1701265a2f5cb606e97fe4ddd09e36ff13ca8c026e98640af5d35cb930e4d12b6690a97e5d934705102554c6d2912ebbb5ee08976c698cce2db
-DIST github.com%2Fschachmat%2Fingo%2F@v%2Fv0.0.0-20170403011506-a4bdc0729a3f.mod 33 BLAKE2B 9dc686e79d167d4ef985e11a7cafb978ae6726126da040967a73bbdb99a83d37e23f765f389d3b3b47f607f73fe036ce1dddb855b3346234e8a7f5967f84c65d SHA512 bd411ee9ca744c079193dd742b191a1df13fbbf144dfda14f6a39f3246710e67c17a47d751940e1441ab40bf04caa0635ae0fb46ae47055f2206f879a527e6b9
-DIST github.com%2Fschachmat%2Fingo%2F@v%2Fv0.0.0-20170403011506-a4bdc0729a3f.zip 7295 BLAKE2B 9e00c2a437ed2fead4fcd6d192cf9bc173eeae505b1e8257a4193997a06eb4f8eae3ef80b80403c80a6abbf9f5eeb3efe51d4bf5b431abdd3b73ac2c8ba611c9 SHA512 50db8c540ac425e1f24c500cfef2699ba33711c828b1a89f94ff6122895e6c357f74fbe5247418ecfa2c94474c0140db9ecd198c571ec0152ad2b606fa2d9611
-DIST golang.org%2Fx%2Fsys%2F@v%2Fv0.0.0-20210630005230-0f9fa26af87c.mod 33 BLAKE2B b74677ab15ab6b31640d71b052db667b0fb585ed6d1044e26bc5e4cf8da90e1ede81f8876babea843dd322b8b707189138e70c24d13d931f1f6dd04978ac222c SHA512 85e511b1261c1935f5ee4754ad31d1d946f9e10f0af9905f44c4348d6ce5104319c03fb38517dde616698f6487b0c62788cfa96bc0ffb3b6db80accd7e552655
-DIST golang.org%2Fx%2Fsys%2F@v%2Fv0.0.0-20210927094055-39ccf1dd6fa6.mod 33 BLAKE2B b74677ab15ab6b31640d71b052db667b0fb585ed6d1044e26bc5e4cf8da90e1ede81f8876babea843dd322b8b707189138e70c24d13d931f1f6dd04978ac222c SHA512 85e511b1261c1935f5ee4754ad31d1d946f9e10f0af9905f44c4348d6ce5104319c03fb38517dde616698f6487b0c62788cfa96bc0ffb3b6db80accd7e552655
-DIST golang.org%2Fx%2Fsys%2F@v%2Fv0.0.0-20210927094055-39ccf1dd6fa6.zip 1655907 BLAKE2B 317486eaf6a714d7d74f563e20bbe3f0581c7331e3c8e492cb075476bdd57f9ae4a75c49834cc6912f7d9ed6a54c540a78f6e2556245afc05f6480019c7abc17 SHA512 dcd3d13b504c351483c49f93884b3e8635cb0377a51cd14fbd3efe8b55f3983e401ee746bbdb7e6904e472beb09343d9d1d1d9667f2cc515e991c8f5c3bf14cf
-DIST wego-2.1.tar.gz 16499 BLAKE2B 9308d7bc3899d136bf98c8862fffd62f1984445598cda7de98a9d9bc9b6d3e3f2723bc1438a3483f3e4753ea6abb84832a6f3539a7336569f711253043ecb425 SHA512 80cc19ea34bdb536ab48ef6e074f86b58dab59f76270688ca2d4c562c5eb34f177597108f2159e6ef33ee2485c068a7904ddf7bf8d0b79cb825ca7b73b0fefa2
+DIST wego-2.2-vendor.tar.xz 433308 BLAKE2B 56d1d18a0404ebeb25df41c3816e3905ad4f4122f17c7bc5e6a48d561aaa560ea7a209dbace65b4262be87756746635592a3c2684ae7682636f4192b861e3a47 SHA512 7f607b15944f267942f2cb447e9281f2541efcd97fae17608d396c556d9f30e890dd905eba8e846e3195ce8a15da6f70e762863992020d5772e5e3d08ca08408
+DIST wego-2.2.tar.gz 20450 BLAKE2B 86d63e63d9e4ad267dcf052fc711f079857689bedf38ccd0be1b11ca237fb889b5b6df3914d3896bebc7a27357e5ecd297af0f216748d7fb4d332abee5a927fe SHA512 80c35be31219cdefb286978d2118309bc0238b49352b861e28b2dac39f49edba8e2c74bfd1d1549d918307584b820345814953cce757d9d42a2191b8cb44cb47
diff --git a/app-misc/wego/wego-2.1.ebuild b/app-misc/wego/wego-2.1.ebuild
deleted file mode 100644
index 9b3bdb3445..0000000000
--- a/app-misc/wego/wego-2.1.ebuild
+++ /dev/null
@@ -1,43 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-
-inherit go-module
-
-EGO_PN="github.com/schachmat/wego"
-EGO_SUM=(
- "github.com/mattn/go-colorable v0.1.12"
- "github.com/mattn/go-colorable v0.1.12/go.mod"
- "github.com/mattn/go-isatty v0.0.14"
- "github.com/mattn/go-isatty v0.0.14/go.mod"
- "github.com/mattn/go-runewidth v0.0.13"
- "github.com/mattn/go-runewidth v0.0.13/go.mod"
- "github.com/rivo/uniseg v0.2.0"
- "github.com/rivo/uniseg v0.2.0/go.mod"
- "github.com/schachmat/ingo v0.0.0-20170403011506-a4bdc0729a3f"
- "github.com/schachmat/ingo v0.0.0-20170403011506-a4bdc0729a3f/go.mod"
- "golang.org/x/sys v0.0.0-20210630005230-0f9fa26af87c/go.mod"
- "golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6"
- "golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod"
- )
-go-module_set_globals
-
-DESCRIPTION="Wego is a weather client for the terminal"
-SRC_URI="
- https://github.com/schachmat/wego/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz
- ${EGO_SUM_SRC_URI}
-"
-HOMEPAGE="https://github.com/schachmat/wego"
-LICENSE="BSD ISC MIT"
-SLOT="0"
-KEYWORDS="~amd64"
-
-src_compile() {
- go build -v -x -o wego || die
-}
-
-src_install() {
- dobin wego
- dodoc README.md
-}
diff --git a/app-misc/wego/wego-2.2.ebuild b/app-misc/wego/wego-2.2.ebuild
new file mode 100644
index 0000000000..771c90a533
--- /dev/null
+++ b/app-misc/wego/wego-2.2.ebuild
@@ -0,0 +1,23 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module
+
+DESCRIPTION="Wego is a weather client for the terminal"
+SRC_URI="https://github.com/schachmat/wego/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://gentoo.kropotkin.rocks/go-pkgs/${P}-vendor.tar.xz"
+HOMEPAGE="https://github.com/schachmat/wego"
+LICENSE="BSD ISC MIT"
+SLOT="0"
+KEYWORDS="~amd64"
+
+src_compile() {
+ ego build -v -x -o wego || die
+}
+
+src_install() {
+ dobin wego
+ dodoc README.md
+}
diff --git a/net-news/gfeeds/Manifest b/net-news/gfeeds/Manifest
new file mode 100644
index 0000000000..35a2ce4591
--- /dev/null
+++ b/net-news/gfeeds/Manifest
@@ -0,0 +1 @@
+DIST gfeeds-2.2.0.tar.bz2 184323 BLAKE2B 47b259be8b788405e082250bf320ec91a5c199cfa75e20b4989d9b378e58dffb021c71677a9f31256cb8ef5c2dfd250ab1b09a3cf4e85a6f8c62098d154b7a41 SHA512 27409dd01a1ce59e9d5e4c6a3b34e63a0724c63a0db35390279d14287cbeef5578b266c316f7b170382a446ad0b280be3be7297ec6ee8739e3a4e1eff07a269c
diff --git a/net-news/gfeeds/files/gfeeds-2.2.0-blueprint-0.80-fix.patch b/net-news/gfeeds/files/gfeeds-2.2.0-blueprint-0.80-fix.patch
new file mode 100644
index 0000000000..4bb95bc1c0
--- /dev/null
+++ b/net-news/gfeeds/files/gfeeds-2.2.0-blueprint-0.80-fix.patch
@@ -0,0 +1,336 @@
+diff --git a/data/ui/add_feed_popover.blp b/data/ui/add_feed_popover.blp
+index 13806f5..b61f2ea 100644
+--- a/data/ui/add_feed_popover.blp
++++ b/data/ui/add_feed_popover.blp
+@@ -1,6 +1,6 @@
+ using Gtk 4.0;
+
+-template AddFeedPopover : Gtk.Popover {
++template $AddFeedPopover : Gtk.Popover {
+ autohide: true;
+ Gtk.Box container_box {
+ width-request: 290;
+@@ -18,13 +18,13 @@ template AddFeedPopover : Gtk.Popover {
+ placeholder-text: 'https://…';
+ input-purpose: url;
+ hexpand: true;
+- activate => on_url_entry_activate();
+- changed => on_url_entry_changed();
++ activate => $on_url_entry_activate();
++ changed => $on_url_entry_changed();
+ }
+ Gtk.Button confirm_btn {
+ styles ['suggested-action']
+ label: _("Add");
+- clicked => on_confirm_btn_clicked();
++ clicked => $on_confirm_btn_clicked();
+ }
+ }
+ Gtk.Revealer already_subscribed_revealer {
+diff --git a/data/ui/empty_state.blp b/data/ui/empty_state.blp
+index dbdbf2c..a9c91b9 100644
+--- a/data/ui/empty_state.blp
++++ b/data/ui/empty_state.blp
+@@ -1,7 +1,7 @@
+ using Gtk 4.0;
+ using Adw 1;
+
+-template EmptyState : Adw.Bin {
++template $EmptyState : Adw.Bin {
+ Adw.StatusPage {
+ styles ['navigation-sidebar']
+ title: _("Let's get started");
+diff --git a/data/ui/filter_view.blp b/data/ui/filter_view.blp
+index 7b5e0a3..9c060d3 100644
+--- a/data/ui/filter_view.blp
++++ b/data/ui/filter_view.blp
+@@ -2,7 +2,7 @@ using Gtk 4.0;
+ using Adw 1;
+
+
+-template FilterView : Adw.Bin {
++template $FilterView : Adw.Bin {
+ styles ['background']
+ ScrolledWindow {
+ hscrollbar-policy: never;
+@@ -13,13 +13,13 @@ template FilterView : Adw.Bin {
+ ListBox all_listbox {
+ styles ['navigation-sidebar']
+ selection-mode: single;
+- row-activated => on_all_row_activated();
++ row-activated => $on_all_row_activated();
+ }
+ Separator { orientation: horizontal; margin-start: 6; margin-end: 6; }
+ ListBox tags_listbox {
+ styles ['navigation-sidebar']
+ selection-mode: single;
+- row-activated => on_tags_row_activated();
++ row-activated => $on_tags_row_activated();
+ }
+ Separator { orientation: horizontal; margin-start: 6; margin-end: 6; }
+ Adw.Bin feeds_listbox_bin {}
+diff --git a/data/ui/left_headerbar.blp b/data/ui/left_headerbar.blp
+index 113a839..10e0195 100644
+--- a/data/ui/left_headerbar.blp
++++ b/data/ui/left_headerbar.blp
+@@ -20,7 +20,7 @@ menu generalMenu {
+ }
+ }
+
+-template LeftHeaderbar : WindowHandle {
++template $LeftHeaderbar : WindowHandle {
+ vexpand: false; hexpand: true;
+ Adw.HeaderBar left_headerbar {
+ [title] Adw.Bin {}
+@@ -40,7 +40,7 @@ template LeftHeaderbar : WindowHandle {
+ [end] Button refresh_btn {
+ tooltip-text: _("Refresh");
+ icon-name: 'view-refresh-symbolic';
+- clicked => on_refresh_btn_clicked();
++ clicked => $on_refresh_btn_clicked();
+ }
+ [end] ToggleButton search_btn {
+ tooltip-text: _("Search");
+@@ -50,7 +50,7 @@ template LeftHeaderbar : WindowHandle {
+ tooltip-text: _("There Are Errors");
+ icon-name: 'dialog-warning-symbolic';
+ visible: false;
+- clicked => show_errors_dialog();
++ clicked => $show_errors_dialog();
+ }
+ }
+ }
+diff --git a/data/ui/main_leaflet.blp b/data/ui/main_leaflet.blp
+index c2e49f5..8fe5d27 100644
+--- a/data/ui/main_leaflet.blp
++++ b/data/ui/main_leaflet.blp
+@@ -1,20 +1,20 @@
+ using Gtk 4.0;
+ using Adw 1;
+
+-template MainLeaflet : Adw.Bin {
++template $MainLeaflet : Adw.Bin {
+ Adw.Leaflet leaflet {
+ homogeneous: false;
+ can-navigate-back: true;
+ transition-type: over;
+ visible-child: left_box;
+- notify::folded => on_leaflet_folded();
++ notify::folded => $on_leaflet_folded();
+ Adw.LeafletPage left_page {
+ child: Gtk.Box left_box {
+ hexpand: false;
+ orientation: vertical;
+ width-request: 360;
+ height-request: 100;
+- .LeftHeaderbar left_headerbar {
++ $LeftHeaderbar left_headerbar {
+ searchbar: searchbar;
+ }
+ SearchBar searchbar {
+@@ -50,9 +50,9 @@ template MainLeaflet : Adw.Bin {
+ reveal-flap: false;
+ swipe-to-open: true;
+ swipe-to-close: true;
+- [flap] .FilterView filter_view {}
+- [content] .StackWithEmptyState sidebar_stack {
+- main-widget: .GFeedsSidebar sidebar {
++ [flap] $FilterView filter_view {}
++ [content] $StackWithEmptyState sidebar_stack {
++ main-widget: $GFeedsSidebar sidebar {
+
+ };
+ }
+@@ -66,11 +66,11 @@ template MainLeaflet : Adw.Bin {
+ Adw.LeafletPage right_page {
+ child: Gtk.Box right_box {
+ orientation: vertical;
+- .RightHeaderbar right_headerbar {
++ $RightHeaderbar right_headerbar {
+ webview: webview;
+- go_back => on_back_btn_clicked();
++ go_back => $on_back_btn_clicked();
+ }
+- .GFeedsWebView webview {}
++ $GFeedsWebView webview {}
+ };
+ }
+ }
+diff --git a/data/ui/manage_feeds_headerbar.blp b/data/ui/manage_feeds_headerbar.blp
+index 8e862a9..ea130ec 100644
+--- a/data/ui/manage_feeds_headerbar.blp
++++ b/data/ui/manage_feeds_headerbar.blp
+@@ -1,7 +1,7 @@
+ using Gtk 4.0;
+ using Adw 1;
+
+-template ManageFeedsHeaderbar : Gtk.HeaderBar {
++template $ManageFeedsHeaderbar : Gtk.HeaderBar {
+ show-title-buttons: true;
+ [title] Adw.WindowTitle {
+ title: _("Manage Feeds");
+diff --git a/data/ui/manage_tags_content.blp b/data/ui/manage_tags_content.blp
+index b6b009f..b47f99d 100644
+--- a/data/ui/manage_tags_content.blp
++++ b/data/ui/manage_tags_content.blp
+@@ -1,7 +1,7 @@
+ using Gtk 4.0;
+ using Adw 1;
+
+-template ManageTagsContent : Adw.Bin {
++template $ManageTagsContent : Adw.Bin {
+ styles ['background']
+ Box {
+ spacing: 6;
+@@ -16,14 +16,14 @@ template ManageTagsContent : Adw.Bin {
+ Entry tags_entry {
+ placeholder-text: _("New tag name…");
+ hexpand: true;
+- changed => on_tags_entry_changed();
+- activate => on_submit_add_tag();
++ changed => $on_tags_entry_changed();
++ activate => $on_submit_add_tag();
+ }
+ Button add_tag_btn {
+ styles ['suggested-action']
+ tooltip-text: _("Add Tag");
+ icon-name: 'list-add-symbolic';
+- clicked => on_submit_add_tag();
++ clicked => $on_submit_add_tag();
+ }
+ }
+ Separator { orientation: horizontal; }
+@@ -34,7 +34,7 @@ template ManageTagsContent : Adw.Bin {
+ ListBox tags_listbox {
+ styles ['navigation-sidebar']
+ selection-mode: none;
+- row-activated => on_tags_listbox_row_activated();
++ row-activated => $on_tags_listbox_row_activated();
+ [placeholder] Adw.StatusPage {
+ title: _("There are no tags yet");
+ description: _("Add some using the entry above");
+diff --git a/data/ui/manage_tags_listbox_row.blp b/data/ui/manage_tags_listbox_row.blp
+index 21124d2..0350c8f 100644
+--- a/data/ui/manage_tags_listbox_row.blp
++++ b/data/ui/manage_tags_listbox_row.blp
+@@ -1,6 +1,6 @@
+ using Gtk 4.0;
+
+-template ManageTagsListboxRow : ListBoxRow {
++template $ManageTagsListboxRow : ListBoxRow {
+ Box main_box {
+ spacing: 6;
+ orientation: horizontal;
+@@ -12,7 +12,7 @@ template ManageTagsListboxRow : ListBoxRow {
+ styles ['destructive-action']
+ margin-start: 12;
+ icon-name: 'user-trash-symbolic';
+- clicked => on_delete_btn_clicked();
++ clicked => $on_delete_btn_clicked();
+ }
+ }
+ }
+diff --git a/data/ui/right_headerbar.blp b/data/ui/right_headerbar.blp
+index 992dfa6..b033c20 100644
+--- a/data/ui/right_headerbar.blp
++++ b/data/ui/right_headerbar.blp
+@@ -3,7 +3,7 @@ using Adw 1;
+
+ menu webviewMenu {
+ section {
+- item { custom: zoom; }
++ item { custom: 'zoom'; }
+ }
+ section {
+ item (_("Open in _Browser"), 'app.open_externally')
+@@ -42,25 +42,25 @@ PopoverMenu extra_popover {
+ styles ['flat', 'circular']
+ icon-name: 'zoom-out-symbolic';
+ tooltip-text: _("Zoom Out");
+- clicked => on_zoom_out_btn_clicked();
++ clicked => $on_zoom_out_btn_clicked();
+ }
+ Button zoom_reset_btn {
+ styles ['flat']
+ label: '100%';
+ width-request: 80;
+ tooltip-text: _("Reset Zoom");
+- clicked => on_zoom_reset_btn_clicked();
++ clicked => $on_zoom_reset_btn_clicked();
+ }
+ Button zoom_in_btn {
+ styles ['flat', 'circular']
+ icon-name: 'zoom-in-symbolic';
+ tooltip-text: _("Zoom In");
+- clicked => on_zoom_in_btn_clicked();
++ clicked => $on_zoom_in_btn_clicked();
+ }
+ }
+ }
+
+-template RightHeaderbar : WindowHandle {
++template $RightHeaderbar : WindowHandle {
+ vexpand: false; hexpand: true;
+ Adw.HeaderBar right_headerbar {
+ hexpand: true;
+@@ -89,7 +89,7 @@ template RightHeaderbar : WindowHandle {
+ visible: false;
+ tooltip-text: _("Back to Articles");
+ icon-name: 'go-previous-symbolic';
+- clicked => on_back_btn_clicked();
++ clicked => $on_back_btn_clicked();
+ }
+ MenuButton view_mode_menu_btn {
+ sensitive: false;
+diff --git a/data/ui/sidebar_listbox_row.blp b/data/ui/sidebar_listbox_row.blp
+index 2e873bd..fbeb032 100644
+--- a/data/ui/sidebar_listbox_row.blp
++++ b/data/ui/sidebar_listbox_row.blp
+@@ -7,7 +7,7 @@ menu row_menu {
+ }
+ }
+
+-template SidebarRow : Box {
++template $SidebarRow : Box {
+ spacing: 6;
+ orientation: vertical;
+ margin-top: 12; margin-bottom: 12;
+diff --git a/data/ui/webview.blp b/data/ui/webview.blp
+index c1c68de..55dc2b3 100644
+--- a/data/ui/webview.blp
++++ b/data/ui/webview.blp
+@@ -2,7 +2,7 @@ using Gtk 4.0;
+ using WebKit 6.0;
+ using Adw 1;
+
+-template GFeedsWebView : Stack {
++template $GFeedsWebView : Stack {
+ width-request: 360; height-request: 400;
+ hexpand: true; vexpand: true;
+ transition-type: crossfade;
+@@ -40,9 +40,9 @@ template GFeedsWebView : Stack {
+ hexpand: true; vexpand: true;
+ WebKit.WebView webkitview {
+ hexpand: true; vexpand: true;
+- load-changed => on_load_changed();
+- decide-policy => on_decide_policy();
+- mouse-target-changed => on_mouse_target_changed();
++ load-changed => $on_load_changed();
++ decide-policy => $on_decide_policy();
++ mouse-target-changed => $on_mouse_target_changed();
+ }
+ }
+ }
+diff --git a/gfeeds/base_app.py b/gfeeds/base_app.py
+index 0ace634..a414cf2 100644
+--- a/gfeeds/base_app.py
++++ b/gfeeds/base_app.py
+@@ -24,7 +24,7 @@ class AppAction:
+ self.state_type = state_type
+ self.state_default = state_default
+
+- assert not self.stateful or self.state_default is not None
++ assert (not self.stateful or self.state_default is not None)
+
+ def get_action(self):
+ action = None
diff --git a/net-news/gfeeds/gfeeds-2.2.0.ebuild b/net-news/gfeeds/gfeeds-2.2.0.ebuild
new file mode 100644
index 0000000000..d89034b495
--- /dev/null
+++ b/net-news/gfeeds/gfeeds-2.2.0.ebuild
@@ -0,0 +1,70 @@
+# Copyright 2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_11 )
+
+inherit gnome2-utils meson python-single-r1
+
+DESCRIPTION="An RSS/Atom feed reader for GNOME."
+HOMEPAGE="https://gitlab.gnome.org/World/gfeeds"
+SRC_URI="https://gitlab.gnome.org/World/gfeeds/-/archive/${PV}/${P}.tar.bz2"
+
+# This fixes 1 syntax-related compilation error and syntax warnings (usage of $)
+PATCHES="${FILESDIR}/${P}-blueprint-0.80-fix.patch"
+
+LICENSE="GPL-3"
+SLOT="0"
+IUSE="debug"
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+DEPEND="
+ ${PYTHON_DEPS}
+ $(python_gen_cond_dep '
+ dev-python/beautifulsoup4[${PYTHON_USEDEP}]
+ dev-python/html5lib[${PYTHON_USEDEP}]
+ dev-python/humanize[${PYTHON_USEDEP}]
+ dev-python/pillow[${PYTHON_USEDEP}]
+ dev-python/pygments[${PYTHON_USEDEP}]
+ dev-python/python-magic[${PYTHON_USEDEP}]
+ dev-python/pytz[${PYTHON_USEDEP}]
+ dev-python/readability-lxml[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ ')
+ gui-libs/gtk:4
+ gui-libs/libadwaita
+ ~net-libs/syndication-domination-9999[python]
+ net-libs/webkit-gtk:6
+"
+RDEPEND="${DEPEND}"
+BDEPEND=">=dev-util/meson-0.58"
+
+src_configure() {
+ local emesonargs=(
+ --buildtype $(usex debug debug release)
+ --prefix=/usr
+ )
+ meson_src_configure
+}
+
+src_compile() {
+ meson_src_compile
+}
+
+src_install() {
+ meson_src_install
+ python_fix_shebang "${D}"/usr/bin/gfeeds
+}
+
+pkg_postinst() {
+ gnome2_schemas_update
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
+
+pkg_postrm() {
+ gnome2_schemas_update
+ xdg_icon_cache_update
+ xdg_desktop_database_update
+}
diff --git a/net-news/gfeeds/metadata.xml b/net-news/gfeeds/metadata.xml
new file mode 100644
index 0000000000..5e7fab22d3
--- /dev/null
+++ b/net-news/gfeeds/metadata.xml
@@ -0,0 +1,10 @@
+
+
+
+
+ brettalcox@gmail.com
+
+
+ World/gfeeds
+
+
diff --git a/profiles/package.mask b/profiles/package.mask
index fe0cfc8289..630663353a 100644
--- a/profiles/package.mask
+++ b/profiles/package.mask
@@ -14,6 +14,11 @@
# New entries go on top.
+# David Roman (2023-10-05)
+# Upstream seems dead (no new releases since 2016).
+# Removal in +30 days.
+app-misc/pup
+
# David Roman (2023-09-26)
# Requires net-libs/rest:0.7, which is no longer available in ::gentoo.
# No new upstream releases since 25 May, 2022.
diff --git a/sys-apps/mission-center/mission-center-0.3.2.ebuild b/sys-apps/mission-center/mission-center-0.3.2.ebuild
index 91da240e3c..bead8ac09b 100644
--- a/sys-apps/mission-center/mission-center-0.3.2.ebuild
+++ b/sys-apps/mission-center/mission-center-0.3.2.ebuild
@@ -260,6 +260,8 @@ CRATES="
xml-rs@0.8.15
"
+PYTHON_COMPAT=( python3_{9..11} )
+
PATHFINDER_COMMIT=21ec6fa933547636bc6c5ee8f0dd4a0ea3fcd062
NVTOP_COMMIT=be47f8c560487efc6e6a419d59c69bfbdb819324
@@ -273,7 +275,7 @@ declare -A GIT_CRATES=(
[pathfinder_resources]="https://github.com/servo/pathfinder;${PATHFINDER_COMMIT};pathfinder-${PATHFINDER_COMMIT}/resources/"
)
-inherit cargo gnome2-utils meson
+inherit cargo gnome2-utils meson python-any-r1
DESCRIPTION="Monitor your CPU, Memory, Disk, Network and GPU usage."
HOMEPAGE="https://missioncenter.io/"
@@ -291,11 +293,11 @@ KEYWORDS="~amd64"
IUSE="debug"
DEPEND="
- >=dev-lang/python-3
dev-libs/wayland
gui-libs/libadwaita
>=gui-libs/gtk-4
gui-libs/egl-gbm
+ virtual/rust
virtual/udev
x11-libs/libdrm
"
@@ -304,7 +306,7 @@ RDEPEND="
sys-apps/dmidecode
"
BDEPEND="
- >=dev-lang/rust-1.69
+ ${PYTHON_DEPS}
dev-libs/gobject-introspection
>=dev-util/meson-0.63
dev-util/blueprint-compiler
diff --git a/sys-power/fan2go/Manifest b/sys-power/fan2go/Manifest
index 448150f730..773c83a237 100644
--- a/sys-power/fan2go/Manifest
+++ b/sys-power/fan2go/Manifest
@@ -32,6 +32,8 @@ DIST cloud.google.com%2Fgo%2Fstorage%2F@v%2Fv1.6.0.mod 736 BLAKE2B 2337ea8dca35e
DIST cloud.google.com%2Fgo%2Fstorage%2F@v%2Fv1.8.0.mod 622 BLAKE2B 621e3faa3335ebec92c376298699510d800c2653c3680a438095c3dd9d6ba1f83f13a0302f316beea786b8f606ff3b4f62d21abe63d72f3f5c4e12fb81f61511 SHA512 409dad03104a4ac6b4a8c6da3540ab382345c86e48732f2b37d64ae2bc1c721d9f0a1ed0824a36085baa7102d2626e84f44706b16297623e8deb58fa9e24ba38
DIST dmitri.shuralyov.com%2Fgpu%2Fmtl%2F@v%2Fv0.0.0-20190408044501-666a987793e9.mod 36 BLAKE2B b430ef9388b0dfe932b201495a00275a6036338c99160d7362556be1e25924584b0802061d193533f23b1f76719dfd6a9484572babd25f1af0e53fd9bf07ac00 SHA512 196affe091247f94ceda4b56629bd62d4ee2b397f2c0f56c9534c02e43531b46705ad33543b58c1a4fc7a48e25e5923db087fe0485a93966a4086581c0d1d3e1
DIST fan2go-0.6.2.tar.gz 181038 BLAKE2B e30c8ead0dbae34a70db7beae478a4eb2df52f5ab3b46342487cedf9b5bbab8a3c3bbf318291fd3ab1fa3ca9bbb60cd569df965ed4c144a37bd02b6040ba7909 SHA512 f10ab203f9a407dfcb5e3f055cc5c1714fb88b35d106941ceb37dcd4408bbfdadc9fea62c3e5a9ddf07538fc93adb19f3e18a62b1683d43b9592350c9fdd16f1
+DIST fan2go-0.8.1-vendor.tar.xz 2062496 BLAKE2B 7518b55ea01f9aeb4563ade1d24d79a5a4c64b573d53c72a1fa72e9de0ee05db82daee509e5a5e2a35d0b21916136901d5104c353d538bc8ea40a2f950c9f29e SHA512 8c1ffdeb9146de3a70ae8730180ddb7766b9d8123a4e34c740902d8f65ac82a46519f3adfa79d05a408d578e2d155aee5a1a8f8c0537a69e5d01a58bd68c2cf3
+DIST fan2go-0.8.1.tar.gz 200094 BLAKE2B f649ad32466a636682a4cd02d03db2b0b9e4c3692611eede5e38ee0a93dd8c2d848467bd101cfca7b1a3765045269f8f832c574023151b65e80f0060c758f56b SHA512 eab8b0ff0f45a98c086fac8530a48ed3bb892cf80bd03fce9e4f6806ed7bbd3edd0d82e715bd9330f3083a69b1afbe236a0925cc752f2dcae643f63163317354
DIST github.com%2F!burnt!sushi%2Ftoml%2F@v%2Fv0.3.1.mod 34 BLAKE2B ce54a247aef91043830bdf0603c8452ba38eceb1495af6e7a74c9119234a0dc5cd080cb25258c28f5e270acf91189a5ed33e361cbf17de2be5e37dadbda1d90d SHA512 320941bc3b7fb8bc595e6135cbc513a7583d129f0cd92508055291e141191066303cf75148e25198c21f6c6c539a790ea3210f3ecf5de6a2a03b70c753091146
DIST github.com%2F!burnt!sushi%2Fxgb%2F@v%2Fv0.0.0-20160522181843-27f122750802.mod 33 BLAKE2B d234bf9be3dd919cb1f8d33750a24dca68c90fea110fd0ff62f0dba86d2ebbfc66d55fea62745b6383c5607bc91cfd78c9d2cf12df251397e85995c04707caa2 SHA512 dbfa64ac31b25fdbff12110c6f9815abfde65f281e40852e7165499a2cefb6656c74fe0b82f0f018304daa02b83b421e9c15654efabad39787c69c1b2996a79d
DIST github.com%2F!marvin!j!wendt%2Ftestza%2F@v%2Fv0.1.0.mod 166 BLAKE2B ad22063acaca31bf922a03fd3a6e3953da9a27f87c655cf9971f132c1505726cbd5cd2ff1f0f913fe4edfc2862ee99cd2c1ed341b3d77ccacde57290b74a72b4 SHA512 be5353e8e0f0ccee08ef6a4bdcb32dd7b62693faf07bd9ad7920c8c15dbf980943dcecf9b92375f6f95d776e49c3c48e43e71bb5c25663736c90f1c01b33fcbe
diff --git a/sys-power/fan2go/fan2go-0.8.1.ebuild b/sys-power/fan2go/fan2go-0.8.1.ebuild
new file mode 100644
index 0000000000..e3267a9b1b
--- /dev/null
+++ b/sys-power/fan2go/fan2go-0.8.1.ebuild
@@ -0,0 +1,53 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit go-module shell-completion systemd
+
+DESCRIPTION="A simple daemon providing dynamic fan speed control"
+SRC_URI="https://github.com/markusressel/${PN}/archive/refs/tags/${PV}.tar.gz -> ${P}.tar.gz"
+SRC_URI+=" https://gentoo.kropotkin.rocks/go-pkgs/${P}-vendor.tar.xz"
+HOMEPAGE="https://github.com/markusressel/fan2go"
+
+LICENSE="AGPL-3 Apache-2.0 MIT BSD BSD-2 MIT MPL-2.0"
+SLOT="0"
+KEYWORDS="~amd64"
+
+DEPEND="sys-apps/lm-sensors"
+RDEPEND="${DEPEND}"
+
+src_compile() {
+ SOURCE_DATE_EPOCH=$(date +%s || die)
+ DATE=$(date -u -d @${SOURCE_DATE_EPOCH} +"%Y-%m-%dT%H:%M:%SZ" || die)
+
+ ego \
+ build \
+ -o fan2go \
+ -x \
+ -v \
+ ${GOFLAGS} \
+ -ldflags "-X fan2go/cmd.version=${PV} -X fan2go/cmd.date=${DATE}" \
+ -a \
+ -tags netgo \
+ .
+
+ ./fan2go completion fish > fan2go.fish || die
+ ./fan2go completion bash > fan2go.bash || die
+ ./fan2go completion zsh > fan2go.zsh || die
+}
+
+src_install() {
+ dobin fan2go
+ dodoc README.md
+ systemd_dounit fan2go.service
+ insinto /etc/fan2go
+ doins fan2go.yaml
+ newbashcomp "${PN}.bash" "${PN}"
+ dofishcomp "${PN}.fish"
+ newzshcomp "${PN}.zsh" "_${PN}"
+}
+
+src_test() {
+ go test -v ./... || die
+}