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
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
|
#!/usr/bin/env python
# check.py -- check for system requirements
# public domain
NAME = "Listen"
import sys
if __name__ == "__main__":
print "Checking Python version:",
print ".".join(map(str, sys.version_info[:2]))
if sys.version_info <= (2, 4):
raise SystemExit("%s requires at least Python 2.4."
"(http://www.python.org)" % NAME)
print "Checking for PyGTK >= 2.6:",
try:
import pygtk
pygtk.require('2.0')
import gtk
if gtk.pygtk_version < (2, 6) or gtk.gtk_version < (2, 6):
raise ImportError
except ImportError:
raise SystemExit("not found\n%s requires PyGTK 2.6. "
"(http://www.pygtk.org)" % NAME)
else: print "found"
print "Checking for pyGTK-devel >= 2.6:",
try:
import os
s = "pygtk-codegen-2.0"
for p in os.environ["PATH"].split(os.path.pathsep):
p2 = os.path.join(p, s)
if os.path.exists(p2):
break
else: raise ImportError
except ImportError: raise SystemExit("not found\n%s requires pyGTK-devel" % NAME)
else: print "found"
print "Checking for gnome.ui:",
try: import gnome,gnome.ui
except ImportError: raise SystemExit("not found\n%s require python-gnome (http://www.gnome.org)" % NAME)
else: print "found"
print "Checking for egg.trayicon:",
try: import egg.trayicon
except ImportError: raise SystemExit("not found\n%s require gnome-python-extras.\n\t(http://ftp.gnome.org/pub/GNOME/sources/gnome-python-extras)" % NAME)
else: print "found"
print "Checking for pygtkmozembed:",
try: import gtkmozembed
except ImportError:raise SystemExit("not found\n%s require gnome-python-extras.\n\t(http://ftp.gnome.org/pub/GNOME/sources/gnome-python-extras)" % NAME)
else: print "found"
print "Checking for mutagen:",
try:
import mutagen
if mutagen.version < (1,8): raise ImportError
except : raise SystemExit("not found\n%s require mutagen >= 1.8.\n\t(http://www.sacredchao.net/quodlibet/wiki/Development/Mutagen)" % NAME)
else: print "found"
print "Checking for PyGSt >= 0.10:",
try:
import pygst
pygst.require("0.10")
import gst
if gst.pygst_version < (0, 10, 1):
raise ImportError
except ImportError: raise SystemExit("not found\n%s requires PyGst 0.10 (http://gstreamer.freedesktop.org)" % NAME)
else: print "found"
print "Checking for python-elementtree",
try: from elementtree.ElementTree import fromstring
except ImportError:
# Python 2.5 rename
try:
from xml.etree.ElementTree import fromstring
except ImportError: raise SystemExit("not found\n%s requires python-elementtree" % NAME)
else: print "found"
else: print "found"
# Optional
print "Checking for DBUS:",
try: import dbus
except ImportError: print ("not found\n%s dbus recommanded. " % NAME)
else: print "found"
print "Checking for python-daap:",
try:
import daap
except ImportError: print ("not found\n%s recommends python-daap (http://jerakeen.org/code/PythonDaap/)" %NAME)
else: print "found"
print "Checking for python-libgpod:",
try:
import gpod
except ImportError: print ("not found\n%s recommends python-gpod (http://www.gtkpod.org)" % NAME)
else: print "found"
print "Checking for python-musicbrainz2:",
try:
import musicbrainz2
except ImportError: print "not found\n, but recommanded"
else: print "found"
print "Checking for python-tunepimp > 0.5:",
try:
from tunepimp import tunepimp
dir(tunepimp.tunepimp).index("setMusicDNSClientId")
except: print "not found\n, but recommanded"
else: print "found"
print "Checking for libsexy:",
try: import sexy
except ImportError: print ("not found\n%s recommends python sexy for sexy widget. " % NAME)
else: print "found"
|