Index: general/graphlib/gegl.xml
===================================================================
--- general/graphlib/gegl.xml	(revision 89b38c1ee4a622ac38faa5b0a607891e853147f6)
+++ general/graphlib/gegl.xml	(revision 06cdf4885ec5004c994ea8c37fc5c54d6ba7b9b2)
@@ -5,10 +5,10 @@
   %general-entities;
 
-  <!ENTITY gegl-download-http "https://download.gimp.org/pub/gegl/0.3/gegl-&gegl-version;.tar.bz2">
+  <!ENTITY gegl-download-http "https://download.gimp.org/pub/gegl/0.4/gegl-&gegl-version;.tar.bz2">
   <!ENTITY gegl-download-ftp  " ">
-  <!ENTITY gegl-md5sum        "e6758d2526c27dd3a34d3470aa844112">
-  <!ENTITY gegl-size          "6.4 MB">
-  <!ENTITY gegl-buildsize     "127 MB (add 22 MB for tests)">
-  <!ENTITY gegl-time          "0.8 SBU (using parallelism=4; add 0.4 SBU for tests)">
+  <!ENTITY gegl-md5sum        "70c054f584d32cd03a15b87fd8ace9e4">
+  <!ENTITY gegl-size          "6.5 MB">
+  <!ENTITY gegl-buildsize     "127 MB (add 21 MB for tests)">
+  <!ENTITY gegl-time          "1.5 SBU (add 0.4 SBU for tests)">
 ]>
 
@@ -67,4 +67,15 @@
         <para>
           Estimated build time: &gegl-time;
+        </para>
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3">Additional Downloads</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>
+          Required patch:
+          <ulink url="&patch-root;/gegl-&gegl-version;-ffmpeg4-1-patch"/>
+          (if a version of ffmpeg &gt;= 3.5 has been installed)
         </para>
       </listitem>
@@ -122,28 +133,28 @@
     </para>
 
+    <para>
+      <!-- separated because the patch is minimal (lacks configure changes) and
+           will break builds if older ffmpeg is installed -->
+      If you have installed <xref linkend="ffmpeg"/> apply the patch:
+    </para>
+
+<screen><userinput>patch -Np1 -i ../gegl-&gegl-version;-ffmpeg4-1.patch</userinput></screen>
+
+    <para>
+      Install <application>gegl</application> by running the following commands:
+    </para>
+
 <screen><userinput>./configure --prefix=/usr &amp;&amp;
 make</userinput></screen>
 
     <para>
-      To test the results, issue: <command>make check</command>. 
-      Several tests are not run due to missing data.
-     <!-- for me, no failures : but I don't have all the optional deps,
-       no idea which test used to fail. Ken
-      To test the results, issue: <command>make -k check</command>. One
-      test is known to fail.
-      
-      For version 0.3.22, the tests failed with 
-      /bin/sh: line 1: ../../examples/gegl-video: No such file or directory
-
-      Same failures for 0.3.26.
-      No failures in 0.3.28, neither does it require a UTF-8 locale
-
-      0.3.30
-      /bin/sh: line 1: ../../examples/gegl-video: No such file or directory
-      Seven instances
-
-      Also several warnings: Using AVStream.codec to pass codec parameters 
-      to muxers is deprecated
-      -->
+      To test the results, issue: <command>make check</command>.
+      Many tests are skipped and there are some warnings.
+     <!-- in 0.4.0 no failures, but the video tests have several
+       Failed to parse extradata messages.  The warnings are about
+      missing reference, assuming SUCCESS
+      and lots of Missing fast-path babl conversion detected
+      also GEGL-WARNING for runtime check failed and for
+      operation desired unknown paramspec type for seed -->
     </para>
 
@@ -152,8 +163,4 @@
     </para>
 
-<!-- With 0.3.28 make install creates gegl/images and put three pngs
-  there.  I was going to keep this as commented (after make install
-  but doing that adds a blank line in the box.
-install -d -v -m755 /usr/share/gtk-doc/html/gegl/images &amp;&amp; -->
 <screen role="root"><userinput>make install &amp;&amp;
 install -v -m644 docs/*.{css,html} /usr/share/gtk-doc/html/gegl &amp;&amp;
@@ -198,7 +205,8 @@
 
       <seglistitem>
-        <seg>gegl</seg>
-        <seg>libgegl-0.2.so and libraries in /usr/lib/gegl-0.2</seg>
-        <seg>/usr/include/gegl-0.2</seg>
+        <seg>gcut, gegl, gegl-imgcmp</seg>
+        <seg>libgegl-0.4.so, libgegl-npd-0.4.so, libgegl-sc-0.4.so and libraries in
+        /usr/lib/gegl-0.4</seg>
+        <seg>/usr/include/gegl-0.4</seg>
       </seglistitem>
     </segmentedlist>
@@ -209,4 +217,16 @@
       <?dbhtml list-presentation="table"?>
 
+      <varlistentry id="gcut">
+        <term><command>gcut</command></term>
+        <listitem>
+          <para>
+            is a video editing engine for GEGL.
+          </para>
+          <indexterm zone="gegl gcut">
+            <primary sortas="b-gcut">gcut</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
       <varlistentry id="gegl-prog">
         <term><command>gegl</command></term>
@@ -221,6 +241,19 @@
       </varlistentry>
 
-      <varlistentry id="libgegl-0.2">
-        <term><filename class='libraryfile'>libgegl-0.2.so</filename></term>
+      <varlistentry id="gegl-imgcmp">
+        <term><command>gegl-imgcmp</command></term>
+        <listitem>
+          <para>
+            is a simple image difference detection tool for use in regression
+            testing.
+          </para>
+          <indexterm zone="gegl gegl-imgcmp">
+            <primary sortas="b-gegl-imgcmp">gegl-imgcmp</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="libgegl-0.4">
+        <term><filename class='libraryfile'>libgegl-0.4.so</filename></term>
         <listitem>
           <para>
@@ -228,9 +261,34 @@
             image editing on larger than RAM buffers.
           </para>
-          <indexterm zone="gegl libgegl-0.2">
-            <primary sortas="c-libgegl-0.2">libgegl-0.2.so</primary>
-          </indexterm>
-        </listitem>
-      </varlistentry>
+          <indexterm zone="gegl libgegl-0.4">
+            <primary sortas="c-libgegl-0.4">libgegl-0.4.so</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="libgegl-npd-0.4">
+        <term><filename class='libraryfile'>libgegl-npd-0.4.so</filename></term>
+        <listitem>
+          <para>
+            is the GEGL N-point image deformation library.
+          </para>
+          <indexterm zone="gegl libgegl-npd-0.4">
+            <primary sortas="c-libgegl-npd-0.4">libgegl-npd-0.4.so</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry id="libgegl-sc-0.4">
+        <term><filename class='libraryfile'>libgegl-sc-0.4.so</filename></term>
+        <listitem>
+          <para>
+            is the GEGL Seamless Cloning library.
+          </para>
+          <indexterm zone="gegl libgegl-sc-0.4">
+            <primary sortas="c-libgegl-sc-0.4">libgegl-sc-0.4.so</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+
     </variablelist>
   </sect2>
Index: general/graphlib/graphlib.xml
===================================================================
--- general/graphlib/graphlib.xml	(revision 89b38c1ee4a622ac38faa5b0a607891e853147f6)
+++ general/graphlib/graphlib.xml	(revision 06cdf4885ec5004c994ea8c37fc5c54d6ba7b9b2)
@@ -38,4 +38,5 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libjpeg-turbo.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libmng.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libmypaint.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libpng.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libraw.xml"/>
@@ -43,4 +44,5 @@
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libtiff.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="libwebp.xml"/>
+  <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="mypaint-brushes.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="newt.xml"/>
   <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="opencv.xml"/>
Index: general/graphlib/libmypaint.xml
===================================================================
--- general/graphlib/libmypaint.xml	(revision 06cdf4885ec5004c994ea8c37fc5c54d6ba7b9b2)
+++ general/graphlib/libmypaint.xml	(revision 06cdf4885ec5004c994ea8c37fc5c54d6ba7b9b2)
@@ -0,0 +1,162 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+  <!ENTITY % general-entities SYSTEM "../../general.ent">
+  %general-entities;
+
+  <!ENTITY libmypaint-download-http "https://github.com/mypaint/libmypaint/releases/download/v1.3.0/libmypaint-&libmypaint-version;.tar.xz">
+  <!ENTITY libmypaint-download-ftp  "">
+  <!ENTITY libmypaint-md5sum        "2e7200c7873514dfca26eea9e3d273f5">
+  <!ENTITY libmypaint-size          "428 KB">
+  <!ENTITY libmypaint-buildsize     "6.4 MB (+0.5 MB if running the tests)">
+  <!ENTITY libmypaint-time          "less than 0.1 SBU (+0.4 SBU if running the tests)">
+]>
+
+<sect1 id="libmypaint" xreflabel="libmypaint-&libmypaint-version;">
+  <?dbhtml filename="libmypaint.html"?>
+
+  <sect1info>
+    <othername>$LastChangedBy$</othername>
+    <date>$Date$</date>
+  </sect1info>
+
+  <title>libmypaint-&libmypaint-version;</title>
+
+  <indexterm zone="libmypaint">
+    <primary sortas="a-libmypaint">libmypaint</primary>
+  </indexterm>
+
+  <sect2 role="package">
+    <title>Introduction to libmypaint</title>
+
+    <para>
+      The <application>libmypaint</application> package, a.k.a. "brushlib", is a
+      library for making brushstrokes which is used by MyPaint and other
+      projects.
+    </para>
+
+    &lfs82_checked;
+
+    <bridgehead renderas="sect3">Package Information</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>
+          Download (HTTP): <ulink url="&libmypaint-download-http;"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download (FTP): <ulink url="&libmypaint-download-ftp;"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download MD5 sum: &libmypaint-md5sum;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download size: &libmypaint-size;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Estimated disk space required: &libmypaint-buildsize;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Estimated build time: &libmypaint-time;
+        </para>
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3">libmypaint Dependencies</bridgehead>
+
+    <bridgehead renderas="sect4">Required</bridgehead>
+    <para role="required">
+      <xref linkend="json-c"/>
+    </para>
+
+    <bridgehead renderas="sect4">Recommended</bridgehead>
+    <para role="recommended">
+      <xref linkend="glib2"/>,
+      <xref linkend="gobject-introspection"/>
+    </para>
+
+    <bridgehead renderas="sect4">Optional</bridgehead>
+    <para role="optional">
+      <xref linkend="doxygen"/> (to create XML docs),
+      <ulink url="https://download.gimp.org/pub/gegl/0.3/">gegl (0.3 versions only)</ulink> and
+      <ulink url="https://github.com/gperftools/gperftools">gperftools</ulink>
+    </para>
+
+    <para condition="html" role="usernotes">
+      User Notes: <ulink url="&blfs-wiki;/libmypaint"/>
+    </para>
+  </sect2>
+
+  <sect2 role="installation">
+    <title>Installation of libmypaint</title>
+
+    <para>
+      Install <application>libmypaint</application> by running the following
+      commands:
+    </para>
+
+<screen><userinput>./configure --prefix=/usr &amp;&amp;
+make</userinput></screen>
+
+    <para>
+      To test the results, issue: <command>make check</command>.
+    </para>
+
+    <para>
+      Now, as the <systemitem class="username">root</systemitem> user:
+    </para>
+
+<screen role="root"><userinput>make install</userinput></screen>
+  </sect2>
+
+  <!--Required section-->
+  <sect2 role="content">
+    <title>Contents</title>
+
+    <segmentedlist>
+      <segtitle>Installed Programs</segtitle>
+      <segtitle>Installed Libraries</segtitle>
+      <segtitle>Installed Directory</segtitle>
+
+      <seglistitem>
+        <seg>
+          None.
+        </seg>
+        <seg>
+          libmypaint.so (and optionally libmypaint-gegl.so which is not
+          used by any packages in this book).
+        </seg>
+        <seg>
+          /usr/include/libmypaint
+        </seg>
+      </seglistitem>
+    </segmentedlist>
+
+    <variablelist>
+      <bridgehead renderas="sect3">Short Descriptions</bridgehead>
+      <?dbfo list-presentation="list"?>
+      <?dbhtml list-presentation="table"?>
+
+      <varlistentry id="libmypaint-lib">
+        <term><filename class="libraryfile">libmypaint.so</filename></term>
+        <listitem>
+          <para>
+            contains functions for making brushstrokes.
+          </para>
+          <indexterm zone="libmypaint libmypaint-lib">
+            <primary sortas="c-libmypaint">libmypaint.so</primary>
+          </indexterm>
+        </listitem>
+      </varlistentry>
+    </variablelist>
+  </sect2>
+</sect1>
Index: general/graphlib/mypaint-brushes.xml
===================================================================
--- general/graphlib/mypaint-brushes.xml	(revision 06cdf4885ec5004c994ea8c37fc5c54d6ba7b9b2)
+++ general/graphlib/mypaint-brushes.xml	(revision 06cdf4885ec5004c994ea8c37fc5c54d6ba7b9b2)
@@ -0,0 +1,155 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
+   "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
+  <!ENTITY % general-entities SYSTEM "../../general.ent">
+  %general-entities;
+
+  <!ENTITY mypaint-brushes-download-http "https://github.com/Jehan/mypaint-brushes/archive/v&mypaint-brushes-version;.tar.gz">
+  <!ENTITY mypaint-brushes-download-ftp  "">
+  <!ENTITY mypaint-brushes-md5sum        "679190d88f67a94db57ac99017f966f5">
+  <!ENTITY mypaint-brushes-size          "2.4 MB">
+  <!ENTITY mypaint-brushes-buildsize     "8.8 MB">
+  <!ENTITY mypaint-brushes-time          "less than 0.1 SBU">
+]>
+
+<sect1 id="mypaint-brushes" xreflabel="mypaint-brushes-&mypaint-brushes-version;">
+  <?dbhtml filename="mypaint-brushes.html"?>
+
+  <sect1info>
+    <othername>$LastChangedBy$</othername>
+    <date>$Date$</date>
+  </sect1info>
+
+  <title>mypaint-brushes-&mypaint-brushes-version;</title>
+
+  <indexterm zone="mypaint-brushes">
+    <primary sortas="a-mypaint-brushes">mypaint-brushes</primary>
+  </indexterm>
+
+  <!--Required section-->
+  <sect2 role="package">
+    <title>Introduction to mypaint-brushes</title>
+
+    <para>
+      The <application>mypaint-brushes</application> package contains brushes
+      used by packages which use libmypaint.
+    </para>
+
+    &lfs82_checked;
+
+    <bridgehead renderas="sect3">Package Information</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>
+          Download (HTTP): <ulink url="&mypaint-brushes-download-http;"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download (FTP): <ulink url="&mypaint-brushes-download-ftp;"/>
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download MD5 sum: &mypaint-brushes-md5sum;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Download size: &mypaint-brushes-size;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Estimated disk space required: &mypaint-brushes-buildsize;
+        </para>
+      </listitem>
+      <listitem>
+        <para>
+          Estimated build time: &mypaint-brushes-time;
+        </para>
+      </listitem>
+    </itemizedlist>
+
+    <note>
+      <para>
+        The <application>mypaint-brushes</application> source tarball shown above
+        downloads with the correct name, mypaint-brushes-&mypaint-brushes-version;.tar.gz,
+        if using a browser such as Firefox. If you prefer to use a command line
+        program such as wget, you normally would obtain &mypaint-brushes-version;.tar.gz.
+        To obtain this package with the proper filename, run:
+
+<screen><userinput>wget -c https://github.com/Jehan/mypaint-brushes/archive/v&mypaint-brushes-version;.tar.gz \
+     -O mypaint-brushes-&mypaint-brushes-version;.tar.gz</userinput></screen>
+        </para>
+      </note>
+
+    <bridgehead renderas="sect3">Additional Downloads</bridgehead>
+    <itemizedlist spacing="compact">
+      <listitem>
+        <para>
+          Required patch:
+          <ulink url="&patch-root;/mypaint-brushes-&mypaint-brushes-version;-automake_1.16-1.patch"/>
+        </para>
+      </listitem>
+    </itemizedlist>
+
+    <bridgehead renderas="sect3">mypaint-brushes Dependencies</bridgehead>
+
+    <bridgehead renderas="sect4">Required at runtime</bridgehead>
+    <para role="required">
+      <xref role="runtime" linkend="libmypaint"/>
+    </para>
+
+    <para condition="html" role="usernotes">
+      User Notes: <ulink url="&blfs-wiki;/mypaint-brushes"/>
+    </para>
+  </sect2>
+
+  <sect2 role="installation">
+    <title>Installation of mypaint-brushes</title>
+
+    <para>
+      Install <application>mypaint-brushes</application> by running the following
+      commands:
+    </para>
+
+<screen><userinput>patch -Np1 -i ../mypaint-brushes-&mypaint-brushes-version;-automake_1.16-1.patch &amp;&amp;
+./autogen.sh                                                 &amp;&amp;
+./configure --prefix=/usr                                    &amp;&amp;
+make</userinput></screen>
+
+    <para>
+      This package does not come with a test suite.
+    </para>
+
+    <para>
+      Now, as the <systemitem class="username">root</systemitem> user:
+    </para>
+
+<screen role="root"><userinput>make install</userinput></screen>
+  </sect2>
+
+  <sect2 role="content">
+    <title>Contents</title>
+
+    <segmentedlist>
+      <segtitle>Installed Programs</segtitle>
+      <segtitle>Installed Libraries</segtitle>
+      <segtitle>Installed Directories</segtitle>
+
+      <seglistitem>
+        <seg>
+          None.
+        </seg>
+        <seg>
+          None.
+        </seg>
+        <seg>
+          /usr/share/mypaint-data.
+        </seg>
+      </seglistitem>
+    </segmentedlist>
+
+  </sect2>
+</sect1>
