]> git.lizzy.rs Git - torbrowser-launcher.git/blob - torbrowser-launcher
detected language and architecture
[torbrowser-launcher.git] / torbrowser-launcher
1 #!/usr/bin/env python
2
3 import os
4 import locale
5 import subprocess
6
7 import pygtk
8 pygtk.require('2.0')
9 import gtk
10
11 class Base:
12   def delete_event(self, widget, event, data=None):
13     return False
14   
15   def destroy(self, widget, data=None):
16     gtk.main_quit()
17
18   def __init__(self):
19     self.window = gtk.Window(gtk.WINDOW_TOPLEVEL)
20     self.window.set_title("Tor Browser Launcher - First Run")
21     self.window.set_border_width(10)
22     
23     self.window.connect("delete_event", self.delete_event)
24     self.window.connect("destroy", self.destroy)
25
26     self.box = gtk.VBox(False, 20)
27     self.window.add(self.box)
28
29     self.label = gtk.Label("The first time you run the Tor Browser Launcher you need to download the Tor Browser Bundle from https://www.torproject.org/. Would you like to do that now?")
30     self.label.set_line_wrap(True)
31     self.box.pack_start(self.label, True, True, 0)
32     self.label.show()
33
34     self.button_box = gtk.HButtonBox()
35     self.button_box.set_layout(gtk.BUTTONBOX_SPREAD)
36     self.box.pack_start(self.button_box, True, True, 0)
37     self.button_box.show()
38
39     self.download = gtk.Button("Download")
40     self.button_box.add(self.download)
41     self.download.show()
42
43     self.exit = gtk.Button("Exit")
44     self.exit.connect("clicked", self.destroy, None)
45     self.button_box.add(self.exit)
46     self.exit.show()
47
48     self.box.show()
49     self.window.show();
50   
51   def main(self):
52     gtk.main()
53
54 if __name__ == "__main__":
55   # figure out the language and architecture
56   language = locale.getdefaultlocale()[0].split('_')[0]
57   architecture = subprocess.check_output(['arch']).strip('\n')
58
59   # todo: is TBB already installed?
60   # if yes, launch it
61   # if no, show first run dialog
62
63   # first run dialog
64   base = Base()
65   base.main()