diff options
author | kali <kali@leap.se> | 2013-02-13 01:32:35 +0900 |
---|---|---|
committer | kali <kali@leap.se> | 2013-02-13 01:33:27 +0900 |
commit | 1032e07a50c8bb265ff9bd31b3bb00e83ddb451e (patch) | |
tree | 9f512367b1d47ced5614702a00f3ff0a8fe746d7 /src/leap/util | |
parent | b1f4715334a1b6559ce35dbfe40cd1e1ad91cf7f (diff) |
launch policykit agent if not running
Diffstat (limited to 'src/leap/util')
-rw-r--r-- | src/leap/util/polkit.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/src/leap/util/polkit.py b/src/leap/util/polkit.py new file mode 100644 index 00000000..70671124 --- /dev/null +++ b/src/leap/util/polkit.py @@ -0,0 +1,26 @@ +import logging + +import sh +from sh import grep +from sh import ps + +logger = logging.getLogger(__name__) + + +def run_polkit_auth_agent(): + logger.debug('launching policykit authentication agent in background...') + polkit = sh.Command('/usr/lib/policykit-1-gnome/' + 'polkit-gnome-authentication-agent-1') + polkit(_bg=True) + + +def check_if_running_polkit_auth(): + """ + check if polkit authentication agent is running + and launch it if it is not + """ + try: + grep(ps('aux'), '[p]olkit-gnome-authentication-agent-1') + except sh.ErrorReturnCode_1: + logger.debug('polkit auth agent not found, trying to launch it...') + run_polkit_auth_agent() |