commit:     840e7c4b9b806afcb37f632d0f480edb81a6d87a
Author:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
AuthorDate: Thu Oct  2 15:58:30 2025 +0000
Commit:     Andreas Sturmlechner <asturm <AT> gentoo <DOT> org>
CommitDate: Thu Oct  2 18:06:17 2025 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=840e7c4b

app-crypt/seahorse: drop 43.0-r5

Broken with with app-crypt/gpgme-2.0.0.

Signed-off-by: Andreas Sturmlechner <asturm <AT> gentoo.org>

 app-crypt/seahorse/Manifest                        |   1 -
 app-crypt/seahorse/files/seahorse-43.0-c99-2.patch | 517 ---------------------
 app-crypt/seahorse/files/seahorse-43.0-c99.patch   |  21 -
 .../seahorse/files/seahorse-43.0-clang16.patch     |  35 --
 .../seahorse/files/seahorse-43.0-gnupg-2.4.patch   |  20 -
 .../seahorse/files/seahorse-43.0-musl-stdout.patch |  85 ----
 app-crypt/seahorse/seahorse-43.0-r5.ebuild         |  87 ----
 7 files changed, 766 deletions(-)

diff --git a/app-crypt/seahorse/Manifest b/app-crypt/seahorse/Manifest
index 0dab42e0acfa..9b8916dc5c19 100644
--- a/app-crypt/seahorse/Manifest
+++ b/app-crypt/seahorse/Manifest
@@ -1,2 +1 @@
-DIST seahorse-43.0.tar.xz 1392460 BLAKE2B 
b7ae8b42042ad8e07eaf2633583b566f9757f83bd066eb8b0786d5e89353901f5526ed925bb6152820a5b2a36defb0c0f38dea634c3ae78ebf8d29ab07ff9cfb
 SHA512 
168fdfc829134915f513028b1d35b647aa18a0390786cbf512f7ddb7b125b239f3f3d880a847119a5aa22580354f0b594e553fe3940a3afbda5861e69dd88e5d
 DIST seahorse-47.0.1.tar.xz 1401872 BLAKE2B 
11b10b1bb1cf4836f7490620169630b71ccf0df67ed25f46e035bb97fbd1450564252cad1974c6e69bfd00019dff8da88875fd605dbcf31bfa64104cb0704e6c
 SHA512 
ac2a20f4d9106f26932c77dc11b4fbd18c8a83d15991f31ae89223a487fa1b4d97cb19de858cc6f53435b7ebcc1dd0f16148d0d1d3080436f0b541de5a56bfcb

diff --git a/app-crypt/seahorse/files/seahorse-43.0-c99-2.patch 
b/app-crypt/seahorse/files/seahorse-43.0-c99-2.patch
deleted file mode 100644
index 65aa21fc8ec8..000000000000
--- a/app-crypt/seahorse/files/seahorse-43.0-c99-2.patch
+++ /dev/null
@@ -1,517 +0,0 @@
-https://bugs.gentoo.org/882805
-https://gitlab.gnome.org/GNOME/seahorse/-/commit/87a5e5312beac6cbe3b39f72cf0f120f1ed00473
-
-From 87a5e5312beac6cbe3b39f72cf0f120f1ed00473 Mon Sep 17 00:00:00 2001
-From: Niels De Graef <[email protected]>
-Date: Sat, 21 Oct 2023 15:43:04 +0200
-Subject: [PATCH] ssh: Refactor SSH key parsing
-
-Fix several issues in the SSH Key parsing code, and directly use a
-`GInputStream` we can (asynchronously) read from. Take the opportunity
-also to add some unit tests that we can run to make sure we're not
-regressing on anything.
----
- ssh/key-data.vala       |  59 +++++-----
- ssh/key.vala            |  58 +++++-----
- ssh/meson.build         |  20 ++++
- ssh/source.vala         |   9 +-
- ssh/test-key-parse.vala | 231 ++++++++++++++++++++++++++++++++++++++++
- 5 files changed, 316 insertions(+), 61 deletions(-)
- create mode 100644 ssh/test-key-parse.vala
-
-diff --git a/ssh/key-data.vala b/ssh/key-data.vala
-index 1fdb1e6a8..8843bff84 100644
---- a/ssh/key-data.vala
-+++ b/ssh/key-data.vala
-@@ -101,12 +101,12 @@ public class Seahorse.Ssh.KeyData : GLib.Object {
-         return result;
-     }
- 
--    internal static string parse_key_blob (uchar[] bytes) throws GLib.Error {
-+    internal static string parse_key_blob(uchar[] bytes) throws GLib.Error {
-         string digest = Checksum.compute_for_data(ChecksumType.MD5, bytes);
-         if (digest == null)
-             throw new Error.GENERAL("Can't calculate fingerprint from key.");
- 
--        StringBuilder fingerprint = new StringBuilder.sized((digest.length * 
3) / 2);
-+        var fingerprint = new StringBuilder.sized((digest.length * 3) / 2);
-         for (size_t i = 0; i < digest.length; i += 2) {
-             if (i > 0)
-                 fingerprint.append_c(':');
-@@ -147,7 +147,7 @@ public class Seahorse.Ssh.KeyData : GLib.Object {
-         string contents;
-         FileUtils.get_contents(filename, out contents);
- 
--        StringBuilder results = new StringBuilder();
-+        var results = new StringBuilder();
- 
-         // Load each line
-         bool first = true;
-@@ -204,54 +204,65 @@ public class Seahorse.Ssh.SecData : GLib.Object {
-      *
-      * @param data The data that contains a private key.
-      */
--    public static SecData parse_data(StringBuilder data) throws GLib.Error {
--        SecData secdata = new SecData();
-+    public static SecData parse_data(DataInputStream data, string 
initial_line) throws GLib.Error {
-+        var secdata = new SecData();
- 
-         // Get the comment
--        if (data.str.has_prefix(SSH_KEY_SECRET_SIG)) {
--            string comment = data.str.split("\n", 2)[0];
--            secdata.comment = 
comment.substring(SSH_KEY_SECRET_SIG.length).strip();
-+        if (initial_line.has_prefix(SSH_KEY_SECRET_SIG)) {
-+            secdata.comment = 
initial_line.substring(SSH_KEY_SECRET_SIG.length).strip();
-         }
- 
-         // First get our raw data (if there is none, don't bother)
--        string rawdata = parse_lines_block(data, SSH_PRIVATE_BEGIN, 
SSH_PRIVATE_END);
-+        string rawdata = parse_lines_block(data, initial_line, 
SSH_PRIVATE_BEGIN, SSH_PRIVATE_END);
-         if (rawdata == null || rawdata == "")
-             throw new Error.GENERAL("Private key contains no data.");
- 
-         secdata.rawdata = rawdata;
- 
--        // Guess at the algorithm type
--        secdata.algo = Algorithm.guess_from_string(rawdata);
-+        // Guess the algorithm type by searching the base64 decoded data. (we
-+        // should properly exclude the start/end line, but it shouldn't harm
-+        // too much though afaik). Note that it's definitely not ideal though;
-+        // but the openssh format isn't exactly obvious
-+        var decoded = Base64.decode(rawdata.offset(initial_line.length));
-+        for (uint i = 0; i < decoded.length - 3; i++) {
-+            unowned var str = ((string) decoded).offset(i);
-+            var algo = Algorithm.from_string(str);
-+            if (algo != Algorithm.UNKNOWN) {
-+                secdata.algo = algo;
-+                break;
-+            }
-+        }
- 
-         return secdata;
-     }
- 
--    /**
--     * Takes everything between the start and end pattern and returns it.
--     * NOTE: The string (if found will) be removed from the argument.
--     */
--    private static string parse_lines_block(StringBuilder data, string start, 
string end) {
--        StringBuilder result = new StringBuilder();
-+    /** Reads all lines from start until the end pattern and returns it */
-+    private static string parse_lines_block(DataInputStream data,
-+                                            string initial_line,
-+                                            string start, string end)
-+                                            throws GLib.Error {
-+        var result = new StringBuilder();
-+
-+        string? line = initial_line;
- 
-         bool start_found = false;
--        string[] lines = data.str.split("\n");
--        foreach (string line in lines) {
-+        do {
-             // Look for the beginning
-             if (!start_found) {
-                 if (start in line) {
--                    result.append_printf("%s\n", line);
--                    result.erase(0, line.length + 1);
-+                    result.append(line);
-+                    result.append_c('\n');
-                     start_found = true;
-                     continue;
-                 }
-             } else {
-                 // Look for the end
--                result.append_printf("%s\n", line);
--                result.erase(0, line.length + 1);
-+                result.append(line);
-+                result.append_c('\n');
-                 if (end in line)
-                     break;
-             }
--        }
-+        } while ((line = data.read_line_utf8()) != null);
- 
-         return result.str;
-     }
-diff --git a/ssh/key.vala b/ssh/key.vala
-index e2ebc30b3..453f8dd2c 100644
---- a/ssh/key.vala
-+++ b/ssh/key.vala
-@@ -223,24 +223,36 @@ public class Seahorse.Ssh.Key : Seahorse.Object, 
Seahorse.Exportable, Seahorse.D
-     }
- 
-     /**
--     * Parses a string into public/private keys.
-+     * Parses an input stream into public/private keys.
-      *
--     * @param data The string that needs to be parsed.
-+     * @param input The input stream that needs to be parsed.
-      * @param cancellable Can be used to cancel the parsing.
-      */
--    public static async KeyParseResult parse(string data,
--                                             Cancellable? cancellable = null) 
throws GLib.Error {
--        return_if_fail (data != null || data != "");
--
-+    public static async KeyParseResult parse(GLib.InputStream input,
-+                                             Cancellable? cancellable = null)
-+                                             throws GLib.Error {
-         var pubkeys = new GenericArray<KeyData>();
-         var seckeys = new GenericArray<SecData>();
- 
--        StringBuilder toParse = new StringBuilder(data.chug());
--        while (toParse.str.length > 0) {
-+        // Fetch the data into a string
-+        var data = new DataInputStream(input);
-+
-+        while (true) {
-+            // Read the next line, and remove leading whitespace
-+            var raw_line = yield data.read_line_utf8_async(Priority.DEFAULT, 
cancellable, null);
-+            if (raw_line == null)
-+                break;
-+
-+            string line = raw_line.chug();
-+
-+            // Ignore comments and empty lines (not a parse error, but no 
data)
-+            if (line == "" || line.has_prefix("#"))
-+                continue;
-+
-             // First of all, check for a private key, as it can span several 
lines
--            if (SecData.contains_private_key(toParse.str)) {
-+            if (SecData.contains_private_key(line)) {
-                 try {
--                    var secdata = SecData.parse_data(toParse);
-+                    var secdata = SecData.parse_data(data, line);
-                     seckeys.add(secdata);
-                     continue;
-                 } catch (GLib.Error e) {
-@@ -248,24 +260,9 @@ public class Seahorse.Ssh.Key : Seahorse.Object, 
Seahorse.Exportable, Seahorse.D
-                 }
-             }
- 
--            // We're sure we'll have at least 1 element
--            string[] lines = toParse.str.split("\n", 2);
--            string line = lines[0];
--            toParse.erase(0, line.length);
--            if (lines.length == 2) // There was a \n, so don't forget to 
erase it as well
--                toParse.erase(0, 1);
--
--            // Comments and empty lines, not a parse error, but no data
--            if (line.strip() == "" || line.has_prefix("#"))
--                continue;
--
-             // See if we have a public key
--            try {
--                KeyData keydata = KeyData.parse_line(line);
--                pubkeys.add(keydata);
--            } catch (GLib.Error e) {
--                warning(e.message);
--            }
-+            var keydata = KeyData.parse_line(line);
-+            pubkeys.add(keydata);
-         }
- 
-         var result = KeyParseResult();
-@@ -282,9 +279,8 @@ public class Seahorse.Ssh.Key : Seahorse.Object, 
Seahorse.Exportable, Seahorse.D
-      */
-     public static async KeyParseResult parse_file(string filename,
-                                                   Cancellable? cancellable = 
null) throws GLib.Error {
--        string contents;
--        FileUtils.get_contents(filename, out contents);
--
--        return yield parse(contents, cancellable);
-+        var file = GLib.File.new_for_path(filename);
-+        var file_stream = yield file.read_async();
-+        return yield parse(file_stream, cancellable);
-     }
- }
-diff --git a/ssh/meson.build b/ssh/meson.build
-index 15418772e..c2c81a6a9 100644
---- a/ssh/meson.build
-+++ b/ssh/meson.build
-@@ -58,3 +58,23 @@ ssh_askpass = executable('ssh-askpass',
-   install: true,
-   install_dir: libexecbindir,
- )
-+
-+# Tests
-+ssh_test_names = [
-+  'key-parse',
-+]
-+
-+foreach _test : ssh_test_names
-+  test_bin = executable(_test,
-+    files('test-@[email protected]'.format(_test)),
-+    dependencies: [
-+      ssh_dep,
-+      ssh_dependencies,
-+    ],
-+    include_directories: include_directories('..'),
-+  )
-+
-+  test(_test, test_bin,
-+    suite: 'ssh',
-+  )
-+endforeach
-diff --git a/ssh/source.vala b/ssh/source.vala
-index c4646c9fb..43b4a1ab0 100644
---- a/ssh/source.vala
-+++ b/ssh/source.vala
-@@ -333,15 +333,12 @@ public class Seahorse.Ssh.Source : GLib.Object, 
Gcr.Collection, Seahorse.Place {
-     /**
-      * Parse an inputstream into a list of keys and import those keys.
-      */
--    public async List<Key>? import_async(InputStream input, Gtk.Window 
transient_for,
-+    public async List<Key>? import_async(InputStream input,
-+                                         Gtk.Window? transient_for,
-                                          Cancellable? cancellable = null) 
throws GLib.Error {
--        uint8[] buffer = new uint8[4096];
--        size_t bytes_read;
--        input.read_all(buffer, out bytes_read, cancellable);
-+        var result = yield Key.parse(input, cancellable);
- 
-         string fullpath = other_keys_path();
--
--        var result = yield Key.parse((string) buffer, cancellable);
-         foreach (unowned var keydata in result.public_keys) {
-             yield import_public_async(keydata, fullpath, cancellable);
-         }
-diff --git a/ssh/test-key-parse.vala b/ssh/test-key-parse.vala
-new file mode 100644
-index 000000000..ef9404790
---- /dev/null
-+++ b/ssh/test-key-parse.vala
-@@ -0,0 +1,231 @@
-+/*
-+ * Seahorse
-+ *
-+ * Copyright (C) 2023 Niels De Graef
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2 of the License, or
-+ * (at your option) any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-+ * See the GNU General Public License for more details.
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, see
-+ * <http://www.gnu.org/licenses/>.
-+ */
-+
-+void main(string[] args) {
-+  Test.init(ref args);
-+
-+  Test.add_func("/ssh/key-parse/pubkey-simple", test_key_parse_pubkey_simple);
-+  Test.add_func("/ssh/key-parse/pubkey-bad-algo", 
test_key_parse_pubkey_bad_algo);
-+  Test.add_func("/ssh/key-parse/pubkey-multple", 
test_key_parse_pubkey_multiple);
-+
-+  Test.add_func("/ssh/key-parse/private-key-simple", 
test_key_parse_private_key_simple);
-+  Test.add_func("/ssh/key-parse/private-key-pw-protected", 
test_key_parse_private_key_pw_protected);
-+
-+  Test.run();
-+}
-+
-+const string PUBKEY_SIMPLE = """
-+ssh-rsa 
AAAAB3NzaC1yc2EAAAADAQABAAABgQCi9ZNp78OzcMpR9QeSKKCybNxTR+ailXs3cwizr1R9Dlx/EobQBXOwE2Ed5PqSU5HEgtYRoKqlTxMogMXMX508dedC0ADTzM09B3OBqpZ7YnMuyLbtk1MNP8xcvVmHwwfw3Y79xxZZeqjUTI7cSE6jcNyz/k/Dl+6RYI552ab80b1kgDDwOyUL75hFllEZ9vHCcAOtk7y5LyeUpnRu5WJq0YBPVQljeYs23ZiTSo5NkJd7pvV9hs68ZAYqm1POXwCcAKOj4HXW3AL83AD49g8MJOAelCMaJpUkOgn4n4QTtqLEC108sqZgwWiadbN/ZHt3Idbn3AIxMMhD/wdkSwkfm9tAohMrqYpSiG31xyifH61mcoBMSxRMQhUscCGV3kLo6P/dZtxRbu4r74r/Ae2Jg4pzYrVFVzfObXdlTjtxJmR8UvnZg60OE0RwYMs1LJTE6xakcAg22O9i3bau00MoIIYEPgiFFP5t0Tw3D06BcEzr/2wEzlvbxy0qzDTr40U=
 testsimple
-+""";
-+
-+private void test_key_parse_pubkey_simple() {
-+  var input = new MemoryInputStream.from_data(PUBKEY_SIMPLE.data);
-+
-+  var mainloop = new GLib.MainLoop();
-+  Seahorse.Ssh.Key.parse.begin(input, null, (obj, res) => {
-+      try {
-+          var parse_result = Seahorse.Ssh.Key.parse.end(res);
-+
-+          assert_true(parse_result.public_keys.length == 1);
-+          unowned var keydata = parse_result.public_keys[0];
-+          assert_true(keydata.comment == "testsimple");
-+          assert_true(keydata.algo == Seahorse.Ssh.Algorithm.RSA);
-+
-+          assert_true(parse_result.secret_keys.length == 0);
-+      } catch (Error err) {
-+          error("Couldn't parse public key: %s", err.message);
-+      } finally {
-+          mainloop.quit();
-+      }
-+  });
-+  mainloop.run();
-+}
-+
-+// Basically the same as PUBKEY_SIMPLE, but a bogus algorithm
-+const string PUBKEY_BAD_ALGO = """
-+ssh-blabla 
AAAAB3NzaC1yc2EAAAADAQABAAABgQCi9ZNp78OzcMpR9QeSKKCybNxTR+ailXs3cwizr1R9Dlx/EobQBXOwE2Ed5PqSU5HEgtYRoKqlTxMogMXMX508dedC0ADTzM09B3OBqpZ7YnMuyLbtk1MNP8xcvVmHwwfw3Y79xxZZeqjUTI7cSE6jcNyz/k/Dl+6RYI552ab80b1kgDDwOyUL75hFllEZ9vHCcAOtk7y5LyeUpnRu5WJq0YBPVQljeYs23ZiTSo5NkJd7pvV9hs68ZAYqm1POXwCcAKOj4HXW3AL83AD49g8MJOAelCMaJpUkOgn4n4QTtqLEC108sqZgwWiadbN/ZHt3Idbn3AIxMMhD/wdkSwkfm9tAohMrqYpSiG31xyifH61mcoBMSxRMQhUscCGV3kLo6P/dZtxRbu4r74r/Ae2Jg4pzYrVFVzfObXdlTjtxJmR8UvnZg60OE0RwYMs1LJTE6xakcAg22O9i3bau00MoIIYEPgiFFP5t0Tw3D06BcEzr/2wEzlvbxy0qzDTr40U=
 testbad
-+""";
-+
-+private void test_key_parse_pubkey_bad_algo() {
-+  var input = new MemoryInputStream.from_data(PUBKEY_BAD_ALGO.data);
-+
-+  var mainloop = new GLib.MainLoop();
-+  Seahorse.Ssh.Key.parse.begin(input, null, (obj, res) => {
-+      try {
-+          Seahorse.Ssh.Key.parse.end(res);
-+          assert_not_reached();
-+      } catch (Error err) {
-+          // Expected
-+      } finally {
-+          mainloop.quit();
-+      }
-+  });
-+  mainloop.run();
-+}
-+
-+const string PUBKEY_MULTIPLE = """
-+ssh-rsa 
AAAAB3NzaC1yc2EAAAADAQABAAABgQCi9ZNp78OzcMpR9QeSKKCybNxTR+ailXs3cwizr1R9Dlx/EobQBXOwE2Ed5PqSU5HEgtYRoKqlTxMogMXMX508dedC0ADTzM09B3OBqpZ7YnMuyLbtk1MNP8xcvVmHwwfw3Y79xxZZeqjUTI7cSE6jcNyz/k/Dl+6RYI552ab80b1kgDDwOyUL75hFllEZ9vHCcAOtk7y5LyeUpnRu5WJq0YBPVQljeYs23ZiTSo5NkJd7pvV9hs68ZAYqm1POXwCcAKOj4HXW3AL83AD49g8MJOAelCMaJpUkOgn4n4QTtqLEC108sqZgwWiadbN/ZHt3Idbn3AIxMMhD/wdkSwkfm9tAohMrqYpSiG31xyifH61mcoBMSxRMQhUscCGV3kLo6P/dZtxRbu4r74r/Ae2Jg4pzYrVFVzfObXdlTjtxJmR8UvnZg60OE0RwYMs1LJTE6xakcAg22O9i3bau00MoIIYEPgiFFP5t0Tw3D06BcEzr/2wEzlvbxy0qzDTr40U=
 test1
-+ssh-rsa 
AAAAB3NzaC1yc2EAAAADAQABAAABgQDADxtTchMRaGP2YCG5Iiu/sCkdKYkogkZ9NrawGutvwcoQL4D3oIC+r+ka3YzenICz0Rpu4ZIyGzn5s7VISzjcGK99a8/UoXsSyTUy37ihbpAbkYju+avtJZyCMOrRyrXp0W8gSKnUuxDJJNlG5+Jhjdh35rGo7ENSDIGRBXx0uLmKvxbPGSQoULbUzxJRVes6HW7cr44RXG4GL5uekS5hSHN/wJuc/OBqT2ETn+Ivn8cj2fooR6Y7Ei6uFNwbNebYgzDzNOTfaGssCXoEqWL9dJA8FAXA9u4BQskIaUm9SiQblzKGZSKtoPPFh7Sp7Ii1k2TAG0g9VW8gYqUZgLZY4OKjARR+SkdyzlnJKOD1QuSIrnyDNOgl7SBwtujT6gg+9bcQzSPVRWuPldYj2qYEZiR7LPood7AvzDL2tZwb8r60O5KDip+66inj5BxmPO6Vmeo84DLXdZNhEnoCfaL5J9qArhTvxYPjU8RiuBoy6nqN00IWeT2e3RZTPjpq1wc=
 test2
-+""";
-+
-+private void test_key_parse_pubkey_multiple() {
-+  var input = new MemoryInputStream.from_data(PUBKEY_MULTIPLE.data);
-+
-+  var mainloop = new GLib.MainLoop();
-+  Seahorse.Ssh.Key.parse.begin(input, null, (obj, res) => {
-+      try {
-+          var parse_result = Seahorse.Ssh.Key.parse.end(res);
-+          assert_true(parse_result.public_keys.length == 2);
-+          assert_true(parse_result.secret_keys.length == 0);
-+      } catch (Error err) {
-+          error("Couldn't parse public key: %s", err.message);
-+      } finally {
-+          mainloop.quit();
-+      }
-+  });
-+  mainloop.run();
-+}
-+
-+const string PRIVATE_KEY_SIMPLE = """
-+-----BEGIN OPENSSH PRIVATE KEY-----
-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
-+-----END OPENSSH PRIVATE KEY-----
-+""";
-+
-+private void test_key_parse_private_key_simple() {
-+  var input = new MemoryInputStream.from_data(PRIVATE_KEY_SIMPLE.data);
-+
-+  var mainloop = new GLib.MainLoop();
-+  Seahorse.Ssh.Key.parse.begin(input, null, (obj, res) => {
-+      try {
-+          var parse_result = Seahorse.Ssh.Key.parse.end(res);
-+          assert_true(parse_result.public_keys.length == 0);
-+
-+          assert_true(parse_result.secret_keys.length == 1);
-+          unowned var secdata = parse_result.secret_keys[0];
-+          assert_null(secdata.comment);
-+          assert_true(secdata.algo == Seahorse.Ssh.Algorithm.RSA);
-+      } catch (Error err) {
-+          error("Couldn't parse private key: %s", err.message);
-+      } finally {
-+          mainloop.quit();
-+      }
-+  });
-+  mainloop.run();
-+}
-+
-+// Key with "test" password
-+const string PRIVATE_KEY_PW_PROTECTED = """
-+-----BEGIN OPENSSH PRIVATE KEY-----
-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
-+Znmynq4dXIf58Nj4+TpgQkxQwxM=
-+-----END OPENSSH PRIVATE KEY-----
-+""";
-+
-+private void test_key_parse_private_key_pw_protected() {
-+  var input = new MemoryInputStream.from_data(PRIVATE_KEY_PW_PROTECTED.data);
-+
-+  var mainloop = new GLib.MainLoop();
-+  Seahorse.Ssh.Key.parse.begin(input, null, (obj, res) => {
-+      try {
-+          var parse_result = Seahorse.Ssh.Key.parse.end(res);
-+          assert_true(parse_result.public_keys.length == 0);
-+
-+          assert_true(parse_result.secret_keys.length == 1);
-+          unowned var secdata = parse_result.secret_keys[0];
-+          assert_null(secdata.comment);
-+          assert_true(secdata.algo == Seahorse.Ssh.Algorithm.RSA);
-+      } catch (Error err) {
-+          error("Couldn't parse private key: %s", err.message);
-+      } finally {
-+          mainloop.quit();
-+      }
-+  });
-+  mainloop.run();
-+}
--- 
-GitLab

diff --git a/app-crypt/seahorse/files/seahorse-43.0-c99.patch 
b/app-crypt/seahorse/files/seahorse-43.0-c99.patch
deleted file mode 100644
index 6fe5ff3cd800..000000000000
--- a/app-crypt/seahorse/files/seahorse-43.0-c99.patch
+++ /dev/null
@@ -1,21 +0,0 @@
-https://bugs.gentoo.org/882805
-https://gitlab.gnome.org/GNOME/seahorse/-/merge_requests/220
-
-From 4110a2389bf9728b8f0c9b216b0a5843de806e4a Mon Sep 17 00:00:00 2001
-From: ppw 0 <[email protected]>
-Date: Wed, 6 Dec 2023 12:16:45 +0000
-Subject: [PATCH] Update file operation.vala
-
---- a/ssh/operation.vala
-+++ b/ssh/operation.vala
-@@ -49,7 +49,7 @@ public abstract class Operation : GLib.Object {
-     protected async string? operation_async(string command,
-                                             string? input,
-                                             Cancellable? cancellable) throws 
GLib.Error {
--        return_val_if_fail (command != null && command != "", null);
-+        return_val_if_fail (command != null && command != "", false);
- 
-         // Strip the command name for logging purposes
-         string[] args;
--- 
-GitLab

diff --git a/app-crypt/seahorse/files/seahorse-43.0-clang16.patch 
b/app-crypt/seahorse/files/seahorse-43.0-clang16.patch
deleted file mode 100644
index c31fc42709e1..000000000000
--- a/app-crypt/seahorse/files/seahorse-43.0-clang16.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-https://gitlab.gnome.org/GNOME/seahorse/-/merge_requests/214
-
-From 3887ba07ccab4aa970c24a22a183b97e255e6ece Mon Sep 17 00:00:00 2001
-From: Florian Weimer <[email protected]>
-Date: Fri, 14 Apr 2023 14:37:23 +0200
-Subject: [PATCH] Avoid C99 incompatibility around
- seahorse_pkcs11_backend_initialize
-
-Move the prototype for seahorse_pkcs11_backend_initialize into the
-header file, so C code generated from Vala sources will use it.
-This avoids an implicit function declaration during the C-build
-of src/application.vala, and resulting build failures with future
-compilers.
---- a/pkcs11/seahorse-pkcs11-backend.c
-+++ b/pkcs11/seahorse-pkcs11-backend.c
-@@ -43,8 +43,6 @@ enum {
-       PROP_LOADED,
- };
- 
--void  seahorse_pkcs11_backend_initialize (void);
--
- static SeahorsePkcs11Backend *pkcs11_backend = NULL;
- 
- struct _SeahorsePkcs11Backend {
---- a/pkcs11/seahorse-pkcs11-backend.h
-+++ b/pkcs11/seahorse-pkcs11-backend.h
-@@ -43,4 +43,6 @@ SeahorsePkcs11Backend *  seahorse_pkcs11_backend_get         
  (void);
- GcrCollection *          seahorse_pkcs11_backend_get_writable_tokens 
(SeahorsePkcs11Backend *self,
-                                                                       gulong 
with_mechanism);
- 
-+void  seahorse_pkcs11_backend_initialize (void);
-+
- #endif /* SEAHORSE_PKCS11_BACKEND_H_ */
--- 
-GitLab

diff --git a/app-crypt/seahorse/files/seahorse-43.0-gnupg-2.4.patch 
b/app-crypt/seahorse/files/seahorse-43.0-gnupg-2.4.patch
deleted file mode 100644
index 034da78fb284..000000000000
--- a/app-crypt/seahorse/files/seahorse-43.0-gnupg-2.4.patch
+++ /dev/null
@@ -1,20 +0,0 @@
-https://bugs.gentoo.org/889362
-https://gitlab.gnome.org/GNOME/seahorse/-/commit/9260c74779be3d7a378db0671af862ffa3573d42
-
-From: Xi Ruoyao <[email protected]>
-Date: Wed, 21 Dec 2022 20:58:26 +0800
-Subject: [PATCH] Allow building with GnuPG-2.4.x
-
---- a/meson.build
-+++ b/meson.build
-@@ -26,7 +26,7 @@ endif
- # Dependencies
- min_glib_version = '2.66'
- min_gcr_version = '3.38'
--accepted_gpg_versions = [ '2.2.0', '2.3.0' ]
-+accepted_gpg_versions = [ '2.2.0', '2.3.0', '2.4.0' ]
- gpg_check_version = find_program('build-aux' / 'gpg_check_version.py')
- 
- glib_deps = [
--- 
-GitLab

diff --git a/app-crypt/seahorse/files/seahorse-43.0-musl-stdout.patch 
b/app-crypt/seahorse/files/seahorse-43.0-musl-stdout.patch
deleted file mode 100644
index 2a6873134e27..000000000000
--- a/app-crypt/seahorse/files/seahorse-43.0-musl-stdout.patch
+++ /dev/null
@@ -1,85 +0,0 @@
-https://gitlab.gnome.org/GNOME/seahorse/-/commit/6d673637d90066f4756568ce1b2f1f3c89a37c74
-
-From 6d673637d90066f4756568ce1b2f1f3c89a37c74 Mon Sep 17 00:00:00 2001
-From: =?UTF-8?q?Pablo=20Correa=20G=C3=B3mez?= <[email protected]>
-Date: Thu, 20 Oct 2022 18:35:33 +0200
-Subject: [PATCH] ssh: avoid stdout and stderr variable names
-
-In Alpine Linux, the compiler:
-
-C compiler for the host machine: gcc (gcc 12.2.1 "gcc (Alpine 
12.2.1_git20220924-r3) 12.2.1 20220924")
-C linker for the host machine: gcc ld.bfd 2.39
-Vala compiler for the host machine: valac (valac 0.56.3)
-
-ended up including stdio.h into the C code generated from Vala.
-This produced the following (and similar) errors due to
-stderr and stdout being #define in stdio.h:
-
-ninja: job failed: gcc -Issh/libseahorse-ssh.a.p -Issh -I../ssh -Icommon 
-I../common -I. -I.. -I/usr/include/glib-2.0 -I/usr/lib/glib-2.0/include 
-I/usr/include/libmount -I/usr/include/blkid -I/usr/include/gio-unix-2.0 
-I/usr/include/gcr-3 -I/usr/include/gck-1 -I/usr/include/p11-kit-1 
-I/usr/include/gtk-3.0 -I/usr/include/pango-1.0 -I/usr/include/harfbuzz 
-I/usr/include/freetype2 -I/usr/include/libpng16 -I/usr/include/fribidi 
-I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/gdk-pixbuf-2.0 
-I/usr/include/libdrm -I/usr/include/atk-1.0 -I/usr/include/at-spi2-atk/2.0 
-I/usr/include/at-spi-2.0 -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include 
-I/usr/include/libhandy-1 -flto=auto -fdiagnostics-color=always 
-D_FILE_OFFSET_BITS=64 -w -O0 -DGCR_API_SUBJECT_TO_CHANGE 
-DGCK_API_SUBJECT_TO_CHANGE -DSECRET_WITH_UNSTABLE -include config.h 
-Wno-unused-parameter -Wno-missing-field-initializers -Os -fomit-frame-pointer 
-Os -fomit-frame-pointer -fPIC -pthread -MD -MQ ssh/libseahorse-ssh.
 a.p/meson-generated_operation.c.o -MF 
ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o.d -o 
ssh/libseahorse-ssh.a.p/meson-generated_operation.c.o -c 
ssh/libseahorse-ssh.a.p/operation.c
-In file included from /usr/include/fortify/stdio.h:22,
-                 from /usr/include/pango-1.0/pango/pango-utils.h:25,
-                 from /usr/include/pango-1.0/pango/pango.h:51,
-                 from /usr/include/gtk-3.0/gdk/gdktypes.h:35,
-                 from /usr/include/gtk-3.0/gdk/gdkapplaunchcontext.h:30,
-                 from /usr/include/gtk-3.0/gdk/gdk.h:32,
-                 from /usr/include/gtk-3.0/gtk/gtk.h:30,
-                 from common/seahorse-common.h:11,
-                 from ssh/seahorse-ssh.h:6,
-                 from ssh/libseahorse-ssh.a.p/operation.c:25:
-ssh/libseahorse-ssh.a.p/operation.c: In function 
'seahorse_ssh_operation_operation_async_co':
-ssh/libseahorse-ssh.a.p/operation.c:621:17: error: expected identifier before 
'(' token
-  621 |         _data_->stdout = NULL;
-      |                 ^~~~~~
-ssh/libseahorse-ssh.a.p/operation.c:622:17: error: expected identifier before 
'(' token
-  622 |         _data_->stderr = NULL;
-      |                 ^~~~~~
-
-Fix the problem by naming the variables std_out and std_err, as it
-was before commit e60e5fd4b1545053e99758b894e8ef981de08c3e
-
-Fixes e60e5fd4b1545053e99758b894e8ef981de08c3e
-
-Coauthored-by: psykose <[email protected]>
---- a/ssh/operation.vala
-+++ b/ssh/operation.vala
-@@ -84,12 +84,12 @@ public abstract class Operation : GLib.Object {
- 
-         // And off we go to run the program
-         var subprocess = launcher.spawnv(args);
--        string? stdout = null, stderr = null;
-+        string? std_out = null, std_err = null;
-         try {
--            yield subprocess.communicate_utf8_async(input, cancellable, out 
stdout, out stderr);
--            return stdout;
-+            yield subprocess.communicate_utf8_async(input, cancellable, out 
std_out, out std_err);
-+            return std_out;
-         } catch (GLib.Error e) {
--            Seahorse.Util.show_error(null, this.prompt_title, stderr);
-+            Seahorse.Util.show_error(null, this.prompt_title, std_err);
-             throw e;
-         }
-     }
-@@ -221,10 +221,10 @@ public class PrivateImportOperation : Operation {
- 
-         // Start command to generate public key
-         string cmd = "%s -y -f '%s'".printf(Config.SSH_KEYGEN_PATH, file);
--        string stdout = yield operation_async(cmd, null, cancellable);
-+        string std_out = yield operation_async(cmd, null, cancellable);
- 
-         // We'll build the key string from the output
--        var key_str = new StringBuilder(stdout);
-+        var key_str = new StringBuilder(std_out);
- 
-         // Only use the first line of the output
-         int pos = int.max(key_str.str.index_of_char('\n'), 
key_str.str.index_of_char('\r'));
-@@ -232,7 +232,7 @@ public class PrivateImportOperation : Operation {
-             key_str.erase(pos);
- 
-         // Parse the data so we can get the fingerprint
--        KeyData? keydata = KeyData.parse_line(stdout);
-+        KeyData? keydata = KeyData.parse_line(std_out);
- 
-         // Add the comment to the output
-         if (data.comment != null) {
--- 
-GitLab

diff --git a/app-crypt/seahorse/seahorse-43.0-r5.ebuild 
b/app-crypt/seahorse/seahorse-43.0-r5.ebuild
deleted file mode 100644
index 5bbc2e559822..000000000000
--- a/app-crypt/seahorse/seahorse-43.0-r5.ebuild
+++ /dev/null
@@ -1,87 +0,0 @@
-# Copyright 1999-2025 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=8
-inherit flag-o-matic gnome.org gnome2-utils meson vala xdg
-
-DESCRIPTION="Manage your passwords and encryption keys"
-HOMEPAGE="https://wiki.gnome.org/Apps/Seahorse";
-
-LICENSE="GPL-2+ FDL-1.1+"
-SLOT="0"
-IUSE="X ldap zeroconf"
-KEYWORDS="~alpha amd64 ~arm arm64 ~loong ~ppc ~ppc64 ~riscv ~sparc x86"
-
-RDEPEND="
-       >=dev-libs/glib-2.66:2
-       >=app-crypt/gcr-3.38:0=
-       >=app-crypt/gpgme-1.14.0:=
-       >=x11-libs/gtk+-3.24.0:3[X?]
-       >=app-crypt/gnupg-2.2
-       >=gui-libs/libhandy-1.6.0:1
-       >=app-crypt/libsecret-0.16
-       dev-libs/libpwquality
-       virtual/openssh
-       ldap? ( net-nds/openldap:= )
-       net-libs/libsoup:3.0
-       zeroconf? ( >=net-dns/avahi-0.6[dbus] )
-"
-DEPEND="${RDEPEND}
-       $(vala_depend)
-       dev-libs/libxml2:2
-       app-crypt/gcr:0[vala]
-       app-crypt/libsecret[vala]
-       gui-libs/libhandy:1[vala]
-"
-BDEPEND="
-       app-text/docbook-xml-dtd:4.2
-       app-text/docbook-xsl-stylesheets
-       dev-libs/appstream-glib
-       dev-libs/libxslt
-       dev-util/gdbus-codegen
-       dev-util/glib-utils
-       dev-util/itstool
-       >=sys-devel/gettext-0.19.8
-       virtual/pkgconfig
-"
-
-PATCHES=(
-       "${FILESDIR}"/${P}-gnupg-2.4.patch
-       "${FILESDIR}"/${P}-musl-stdout.patch
-       "${FILESDIR}"/${P}-clang16.patch
-       "${FILESDIR}"/${P}-c99.patch
-       "${FILESDIR}"/${P}-c99-2.patch
-)
-
-src_prepare() {
-       default
-       vala_setup
-       gnome2_environment_reset
-}
-
-src_configure() {
-       use X || append-cppflags -DGENTOO_GTK_HIDE_X11
-
-       local emesonargs=(
-               -Dhelp=true
-               -Dpgp-support=true
-               -Dcheck-compatible-gpg=false # keep lowest version listed as 
compatible as min dep for gnupg RDEPEND
-               -Dpkcs11-support=true
-               -Dkeyservers-support=true
-               -Dhkp-support=true
-               $(meson_use ldap ldap-support)
-               $(meson_use zeroconf key-sharing)
-               -Dmanpage=true
-       )
-       meson_src_configure
-}
-
-pkg_postinst() {
-       xdg_pkg_postinst
-       gnome2_schemas_update
-}
-
-pkg_postrm() {
-       xdg_pkg_postrm
-       gnome2_schemas_update
-}


Reply via email to