xi-keyring

simple and extensible alternative for gnome-keyring
git clone https://git.ce9e.org/xi-keyring.git

commit
d4e9faf2216bd5dd8130a7a4ef7d889d106f449d
parent
f8413417615911266cbb6b425e039a568eaad567
Author
Tobias Bengfort <tobias.bengfort@posteo.de>
Date
2024-04-05 07:00
add argparse

Diffstat

M xikeyring/__main__.py 33 ++++++++++++++++++++++++++++++---

1 files changed, 30 insertions, 3 deletions


diff --git a/xikeyring/__main__.py b/xikeyring/__main__.py

@@ -1,10 +1,37 @@
   -1     1 import argparse
   -1     2 import os
   -1     3 from pathlib import Path
   -1     4 
    1     5 from .dbus import DBusService
    2     6 from .dumpable import pr_set
    3     7 from .keyring import Keyring
    4     8 
   -1     9 
   -1    10 def get_data_home():
   -1    11     path = os.getenv('XDG_DATA_HOME')
   -1    12     if path:
   -1    13         return Path(path)
   -1    14     else:
   -1    15         return Path.home() / '.local' / 'share'
   -1    16 
   -1    17 
   -1    18 def parse_args():
   -1    19     parser = argparse.ArgumentParser('xikeyring')
   -1    20     parser.add_argument(
   -1    21         '--store',
   -1    22         '-s',
   -1    23         help='path to the store file',
   -1    24         default=get_data_home() / 'xikeyring.db',
   -1    25     )
   -1    26     parser.add_argument(
   -1    27         '--bus', '-b', help='bus name', default='org.freedesktop.secrets'
   -1    28     )
   -1    29     return parser.parse_args()
   -1    30 
   -1    31 
    5    32 pr_set(dumpable=False)
    6    33 
    7    -1 with Keyring('keyring.db') as keyring:
   -1    34 args = parse_args()
   -1    35 with Keyring(args.store) as keyring:
    8    36     service = DBusService(keyring)
    9    -1     # service.run('org.freedesktop.secrets')
   10    -1     service.run('org.ce9e.keyring')
   -1    37     service.run(args.bus)