From a7f436ba2a843d4ae74bb2fcbe36fcbffbc5974a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?C=C3=A9dric=20Krier?= Date: Sat, 3 Oct 2015 11:45:10 +0200 Subject: [PATCH] Use package_data instead of data_files package_data must be used for data that are closely related to the package's implemenation. This is the case of the pixmaps and the locale. issue4983 review24421002 --- MANIFEST.in | 8 -- README | 3 - setup-single.nsi | 2 +- setup.cfg | 12 +-- setup.nsi | 2 +- setup.py | 97 +++++------------- tryton/config.py | 31 +++--- .../data}/locale/bg_BG/LC_MESSAGES/tryton.po | 0 .../data}/locale/ca_ES/LC_MESSAGES/tryton.po | 0 .../data}/locale/cs_CZ/LC_MESSAGES/tryton.po | 0 .../data}/locale/de_DE/LC_MESSAGES/tryton.po | 0 .../data}/locale/es_AR/LC_MESSAGES/tryton.po | 0 .../data}/locale/es_CO/LC_MESSAGES/tryton.po | 0 .../data}/locale/es_EC/LC_MESSAGES/tryton.po | 0 .../data}/locale/es_ES/LC_MESSAGES/tryton.po | 0 .../data}/locale/fr_FR/LC_MESSAGES/tryton.po | 0 .../data}/locale/ja_JP/LC_MESSAGES/tryton.po | 0 .../data}/locale/lt_LT/LC_MESSAGES/tryton.po | 0 .../data}/locale/nl_NL/LC_MESSAGES/tryton.po | 0 .../data}/locale/ru_RU/LC_MESSAGES/tryton.po | 0 .../data}/locale/sl_SI/LC_MESSAGES/tryton.po | 0 {share => tryton/data}/locale/tryton.pot | 0 .../pixmaps/tryton/tryton-attachment-hi.svg | 0 .../pixmaps/tryton/tryton-attachment.svg | 0 .../data}/pixmaps/tryton/tryton-bookmark.svg | 0 .../data}/pixmaps/tryton/tryton-clear.svg | 0 .../data}/pixmaps/tryton/tryton-close.svg | 0 .../data}/pixmaps/tryton/tryton-connect.svg | 0 .../data}/pixmaps/tryton/tryton-copy.svg | 0 .../data}/pixmaps/tryton/tryton-delete.svg | 0 .../pixmaps/tryton/tryton-dialog-error.svg | 0 .../tryton/tryton-dialog-information.svg | 0 .../pixmaps/tryton/tryton-dialog-warning.svg | 0 .../pixmaps/tryton/tryton-disconnect.svg | 0 .../pixmaps/tryton/tryton-executable.svg | 0 .../pixmaps/tryton/tryton-find-replace.svg | 0 .../data}/pixmaps/tryton/tryton-find.svg | 0 .../pixmaps/tryton/tryton-folder-new.svg | 0 .../pixmaps/tryton/tryton-fullscreen.svg | 0 .../data}/pixmaps/tryton/tryton-go-home.svg | 0 .../data}/pixmaps/tryton/tryton-go-jump.svg | 0 .../data}/pixmaps/tryton/tryton-go-next.svg | 0 .../pixmaps/tryton/tryton-go-previous.svg | 0 .../data}/pixmaps/tryton/tryton-help.svg | 0 .../data}/pixmaps/tryton/tryton-icon.png | Bin .../data}/pixmaps/tryton/tryton-icon.svg | 0 .../data}/pixmaps/tryton/tryton-list-add.svg | 0 .../pixmaps/tryton/tryton-list-remove.svg | 0 .../data}/pixmaps/tryton/tryton-locale.svg | 0 .../data}/pixmaps/tryton/tryton-lock.svg | 0 .../data}/pixmaps/tryton/tryton-log-out.svg | 0 .../tryton/tryton-mail-message-new.svg | 0 .../pixmaps/tryton/tryton-mail-message.svg | 0 .../data}/pixmaps/tryton/tryton-new.svg | 0 .../data}/pixmaps/tryton/tryton-noimage.png | Bin .../data}/pixmaps/tryton/tryton-open.svg | 0 .../tryton-preferences-system-session.svg | 0 .../tryton/tryton-preferences-system.svg | 0 .../pixmaps/tryton/tryton-preferences.svg | 0 .../pixmaps/tryton/tryton-print-email.svg | 0 .../pixmaps/tryton/tryton-print-open.svg | 0 .../data}/pixmaps/tryton/tryton-print.svg | 0 .../data}/pixmaps/tryton/tryton-refresh.svg | 0 .../data}/pixmaps/tryton/tryton-save-as.svg | 0 .../data}/pixmaps/tryton/tryton-save.svg | 0 .../data}/pixmaps/tryton/tryton-star.svg | 0 .../pixmaps/tryton/tryton-start-here.svg | 0 .../tryton/tryton-system-file-manager.svg | 0 .../data}/pixmaps/tryton/tryton-system.svg | 0 .../pixmaps/tryton/tryton-text-background.svg | 0 .../pixmaps/tryton/tryton-text-foreground.svg | 0 .../pixmaps/tryton/tryton-text-markup.svg | 0 .../data}/pixmaps/tryton/tryton-undo.svg | 0 .../data}/pixmaps/tryton/tryton-unstar.svg | 0 .../pixmaps/tryton/tryton-web-browser.svg | 0 .../data}/pixmaps/tryton/tryton.icns | Bin .../data}/pixmaps/tryton/tryton.ico | Bin .../data}/pixmaps/tryton/tryton.png | Bin tryton/plugins/__init__.py | 8 +- tryton/translate.py | 9 +- 80 files changed, 57 insertions(+), 115 deletions(-) rename {share => tryton/data}/locale/bg_BG/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/ca_ES/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/cs_CZ/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/de_DE/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/es_AR/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/es_CO/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/es_EC/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/es_ES/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/fr_FR/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/ja_JP/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/lt_LT/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/nl_NL/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/ru_RU/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/sl_SI/LC_MESSAGES/tryton.po (100%) rename {share => tryton/data}/locale/tryton.pot (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-attachment-hi.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-attachment.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-bookmark.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-clear.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-close.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-connect.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-copy.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-delete.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-dialog-error.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-dialog-information.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-dialog-warning.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-disconnect.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-executable.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-find-replace.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-find.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-folder-new.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-fullscreen.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-go-home.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-go-jump.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-go-next.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-go-previous.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-help.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-icon.png (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-icon.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-list-add.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-list-remove.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-locale.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-lock.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-log-out.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-mail-message-new.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-mail-message.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-new.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-noimage.png (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-open.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-preferences-system-session.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-preferences-system.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-preferences.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-print-email.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-print-open.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-print.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-refresh.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-save-as.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-save.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-star.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-start-here.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-system-file-manager.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-system.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-text-background.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-text-foreground.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-text-markup.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-undo.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-unstar.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton-web-browser.svg (100%) rename {share => tryton/data}/pixmaps/tryton/tryton.icns (100%) rename {share => tryton/data}/pixmaps/tryton/tryton.ico (100%) rename {share => tryton/data}/pixmaps/tryton/tryton.png (100%) diff --git a/MANIFEST.in b/MANIFEST.in index 2834f60ea0..6804662c9d 100644 --- a/MANIFEST.in +++ b/MANIFEST.in @@ -13,11 +13,3 @@ include doc/* recursive-include doc *.rst recursive-include doc *.po recursive-include doc *.pot -include share/pixmaps/tryton/LICENSE -include share/pixmaps/tryton/*.png -include share/pixmaps/tryton/*.svg -include share/pixmaps/tryton/*.ico -include share/pixmaps/tryton/*.icns -recursive-include share/locale *.mo -recursive-include share/locale *.po -include share/locale/*.pot diff --git a/README b/README index 8294db9e85..224f10167c 100644 --- a/README +++ b/README @@ -24,9 +24,6 @@ Package Contents python doc/build.py - share/ - The shared files like translations and images. - tryton/ tryton sources. diff --git a/setup-single.nsi b/setup-single.nsi index 360906b47e..ae68549136 100644 --- a/setup-single.nsi +++ b/setup-single.nsi @@ -12,7 +12,7 @@ OutFile "tryton-${VERSION}.exe" SetCompressor lzma SetCompress auto SilentInstall silent -Icon "share\pixmaps\tryton\tryton.ico" +Icon "tryton\data\pixmaps\tryton\tryton.ico" Section InitPluginsDir diff --git a/setup.cfg b/setup.cfg index e4379c0a60..fe4ff1d7fe 100644 --- a/setup.cfg +++ b/setup.cfg @@ -1,19 +1,19 @@ [extract_messages] copyright_holder = Tryton msgid_bugs_address = issue_tracker@tryton.org -output_file = share/locale/tryton.pot +output_file = tryton/data/locale/tryton.pot keywords = _, gettext [init_catalog] domain = tryton -input_file = share/locale/tryton.pot -output_dir = share/locale +input_file = tryton/data/locale/tryton.pot +output_dir = tryton/data/locale [compile_catalog] domain = tryton -directory = share/locale +directory = tryton/data/locale [update_catalog] domain = tryton -input_file = share/locale/tryton.pot -output_dir = share/locale +input_file = tryton/data/locale/tryton.pot +output_dir = tryton/data/locale diff --git a/setup.nsi b/setup.nsi index a41a27afa6..7c81390e16 100644 --- a/setup.nsi +++ b/setup.nsi @@ -41,7 +41,7 @@ Var STARTMENU_FOLDER ;Pages -!define MUI_ICON "share\pixmaps\tryton\tryton.ico" +!define MUI_ICON "tryton\data\pixmaps\tryton\tryton.ico" !define MUI_LICENSEPAGE_TEXT_BOTTOM "$(LicenseText)" !define MUI_LICENSEPAGE_BUTTON "$(LicenseNext)" diff --git a/setup.py b/setup.py index b03a253b14..8532ab6cbf 100644 --- a/setup.py +++ b/setup.py @@ -33,44 +33,15 @@ try: except ImportError: pass -languages = ( - 'bg_BG', - 'ca_ES', - 'cs_CZ', - 'de_DE', - 'es_AR', - 'es_CO', - 'es_EC', - 'es_ES', - 'es_MX', - 'fr_FR', - 'hu_HU', - 'it_IT', - 'ja_JP', - 'lt_LT', - 'nl_NL', - 'pt_BR', - 'ru_RU', - 'sl_SI', - ) - - -def all_languages(): - for lang in languages: - yield lang - yield lang.split('_')[0] - -data_files = [ - ('share/pixmaps/tryton', glob.glob('share/pixmaps/tryton/*.png') + - glob.glob('share/pixmaps/tryton/*.svg')), - ('share/locale', ['share/locale/tryton.pot']), - ] -for lang in languages: - data_files += [ - ('share/locale/%s/LC_MESSAGES' % lang, - glob.glob('share/locale/%s/LC_MESSAGES/*.mo' % lang) + - glob.glob('share/locale/%s/LC_MESSAGES/*.po' % lang)), +package_data = { + 'tryton': ['data/pixmaps/tryton/*.png', + 'data/pixmaps/tryton/*.svg', + 'data/locale/tryton.pot', + 'data/locale/*/LC_MESSAGES/*.mo', + 'data/locale/*/LC_MESSAGES/*.po', ] + } +data_files = [] if os.name == 'nt': import py2exe @@ -78,7 +49,8 @@ if os.name == 'nt': args['windows'] = [{ 'script': os.path.join('bin', 'tryton'), 'icon_resources': [ - (1, os.path.join('share', 'pixmaps', 'tryton', 'tryton.ico'))], + (1, os.path.join('tryton', 'data', 'pixmaps', + 'tryton', 'tryton.ico'))], }] args['options'] = { 'py2exe': { @@ -113,17 +85,18 @@ elif sys.platform == 'darwin': 'argv_emulation': True, 'includes': ('pygtk, gtk, glib, cairo, pango, pangocairo, atk, ' 'gobject, gio, gtk.keysyms'), - 'resources': 'tryton/plugins', + 'resources': 'tryton/plugins, tryton/data', 'frameworks': 'librsvg-2.2.dylib, libjpeg.9.dylib, libtiff.5.dylib', 'plist': { 'CFBundleIdentifier': 'org.tryton', 'CFBundleName': 'Tryton', }, - 'iconfile': os.path.join('share', 'pixmaps', 'tryton', - 'tryton.icns'), + 'iconfile': os.path.join('tryton', 'data', 'pixmaps', + 'tryton', 'tryton.icns'), }, } + del package_data['tryton'] def get_version(): @@ -153,6 +126,7 @@ dist = setup(name=name, download_url=download_url, keywords='business application ERP', packages=find_packages(), + package_data=package_data, data_files=data_files, scripts=['bin/tryton'], classifiers=[ @@ -222,10 +196,11 @@ if os.name == 'nt': dist_dir = dist.command_obj['py2exe'].dist_dir - if os.path.isdir(os.path.join(dist_dir, 'plugins')): - shutil.rmtree(os.path.join(dist_dir, 'plugins')) - shutil.copytree(os.path.join(os.path.dirname(__file__), 'tryton', - 'plugins'), os.path.join(dist_dir, 'plugins')) + for dirname in ['plugins', 'data']: + if os.path.isdir(os.path.join(dist_dir, dirname)): + shutil.rmtree(os.path.join(dist_dir, dirname)) + shutil.copytree(os.path.join(os.path.dirname(__file__), 'tryton', + dirname), os.path.join(dist_dir, dirname)) if os.path.isdir(os.path.join(dist_dir, 'etc')): shutil.rmtree(os.path.join(dist_dir, 'etc')) @@ -253,17 +228,10 @@ if os.name == 'nt': if os.path.isfile(file): shutil.copy(file, dist_dir) - for lang in all_languages(): - if os.path.isdir(os.path.join(dist_dir, 'share', 'locale', lang)): - shutil.rmtree(os.path.join(dist_dir, 'share', 'locale', lang)) - if os.path.isdir(os.path.join(gtk_dir, 'share', 'locale', lang)): - shutil.copytree(os.path.join(gtk_dir, 'share', 'locale', lang), - os.path.join(dist_dir, 'share', 'locale', lang)) - if os.path.isdir(os.path.join(os.path.dirname(__file__), - 'share', 'locale', lang)): - shutil.copytree(os.path.join(os.path.dirname(__file__), - 'share', 'locale', lang), - os.path.join(dist_dir, 'share', 'locale', lang)) + if os.path.isdir(os.path.join(dist_dir, 'share', 'locale')): + shutil.rmtree(os.path.join(dist_dir, 'share', 'locale')) + shutil.copytree(os.path.join(gtk_dir, 'share', 'locale'), + os.path.join(dist_dir, 'share', 'locale')) if os.path.isdir(os.path.join(dist_dir, 'share', 'themes', 'MS-Windows')): @@ -380,19 +348,10 @@ elif sys.platform == 'darwin': dirname, 'gtkrc') gtkrc.write(open(rcfile).read()) - for lang in all_languages(): - if os.path.isdir(os.path.join(resources_dir, 'share', 'locale', - lang)): - shutil.rmtree(os.path.join(resources_dir, 'share', 'locale', - lang)) - if os.path.isdir(os.path.join(gtk_dir, 'share', 'locale', lang)): - shutil.copytree(os.path.join(gtk_dir, 'share', 'locale', lang), - os.path.join(resources_dir, 'share', 'locale', lang)) - if os.path.isdir(os.path.join(os.path.dirname(__file__), - 'share', 'locale', lang)): - shutil.copytree(os.path.join(os.path.dirname(__file__), - 'share', 'locale', lang), - os.path.join(resources_dir, 'share', 'locale', lang)) + if os.path.isdir(os.path.join(resources_dir, 'share', 'locale')): + shutil.rmtree(os.path.join(resources_dir, 'share', 'locale')) + shutil.copytree(os.path.join(gtk_dir, 'share', 'locale'), + os.path.join(resources_dir, 'share', 'locale')) # fix pathes within shared libraries for library in chain( diff --git a/tryton/config.py b/tryton/config.py index d56458f5e5..525218c1ca 100644 --- a/tryton/config.py +++ b/tryton/config.py @@ -9,7 +9,7 @@ import logging import sys import locale import gtk -import site +import pkg_resources from tryton.exceptions import TrytonError from tryton import __version__ @@ -164,27 +164,22 @@ class ConfigManager(object): self.defaults.get(key))) CONFIG = ConfigManager() +CURRENT_DIR = unicode(os.path.dirname(__file__), + sys.getfilesystemencoding()) if (os.name == 'nt' and hasattr(sys, 'frozen') and os.path.basename(sys.executable) == 'tryton.exe'): CURRENT_DIR = os.path.dirname(unicode(sys.executable, sys.getfilesystemencoding())) -else: - CURRENT_DIR = os.path.abspath(os.path.normpath(os.path.join( - unicode(os.path.dirname(__file__), sys.getfilesystemencoding()), - '..'))) +elif (os.name == 'mac' + or (hasattr(os, 'uname') and os.uname()[0] == 'Darwin')): + resources = os.path.join(os.path.dirname(sys.argv[0]), '..', 'Resources') + if os.path.isdir(resources): + CURRENT_DIR = resources -for dir in [CURRENT_DIR, getattr(site, 'USER_BASE', sys.prefix), sys.prefix]: - PIXMAPS_DIR = os.path.join(dir, 'share', 'pixmaps', 'tryton') - if os.path.isdir(PIXMAPS_DIR): - break +PIXMAPS_DIR = os.path.join(CURRENT_DIR, 'data', 'pixmaps', 'tryton') +if not os.path.isdir(PIXMAPS_DIR): + PIXMAPS_DIR = pkg_resources.resource_filename( + 'tryton', 'data/pixmaps/tryton') TRYTON_ICON = gtk.gdk.pixbuf_new_from_file( - os.path.join(PIXMAPS_DIR, 'tryton-icon.png').encode('utf-8')) - - -def _data_dir(): - data_dir = os.path.join(CURRENT_DIR, 'share', 'tryton') - if not os.path.isdir(data_dir): - data_dir = os.path.join(sys.prefix, 'share', 'tryton') - return data_dir -DATA_DIR = _data_dir() + os.path.join(PIXMAPS_DIR, 'tryton-icon.png').encode('utf-8')) diff --git a/share/locale/bg_BG/LC_MESSAGES/tryton.po b/tryton/data/locale/bg_BG/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/bg_BG/LC_MESSAGES/tryton.po rename to tryton/data/locale/bg_BG/LC_MESSAGES/tryton.po diff --git a/share/locale/ca_ES/LC_MESSAGES/tryton.po b/tryton/data/locale/ca_ES/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/ca_ES/LC_MESSAGES/tryton.po rename to tryton/data/locale/ca_ES/LC_MESSAGES/tryton.po diff --git a/share/locale/cs_CZ/LC_MESSAGES/tryton.po b/tryton/data/locale/cs_CZ/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/cs_CZ/LC_MESSAGES/tryton.po rename to tryton/data/locale/cs_CZ/LC_MESSAGES/tryton.po diff --git a/share/locale/de_DE/LC_MESSAGES/tryton.po b/tryton/data/locale/de_DE/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/de_DE/LC_MESSAGES/tryton.po rename to tryton/data/locale/de_DE/LC_MESSAGES/tryton.po diff --git a/share/locale/es_AR/LC_MESSAGES/tryton.po b/tryton/data/locale/es_AR/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/es_AR/LC_MESSAGES/tryton.po rename to tryton/data/locale/es_AR/LC_MESSAGES/tryton.po diff --git a/share/locale/es_CO/LC_MESSAGES/tryton.po b/tryton/data/locale/es_CO/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/es_CO/LC_MESSAGES/tryton.po rename to tryton/data/locale/es_CO/LC_MESSAGES/tryton.po diff --git a/share/locale/es_EC/LC_MESSAGES/tryton.po b/tryton/data/locale/es_EC/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/es_EC/LC_MESSAGES/tryton.po rename to tryton/data/locale/es_EC/LC_MESSAGES/tryton.po diff --git a/share/locale/es_ES/LC_MESSAGES/tryton.po b/tryton/data/locale/es_ES/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/es_ES/LC_MESSAGES/tryton.po rename to tryton/data/locale/es_ES/LC_MESSAGES/tryton.po diff --git a/share/locale/fr_FR/LC_MESSAGES/tryton.po b/tryton/data/locale/fr_FR/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/fr_FR/LC_MESSAGES/tryton.po rename to tryton/data/locale/fr_FR/LC_MESSAGES/tryton.po diff --git a/share/locale/ja_JP/LC_MESSAGES/tryton.po b/tryton/data/locale/ja_JP/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/ja_JP/LC_MESSAGES/tryton.po rename to tryton/data/locale/ja_JP/LC_MESSAGES/tryton.po diff --git a/share/locale/lt_LT/LC_MESSAGES/tryton.po b/tryton/data/locale/lt_LT/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/lt_LT/LC_MESSAGES/tryton.po rename to tryton/data/locale/lt_LT/LC_MESSAGES/tryton.po diff --git a/share/locale/nl_NL/LC_MESSAGES/tryton.po b/tryton/data/locale/nl_NL/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/nl_NL/LC_MESSAGES/tryton.po rename to tryton/data/locale/nl_NL/LC_MESSAGES/tryton.po diff --git a/share/locale/ru_RU/LC_MESSAGES/tryton.po b/tryton/data/locale/ru_RU/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/ru_RU/LC_MESSAGES/tryton.po rename to tryton/data/locale/ru_RU/LC_MESSAGES/tryton.po diff --git a/share/locale/sl_SI/LC_MESSAGES/tryton.po b/tryton/data/locale/sl_SI/LC_MESSAGES/tryton.po similarity index 100% rename from share/locale/sl_SI/LC_MESSAGES/tryton.po rename to tryton/data/locale/sl_SI/LC_MESSAGES/tryton.po diff --git a/share/locale/tryton.pot b/tryton/data/locale/tryton.pot similarity index 100% rename from share/locale/tryton.pot rename to tryton/data/locale/tryton.pot diff --git a/share/pixmaps/tryton/tryton-attachment-hi.svg b/tryton/data/pixmaps/tryton/tryton-attachment-hi.svg similarity index 100% rename from share/pixmaps/tryton/tryton-attachment-hi.svg rename to tryton/data/pixmaps/tryton/tryton-attachment-hi.svg diff --git a/share/pixmaps/tryton/tryton-attachment.svg b/tryton/data/pixmaps/tryton/tryton-attachment.svg similarity index 100% rename from share/pixmaps/tryton/tryton-attachment.svg rename to tryton/data/pixmaps/tryton/tryton-attachment.svg diff --git a/share/pixmaps/tryton/tryton-bookmark.svg b/tryton/data/pixmaps/tryton/tryton-bookmark.svg similarity index 100% rename from share/pixmaps/tryton/tryton-bookmark.svg rename to tryton/data/pixmaps/tryton/tryton-bookmark.svg diff --git a/share/pixmaps/tryton/tryton-clear.svg b/tryton/data/pixmaps/tryton/tryton-clear.svg similarity index 100% rename from share/pixmaps/tryton/tryton-clear.svg rename to tryton/data/pixmaps/tryton/tryton-clear.svg diff --git a/share/pixmaps/tryton/tryton-close.svg b/tryton/data/pixmaps/tryton/tryton-close.svg similarity index 100% rename from share/pixmaps/tryton/tryton-close.svg rename to tryton/data/pixmaps/tryton/tryton-close.svg diff --git a/share/pixmaps/tryton/tryton-connect.svg b/tryton/data/pixmaps/tryton/tryton-connect.svg similarity index 100% rename from share/pixmaps/tryton/tryton-connect.svg rename to tryton/data/pixmaps/tryton/tryton-connect.svg diff --git a/share/pixmaps/tryton/tryton-copy.svg b/tryton/data/pixmaps/tryton/tryton-copy.svg similarity index 100% rename from share/pixmaps/tryton/tryton-copy.svg rename to tryton/data/pixmaps/tryton/tryton-copy.svg diff --git a/share/pixmaps/tryton/tryton-delete.svg b/tryton/data/pixmaps/tryton/tryton-delete.svg similarity index 100% rename from share/pixmaps/tryton/tryton-delete.svg rename to tryton/data/pixmaps/tryton/tryton-delete.svg diff --git a/share/pixmaps/tryton/tryton-dialog-error.svg b/tryton/data/pixmaps/tryton/tryton-dialog-error.svg similarity index 100% rename from share/pixmaps/tryton/tryton-dialog-error.svg rename to tryton/data/pixmaps/tryton/tryton-dialog-error.svg diff --git a/share/pixmaps/tryton/tryton-dialog-information.svg b/tryton/data/pixmaps/tryton/tryton-dialog-information.svg similarity index 100% rename from share/pixmaps/tryton/tryton-dialog-information.svg rename to tryton/data/pixmaps/tryton/tryton-dialog-information.svg diff --git a/share/pixmaps/tryton/tryton-dialog-warning.svg b/tryton/data/pixmaps/tryton/tryton-dialog-warning.svg similarity index 100% rename from share/pixmaps/tryton/tryton-dialog-warning.svg rename to tryton/data/pixmaps/tryton/tryton-dialog-warning.svg diff --git a/share/pixmaps/tryton/tryton-disconnect.svg b/tryton/data/pixmaps/tryton/tryton-disconnect.svg similarity index 100% rename from share/pixmaps/tryton/tryton-disconnect.svg rename to tryton/data/pixmaps/tryton/tryton-disconnect.svg diff --git a/share/pixmaps/tryton/tryton-executable.svg b/tryton/data/pixmaps/tryton/tryton-executable.svg similarity index 100% rename from share/pixmaps/tryton/tryton-executable.svg rename to tryton/data/pixmaps/tryton/tryton-executable.svg diff --git a/share/pixmaps/tryton/tryton-find-replace.svg b/tryton/data/pixmaps/tryton/tryton-find-replace.svg similarity index 100% rename from share/pixmaps/tryton/tryton-find-replace.svg rename to tryton/data/pixmaps/tryton/tryton-find-replace.svg diff --git a/share/pixmaps/tryton/tryton-find.svg b/tryton/data/pixmaps/tryton/tryton-find.svg similarity index 100% rename from share/pixmaps/tryton/tryton-find.svg rename to tryton/data/pixmaps/tryton/tryton-find.svg diff --git a/share/pixmaps/tryton/tryton-folder-new.svg b/tryton/data/pixmaps/tryton/tryton-folder-new.svg similarity index 100% rename from share/pixmaps/tryton/tryton-folder-new.svg rename to tryton/data/pixmaps/tryton/tryton-folder-new.svg diff --git a/share/pixmaps/tryton/tryton-fullscreen.svg b/tryton/data/pixmaps/tryton/tryton-fullscreen.svg similarity index 100% rename from share/pixmaps/tryton/tryton-fullscreen.svg rename to tryton/data/pixmaps/tryton/tryton-fullscreen.svg diff --git a/share/pixmaps/tryton/tryton-go-home.svg b/tryton/data/pixmaps/tryton/tryton-go-home.svg similarity index 100% rename from share/pixmaps/tryton/tryton-go-home.svg rename to tryton/data/pixmaps/tryton/tryton-go-home.svg diff --git a/share/pixmaps/tryton/tryton-go-jump.svg b/tryton/data/pixmaps/tryton/tryton-go-jump.svg similarity index 100% rename from share/pixmaps/tryton/tryton-go-jump.svg rename to tryton/data/pixmaps/tryton/tryton-go-jump.svg diff --git a/share/pixmaps/tryton/tryton-go-next.svg b/tryton/data/pixmaps/tryton/tryton-go-next.svg similarity index 100% rename from share/pixmaps/tryton/tryton-go-next.svg rename to tryton/data/pixmaps/tryton/tryton-go-next.svg diff --git a/share/pixmaps/tryton/tryton-go-previous.svg b/tryton/data/pixmaps/tryton/tryton-go-previous.svg similarity index 100% rename from share/pixmaps/tryton/tryton-go-previous.svg rename to tryton/data/pixmaps/tryton/tryton-go-previous.svg diff --git a/share/pixmaps/tryton/tryton-help.svg b/tryton/data/pixmaps/tryton/tryton-help.svg similarity index 100% rename from share/pixmaps/tryton/tryton-help.svg rename to tryton/data/pixmaps/tryton/tryton-help.svg diff --git a/share/pixmaps/tryton/tryton-icon.png b/tryton/data/pixmaps/tryton/tryton-icon.png similarity index 100% rename from share/pixmaps/tryton/tryton-icon.png rename to tryton/data/pixmaps/tryton/tryton-icon.png diff --git a/share/pixmaps/tryton/tryton-icon.svg b/tryton/data/pixmaps/tryton/tryton-icon.svg similarity index 100% rename from share/pixmaps/tryton/tryton-icon.svg rename to tryton/data/pixmaps/tryton/tryton-icon.svg diff --git a/share/pixmaps/tryton/tryton-list-add.svg b/tryton/data/pixmaps/tryton/tryton-list-add.svg similarity index 100% rename from share/pixmaps/tryton/tryton-list-add.svg rename to tryton/data/pixmaps/tryton/tryton-list-add.svg diff --git a/share/pixmaps/tryton/tryton-list-remove.svg b/tryton/data/pixmaps/tryton/tryton-list-remove.svg similarity index 100% rename from share/pixmaps/tryton/tryton-list-remove.svg rename to tryton/data/pixmaps/tryton/tryton-list-remove.svg diff --git a/share/pixmaps/tryton/tryton-locale.svg b/tryton/data/pixmaps/tryton/tryton-locale.svg similarity index 100% rename from share/pixmaps/tryton/tryton-locale.svg rename to tryton/data/pixmaps/tryton/tryton-locale.svg diff --git a/share/pixmaps/tryton/tryton-lock.svg b/tryton/data/pixmaps/tryton/tryton-lock.svg similarity index 100% rename from share/pixmaps/tryton/tryton-lock.svg rename to tryton/data/pixmaps/tryton/tryton-lock.svg diff --git a/share/pixmaps/tryton/tryton-log-out.svg b/tryton/data/pixmaps/tryton/tryton-log-out.svg similarity index 100% rename from share/pixmaps/tryton/tryton-log-out.svg rename to tryton/data/pixmaps/tryton/tryton-log-out.svg diff --git a/share/pixmaps/tryton/tryton-mail-message-new.svg b/tryton/data/pixmaps/tryton/tryton-mail-message-new.svg similarity index 100% rename from share/pixmaps/tryton/tryton-mail-message-new.svg rename to tryton/data/pixmaps/tryton/tryton-mail-message-new.svg diff --git a/share/pixmaps/tryton/tryton-mail-message.svg b/tryton/data/pixmaps/tryton/tryton-mail-message.svg similarity index 100% rename from share/pixmaps/tryton/tryton-mail-message.svg rename to tryton/data/pixmaps/tryton/tryton-mail-message.svg diff --git a/share/pixmaps/tryton/tryton-new.svg b/tryton/data/pixmaps/tryton/tryton-new.svg similarity index 100% rename from share/pixmaps/tryton/tryton-new.svg rename to tryton/data/pixmaps/tryton/tryton-new.svg diff --git a/share/pixmaps/tryton/tryton-noimage.png b/tryton/data/pixmaps/tryton/tryton-noimage.png similarity index 100% rename from share/pixmaps/tryton/tryton-noimage.png rename to tryton/data/pixmaps/tryton/tryton-noimage.png diff --git a/share/pixmaps/tryton/tryton-open.svg b/tryton/data/pixmaps/tryton/tryton-open.svg similarity index 100% rename from share/pixmaps/tryton/tryton-open.svg rename to tryton/data/pixmaps/tryton/tryton-open.svg diff --git a/share/pixmaps/tryton/tryton-preferences-system-session.svg b/tryton/data/pixmaps/tryton/tryton-preferences-system-session.svg similarity index 100% rename from share/pixmaps/tryton/tryton-preferences-system-session.svg rename to tryton/data/pixmaps/tryton/tryton-preferences-system-session.svg diff --git a/share/pixmaps/tryton/tryton-preferences-system.svg b/tryton/data/pixmaps/tryton/tryton-preferences-system.svg similarity index 100% rename from share/pixmaps/tryton/tryton-preferences-system.svg rename to tryton/data/pixmaps/tryton/tryton-preferences-system.svg diff --git a/share/pixmaps/tryton/tryton-preferences.svg b/tryton/data/pixmaps/tryton/tryton-preferences.svg similarity index 100% rename from share/pixmaps/tryton/tryton-preferences.svg rename to tryton/data/pixmaps/tryton/tryton-preferences.svg diff --git a/share/pixmaps/tryton/tryton-print-email.svg b/tryton/data/pixmaps/tryton/tryton-print-email.svg similarity index 100% rename from share/pixmaps/tryton/tryton-print-email.svg rename to tryton/data/pixmaps/tryton/tryton-print-email.svg diff --git a/share/pixmaps/tryton/tryton-print-open.svg b/tryton/data/pixmaps/tryton/tryton-print-open.svg similarity index 100% rename from share/pixmaps/tryton/tryton-print-open.svg rename to tryton/data/pixmaps/tryton/tryton-print-open.svg diff --git a/share/pixmaps/tryton/tryton-print.svg b/tryton/data/pixmaps/tryton/tryton-print.svg similarity index 100% rename from share/pixmaps/tryton/tryton-print.svg rename to tryton/data/pixmaps/tryton/tryton-print.svg diff --git a/share/pixmaps/tryton/tryton-refresh.svg b/tryton/data/pixmaps/tryton/tryton-refresh.svg similarity index 100% rename from share/pixmaps/tryton/tryton-refresh.svg rename to tryton/data/pixmaps/tryton/tryton-refresh.svg diff --git a/share/pixmaps/tryton/tryton-save-as.svg b/tryton/data/pixmaps/tryton/tryton-save-as.svg similarity index 100% rename from share/pixmaps/tryton/tryton-save-as.svg rename to tryton/data/pixmaps/tryton/tryton-save-as.svg diff --git a/share/pixmaps/tryton/tryton-save.svg b/tryton/data/pixmaps/tryton/tryton-save.svg similarity index 100% rename from share/pixmaps/tryton/tryton-save.svg rename to tryton/data/pixmaps/tryton/tryton-save.svg diff --git a/share/pixmaps/tryton/tryton-star.svg b/tryton/data/pixmaps/tryton/tryton-star.svg similarity index 100% rename from share/pixmaps/tryton/tryton-star.svg rename to tryton/data/pixmaps/tryton/tryton-star.svg diff --git a/share/pixmaps/tryton/tryton-start-here.svg b/tryton/data/pixmaps/tryton/tryton-start-here.svg similarity index 100% rename from share/pixmaps/tryton/tryton-start-here.svg rename to tryton/data/pixmaps/tryton/tryton-start-here.svg diff --git a/share/pixmaps/tryton/tryton-system-file-manager.svg b/tryton/data/pixmaps/tryton/tryton-system-file-manager.svg similarity index 100% rename from share/pixmaps/tryton/tryton-system-file-manager.svg rename to tryton/data/pixmaps/tryton/tryton-system-file-manager.svg diff --git a/share/pixmaps/tryton/tryton-system.svg b/tryton/data/pixmaps/tryton/tryton-system.svg similarity index 100% rename from share/pixmaps/tryton/tryton-system.svg rename to tryton/data/pixmaps/tryton/tryton-system.svg diff --git a/share/pixmaps/tryton/tryton-text-background.svg b/tryton/data/pixmaps/tryton/tryton-text-background.svg similarity index 100% rename from share/pixmaps/tryton/tryton-text-background.svg rename to tryton/data/pixmaps/tryton/tryton-text-background.svg diff --git a/share/pixmaps/tryton/tryton-text-foreground.svg b/tryton/data/pixmaps/tryton/tryton-text-foreground.svg similarity index 100% rename from share/pixmaps/tryton/tryton-text-foreground.svg rename to tryton/data/pixmaps/tryton/tryton-text-foreground.svg diff --git a/share/pixmaps/tryton/tryton-text-markup.svg b/tryton/data/pixmaps/tryton/tryton-text-markup.svg similarity index 100% rename from share/pixmaps/tryton/tryton-text-markup.svg rename to tryton/data/pixmaps/tryton/tryton-text-markup.svg diff --git a/share/pixmaps/tryton/tryton-undo.svg b/tryton/data/pixmaps/tryton/tryton-undo.svg similarity index 100% rename from share/pixmaps/tryton/tryton-undo.svg rename to tryton/data/pixmaps/tryton/tryton-undo.svg diff --git a/share/pixmaps/tryton/tryton-unstar.svg b/tryton/data/pixmaps/tryton/tryton-unstar.svg similarity index 100% rename from share/pixmaps/tryton/tryton-unstar.svg rename to tryton/data/pixmaps/tryton/tryton-unstar.svg diff --git a/share/pixmaps/tryton/tryton-web-browser.svg b/tryton/data/pixmaps/tryton/tryton-web-browser.svg similarity index 100% rename from share/pixmaps/tryton/tryton-web-browser.svg rename to tryton/data/pixmaps/tryton/tryton-web-browser.svg diff --git a/share/pixmaps/tryton/tryton.icns b/tryton/data/pixmaps/tryton/tryton.icns similarity index 100% rename from share/pixmaps/tryton/tryton.icns rename to tryton/data/pixmaps/tryton/tryton.icns diff --git a/share/pixmaps/tryton/tryton.ico b/tryton/data/pixmaps/tryton/tryton.ico similarity index 100% rename from share/pixmaps/tryton/tryton.ico rename to tryton/data/pixmaps/tryton/tryton.ico diff --git a/share/pixmaps/tryton/tryton.png b/tryton/data/pixmaps/tryton/tryton.png similarity index 100% rename from share/pixmaps/tryton/tryton.png rename to tryton/data/pixmaps/tryton/tryton.png diff --git a/tryton/plugins/__init__.py b/tryton/plugins/__init__.py index c97e4452a4..b15fab3623 100644 --- a/tryton/plugins/__init__.py +++ b/tryton/plugins/__init__.py @@ -1,11 +1,10 @@ # This file is part of Tryton. The COPYRIGHT file at the top level of # this repository contains the full copyright notices and license terms. import os -import sys import imp import gettext -from tryton.config import get_config_dir +from tryton.config import get_config_dir, CURRENT_DIR __all__ = ['MODULES', 'register'] @@ -18,10 +17,7 @@ def register(): global MODULES paths = [ os.path.join(get_config_dir(), 'plugins'), - os.path.dirname(__file__), - # py2exe - os.path.join(os.path.abspath(os.path.normpath( - os.path.dirname(sys.argv[0]))), 'plugins'), + os.path.join(CURRENT_DIR, 'plugins'), ] paths = filter(os.path.isdir, paths) diff --git a/tryton/translate.py b/tryton/translate.py index 8b8d8def2a..5303773c71 100644 --- a/tryton/translate.py +++ b/tryton/translate.py @@ -4,10 +4,12 @@ import os import locale import gettext -from tryton.config import CURRENT_DIR import logging import gtk import sys +import pkg_resources + +from tryton.config import CURRENT_DIR _ = gettext.gettext @@ -152,9 +154,10 @@ _LOCALE2WIN32 = { def setlang(lang=None, locale_dict=None): "Set language" - locale_dir = os.path.join(CURRENT_DIR, 'share/locale') + locale_dir = os.path.join(CURRENT_DIR, 'data/locale') if not os.path.isdir(locale_dir): - locale_dir = os.path.join(sys.prefix, 'share/locale') + locale_dir = pkg_resources.resource_filename( + 'tryton', 'data/locale') if lang: encoding = locale.getdefaultlocale()[1] if not encoding: