Blame Manuals/Docbook/Repository/Usage/section-5.docbook

e935c3
e935c3
<section>
e935c3
e935c3
    <title>Connection between directories</title>
e935c3
e935c3
    <para>In order to produce content in CentOS Artwork Repository, it
e935c3
    is required that all work lines be connected somehow.  This is the
e935c3
    way automation scripts can know where to retrive the information
e935c3
    they need to work with (e.g., design model, translation messages,
e935c3
    output location, etc.).  We build this kind of connection using
e935c3
    two path constructions named @emph{master paths} and
e935c3
    @emph{auxiliar paths}.</para>
e935c3
    
e935c3
    <para>The master path points only to directories that contain the
e935c3
    source files (e.g., SVG files) required to produce base content
e935c3
    (e.g., PNG files) through automation scripts.  Each master path
e935c3
    inside the repository may have several auxiliar paths associated,
e935c3
    but auxiliar paths can only have one master path
e935c3
    associated.</para>
e935c3
    
e935c3
    <para>The auxiliar paths can point either to directories or files.
e935c3
    When an auxiliar path points to a directory, that directory
e935c3
    contains information that modifies somehow the content produced
e935c3
    from master paths (e.g., translation messages) or provides the
e935c3
    output information required to know where to store the content
e935c3
    produced from master path.  When an auxiliar path points to a
e935c3
    file, that file has no other purpose but to document the master
e935c3
    path it refers to.</para>
e935c3
    
e935c3
    <para>The relation between auxiliar paths and master paths is
e935c3
    realized combining two path informations which are: the master
e935c3
    path itself and one second level directory structure from the
e935c3
    repository.  Generally, the master path is considered the path
e935c3
    identifier and the second level directory structure taken from the
e935c3
    repository is considered the common part of the path where the
e935c3
    identifier is appended.</para>
e935c3
    
e5f800
    <programlisting>
e5f800
-----+---------------+----------------------------+------+-----------
e5f800
Path | Suffix        | Identifier                 |Prefix| Type
e5f800
-----+---------------+----------------------------+------+-----------
e5f800
  A  |               |trunk/Identity/Models/Brands|      | Directory
e5f800
-----+---------------+----------------------------+------+-----------
e5f800
  B  |  trunk/Manual/|trunk/Identity/Models/Brands|.texi | File
e5f800
-----+---------------+----------------------------+------+-----------
e5f800
  C  | trunk/Locales/|trunk/Identity/Models/Brands|      | Directory
e5f800
-----+---------------+----------------------------+------+-----------
e5f800
  D  |               |trunk/Identity/Images/Brands|      | Directory
e5f800
-----+---------------+----------------------------+------+-----------
e5f800
  E  | trunk/Locales/|trunk/Identity/Images/Brands|.texi | File
e5f800
-----+---------------+----------------------------+------+-----------
e935c3
    
e5f800
  A = Master path.  
e5f800
  B = Auxiliar path to documentation entry.  
e5f800
  C = Auxiliar path to translation messages.  
e5f800
  D = Auxiliar path to final content output.  
e5f800
  E = Auxiliar path to documentation entry.
e935c3
    </programlisting>
e935c3
    
e935c3
    <para>The path information described above (@pxref{Path
e935c3
    construction}) is used by direct rendition and can be taken as
e935c3
    reference to add other components that are equally produced in the
e935c3
    repository.  To add new components that make use of direct
e935c3
    rendition inside the repository, change just the component name
e935c3
    used above (e.g., @file{Brands}) to that one you want to add,
e935c3
    without changing the path structure around it.</para>
e935c3
    
e935c3
    <para>The file organization used by theme rendition extends direct
e935c3
    rendition by separating design models information from backgrounds
e935c3
    information.  To better understand this configuration, you can
e935c3
    consider it as two independent lists, one of design models and one
e935c3
    of artistic motifs, which are arbitrary combined between
e935c3
    themselves in order to render images in specific ways. The
e935c3
    possibilities of this configuration are endless and let us
e935c3
    describe visual manifestations very well.  For example, consider
e935c3
    the organization used to produce @file{Anaconda} images; for
e935c3
    CentOS distribution major release 5; using @file{Default} design
e5f800
    models and version @file{3} of @file{Flame} artistic motif:</para>
e935c3
    
e5f800
    <programlisting>
e5f800
-----+---------------+------------------------------------------------------+------+-----------
e5f800
Path | Suffix        | Identifier                                           |Prefix| Type
e5f800
-----+---------------+------------------------------------------------------+------+-----------
e5f800
  A  |               |trunk/Identity/Models/Themes/Default/Distro/5/Anaconda|      | Directory
e5f800
-----+---------------+------------------------------------------------------+------+-----------
e5f800
  B  |  trunk/Manual/|trunk/Identity/Models/Themes/Default/Distro/5/Anaconda|.texi | File
e5f800
-----+---------------+------------------------------------------------------+------+-----------
e5f800
  C  | trunk/Locales/|trunk/Identity/Models/Themes/Default/Distro/5/Anaconda|      | Directory
e5f800
-----+---------------+------------------------------------------------------+------+-----------
e5f800
  D  |               |trunk/Identity/Images/Themes/Flame/3/Distro/5/Anaconda|      | Directory
e5f800
-----+---------------+------------------------------------------------------+------+-----------
e5f800
  E  | trunk/Locales/|trunk/Identity/Images/Themes/Flame/3/Distro/5/Anaconda|.texi | File
e5f800
-----+---------------+------------------------------------------------------+------+-----------
e935c3
    
e5f800
  A = Master path.  
e5f800
  B = Auxiliar path to documentation entry.  
e5f800
  C = Auxiliar path to translation messages.  
e5f800
  D = Auxiliar path to final content output.
e5f800
  E = Auxiliar path to documentation entry.
e935c3
    </programlisting>
e935c3
    
e935c3
    <para>The path information described above (@pxref{Path
e935c3
    construction extended}) is used by theme rendition and can be
e935c3
    taken as reference to add other components that are equally
e935c3
    produced in the repository.</para>
e935c3
    
e935c3
    <para>In this configuration we can change both design model name
e935c3
    (e.g., @file{Default}) and artistic motif name (e.g.,
e935c3
    @file{Flame/3}) to something else in order to achieve a different
e935c3
    result. The only limitations impossed are the storage space
e935c3
    provided in the server machine and your own creativeness as
e935c3
    graphic designer.</para>
e935c3
    
e935c3
    <note><para>A theme ready for implementation may consume from 100
e935c3
    MB to 400 MB of storage space. The exact space consumed by a theme
e935c3
    depends on the amount of screen resolutions the theme supports.
e935c3
    The more screen resolutions the theme supports, the more storage
e935c3
    space demanded for it.</para></note>
e935c3
    
e935c3
    <para>In this configuration we saw how to build the path
e935c3
    information for @file{Anaconda} component as part of CentOS
e935c3
    Distribution visual manifestation, but that is not the only
e935c3
    component we have inside CentOS Distribution visual manifestation.
e935c3
    There are other components like Syslinux, Grub, Rhgb, Gdm, Kdm,
e935c3
    Gsplash and Ksplash that share a similar file organization to that
e935c3
    described above for @file{Anaconda} component.</para>
e935c3
    
e935c3
</section>