~leo.robol/lum/trunk

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
53
54
55
56
#!/usr/bin/env python
# -*- coding: utf-8 -*-
#
# This file is part of lum, the LDAP User Manager
# 
# Author: Leonardo Robol <robol@poisson.phc.unipi.it>
# Date: 5 Sep 2010
#
#


# Try to find modules
import sys, os, gtk, gobject

gobject.threads_init()
gtk.gdk.threads_init()

# This is valid if we are in the local directory, so 
# if a module can be found there, that should be used
sys.path.insert(0, os.path.join(sys.argv[0][:-3], "src"))

# We should try to append site-packages for Ubuntu users
# that installed via setup.py install
additional_paths = []
for p in sys.path:
    if "dist-packages" in p:
        additional_paths.append(p.replace("dist-packages", "site-packages"))
sys.path.extend(additional_paths)

from lum.interface.app import lumApp
import signal
import lum.interface.utilities

if __name__ == "__main__":

    gtk.gdk.threads_init()

    # Init translation support
    lum.interface.utilities.gettext_init()

    # Create main application
    app = lumApp()
    
    # and start it
    app.start ()

    # Connect signals
    signal.signal(signal.SIGINT,  lambda x,y : gtk.main_quit())
    signal.signal(signal.SIGTERM, lambda x,y : gtk.main_quit())
    
    # Start the gtk main loop
    # gtk.gdk.threads_enter()
    gtk.main()
    # gtk.gdk.threads_leave()