From 0e2d49f811bc80872c3e40e640c49bae0cea89aa Mon Sep 17 00:00:00 2001 From: Abhay Rana Date: Sun, 1 Dec 2013 16:45:12 +0530 Subject: [PATCH] Adds argument parsing for help and version --- hackertray/__init__.py | 12 +++++++++++- setup.py | 7 ++++++- 2 files changed, 17 insertions(+), 2 deletions(-) diff --git a/hackertray/__init__.py b/hackertray/__init__.py index 78f92b5..570a317 100644 --- a/hackertray/__init__.py +++ b/hackertray/__init__.py @@ -7,7 +7,7 @@ import gtk import requests import webbrowser import json - +import argparse from os.path import expanduser try: @@ -15,6 +15,13 @@ try: except ImportError: import appindicator_replacement as appindicator +##This is to get --version to work +try: + import pkg_resources + __version = pkg_resources.require("hackertray")[0].version +except ImportError, e: + __version = "Can't read version number." + from hackernews import HackerNews class HackerNewsApp: @@ -118,5 +125,8 @@ class HackerNewsApp: gtk.timeout_add(10*60*1000, self.refresh) def main(): + parser = argparse.ArgumentParser(description='Hacker News in your System Tray') + parser.add_argument('--version', action='version', version=__version) + parser.parse_args() indicator = HackerNewsApp() indicator.run() diff --git a/setup.py b/setup.py index 051378b..1d681ba 100644 --- a/setup.py +++ b/setup.py @@ -1,7 +1,12 @@ from setuptools import setup +import sys + +requirements = ['requests'] +if sys.version_info < (2, 7): + requirements.append('argparse') setup(name='hackertray', - version='1.8.2', + version='1.8.3', description='Hacker News app that sits in your System Tray', long_description='HackerTray is a simple Hacker News Linux application that lets you view top HN stories in your System Tray. It relies on appindicator, so it is not guaranteed to work on all systems. It also provides a Gtk StatusIcon fallback in case AppIndicator is not available.', keywords='hacker news hn tray system tray icon hackertray',