[mediawiki/f15/master] Update to 1.16.2 and fix several bugs. Please check the %changelog for further details.

Axel Thimm athimm at fedoraproject.org
Wed Apr 6 19:28:16 UTC 2011


commit 13c9f1e52033b41e7f823da0682fc88fad29b1eb
Author: Axel Thimm <Axel.Thimm at ATrpms.net>
Date:   Wed Apr 6 21:23:14 2011 +0200

    Update to 1.16.2 and fix several bugs. Please check the %changelog for further details.

 .gitignore                            |    1 +
 README.RPM                            |   12 +-
 mediawiki-1.15.3-commoncode.patch     |  185 ---------------------------
 mediawiki-1.16.2-commoncode.patch     |  225 +++++++++++++++++++++++++++++++++
 mediawiki-1.16.2-enablesuggests.patch |   11 ++
 mediawiki.spec                        |   75 +++++++----
 mw-createinstance.in                  |   29 +++++
 mw-updateallinstances.in              |   10 ++
 sources                               |    2 +-
 9 files changed, 332 insertions(+), 218 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 58ea5bc..03b8c97 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
 mediawiki-1.15.4.tar.gz
+/mediawiki-1.16.2.tar.gz
diff --git a/README.RPM b/README.RPM
index 180cf75..2e9f510 100644
--- a/README.RPM
+++ b/README.RPM
@@ -2,13 +2,15 @@ This mediawiki package supports multiple instances, sometimes also
 called Wiki Farms or Wiki Families, but you can use it for a single
 instance just as well.
 
-This works by copying /var/www/wiki as is to the new desired location
-of your wiki(s) like
+This works by running mw-createinstance <path>, where <path> is the
+new desired location of your wiki(s) like
 
-cp -a /var/www/wiki /srv/my.host/wiki
+mw-createinstance /srv/my.host/wiki
 
-and creating an Apache config entry (if you use Apache for serving
-mediawiki) like
+Note that the parent directories must exist.
+
+You also need to create an Apache config entry (if you use Apache for
+serving mediawiki) like
 
 DocumentRoot /srv/my.host/wiki
 Alias /skins /usr/share/mediawiki/skins
diff --git a/mediawiki-1.16.2-commoncode.patch b/mediawiki-1.16.2-commoncode.patch
new file mode 100644
index 0000000..d87f840
--- /dev/null
+++ b/mediawiki-1.16.2-commoncode.patch
@@ -0,0 +1,225 @@
+diff -rud mediawiki-1.16.2.org/config/index.php mediawiki-1.16.2/config/index.php
+--- mediawiki-1.16.2.org/config/index.php	2009-08-19 19:03:00.000000000 +0200
++++ mediawiki-1.16.2/config/index.php	2011-04-04 23:12:48.902087595 +0200
+@@ -20,8 +20,9 @@
+ # http://www.gnu.org/copyleft/gpl.html
+ 
+ # Attempt to set up the include path, to fix problems with relative includes
+-$IP = dirname( dirname( __FILE__ ) );
++$IP = '/usr/share/mediawiki';
+ define( 'MW_INSTALL_PATH', $IP );
++if (! isset($DIR)) $DIR = getcwd() . "/..";
+ 
+ # Define an entry point and include some files
+ define( "MEDIAWIKI", true );
+diff -rud mediawiki-1.16.2.org/config/Installer.php mediawiki-1.16.2/config/Installer.php
+--- mediawiki-1.16.2.org/config/Installer.php	2011-01-04 07:15:54.000000000 +0100
++++ mediawiki-1.16.2/config/Installer.php	2011-04-05 10:57:41.794334902 +0200
+@@ -1023,7 +1023,7 @@
+ 						if ($wgDatabase->isOpen()) {
+ 							$wgDBOracleDefTS = $conf->DBdefTS_ora;
+ 							$wgDBOracleTempTS = $conf->DBtempTS_ora;
+-							$res = $wgDatabase->sourceFile( "../maintenance/ora/user.sql"  );
++							$res = $wgDatabase->sourceFile( "$IP/maintenance/ora/user.sql"  );
+ 							if ($res !== true) dieout($res);
+ 						} else {
+ 							echo "<li>Invalid database superuser, please supply a valid superuser account.</li>";
+@@ -1201,7 +1201,7 @@
+ 							print " <b class='error'>If the next step fails, see <a href='http://dev.mysql.com/doc/mysql/en/old-client.html'>http://dev.mysql.com/doc/mysql/en/old-client.html</a> for help.</b>";
+ 						}
+ 						print "</li>\n";
+-						$res = $wgDatabase->sourceFile( "../maintenance/users.sql" );
++						$res = $wgDatabase->sourceFile( "$IP/maintenance/users.sql" );
+ 						if ($res !== true) dieout($res);
+ 					}
+ 				}
+@@ -1237,10 +1237,10 @@
+ 			# FIXME: Check for errors
+ 			print "<li>Creating tables...";
+ 			if ($conf->DBtype == 'mysql') {
+-				$res = $wgDatabase->sourceFile( "../maintenance/tables.sql" );
++				$res = $wgDatabase->sourceFile( "$IP/maintenance/tables.sql" );
+ 				if ($res === true) {
+ 					print " done.</li>\n<li>Populating interwiki table... \n";
+-					$res = $wgDatabase->sourceFile( "../maintenance/interwiki.sql" );
++					$res = $wgDatabase->sourceFile( "$IP/maintenance/interwiki.sql" );
+ 				}
+ 				if ($res === true) {
+ 					print " done.</li>\n";
+@@ -1296,7 +1296,7 @@
+ 				} else {
+ 					# Yes, so run the grants
+ 					echo( "<li>" . htmlspecialchars( "Granting user permissions to $wgDBuser on $wgDBname..." ) );
+-					$res = $wgDatabase->sourceFile( "../maintenance/users.sql" );
++					$res = $wgDatabase->sourceFile( "$IP/maintenance/users.sql" );
+ 					if ( $res === true ) {
+ 						echo( " success.</li>\n" );
+ 					} else {
+@@ -1922,13 +1922,8 @@
+ # Further documentation for configuration settings may be found at:
+ # http://www.mediawiki.org/wiki/Manual:Configuration_settings
+ 
+-# If you customize your file layout, set \$IP to the directory that contains
+-# the other MediaWiki files. It will be used as a base to locate files.
+-if( defined( 'MW_INSTALL_PATH' ) ) {
+-	\$IP = MW_INSTALL_PATH;
+-} else {
+-	\$IP = dirname( __FILE__ );
+-}
++\$IP = '/usr/share/mediawiki';
++if (! isset(\$DIR)) \$DIR = getcwd();
+ 
+ \$path = array( \$IP, \"\$IP/includes\", \"\$IP/languages\" );
+ set_include_path( implode( PATH_SEPARATOR, \$path ) . PATH_SEPARATOR . get_include_path() );
+diff -rud mediawiki-1.16.2.org/includes/DefaultSettings.php mediawiki-1.16.2/includes/DefaultSettings.php
+--- mediawiki-1.16.2.org/includes/DefaultSettings.php	2011-01-31 23:34:51.000000000 +0100
++++ mediawiki-1.16.2/includes/DefaultSettings.php	2011-04-06 20:17:57.596459871 +0200
+@@ -154,7 +154,7 @@
+ $wgStyleSheetPath = &$wgStylePath;
+ $wgArticlePath      = false; ///< default to "{$wgScript}/$1" or "{$wgScript}?title=$1", depending on $wgUsePathInfo
+ $wgUploadPath       = false; ///< defaults to "{$wgScriptPath}/images"
+-$wgUploadDirectory	= false; ///< defaults to "{$IP}/images"
++$wgUploadDirectory	= false; ///< defaults to "{$DIR}/images"
+ $wgHashedUploadDirectory	= true;
+ $wgLogo				= false; ///< defaults to "{$wgStylePath}/common/images/wiki.png"
+ $wgFavicon			= '/favicon.ico';
+@@ -1957,7 +1957,7 @@
+  */
+ $wgUseTeX = false;
+ /** Location of the texvc binary */
+-$wgTexvc = './math/texvc';
++$wgTexvc = "$IP/math/texvc";
+ /**
+   * Texvc background color
+   * use LaTeX color format as used in \special function
+diff -rud mediawiki-1.16.2.org/includes/Setup.php mediawiki-1.16.2/includes/Setup.php
+--- mediawiki-1.16.2.org/includes/Setup.php	2010-01-29 05:29:26.000000000 +0100
++++ mediawiki-1.16.2/includes/Setup.php	2011-04-05 00:03:19.580335385 +0200
+@@ -45,7 +45,7 @@
+ if( $wgLogo === false ) $wgLogo = "$wgStylePath/common/images/wiki.png";
+ 
+ if( $wgUploadPath === false ) $wgUploadPath = "$wgScriptPath/images";
+-if( $wgUploadDirectory === false ) $wgUploadDirectory = "$IP/images";
++if( $wgUploadDirectory === false ) $wgUploadDirectory = "$DIR/images";
+ 
+ if( $wgMathPath === false ) $wgMathPath = "{$wgUploadPath}/math";
+ if( $wgMathDirectory === false ) $wgMathDirectory = "{$wgUploadDirectory}/math";
+diff -rud mediawiki-1.16.2.org/includes/templates/NoLocalSettings.php mediawiki-1.16.2/includes/templates/NoLocalSettings.php
+--- mediawiki-1.16.2.org/includes/templates/NoLocalSettings.php	2010-02-11 18:25:10.000000000 +0100
++++ mediawiki-1.16.2/includes/templates/NoLocalSettings.php	2011-04-05 00:04:21.691301702 +0200
+@@ -58,7 +58,7 @@
+ 		<h1>MediaWiki <?php echo htmlspecialchars( $wgVersion ) ?></h1>
+ 		<div class='error'>
+ 		<?php
+-		if ( file_exists( 'config/LocalSettings.php' ) ) {
++		if ( file_exists( $DIR . 'config/LocalSettings.php' ) ) {
+ 			echo( 'To complete the installation, move <tt>config/LocalSettings.php</tt> to the parent directory.' );
+ 		} else {
+ 			echo( "Please <a href=\"" . htmlspecialchars( $path ) . "config/index." . htmlspecialchars( $ext ) . "\" title='setup'> set up the wiki</a> first." );
+diff -rud mediawiki-1.16.2.org/includes/WebStart.php mediawiki-1.16.2/includes/WebStart.php
+--- mediawiki-1.16.2.org/includes/WebStart.php	2009-05-07 20:30:26.000000000 +0200
++++ mediawiki-1.16.2/includes/WebStart.php	2011-04-05 00:01:32.882085561 +0200
+@@ -54,15 +54,8 @@
+ # its purpose.
+ define( 'MEDIAWIKI', true );
+ 
+-# Full path to working directory.
+-# Makes it possible to for example to have effective exclude path in apc.
+-# Also doesn't break installations using symlinked includes, like
+-# dirname( __FILE__ ) would do.
+-$IP = getenv( 'MW_INSTALL_PATH' );
+-if ( $IP === false ) {
+-	$IP = realpath( '.' );
+-}
+-
++if (! isset($DIR)) $DIR = getcwd();
++$IP = '/usr/share/mediawiki';
+ 
+ # Start profiler
+ if( file_exists("$IP/StartProfiler.php") ) {
+@@ -106,14 +99,14 @@
+ 	# LocalSettings.php is the per site customization file. If it does not exit
+ 	# the wiki installer need to be launched or the generated file moved from
+ 	# ./config/ to ./
+-	if( !file_exists( "$IP/LocalSettings.php" ) ) {
++	if( !file_exists( "$DIR/LocalSettings.php" ) ) {
+ 		require_once( "$IP/includes/DefaultSettings.php" ); # used for printing the version
+ 		require_once( "$IP/includes/templates/NoLocalSettings.php" );
+ 		die();
+ 	}
+ 
+-	# Include site settings. $IP may be changed (hopefully before the AutoLoader is invoked)
+-	require_once( "$IP/LocalSettings.php" );
++	# Include site settings.
++	require_once( "$DIR/LocalSettings.php" );
+ }
+ wfProfileOut( 'WebStart.php-conf' );
+ 
+diff -rud mediawiki-1.16.2.org/maintenance/checkSyntax.php mediawiki-1.16.2/maintenance/checkSyntax.php
+--- mediawiki-1.16.2.org/maintenance/checkSyntax.php	2010-03-10 14:38:51.000000000 +0100
++++ mediawiki-1.16.2/maintenance/checkSyntax.php	2011-04-04 23:00:56.689335854 +0200
+@@ -149,11 +149,11 @@
+ 		}
+ 
+ 		// Manually add two user-editable files that are usually sources of problems
+-		if ( file_exists( "$IP/LocalSettings.php" ) ) {
+-			$this->mFiles[] = "$IP/LocalSettings.php";
++		if ( file_exists( "$DIR/LocalSettings.php" ) ) {
++			$this->mFiles[] = "$DIR/LocalSettings.php";
+ 		}
+-		if ( file_exists( "$IP/AdminSettings.php" ) ) {
+-			$this->mFiles[] = "$IP/AdminSettings.php";
++		if ( file_exists( "$DIR/AdminSettings.php" ) ) {
++			$this->mFiles[] = "$DIR/AdminSettings.php";
+ 		}
+ 
+ 		$this->output( 'done.', 'listfiles' );
+diff -rud mediawiki-1.16.2.org/maintenance/language/validate.php mediawiki-1.16.2/maintenance/language/validate.php
+--- mediawiki-1.16.2.org/maintenance/language/validate.php	2008-05-20 19:13:28.000000000 +0200
++++ mediawiki-1.16.2/maintenance/language/validate.php	2011-04-04 22:58:05.635085532 +0200
+@@ -13,7 +13,7 @@
+ define( 'MEDIAWIKI', 1 );
+ define( 'NOT_REALLY_MEDIAWIKI', 1 );
+ 
+-$IP = dirname( __FILE__ ) . '/../..';
++$IP = '/usr/share/mediawiki';
+ 
+ require_once( "$IP/includes/Defines.php" );
+ require_once( "$IP/languages/Language.php" );
+diff -rud mediawiki-1.16.2.org/maintenance/Maintenance.php mediawiki-1.16.2/maintenance/Maintenance.php
+--- mediawiki-1.16.2.org/maintenance/Maintenance.php	2011-01-04 07:15:54.000000000 +0100
++++ mediawiki-1.16.2/maintenance/Maintenance.php	2011-04-05 00:59:33.722084924 +0200
+@@ -407,10 +407,8 @@
+ 		# Define us as being in MediaWiki
+ 		define( 'MEDIAWIKI', true );
+ 
+-		# Setup $IP, using MW_INSTALL_PATH if it exists
+-		$IP = strval( getenv( 'MW_INSTALL_PATH' ) ) !== ''
+-			? getenv( 'MW_INSTALL_PATH' )
+-			: realpath( dirname( __FILE__ ) . '/..' );
++		# Setup $IP
++		$IP = '/usr/share/mediawiki';
+ 
+ 		$wgCommandLineMode = true;
+ 		# Turn off output buffering if it's on
+@@ -736,7 +734,7 @@
+ 		if ( isset( $this->mOptions['conf'] ) ) {
+ 			$settingsFile = $this->mOptions['conf'];
+ 		} else {
+-			$settingsFile = "$IP/LocalSettings.php";
++			$settingsFile = "LocalSettings.php";
+ 		}
+ 		if ( isset( $this->mOptions['wiki'] ) ) {
+ 			$bits = explode( '-', $this->mOptions['wiki'] );
+diff -rud mediawiki-1.16.2.org/maintenance/tests/bootstrap.php mediawiki-1.16.2/maintenance/tests/bootstrap.php
+--- mediawiki-1.16.2.org/maintenance/tests/bootstrap.php	2010-02-07 17:42:50.000000000 +0100
++++ mediawiki-1.16.2/maintenance/tests/bootstrap.php	2011-04-04 22:58:05.638085481 +0200
+@@ -8,7 +8,7 @@
+  */
+ 
+ global $wgCommandLineMode, $IP, $optionsWithArgs;
+-$IP = dirname( dirname( dirname( __FILE__ ) ) );
++$IP = '/usr/share/mediawiki';
+ define( 'MW_PHPUNIT_TEST', true );
+ 
+ require_once( "$IP/maintenance/commandLine.inc" );
diff --git a/mediawiki-1.16.2-enablesuggests.patch b/mediawiki-1.16.2-enablesuggests.patch
new file mode 100644
index 0000000..e495306
--- /dev/null
+++ b/mediawiki-1.16.2-enablesuggests.patch
@@ -0,0 +1,11 @@
+--- mediawiki-1.16.2/includes/DefaultSettings.php~	2011-04-05 00:06:11.000000000 +0200
++++ mediawiki-1.16.2/includes/DefaultSettings.php	2011-04-06 17:27:50.210084838 +0200
+@@ -2065,7 +2065,7 @@
+  * (results are passed around in OpenSearch format)
+  * Requires $wgEnableOpenSearchSuggest = true;
+  */
+-$wgEnableMWSuggest = false;
++$wgEnableMWSuggest = true;
+ 
+ /**
+  * Enable OpenSearch suggestions requested by MediaWiki. Set this to
diff --git a/mediawiki.spec b/mediawiki.spec
index ea08cf2..cbbbb14 100644
--- a/mediawiki.spec
+++ b/mediawiki.spec
@@ -1,14 +1,17 @@
 Summary: A wiki engine
 Name: mediawiki
-Version: 1.15.4
-Release: 55%{?dist}
+Version: 1.16.2
+Release: 56%{?dist}
 License: GPLv2+
 Group: Development/Tools
 URL: http://www.mediawiki.org/
 Source0: http://download.wikimedia.org/mediawiki/1.15/mediawiki-%{version}.tar.gz
 Source1: mediawiki.conf
 Source2: README.RPM
-Patch0: mediawiki-1.15.3-commoncode.patch
+Source3: mw-createinstance.in
+Source4: mw-updateallinstances.in
+Patch0: mediawiki-1.16.2-commoncode.patch
+Patch1: mediawiki-1.16.2-enablesuggests.patch
 BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
 ExcludeArch: sparc64 s390 s390x
 BuildRequires: ocaml >= 3.06
@@ -21,10 +24,8 @@ Foundation websites. Compared to other wikis, it has an excellent
 range of features and support for high-traffic websites using multiple
 servers
 
-This package supports wiki farms. Copy /var/www/wiki over to the
-desired wiki location and configure it through the web
-interface. Remember to remove the config dir after completing the
-configuration.
+This package supports wiki farms. Read the instructions for creating wiki instances under %{_defaultdocdir}/%{name}-%{version}/README.RPM.
+Remember to remove the config dir after completing the configuration.
 
 %package nomath
 Summary: mediawiki w/o texvc.
@@ -32,6 +33,7 @@ Group: Development/Tools
 # to make sure the "apache" group is created before mediawiki is installed
 Requires(pre): httpd
 Requires: php-common >= 5, php-xml
+Conflicts: php-common = 5.3.1
 Requires: php-mysql, php-pgsql
 Requires: diffutils, ImageMagick, php-gd
 
@@ -54,6 +56,7 @@ This subpackage contains the math support for mediawiki.
 %prep
 %setup -q
 %patch0 -p1 -b .commoncode
+%patch1 -p1 -b .enablesuggests
 
 %build
 cd math
@@ -66,6 +69,7 @@ rm -rf %{buildroot}
 mkdir -p %{buildroot}%{_defaultdocdir}/%{name}-%{version}
 mv -f COPYING FAQ HISTORY README RELEASE-NOTES UPGRADE CREDITS INSTALL docs \
   %{buildroot}%{_defaultdocdir}/%{name}-%{version}/
+
 install -p %{SOURCE2} %{buildroot}%{_defaultdocdir}/%{name}-%{version}/
 
 # now copy the rest to the buildroot.
@@ -77,56 +81,73 @@ rm -fr %{buildroot}%{_datadir}/mediawiki/{t,test,tests}
 rm -fr %{buildroot}%{_datadir}/mediawiki/includes/zhtable
 find %{buildroot}%{_datadir}/mediawiki/ \
   \( -name .htaccess -or -name \*.cmi \) \
-  | xargs rm
+  | xargs -r rm
 
 # fix permissions
 chmod +x %{buildroot}%{_datadir}/mediawiki/bin/*
-find %{buildroot}%{_datadir}/mediawiki -name \*.pl | xargs chmod +x
+find %{buildroot}%{_datadir}/mediawiki -name \*.pl | xargs -r chmod +x
 
 # move arch dependent parts
-if test ! -d %{buildroot}%{_libdir}/mediawiki/math; then
-  mkdir -p %{buildroot}%{_libdir}/mediawiki
-  mv %{buildroot}%{_datadir}/mediawiki/math \
-     %{buildroot}%{_libdir}/mediawiki/
-fi
+mkdir -p %{buildroot}%{_libdir}/mediawiki/math
+mv %{buildroot}%{_datadir}/mediawiki/math/texvc \
+   %{buildroot}%{_libdir}/mediawiki/math/
+rm -fr %{buildroot}%{_libdir}/mediawiki/math/*
+ln -s %{_libdir}/mediawiki/math/texvc %{buildroot}%{_datadir}/mediawiki/math/
 
 # remove version control/patch files
-find %{buildroot} -name .svnignore | xargs rm
-find %{buildroot} -name \*.commoncode | xargs rm
+find %{buildroot} -name .svnignore | xargs -r rm
+find %{buildroot} -name \*.commoncode | xargs -r rm
 
-# create a default instance of which other instances can be copied
+# placeholder for a default instance
 mkdir -p %{buildroot}/var/www/wiki
-cd %{buildroot}/var/www/wiki/
-mkdir -p images/{archive,deleted,temp,thumb}
-cp -a %{buildroot}%{_datadir}/mediawiki/config .
-ln -s %{_datadir}/mediawiki/index.php index.php
-ln -s %{_datadir}/mediawiki/api.php api.php
-mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d/
-install -p %{SOURCE1} %{buildroot}%{_sysconfdir}/httpd/conf.d/mediawiki.conf
 
+mkdir -p %{buildroot}%{_sysconfdir}/httpd/conf.d/
+install -p -m 0644 %{SOURCE1} \
+  %{buildroot}%{_sysconfdir}/httpd/conf.d/mediawiki.conf
+
+# tools for keeping mediawiki instances current
+mkdir -p %{buildroot}%{_sbindir}
+sed -e's, at datadir@,%{_datadir},g' -e's, at sysconfdir@,%{_sysconfdir},g' \
+  < %{SOURCE3} > %{buildroot}%{_sbindir}/mw-createinstance
+sed -e's, at datadir@,%{_datadir},g' -e's, at sysconfdir@,%{_sysconfdir},g' \
+  < %{SOURCE4} > %{buildroot}%{_sbindir}/mw-updateallinstances
+chmod 0755 %{buildroot}%{_sbindir}/mw-*
+mkdir %{buildroot}%{_sysconfdir}/mediawiki
+echo /var/www/wiki > %{buildroot}%{_sysconfdir}/mediawiki/instances
 
 %clean
 rm -rf %{buildroot}
 
+%post
+%{_sbindir}/mw-updateallinstances >> /var/log/mediawiki-updates.log 2>&1 || :
+
 %files
 %defattr(-,root,root,-)
 
 %files nomath
 %{_defaultdocdir}/%{name}-%{version}
 %{_datadir}/mediawiki
+%exclude %{_datadir}/mediawiki/math
 %attr(-,apache,apache) %dir %{_datadir}/mediawiki/config
 %{_datadir}/mediawiki/config/*
 /var/www/wiki
-%attr(-,apache,apache) %dir /var/www/wiki/config
-/var/www/wiki/config/*
 %config(noreplace) %{_sysconfdir}/httpd/conf.d/mediawiki.conf
+%dir %{_sysconfdir}/mediawiki
+%config(noreplace) %{_sysconfdir}/mediawiki/instances
+%{_sbindir}/mw-*
 
 %files math
 %defattr(-,root,root,-)
+%{_datadir}/mediawiki/math
 %{_libdir}/mediawiki
 
-
 %changelog
+* Sun Apr  3 2011 Axel Thimm <Axel.Thimm at ATrpms.net> - 1.16.2-56
+- Update to 1.16.2.
+- Fixes RH bugs #614065, #644325, #682281, #662402
+- Enable suggestions while typing in search boxes by default.
+- Add some basic mediawiki management scripts.
+
 * Fri Sep 10 2010 Nick Bebout <nb at fedoraproject.org> - 1.15.4-55
 - Mark mediawiki.conf as config(noreplace) (RH bug #614396).
 
diff --git a/mw-createinstance.in b/mw-createinstance.in
new file mode 100644
index 0000000..3986aa7
--- /dev/null
+++ b/mw-createinstance.in
@@ -0,0 +1,29 @@
+#! /bin/sh
+
+path="$1"
+
+if dirname "$1" | grep '^[^/]' > /dev/null || test ! -d `dirname "$1"`; then
+  cat >&2 <<EOF
+$0: invalid parameter
+Usage: $0 PATH
+  PATH is the path of the instance's wiki root
+  The parent directories must exist.
+EOF
+fi
+
+if ! test -e "$path"; then
+  mkdir "$path"
+fi
+
+if ! test -e "$path"/LocalSettings.php; then
+  cp -a "@datadir@"/mediawiki/config "$path"
+fi
+
+if ! test -e "$path"/images; then
+  mkdir "$path"/images
+  chown apache:apache "$path"/images
+fi
+for f in index.php api.php opensearch_desc.php; do
+  rm -f "$path"/$f
+  ln -s "@datadir@"/mediawiki/$f "$path"/$f
+done
diff --git a/mw-updateallinstances.in b/mw-updateallinstances.in
new file mode 100644
index 0000000..f6b41d3
--- /dev/null
+++ b/mw-updateallinstances.in
@@ -0,0 +1,10 @@
+#! /bin/sh
+
+cat @sysconfdir@/mediawiki/instances | while read path; do
+  echo "$path" | grep '^ *#' > /dev/null && continue
+  mw-createinstance "$path"
+  if test -e "$path"/LocalSettings.php; then
+    cd "$path"
+    php @datadir@/mediawiki/maintenance/update.php --quick
+  fi
+done
diff --git a/sources b/sources
index 97c55e1..37cd1a3 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-9c37dee8addc27b2051ee2eebc238b4d  mediawiki-1.15.4.tar.gz
+cc477d57d3df7b60558aa50a91dbca36  mediawiki-1.16.2.tar.gz


More information about the scm-commits mailing list