File: monkeyscan

package info (click to toggle)
monkeysign 2.2.4
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 2,400 kB
  • sloc: python: 3,219; makefile: 147; sh: 12
file content (52 lines) | stat: -rwxr-xr-x 1,680 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
#    Copyright (C) 2012-2013 Antoine Beaupré <anarcat@orangeseeds.org>
#
#    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 3 of the License, or
#    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/>.

import sys
import os

directory, basename = os.path.split(sys.argv[0])

path, directory = os.path.split(os.path.realpath(directory))
if directory == 'scripts':
    sys.path.insert(0, os.path.dirname(__file__) + '/..')

if basename == 'monkeysign':
    from monkeysign.cli import MonkeysignCli as ui
else:
    try:
        from monkeysign.gtkui import MonkeysignScanUi as ui
    except ImportError as e:
        print "some modules missing for scanning functionality: %s" % e
        sys.exit(1)

from monkeysign.gpg import GpgRuntimeError

with ui() as u:
    try:
        u.main()
    except GpgRuntimeError as e:
        if u.options.debug:
            print("\n".join(u.sysinfo()))
            raise # throw full backtrace
        else:
            sys.exit(e) # only show error
    except KeyboardInterrupt:
        sys.exit()
    except Exception as e:
        print("\n".join(u.sysinfo()))
        raise