get latest fix
[mediawiki-setup] / Mediawiki_Setup_Guide
index da3ca082c4c77808cfb7547c75ff56373d156b19..f060408fe457d852a70828a451b3ec0be8a95ea4 100644 (file)
@@ -1,6 +1,6 @@
 == Introduction ==
 
-'''tldr''': For Gnu/Linux (with a bit of Debian bias), a more concise, holistic and automated install than the official Mediawiki docs. Do some initial configuration then download this page and run it, or execute it as you read the well written documentation.
+'''tldr''': For Gnu/Linux (with a bit of Debian bias), a more concise, holistic and automated install than the official Mediawiki docs. Do some initial configuration then download this page and run it, or execute it as you read.
 
 ''' Goals / Why use this guide? '''
 
@@ -161,7 +161,7 @@ mw-ext () {
         mw-clone https://gerrit.wikimedia.org/r/p/mediawiki/extensions/$ext
         if [[ -e $mw/ext/$ext/extension.json ]]; then
             # new style extension. remove old style declaration
-            sed -i '#^require_once( "\\\$IP/extensions/\$ext/\$ext\.php" );#d' $mwc
+            sed -i --follow-symlinks '#^require_once( "\\\$IP/extensions/\$ext/\$ext\.php" );#d' $mwc
             teeu $mwc <<EOF
 wfLoadExtension( '$ext' );
 EOF
@@ -178,8 +178,8 @@ EOF
 mw-skin() {
     local skin=$1
     mw-clone https://gerrit.wikimedia.org/r/p/mediawiki/skins/$skin
-    sed -i '/^wfLoadSkin/d' $mwc
-    sed -i '/^\$wgDefaultSkin/d' $mwc
+    sed -i --follow-symlinks '/^wfLoadSkin/d' $mwc
+    sed -i --follow-symlinks '/^\$wgDefaultSkin/d' $mwc
     teeu $mwc <<EOF
 \$wgDefaultSkin = "${skin,,*}";
 wfLoadSkin( '$skin' );
@@ -468,7 +468,7 @@ EOF
 # Increase from default of 2M to 100M.
 # This will at least allow high res pics etc.
 php_ini=$(php -r 'echo(php_ini_loaded_file());')
-sed -i 's/^\(upload_max_filesize\|post_max_size\)\b.*/\1 = 100M/' $php_ini
+sed -i --follow-symlinks 's/^\(upload_max_filesize\|post_max_size\)\b.*/\1 = 100M/' $php_ini
 if isdeb; then
     service apache2 restart
 else
@@ -604,8 +604,6 @@ else
     # todo, php5-curl equivalent on fedora
     yum -y install texlive-cjk ghostscript ImageMagick texlive ocaml
 fi
-dir=$(dirname $(php -r 'echo(php_ini_loaded_file());'))/../apache2/conf.d
-ln -sf ../../mods-available/curl.ini $dir
 service apache2 restart
 
 cd $mw/extensions/Math/math; make # makes texvc
@@ -728,7 +726,7 @@ fi
 
 Enable account creation that we initially disabled.
 <source lang="bash">
-sed -i "/\\\$wgGroupPermissions\\['\\*'\\]\\['createaccount'\\] = false;/d" $mwc
+sed -i --follow-symlinks "/\\\$wgGroupPermissions\\['\\*'\\]\\['createaccount'\\] = false;/d" $mwc
 </source>
 
 == Additional Configuration with Pywikibot ==
@@ -895,10 +893,13 @@ sudo dd of=$backup_script <<'EOFOUTER'
 last_error=0
 trap 'last_error=$?' ERR
 source ~/mw_vars
+# No strict because the host is likely not named the same as
+# the domain.
+ssh="ssh -oStrictHostKeyChecking=no"
 logfile=/var/log/${mwdomain}_backup.log
 {
 echo "#### starting backup at $(date) ####"
-ssh root@$mwdomain <<ENDSSH
+$ssh root@$mwdomain <<ENDSSH
 set -x
 tee -a $mwc<<'EOF'
 \$wgReadOnly = 'Dumping Database, Access will be restored shortly';
@@ -907,9 +908,12 @@ mkdir -p ~/wiki_backups
 mysqldump -p$dbpass --default-character-set=binary my_wiki  > ~/wiki_backups/wiki_db_backup
 sed -i '\$ d' $mwc # delete read only setting
 ENDSSH
+# add no strict option to the defaults
+
+rdiff() { rdiff-backup --remote-schema "$ssh -C  %s rdiff-backup --server" "$@"; }
 set -x
-rdiff-backup root@$mwdomain::/root/wiki_backups ~/backup/${mwdomain}_wiki_db_backup
-rdiff-backup root@$mwdomain::$mw ~/backup/${mwdomain}_wiki_file_backup
+rdiff root@$mwdomain::/root/wiki_backups ~/backup/${mwdomain}_wiki_db_backup
+rdiff root@$mwdomain::$mw ~/backup/${mwdomain}_wiki_file_backup
 set +x
 echo "=== ending backup at $(date) ===="
 }  &>>$logfile
@@ -926,7 +930,7 @@ If you are like most people and don't use the old-school mail spool, setup the b
 
 '''Optional & requires additional steps'''
 <source lang="bash" type="example">
-sed -i "/^root:/d" /etc/aliases
+sed -i --follow-symlinks "/^root:/d" /etc/aliases
 echo "root: EXAMPLE_ONLY_REPLACE_ME@gmail.com" >> /etc/aliases
 newaliases
 </source>
@@ -1061,7 +1065,7 @@ One issue is that mediawiki.org needs a lot of organizing, deleting, and verifyi
 
 '''Bash here documents, EOF vs 'EOF' '''
 
-Here documents are used throughout this page, some people may not be aware of a small but important syntax. When the delimiter is quoted, as in <<'EOF', then the contents of the here document are exactly verbatim. Otherwise $ and ` are expanded as in bash, and must be quoted by \, which itself must then also be quoted to be used literally.
+Here documents are used throughout this page, some people may not be aware of a small but important syntax. When the delimiter is quoted, as in <<'EOF', then the contents of the here document are exactly verbatim. Otherwise $ and ` are expanded as in bash, and must be escaped by prefixing them with \, which itself must then also be escaped to be used literally.
 
 
 ''' Mediawiki automation tools survey 7/2014 '''