# HG changeset patch # User Paul Boddie # Date 1316215621 -7200 # Node ID f160eeb5794b5393552eb0f0b42314911de8fe43 # Parent 659dbbadf40835ce024cf1ca2e5413814dbfcecd Changed the page package installation script environment to include specific configuration file locations. Changed extension package installation to install libraries only in the calculated site-packages location. diff -r 659dbbadf408 -r f160eeb5794b TO_DO.txt --- a/TO_DO.txt Sat Sep 17 00:12:44 2011 +0200 +++ b/TO_DO.txt Sat Sep 17 01:27:01 2011 +0200 @@ -1,4 +1,5 @@ -Generate limited hosting environment site descriptions. +Provide limited hosting environment site descriptions. + Currently, the test for limited hosting is a lack of a site descriptions directory. Add support for changing the wikis list in the farmconfig module. Support existing MoinMoin home directory installations into ~/lib/python2.x/MoinMoin. This affects the page package installation function which expects to find diff -r 659dbbadf408 -r f160eeb5794b examples/moinsetup.cfg.debian --- a/examples/moinsetup.cfg.debian Sat Sep 17 00:12:44 2011 +0200 +++ b/examples/moinsetup.cfg.debian Sat Sep 17 01:27:01 2011 +0200 @@ -1,6 +1,6 @@ [installation] prefix = /usr -site_packages = /var/lib/python-support/python2.5 +site_packages = /var/lib/python-support/python2.6 web_app_dir = /var/www/mywiki web_static_dir = /var/www/mywiki web_site_dir = /etc/apache2/sites-available diff -r 659dbbadf408 -r f160eeb5794b moinsetup.py --- a/moinsetup.py Sat Sep 17 00:12:44 2011 +0200 +++ b/moinsetup.py Sat Sep 17 01:27:01 2011 +0200 @@ -320,7 +320,8 @@ ) source_config_names = ( - "moin_distribution", "prefix", "site_packages", "htdocs_dir_source" + "moin_distribution", "prefix", "site_packages", "prefix_site_packages", + "htdocs_dir_source" ) instance_config_names = ( @@ -545,6 +546,15 @@ return self.moin_distribution and join(self.moin_distribution, "wiki") or \ self.prefix and join(self.prefix, "share", "moin") or None + def get_wikiconfig_directory(self): + + "Return the location of the Wiki configuration." + + if self.site_config: + return split(self.site_config)[0] + else: + return self.common_dir + def get_static_identifier(self): "Return the static URL/directory identifier for the Wiki." @@ -1100,7 +1110,10 @@ this_dir = os.getcwd() os.chdir(extension_dir) - os.system("python setup.py install --prefix=%s" % self.prefix) + + options = "install --install-lib=%s" % self.prefix_site_packages + + os.system("python setup.py %s" % options) os.chdir(this_dir) def install_plugins(self, plugins_dir, plugin_type): @@ -1291,10 +1304,12 @@ path = os.environ.get("PYTHONPATH", "") + conf_dir = self.get_wikiconfig_directory() + if path: - os.environ["PYTHONPATH"] = path + ":" + self.prefix_site_packages + ":" + self.common_dir + os.environ["PYTHONPATH"] = path + ":" + self.prefix_site_packages + ":" + conf_dir else: - os.environ["PYTHONPATH"] = self.prefix_site_packages + ":" + self.common_dir + os.environ["PYTHONPATH"] = self.prefix_site_packages + ":" + conf_dir installer = join(self.prefix_site_packages, "MoinMoin", "packages.py") cmd = "python %s i %s" % (installer, package_filename)