11 __appname__ = constants.__app_name__
12 __description__ = """Unit Conversions
13 A conversion utility that allows conversion between many units like CGS, Ancient, Imperial with many categories like length, mass, numbers, etc. All units converted values shown at once as you type
15 Homepage: http://gonvert.garage.maemo.org
17 __author__ = "Ed Page"
18 __email__ = "eopage@byu.net"
19 __version__ = constants.__version__
20 __build__ = constants.__build__
22 * Adding back in scrolling when using arrow keys in Units Window
23 * Fixing Units Window arrow keys when only showing favorites
25 * Improved startup time
26 * Changed the default to condensed mode for better startup time and since people probably will prefer it
27 * Saved some wasted horizontal space
31 __postinstall__ = """#!/bin/sh -e
33 gtk-update-icon-cache -f /usr/share/icons/hicolor
34 rm -f ~/.gonvert/gonvert.log ~/.gonvert/selections.dat ~/.gonvert/window.dat
37 __preremove__ = """#!/bin/sh -e
41 def find_files(prefix, path):
42 for root, dirs, files in os.walk(path):
44 if file.startswith(prefix+"-"):
45 fileParts = file.split("-")
46 unused, relPathParts, newName = fileParts[0], fileParts[1:-1], fileParts[-1]
47 assert unused == prefix
48 relPath = os.sep.join(relPathParts)
49 yield relPath, file, newName
52 def unflatten_files(files):
54 for relPath, oldName, newName in files:
57 d[relPath].append((oldName, newName))
61 def build_package(distribution):
63 os.chdir(os.path.dirname(sys.argv[0]))
67 py2deb.Py2deb.SECTIONS = py2deb.SECTIONS_BY_POLICY[distribution]
68 p = py2deb.Py2deb(__appname__)
69 p.prettyName = constants.__pretty_app_name__
70 p.description = __description__
71 p.bugTracker = "https://bugs.maemo.org/enter_bug.cgi?product=Gonvert"
75 p.depends = ", ".join([
76 "python2.6 | python2.5",
80 "debian": ", python-qt4",
81 "diablo": ", python2.5-qt4-core, python2.5-qt4-gui",
82 "fremantle": ", python2.5-qt4-core, python2.5-qt4-gui, python2.5-qt4-maemo5",
84 p.recommends = ", ".join([
88 "diablo": "user/science",
89 "fremantle": "user/science",
93 p.distribution = "diablo fremantle debian"
94 p.repository = "extras"
95 p.changelog = __changelog__
96 p.postinstall = __postinstall__
97 p.preremove = __preremove__
99 "debian": "data-pixmaps-gonvert.png",
100 "diablo": "data-pixmaps-gonvert.png",
101 "fremantle": "data-pixmaps-gonvert.png", # Fremantle natively uses 48x48
103 p["/opt/gonvert/bin"] = [ "gonvert.py" ]
104 for relPath, files in unflatten_files(find_files("src", ".")).iteritems():
105 fullPath = "/opt/gonvert/lib"
107 fullPath += os.sep+relPath
109 "|".join((oldName, newName))
110 for (oldName, newName) in files
112 for relPath, files in unflatten_files(find_files("data", ".")).iteritems():
113 fullPath = "/opt/gonvert/share"
115 fullPath += os.sep+relPath
117 "|".join((oldName, newName))
118 for (oldName, newName) in files
120 p["/usr/share/applications/hildon"] = ["gonvert.desktop"]
121 p["/usr/share/icons/hicolor/26x26/hildon"] = ["data-pixmaps-gonvert.png|gonvert.png"]
122 p["/usr/share/icons/hicolor/64x64/hildon"] = ["data-pixmaps-gonvert.png|gonvert.png"]
123 p["/usr/share/icons/hicolor/scalable/hildon"] = ["data-pixmaps-gonvert.png|gonvert.png"]
125 if distribution == "debian":
128 version="%s-%s" % (__version__, __build__),
129 changelog=__changelog__,
135 print "Building for %s finished" % distribution
139 version="%s-%s" % (__version__, __build__),
140 changelog=__changelog__,
146 print "Building for %s finished" % distribution
149 if __name__ == "__main__":
150 if len(sys.argv) > 1:
156 if optparse is not None:
157 parser = optparse.OptionParser()
158 (commandOptions, commandArgs) = parser.parse_args()
161 commandArgs = ["diablo"]
162 build_package(commandArgs[0])