{"id":6809,"date":"2025-07-09T15:22:49","date_gmt":"2025-07-09T15:22:49","guid":{"rendered":"https:\/\/notmart.org\/blog\/?p=6809"},"modified":"2025-07-09T15:22:50","modified_gmt":"2025-07-09T15:22:50","slug":"kwallet-to-secretservice-a-client-application-name-wanted","status":"publish","type":"post","link":"https:\/\/notmart.org\/blog\/2025\/07\/kwallet-to-secretservice-a-client-application-name-wanted\/","title":{"rendered":"KWallet to SecretService, a client application: name wanted"},"content":{"rendered":"\n<p>As i wrote in the <a href=\"\/blog\/2025\/04\/towards-a-transition-from-kwallet-to-secret-service\/\">previous post<\/a>, now the KWallet service has been splitted in a compatibility layer that exposes the old KWallet api, but actually consumes the Secret Service API, provided by default by the old KWallet daemon converted in a secretservice-only provider.<\/p>\n\n\n\n<p>Another pain point is the application used to look inside  the wallets, KWalletmanager, which only speaks the KWallet api and looks a bit dated nowdays:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-1.png\"><img loading=\"lazy\" decoding=\"async\" width=\"958\" height=\"608\" src=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-1.png\" alt=\"\" class=\"wp-image-6811\" srcset=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-1.png 958w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-1-300x190.png 300w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-1-768x487.png 768w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-1-624x396.png 624w\" sizes=\"auto, (max-width: 958px) 100vw, 958px\" \/><\/a><\/figure>\n\n\n\n<p>I am working on a new application which goal is strictly to be a client for Secret Service. It can access passwords of any Secret Service provider (being KWallet, Gnome-keyring, KeepassXC, oo7 or whatever else) and should hopefully look a bit more modern and simple, while still being powerful:<\/p>\n\n\n\n<figure class=\"wp-block-video\"><video height=\"964\" style=\"aspect-ratio: 1456 \/ 964;\" width=\"1456\" controls src=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/kwallets.webm\"><\/video><\/figure>\n\n\n\n<p>Both as a desktop application or a mobile one:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><a href=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-2.png\"><img loading=\"lazy\" decoding=\"async\" width=\"524\" height=\"763\" src=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-2.png\" alt=\"\" class=\"wp-image-6813\" srcset=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-2.png 524w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-2-206x300.png 206w\" sizes=\"auto, (max-width: 524px) 100vw, 524px\" \/><\/a><\/figure>\n\n\n\n<p>For items imported from KWallet supports editing the values of type &#8220;Map&#8221; as well:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-3.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"737\" src=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-3-1024x737.png\" alt=\"\" class=\"wp-image-6814\" srcset=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-3-1024x737.png 1024w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-3-300x216.png 300w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-3-768x552.png 768w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-3-624x449.png 624w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-3.png 1254w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>As well as visualizing &#8220;binary&#8221; entries (here super censored for obvious reasons \ud83d\ude09<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><a href=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-5.png\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"737\" src=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-5-1024x737.png\" alt=\"\" class=\"wp-image-6816\" srcset=\"https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-5-1024x737.png 1024w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-5-300x216.png 300w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-5-768x552.png 768w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-5-624x449.png 624w, https:\/\/notmart.org\/blog\/wp-content\/uploads\/2025\/07\/image-5.png 1254w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/a><\/figure>\n\n\n\n<p>The application can be tested at <a href=\"https:\/\/invent.kde.org\/mart\/kwallets\">https:\/\/invent.kde.org\/mart\/kwallets<\/a><\/p>\n\n\n\n<p>But has a fundamental problem, for which i need help&#8230; Right now is just called &#8220;KWallets&#8221; which can be kinda confusing with old KWallet and KWalletManager, so it probably needs a new name, any opinion is welcome \ud83d\ude04. <\/p>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>As i wrote in the previous post, now the KWallet service has been splitted in a compatibility layer that exposes the old KWallet api, but actually consumes the Secret Service API, provided by default by the old KWallet daemon converted in a secretservice-only provider. Another pain point is the application used to look inside the [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16],"tags":[2,191,194,193,192],"class_list":["post-6809","post","type-post","status-publish","format-standard","hentry","category-software","tag-kde","tag-kwallet","tag-password","tag-secretservice","tag-security"],"_links":{"self":[{"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/posts\/6809","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/comments?post=6809"}],"version-history":[{"count":2,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/posts\/6809\/revisions"}],"predecessor-version":[{"id":6818,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/posts\/6809\/revisions\/6818"}],"wp:attachment":[{"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/media?parent=6809"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/categories?post=6809"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/notmart.org\/blog\/wp-json\/wp\/v2\/tags?post=6809"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}