X-Git-Url: http://git.maemo.org/git/?a=blobdiff_plain;f=support%2Fbuilddeb.py;h=3228eb30e8cf7eb2c23e2de235922f370fe6ca21;hb=a88a8121700c26b3317ce795eb115e2b31935edb;hp=fbb13e11187d952d8dff6a47d1680f509ff770c0;hpb=07a86815a501921bab5adbfca7a4402bb0fe25be;p=gc-dialer diff --git a/support/builddeb.py b/support/builddeb.py index fbb13e1..3228eb3 100755 --- a/support/builddeb.py +++ b/support/builddeb.py @@ -12,126 +12,53 @@ import constants __appname__ = constants.__app_name__ -__description__ = "Touch screen enhanced interface to the GoogleVoice/GrandCentral phone service" +__description__ = """Touch screen enhanced interface to the GoogleVoice phone service" +Features: +. +* Dialpad for quick call +. +* Checking voicemails, texts, call history +. +* Sending texts +. +* Notification support for texts, voicemail, and/or missed calls +. +Homepage: http://gc-dialer.garage.maemo.org/ +""" __author__ = "Ed Page" __email__ = "eopage@byu.net" __version__ = constants.__version__ -__build__ = 0 -__changelog__ = ''' -1.0.5 - -1.0.4 -* "Back" button and tabs now visually indicate when they've entered a "hold" state -* Fixed the duplicate title on Maemo -* Removing some device connection observer code due to high bug to low benefit ratio -* Notification support -* Fixed a bug from 1.0.3 where once you refreshed a tab by holding on it, every tab would then be forced to refresh - -1.0.3 -* Holding down a tab for a second will now force a refresh -* Fixed a bug dealing with overzealously refreshing the contacts tab -* Finding some undescriptive errors and made them more descriptive -* Swapped the order GrandCentral and GoogleVoice appear in login window -* Fixed the "Recent" and "Message" tabs, google changed things on me again - -1.0.2 -* Random bug fixes -* Random performance improvements - -1.0.1 -* Fixed a voicemail transcripts due to a GoogleVoice change - -1.0.0 -* Added names to the recent tab for GoogleVoice - -0.9.9 -* SMS From Dialpad -* Display of names for messages tab -* Condensed messages/recent's date column - -0.9.8 - * Added columns to recent view and messages view to help seperate messages - * Attempted refreshing session on dial/sms send - * Fixed a GC Bug - * Minor bug fixes as usual - -0.9.7 - * Switched to Force Refresh for when wanting to check for more messages - * Removed timeouts that forced refreshes on various tabs - * Added support for a settings file, fairly primitive right now - * Fixed Maemo Support - * Lots of major and minor bug fixes - -0.9.6 - * Experimenting with the tabs being on the side - * Now the phone selector is used always, even if there is just one phone number - * Added a Messages Tab, which displays SMS and Voicemail messages - * Added option to send SMS messages - -0.9.5 - * Fixed a login issue due to Google changing their webpage - -0.9.4 - "" - * Misc Bug fixes and experiments - -0.9.3 - "" - * Removed the much disliked contact source ID - * Added saving of callback number when using GoogleVoice - * Got proper formatting on things ("&" rather than "&") - * Misc Bug fixes - -0.9.2 - "Two heads are better than one" - * Adding of UI to switch between GC and GV - * Minimized flashing the dial button between grayed out and not on startup - * Bug fixes - -0.9.1 - "Get your hands off that" - * GoogleVoice Support, what a pain - * More flexible CSV support. It now checks the header row for what column name/number are in - * Experimenting with faster startup by caching PYC files with the package - * Fixing of some bad error handling - * More debug output for when people run into issues - -0.9.0 - "Slick as snot" - * Caching of contacts - * Refactoring to make working with the code easier - * Filesystem backed contacts but currently only supporting a specific csv format - * Gracefully handle lack of connection and connection transitions - * Gracefully handle failed login - * A tiny bit better error reporting - -0.8.3 - "Extras Love" - * Version bump fighting the extras autobuilder, I hope this works - -0.8.2 - "Feed is for horses, so what about feedback?" - * Merged addressbook - * many more smaller fixes - -0.8.1 - "Two Beers" - * Thumb scrollbars ( Kudos Khertan ) - -0.8.0 - "Spit and polish" - * Addressbook support - * threaded networking for better interactivity - * Hold down back to clear number - * Standard about dialog - * many more smaller fixes -''' - - -__postinstall__ = '''#!/bin/sh -e +__build__ = constants.__build__ +__changelog__ = """ +* First Qt Release (BETA) +* Access to call cancel +* Divider on contacts +* Condensed history +* Changed SMS Entry letter count style from GV to Nokia +* Tabs are cached between launches +""".strip() + + +__postinstall__ = """#!/bin/sh -e gtk-update-icon-cache -f /usr/share/icons/hicolor -''' +rm -f ~/.%(name)s/%(name)s.log +rm -f ~/.%(name)s/notifier.log +""" % {"name": constants.__app_name__} + +__preremove__ = """#!/bin/sh -e +python /opt/dialcentral/lib/alarm_handler.py -d || true +""" -def find_files(path): + +def find_files(prefix, path): for root, dirs, files in os.walk(path): for file in files: - if file.startswith("src-"): + if file.startswith(prefix+"-"): fileParts = file.split("-") unused, relPathParts, newName = fileParts[0], fileParts[1:-1], fileParts[-1] - assert unused == "src" + assert unused == prefix relPath = os.sep.join(relPathParts) yield relPath, file, newName @@ -151,26 +78,48 @@ def build_package(distribution): except: pass + py2deb.Py2deb.SECTIONS = py2deb.SECTIONS_BY_POLICY[distribution] p = py2deb.Py2deb(__appname__) + p.prettyName = constants.__pretty_app_name__ p.description = __description__ + p.bugTracker = "https://bugs.maemo.org/enter_bug.cgi?product=Dialcentral" p.author = __author__ p.mail = __email__ p.license = "lgpl" - p.depends = { - "diablo": "python2.5, python2.5-gtk2, python2.5-xml", - "mer": "python2.6, python-gtk2, python-xml, python-glade2", + p.depends = ", ".join([ + "python2.6 | python2.5", + "python-gtk2 | python2.5-gtk2", + "python-xml | python2.5-xml", + "python-dbus | python2.5-dbus", + ]) + maemoSpecificDepends = ", python-osso | python2.5-osso, python-hildon | python2.5-hildon" + p.depends += { + "debian": ", python-glade2", + "diablo": maemoSpecificDepends + ", python2.5-conic", + "fremantle": maemoSpecificDepends + ", python-glade2, python-alarm", + }[distribution] + p.recommends = ", ".join([ + ]) + p.section = { + "debian": "comm", + "diablo": "user/network", + "fremantle": "user/network", }[distribution] - p.section = "user/communication" p.arch = "all" p.urgency = "low" - p.distribution = "chinook diablo fremantle mer" + p.distribution = "diablo fremantle debian" p.repository = "extras" p.changelog = __changelog__ p.postinstall = __postinstall__ - p.icon = "26x26-dialcentral.png" - p["/usr/bin"] = [ "dialcentral.py" ] - for relPath, files in unflatten_files(find_files(".")).iteritems(): - fullPath = "/usr/lib/dialcentral" + p.preremove = __preremove__ + p.icon = { + "debian": "26x26-dialcentral.png", + "diablo": "26x26-dialcentral.png", + "fremantle": "64x64-dialcentral.png", # Fremantle natively uses 48x48 + }[distribution] + p["/opt/%s/bin" % __appname__] = [ "%s.py" % __appname__ ] + for relPath, files in unflatten_files(find_files("src", ".")).iteritems(): + fullPath = "/opt/%s/lib" % __appname__ if relPath: fullPath += os.sep+relPath p[fullPath] = list( @@ -182,12 +131,28 @@ def build_package(distribution): p["/usr/share/icons/hicolor/64x64/hildon"] = ["64x64-dialcentral.png|dialcentral.png"] p["/usr/share/icons/hicolor/scalable/hildon"] = ["scale-dialcentral.png|dialcentral.png"] - print p - print p.generate( - __version__, __build__, changelog=__changelog__, - tar=True, dsc=True, changes=True, build=False, src=True - ) - print "Building for %s finished" % distribution + if distribution == "debian": + print p + print p.generate( + version="%s-%s" % (__version__, __build__), + changelog=__changelog__, + build=True, + tar=False, + changes=False, + dsc=False, + ) + print "Building for %s finished" % distribution + else: + print p + print p.generate( + version="%s-%s" % (__version__, __build__), + changelog=__changelog__, + build=False, + tar=True, + changes=True, + dsc=True, + ) + print "Building for %s finished" % distribution if __name__ == "__main__":