aboutsummaryrefslogtreecommitdiffstats
path: root/mbsync/usr/bin
diff options
context:
space:
mode:
Diffstat (limited to 'mbsync/usr/bin')
-rwxr-xr-xmbsync/usr/bin/get-mail-password19
-rwxr-xr-xmbsync/usr/bin/set-mail-password25
2 files changed, 21 insertions, 23 deletions
diff --git a/mbsync/usr/bin/get-mail-password b/mbsync/usr/bin/get-mail-password
index 02f4033..ecfbb09 100755
--- a/mbsync/usr/bin/get-mail-password
+++ b/mbsync/usr/bin/get-mail-password
@@ -1,15 +1,12 @@
#!/usr/bin/python3
-import gi
-
-gi.require_version('GnomeKeyring', '1.0')
-
-import logging
-
-logger = logging.getLogger('keyring')
-logger.addHandler(logging.StreamHandler())
-
-import keyring
import sys
+import secretstorage
+
+connection = secretstorage.dbus_init()
+collection = secretstorage.get_collection_by_alias(connection, "login")
-print(keyring.get_password('offlineimap', sys.argv[1]))
+for foo in collection.search_items(
+ {"application": "mbsync", "account": sys.argv[1]}
+):
+ print(foo.get_secret().decode())
diff --git a/mbsync/usr/bin/set-mail-password b/mbsync/usr/bin/set-mail-password
index 022b5f7..c36e39b 100755
--- a/mbsync/usr/bin/set-mail-password
+++ b/mbsync/usr/bin/set-mail-password
@@ -1,16 +1,17 @@
#!/usr/bin/python3
-import gi
-
-gi.require_version('GnomeKeyring', '1.0')
-
-import logging
-
-logger = logging.getLogger('keyring')
-logger.addHandler(logging.StreamHandler())
-
-import keyring
import sys
-import getpass
+from getpass import getpass
+import secretstorage
+
+connection = secretstorage.dbus_init()
+collection = secretstorage.get_collection_by_alias(connection, "login")
+attributes = {"application": "mbsync", "account": sys.argv[1]}
-keyring.set_password('offlineimap', sys.argv[1], getpass.getpass())
+collection.create_item(
+ "Password for '{}' on '{}'".format(
+ attributes["account"], attributes["application"]
+ ),
+ attributes,
+ getpass().encode(),
+)