Index: general/sysutils/mc.xml
===================================================================
--- general/sysutils/mc.xml	(revision 276015d2ab129b7977540649423a313215a5953e)
+++ general/sysutils/mc.xml	(revision 3a575ab5dd00ce9125e5743f0a4685cffe64ffe0)
@@ -36,15 +36,4 @@
     full power of the command prompt.</para>
 
-    <caution>
-      <para>The <application>MC</application> package has major issues when
-      used in a UTF-8 based locale because it assumes the characters are
-      always one byte wide.  See <ulink url="&files-anduin;/mc-bad.png">this
-      screenshot</ulink> (taken in a ru_RU.UTF-8 locale).
-      See the <ulink url="&blfs-wiki;/MC">MC Wiki</ulink> page for a way
-      to work around these problems.
-      For a general discussion of these types of issues, see
-      the <xref linkend="locale-issues"/> page.</para>
-    </caution>
-
     <bridgehead renderas="sect3">Package Information</bridgehead>
     <itemizedlist spacing="compact">
@@ -69,8 +58,40 @@
     </itemizedlist>
 
+    <bridgehead renderas="sect3">Additional Downloads</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>Required patch: <ulink
+        url="&patch-root;/mc-&mc-version;-bash32-1.patch"/></para>
+      </listitem>
+      <listitem>
+        <para>Recommended Patch: <ulink
+        url="&patch-root;/mc-&mc-version;-debian_fixes-1.patch"/></para>
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3">Do I Need the Debian Patch?</bridgehead>
+    <para>Midnight Commander without the Debian patch is completely unusable
+    in multibyte locales because it assumes that characters and
+    bytes are the same thing. The issue manifests itself as massive screen
+    contents corruption similar to what is depicted in
+    <ulink url="&files-anduin;/mc-bad.png">this screenshot</ulink>
+    (taken in the ru_RU.UTF-8 locale). For a general discussion of this type
+    of issues, see the <xref linkend="locale-issues"/> page. The Debian patch
+    mostly fixes this issue, and adds support for recoding remote FTP
+    filenames. Debian also fixed 64-bit issues, rare segfaults in
+    <command>mcedit</command>, and improved syntax highlighting.</para>
+    
+    <para>If you do not use a multibyte locale and do not need any of the new
+    features or fixes, the patch is still supposed to be harmless.
+    However, the patch changes the dependencies and build instructions, and
+    in the past it caused unacceptable regressions for non-UTF-8 locale users.
+    Thus, failsafe instructions without the patch are left in the book just
+    in case. Due to the size and unofficial nature of the patch, please
+    do not report bugs in the patched MC to the original MC developers.</para>
+
     <bridgehead renderas="sect3">MC Dependencies</bridgehead>
 
     <bridgehead renderas="sect4">Required</bridgehead>
-    <para role="required"><xref linkend="GLib"/> or
+    <para role="required"><xref linkend="GLib"/> (untested with Debian patch) or
     <xref linkend="glib2"/></para>
 
@@ -79,5 +100,5 @@
     <xref linkend="x-window-system"/>,
     <xref linkend="samba3"/>,
-    <xref linkend="slang"/>,
+    <xref linkend="slang"/> (required when building with Debian patch),
     <xref linkend="zip"/>,
     <xref linkend="unzip"/>, and
@@ -92,9 +113,33 @@
     <title>Installation of MC</title>
 
+    <para>Fix incompatibility of MC-&mc-version; with Bash-3.2:</para>
+<screen><userinput>patch -Np1 -i ../mc-&mc-version;-bash32-1.patch</userinput></screen>
+
+    <para>If desired, apply Debian fixes:</para>
+<screen><userinput>patch -Np1 -i ../mc-&mc-version;-debian_fixes-1.patch</userinput></screen>
+
     <para>Install <application>MC</application> by
     running the following commands:</para>
 
-<screen><userinput>./configure --prefix=/usr &amp;&amp;
-make</userinput></screen>
+<screen><userinput>CPPFLAGS="-DUTF8" ./configure --prefix=/usr \
+            --enable-charset &amp;&amp;
+make
+</userinput></screen>
+
+    <para>MC with Debian patches expects its documentation to be stored in the
+    UTF-8 encoding on disk, and automatically converts it to the locale
+    encoding when displaying on the terminal. This is different from the
+    expectations of the unpatched MC, so the documentation files have to be
+    converted if (and only if) the Debian patch has been applied:</para>
+<screen><userinput>convert-mans ISO-8859-1 UTF-8 lib/mc.hint{,.es,.it,.nl} &amp;&amp;
+convert-mans ISO-8859-2 UTF-8 lib/mc.hint{.cs,.hu,.pl} &amp;&amp;
+convert-mans ISO-8859-5 UTF-8 lib/mc.hint.sr &amp;&amp;
+convert-mans KOI8-R UTF-8 lib/mc.hint.ru &amp;&amp;
+convert-mans KOI8-U UTF-8 lib/mc.hint.uk &amp;&amp;
+convert-mans BIG5 UTF-8 lib/mc.hint.zh &amp;&amp;
+convert-mans ISO-8859-1 UTF-8 doc/{es,it}/mc.hlp.* &amp;&amp;
+convert-mans ISO-8859-2 UTF-8 doc/{hu,pl}/mc.hlp.* &amp;&amp;
+convert-mans ISO-8859-5 UTF-8 doc/sr/mc.hlp.sr &amp;&amp;
+convert-mans KOI8-R UTF-8 doc/ru/mc.hlp.ru</userinput></screen>
 
     <para>This package does not come with a test suite.</para>
@@ -102,5 +147,39 @@
     <para>Now, as the <systemitem class="username">root</systemitem> user:</para>
 
-<screen role="root"><userinput>make install</userinput></screen>
+<screen role="root"><userinput>make install &amp;&amp;
+chmod 1755 /usr/lib/mc/cons.saver</userinput></screen>
+
+  </sect2>
+
+  <sect2 role="commands">
+    <title>Command Explanations</title>
+    
+    <para><parameter>CPPFLAGS="-DUTF8"</parameter>: This parameter activates
+    UTF-8 support in the Debian patch and has no effect without this patch.</para>
+
+    <para><parameter>--enable-charset</parameter>: This option adds support
+    to <command>mcedit</command> for editing files in encodings different from the one implied
+    by the current locale. This feature works in non-UTF-8 locales only,
+    even with the Debian patch.</para>
+    
+    <para><parameter>--with-screen=(slang|mcslang|ncurses)</parameter>: This
+    parameter selects the screen library used by MC. NCurses support is
+    currently buggy (MC does not handle mouse events in xterm correctly).
+    UTF-8 support in the Debian patch is functional
+    only when external <xref linkend="slang"/> is used as a screen library
+    (this is the default).</para>
+    
+    <para><parameter>--with-codepagedir=DIR</parameter>: This parameter was useful
+    only with SAMBA-2.x. New versions of SAMBA do not have codepage files.</para>
+    
+    <para><command>chmod 1755 /usr/lib/mc/cons.saver</command>: The
+    <command>cons.saver</command> program on LFS has to be installed setuid root,
+    because on LFS regular users have no access to <filename>/dev/vcsa*</filename>
+    devices. This step is optional if MC is going to be started from X terminal
+    emulators or ssh sessions only (thus rendering the <command>cons.saver</command>
+    binary completely unneeded).</para>
+
+    <!-- Other distributions make the devices owned by the vcsa group
+         and make the cons.saver program setgid vcsa instead -->
 
   </sect2>
@@ -142,5 +221,5 @@
 
       <seglistitem>
-        <seg>mc, mcedit, mcmfmt, and mcview</seg>
+        <seg>cons.saver, mc, mcedit, mcmfmt, and mcview</seg>
         <seg>None</seg>
         <seg>/usr/share/mc and /usr/lib/mc</seg>
@@ -153,4 +232,15 @@
       <?dbhtml list-presentation="table"?>
 
+      <varlistentry id="conssaver">
+        <term><command>cons.saver</command></term>
+        <listitem>
+          <para>is used internally by <command>mc</command> for saving and
+	  restoring the text behind the panels on Linux text console.</para>
+          <indexterm zone="mc conssaver">
+            <primary sortas="b-conssaver">cons.saver</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
       <varlistentry id="mc-prog">
         <term><command>mc</command></term>
@@ -173,4 +263,14 @@
       </varlistentry>
 
+      <varlistentry id="mcmfmt">
+        <term><command>mcmfmt</command></term>
+        <listitem>
+          <para>is used internally by <command>mcview</command> when viewing mailbox files.</para>
+          <indexterm zone="mc mcmfmt">
+            <primary sortas="b-mcmfmt">mcmfmt</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
       <varlistentry id="mcview">
         <term><command>mcview</command></term>
