Added the 'ubuntu-store' configuration option to build a package that is already registered for the Ubuntu Store.

This commit is contained in:
Virgil Dupras 2012-08-15 08:01:29 -07:00
parent 8ac035c8a9
commit ab6e0945a7
3 changed files with 26 additions and 20 deletions

View File

@ -131,16 +131,18 @@ def build_cocoa(edition, dev):
run_contents = tmpl.replace('{{app_path}}', app.dest)
open('run.py', 'wt').write(run_contents)
def build_qt(edition, dev):
def build_qt(edition, dev, conf):
print("Building localizations")
build_localizations('qt', edition)
print("Building Qt stuff")
print_and_do("pyrcc4 -py3 {0} > {1}".format(op.join('qt', 'base', 'dg.qrc'), op.join('qt', 'base', 'dg_rc.py')))
fix_qt_resource_file(op.join('qt', 'base', 'dg_rc.py'))
print("Creating the run.py file")
tmpl = open(op.join('qt', 'run_template.py'), 'rt').read()
run_contents = tmpl.replace('{{edition}}', edition)
open('run.py', 'wt').write(run_contents)
if conf.get('ubuntu_store'):
ubuntu_store_setup = "dgapp.model.registered = True; dgapp.model.registration_email = \"Ubuntu Store\""
else:
ubuntu_store_setup = ""
filereplace(op.join('qt', 'run_template.py'), 'run.py', edition=edition, ubuntu_store_setup=ubuntu_store_setup)
def build_help(edition):
print("Generating Help")
@ -310,7 +312,7 @@ def build_pe_modules(ui):
move_all('_block*', 'core_pe')
move_all('_cache*', 'core_pe')
def build_normal(edition, ui, dev):
def build_normal(edition, ui, dev, conf):
print("Building dupeGuru {0} with UI {1}".format(edition.upper(), ui))
add_to_pythonpath('.')
build_help(edition)
@ -320,7 +322,7 @@ def build_normal(edition, ui, dev):
if ui == 'cocoa':
build_cocoa(edition, dev)
elif ui == 'qt':
build_qt(edition, dev)
build_qt(edition, dev, conf)
def main():
options = parse_args()
@ -355,7 +357,7 @@ def main():
build_cocoalib_xibless()
build_xibless(edition)
else:
build_normal(edition, ui, dev)
build_normal(edition, ui, dev, conf)
if __name__ == '__main__':
main()

View File

@ -12,17 +12,18 @@ import json
from hscommon.plat import ISOSX
def main(edition, ui, dev):
if edition not in {'se', 'me', 'pe'}:
edition = 'se'
if ui not in {'cocoa', 'qt'}:
ui = 'cocoa' if ISOSX else 'qt'
build_type = 'Dev' if dev else 'Release'
print("Configuring dupeGuru {0} for UI {1} ({2})".format(edition.upper(), ui, build_type))
def main(options):
if options.edition not in {'se', 'me', 'pe'}:
options.edition = 'se'
if options.ui not in {'cocoa', 'qt'}:
options.ui = 'cocoa' if ISOSX else 'qt'
build_type = 'Dev' if options.dev else 'Release'
print("Configuring dupeGuru {0} for UI {1} ({2})".format(options.edition.upper(), options.ui, build_type))
conf = {
'edition': edition,
'ui': ui,
'dev': dev,
'edition': options.edition,
'ui': options.ui,
'dev': options.dev,
'ubuntu_store': options.ubuntu_store,
}
json.dump(conf, open('conf.json', 'w'))
@ -35,5 +36,7 @@ if __name__ == '__main__':
help="Type of UI to build. 'qt' or 'cocoa'. Default is determined by your system.")
parser.add_option('--dev', action='store_true', dest='dev', default=False,
help="If this flag is set, will configure for dev builds.")
parser.add_option('--ubuntu-store', action='store_true', dest='ubuntu_store', default=False,
help="Set registration for the Ubuntu Store.")
(options, args) = parser.parse_args()
main(options.edition, options.ui, options.dev)
main(options)

View File

@ -17,7 +17,7 @@ from qtlib.error_report_dialog import install_excepthook
from qtlib.util import setupQtLogging
from qt.base import dg_rc
from qt.base.platform import BASE_PATH
from core_{{edition}} import __version__, __appname__
from core_{edition} import __version__, __appname__
if ISWINDOWS:
import qt.base.cxfreeze_fix
@ -34,8 +34,9 @@ if __name__ == "__main__":
install_gettext_trans_under_qt(locale_folder, lang)
# Many strings are translated at import time, so this is why we only import after the translator
# has been installed
from qt.{{edition}}.app import DupeGuru
from qt.{edition}.app import DupeGuru
app.setWindowIcon(QIcon(QPixmap(":/{0}".format(DupeGuru.LOGO_NAME))))
dgapp = DupeGuru()
{ubuntu_store_setup}
install_excepthook()
sys.exit(app.exec_())