|
|
e935c3 |
|
|
|
e935c3 |
<preface>
|
|
|
e935c3 |
|
|
|
09f899 |
<title>Preface</title>
|
|
|
e935c3 |
|
|
|
09f899 |
<para>The CentOS Artwork Repository started around 2008, at
|
|
|
09f899 |
url="mailto:centos-devel@centos.org">CentOS Developers mailing
|
|
|
09f899 |
list</ulink> during a discussion about how to automate the slide
|
|
|
09f899 |
images of Anaconda. In such discussion, Ralph Angenendt rose up
|
|
|
09f899 |
his hand to ask: Do you have something to show?</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>To answer the question, Alain Reguera Delgado suggested a
|
|
|
09f899 |
bash script which combined SVG and SED files in order to produce
|
|
|
09f899 |
PNG images in different languages —together with the
|
|
|
09f899 |
proposition of creating a Subversion repository where translations
|
|
|
09f899 |
and image production could be distributed inside The CentOS
|
|
|
09f899 |
Community—.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>Karanbirn Sighn considered the idea intresting and provided
|
|
|
09f899 |
the infrastructure necessary to support the effort. This way the
|
|
|
09f899 |
<ulink url="https://projects.centos.org/trac/artwork/">CentOS
|
|
|
09f899 |
Artwork SIG</ulink> and the
|
|
|
09f899 |
url="https://projects.centos.org/svn/artwork/">CentOS Artwork
|
|
|
09f899 |
Repository</ulink> were officially created.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>Once the CentOS Artwork Repository was available, Alain
|
|
|
09f899 |
Reguera Delagdo uploaded the bash script for rendering Anaconda
|
|
|
09f899 |
slides; Ralph Angenendt documented it very well; and people
|
|
|
09f899 |
started to download working copies of CentOS Artwork Repository to
|
|
|
09f899 |
produce slide images in their own languages.</para>
|
|
|
e935c3 |
|
|
|
09f899 |
<para>Around 2009, The rendition script was at a very rustic state
|
|
|
09f899 |
where only slide images could be produced, so it was redesigned to
|
|
|
09f899 |
extend the image production to other areas, not just slide images.
|
|
|
09f899 |
In this configuration, one SVG file was used as input to produce a
|
|
|
09f899 |
translated instance of it which, in turn, was used to produce one
|
|
|
09f899 |
translated PNG image as output. The SVG translated instance was
|
|
|
09f899 |
created through SED replacement commands. The translated PNG image
|
|
|
09f899 |
was created from the SVG translated instance using Inkscape
|
|
|
09f899 |
command-line interface.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The rendition script was named
|
|
|
09f899 |
<quote>render.sh</quote>.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The repository directory structure was prepared to receive
|
|
|
09f899 |
the rendition script using design templates and translation files
|
|
|
09f899 |
in the same location. There was one directory structure for each
|
|
|
09f899 |
artwork that needed to be produced. In this configuration, if you
|
|
|
09f899 |
would want to produce the same artwork with a different visual
|
|
|
09f899 |
style or structure, it was needed to create a new directory
|
|
|
09f899 |
structure for it because both the image structure and the image
|
|
|
09f899 |
visual style were together in the design template.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The rendition script was moved to a common place and linked
|
|
|
09f899 |
from different directory structures. There was no need to have the
|
|
|
09f899 |
same code in different directory structures if it could be in just
|
|
|
09f899 |
one place and then be linked from different locations.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The concepts about corporate identity began to be
|
|
|
09f899 |
considered. As referece, it was used the book <quote>Corporate
|
|
|
09f899 |
Identity</quote> by Wally Olins (1989) and Wikipedia (
|
|
|
09f899 |
url="http://en.wikipedia.org/Corporate_identity" />). This way,
|
|
|
09f899 |
the rendition script main's goal becomes to: automate production
|
|
|
09f899 |
of a monolithic corporate visual identity structure, based on the
|
|
|
09f899 |
mission and the release schema of The CentOS Project.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The directory structures started to be documented inside the
|
|
|
09f899 |
repository using text files without markup. Later, documentation
|
|
|
09f899 |
in flat text files was moved to LaTeX format and this way
|
|
|
09f899 |
<quote>The CentOS Artwork Repository Manual</quote> started to
|
|
|
09f899 |
take form.</para>
|
|
|
e935c3 |
|
|
|
09f899 |
<para>Around 2010, the rendition script changed its name from
|
|
|
09f899 |
<command>render.sh</command> to <command>centos-art.sh</command>
|
|
|
09f899 |
and became a collection of functionalities where rendition was
|
|
|
09f899 |
just one among others (e.g., documenting and localizing).</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The <command>centos-art.sh</command> was created to organize
|
|
|
09f899 |
automation of most frequent tasks inside the repository. There
|
|
|
09f899 |
was no need to have links all around the repository if a
|
|
|
09f899 |
command-line interface could be created (through symbolic links,
|
|
|
09f899 |
in the <filename class="directory">~/bin</filename> directory) and
|
|
|
09f899 |
be called anywhere inside the repository as it would be a regular
|
|
|
09f899 |
command.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>Inside <command>centos-art.sh</command>, functionalities
|
|
|
09f899 |
started to get identified and separated one another. For example,
|
|
|
09f899 |
when images were rendered, there was no need to load
|
|
|
09f899 |
functionalities related to documentation manual. This layout moved
|
|
|
09f899 |
us onto common functionalities and specific functionalities inside
|
|
|
09f899 |
<command>centos-art.sh</command> script. Common functionalities
|
|
|
09f899 |
are loaded when <command>centos-art.sh</command> script is
|
|
|
09f899 |
initiated and are available to specific functionalities.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The <command>centos-art.sh</command> script was redesigned
|
|
|
09f899 |
to handle command-line options trough <command>getopt</command>
|
|
|
09f899 |
option parser.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The repository directory structure was updated to improve
|
|
|
09f899 |
the implementation of concepts related to corporate visual
|
|
|
09f899 |
identity. Specially in the area related to themes which were
|
|
|
09f899 |
divided into <emphasis>design models</emphasis> and
|
|
|
09f899 |
<emphasis>artistic motifs</emphasis> to eliminate the content
|
|
|
09f899 |
duplication produced by having both image structure and image
|
|
|
09f899 |
visual style in the same file. Now, themes are produced as result
|
|
|
09f899 |
of arbitrary combinations of both design models (structures) and
|
|
|
09f899 |
artistic motifs (visual styles).</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>In the documentation area, the documentation files in LaTeX
|
|
|
09f899 |
format were migrated to Texinfo format. In this configuration,
|
|
|
09f899 |
each directory structure in the repository has a documentation
|
|
|
09f899 |
entry associated in a Texinfo structure which can be read, edited
|
|
|
09f899 |
and administered (e.g., renamed, deleted, copied) interactively
|
|
|
09f899 |
throuch <command>centos-art.sh</command>. Additionally, the
|
|
|
09f899 |
<command>texi2html</command> program was used to produced XHTML
|
|
|
09f899 |
output customized by CSS from The CentOS Webenv.</para>
|
|
|
e935c3 |
|
|
|
09f899 |
<para>Around 2011, the <command>centos-art.sh</command> script was
|
|
|
09f899 |
redesigned to start translating SVG and other XML-based files
|
|
|
09f899 |
(e.g., XHTML and Docbook files) through the
|
|
|
09f899 |
<command>xml2po</command> program and shell scripts files (e.g.,
|
|
|
09f899 |
Bash scripts) through GNU <command>gettext</command> tools. This
|
|
|
09f899 |
configuration provided a stronger interface for graphic designers,
|
|
|
09f899 |
translators and programmers to produce localized content. The SED
|
|
|
09f899 |
files are no longer used to handle translations.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>Improve option parsing through
|
|
|
09f899 |
<command>getopt</command>.</para>
|
|
|
e935c3 |
|
|
|
09f899 |
<para>Consolidate the render , help and
|
|
|
09f899 |
locale functionalities as the most frequent tasks
|
|
|
09f899 |
performed inside the repository. Additionally, the
|
|
|
09f899 |
prepare and tuneup functionalities are
|
|
|
09f899 |
maintained as useful tasks.</para>
|
|
|
09f899 |
|
|
|
09f899 |
<para>The <command>centos-art.sh</command> script is updated to
|
|
|
09f899 |
organize functionalities in two groups: <quote>the administrative
|
|
|
09f899 |
functionalities</quote> and <quote>the productive
|
|
|
09f899 |
functionalities</quote>. The administrative functionalities cover
|
|
|
09f899 |
actions like: copying, deleting and renaming directory structures
|
|
|
09f899 |
inside the repository. Also, preparing your workstation for using
|
|
|
09f899 |
<command>centos-art.sh</command> script, making backups of the
|
|
|
09f899 |
distribution theme currently installed, installing themes created
|
|
|
09f899 |
inside repository and restoring themes from backup. On the other
|
|
|
09f899 |
hand, the productive functionalities cover actions like: content
|
|
|
09f899 |
rendition, content localization, content documentation and content
|
|
|
09f899 |
maintainance.</para>
|
|
|
e935c3 |
|
|
|
e935c3 |
</preface>
|