<sect1 id="scripts-bash-prepare">
<title>Standardizing Configuration Tasks</title>
<para>
The <function>prepare</function> functionality is the
interface the <command>centos-art.sh</command> script provides
to standardize the final configuration stuff your workstation
needs, once the working copy of &TCAR; has been downloaded
inside it already.
</para>
<para>
Assuming this is the very first time you run the
<command>centos-art.sh</command> script, you'll find that
it isn't found in your workstation. This is correct because
you haven't created the symbolic link that make it available
in the execution path, yet. In order to make the
<command>centos-art.sh</command> script available in the
execution path of your workstation, you need to run it using
its absolute path first:
</para>
<screen>~/Projects/artwork/trunk/Scripts/centos-art.sh prepare [OPTIONS]</screen>
<para>
Later, once the <command>centos-art.sh</command> script is
available in the execution path of your system, there is no
need for you to use the absolute path again. From this time
on, you can use the <command>centos-art</command> command-line
interface directly, as the following example describes:
</para>
<screen>centos-art prepare [OPTIONS]</screen>
<para>
The <function>prepare</function> functionality accepts the
following options:
</para>
<variablelist>
<varlistentry>
<term><option>--quiet</option></term>
<listitem>
<para>
Supress all output messages except error messages. When this
option is passed, all confirmation requests are supressed and
a possitive answer is assumed for them, just as if the
<option>--answer-yes</option> option whould have been provided.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--answer-yes</option></term>
<listitem>
<para>
Assume <emphasis>yes</emphasis> to all confirmation requests.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--packages</option></term>
<listitem>
<para>
This option verifies packeges required by
<command>centos-art.sh</command> script. installs or updates
required packages. When required packages aren't installed,
this option uses <command>sudo yum install</command>
command to perform the installation task. When required
packages are installed, this option uses <command>sudo yum
update</command> to update them, if there is any related
actualization to be applied on. In both cases, it is required
that you configure the <command>sudo</command> command first,
as described in <xref linkend="repo-ws-config-sudo" />.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--links</option></term>
<listitem>
<para>
This option maintains the file relation between your working
copy and configuration files inside your workstation through
symbolic links. When you provide this option, the
<command>centos-art.sh</command> puts itself into your
system's execution path through its command line interface
<command>centos-art</command> and makes common brushes,
patterns, palettes and fonts inside the working copy,
available to applications like GIMP in order for you to make
use of them without loosing version control over them.
</para>
<caution>
<para>
This option removes all common fonts, brushes, patterns, and
palettes currently installed in your home directory, in order
to create a fresh installation of them all again, using the
working copy as reference.
</para>
</caution>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--images</option></term>
<listitem>
<para>
This option initializes image files inside the working copy.
When you provide this option, the
<command>centos-art.sh</command> scripts renders image files
from all design models available in the working copy. This
step is required in order to satisfy file dependencies among
different components inside the working copy.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--manuals</option></term>
<listitem>
<para>
This option initializes documentation files inside the working
copy. When you provide this option, the
<command>centos-art.sh</command> script renders all
documentation manuals from their related source files to
different output formats, so you can read them nicely.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>--environment</option></term>
<listitem>
<para>
Print the name and value of some of the environment variables
used by <command>centos-art.sh</command> scripts as described
in <xref linkend="repo-ws-config-envar" />.
</para>
</listitem>
</varlistentry>
</variablelist>
<para>
When no option is provided to <function>prepare</function>
functionality, the <command>centos-art.sh</command> script
uses the <option>--packages</option>,
<option>--links</option>, <option>--images</option> and
<option>--manuals</option> options as default behaviour.
Otherwise, if you provide any option, the
<command>centos-art.sh</command> script avoids its default
behaviour and executes the <function>prepare</function>
functionality as specified by the options you provides.
</para>
<para>
Notice that it is possible for you to execute the
<function>prepare</function> functionality as much times as
you need to. This is specially useful when you need to keep
syncronized the relation between content produced inside your
working copy and the applications you use outside it. For
example, considering you've added new brushes to or removed
old brushes from your working copy of &TCAR;, the link
information related to those files need to be updated in the
<filename class="directory">~/.gimp-2.2/brushes</filename>
directory too, in a way the addition/deletion change that took
place in your working copy can be reflected there, as well.
The same is true for other similar components like fonts,
patterns and palettes.
</para>
</sect1>