|
|
d2638e |
<sect1 id="repo-ws-config">
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<title>Configuring Your Workstation</title>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
Once your worstation is installed, it is time for you to
|
|
|
eebdc3 |
configure it. At this point you create a user for everyday's
|
|
|
eebdc3 |
work, configure third party repositories, fix environment
|
|
|
eebdc3 |
variables to fit your personal needs, download the working
|
|
|
eebdc3 |
copy of &TCAR; and prepare it for start using it.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
d2638e |
<sect2 id="repo-ws-config-wp">
|
|
|
74d256 |
<title>Define Your Workplace</title>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
Once you've installed the workstation and it is up and
|
|
|
74d256 |
running, you need to register the user name you'll use for
|
|
|
74d256 |
working. In this task you need to use the commands
|
|
|
eebdc3 |
<command>useradd</command> and <command>passwd</command> to
|
|
|
eebdc3 |
create the user name and set a password for it, respectively.
|
|
|
eebdc3 |
These commands require administrative privileges to be
|
|
|
eebdc3 |
executed, so you need to login as <emphasis>root</emphasis>
|
|
|
eebdc3 |
superuser for doing so.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<caution>
|
|
|
eebdc3 |
<para>
|
|
|
74d256 |
Do not use the <emphasis>root</emphasis> username for regular
|
|
|
74d256 |
tasks inside your working copy of &TCAR;. This is dangerous
|
|
|
74d256 |
and might provoke unreversable damages to your workstation.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
</caution>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<para>
|
|
|
74d256 |
When you've registered your user name in the workstation, it
|
|
|
74d256 |
provides an identifier for you to open a user's session in the
|
|
|
74d256 |
workstation and a place to store the information you produce,
|
|
|
74d256 |
as well. This place is known as your home directory and is
|
|
|
74d256 |
unique for each user registered in the workstation. For
|
|
|
74d256 |
example, if you register the user name john in your
|
|
|
74d256 |
workstation, your home directory would be located at
|
|
|
74d256 |
class="directory">/home/john/</filename>.
|
|
|
74d256 |
</para>
|
|
|
74d256 |
|
|
|
74d256 |
<para>
|
|
|
74d256 |
At this point you need to decide where to download the working
|
|
|
74d256 |
copy of &TCAR; inside your home directory. This desition
|
|
|
74d256 |
deserves special attention and should be implemented carefully
|
|
|
74d256 |
in order to grant a standardized distributed environment.
|
|
|
74d256 |
Let's see some alternatives.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
74d256 |
<sect3>
|
|
|
74d256 |
<title>Different Absolute Paths</title>
|
|
|
eebdc3 |
<para>
|
|
|
74d256 |
Consider that you store your working copy under
|
|
|
74d256 |
class="directory">/home/john/Projects/artwork/</filename> and
|
|
|
74d256 |
I store mine under
|
|
|
74d256 |
class="directory">/home/al/Projects/artwork/</filename>, we'll
|
|
|
74d256 |
end up refering the same files inside our working copies
|
|
|
74d256 |
through different absolute paths.
|
|
|
eebdc3 |
</para>
|
|
|
74d256 |
|
|
|
74d256 |
<para>
|
|
|
74d256 |
This alternative generates a contradiction when files which
|
|
|
74d256 |
hold path information inside are committed up to the central
|
|
|
74d256 |
repository from different working copies. The contradiction
|
|
|
74d256 |
comes from the question: which is the correct absolute path to
|
|
|
74d256 |
use inside such files, yours or mine? (None of them is, of
|
|
|
74d256 |
course.)
|
|
|
74d256 |
</para>
|
|
|
74d256 |
|
|
|
74d256 |
</sect3>
|
|
|
eebdc3 |
|
|
|
74d256 |
<sect3 id="repo-ws-config-wp-OneUniqueAbsolutePath">
|
|
|
74d256 |
<title>One Unique Absolute Path</title>
|
|
|
eebdc3 |
<para>
|
|
|
c03f46 |
Another case would be that where you and I ourselves use one
|
|
|
c03f46 |
unique home directory (e.g.,
|
|
|
74d256 |
class="directory">/home/centos/Projects/artwork/</filename>)
|
|
|
74d256 |
to store the working copy of &TCAR; in our own workstations,
|
|
|
74d256 |
but configure the subversion client to use different user
|
|
|
74d256 |
names to commit changes up from the working copy to the
|
|
|
74d256 |
central repository.
|
|
|
eebdc3 |
</para>
|
|
|
74d256 |
|
|
|
74d256 |
<para>
|
|
|
74d256 |
This alternative might be not so good in situations where you
|
|
|
74d256 |
and I have to share the same workstation. In such cases, it
|
|
|
74d256 |
would be required that we both share the password information
|
|
|
74d256 |
of the same system user (the <emphasis>centos</emphasis> user
|
|
|
74d256 |
in our example) which, in addition, gives access to that
|
|
|
74d256 |
user's subversion client configuration and this way provokes
|
|
|
74d256 |
the whole sense of using different subversion credentials for
|
|
|
74d256 |
committing changes to be lost.
|
|
|
74d256 |
</para>
|
|
|
74d256 |
</sect3>
|
|
|
eebdc3 |
|
|
|
74d256 |
<sect3>
|
|
|
74d256 |
<title>Different Absolute Paths Through Dynamic Expansion</title>
|
|
|
eebdc3 |
<para>
|
|
|
74d256 |
Most of the absolute paths we use inside the working copy are
|
|
|
74d256 |
made of two parts, one dynamic and one relative fixed. The
|
|
|
74d256 |
dynamic part is the home directory of the current user and its
|
|
|
74d256 |
value can be retrived from the <envar>$HOME</envar>
|
|
|
74d256 |
environment variable. The fixed part of the path is the one
|
|
|
74d256 |
we set inside the repositroy structure itself as a matter of
|
|
|
74d256 |
organization. What we need here is to find a way to expand
|
|
|
74d256 |
variables inside files that don't support variable expansion.
|
|
|
74d256 |
</para>
|
|
|
74d256 |
|
|
|
74d256 |
<para>
|
|
|
74d256 |
This alternative had worked rather fine when we produce
|
|
|
74d256 |
produce PNG files from SVG files and XTHML from DocBook
|
|
|
74d256 |
files, but the same is not true for absolute paths inside
|
|
|
74d256 |
files that are used as in their permanent state inside the
|
|
|
74d256 |
repository (e.g., CSS files and other files similar in
|
|
|
c03f46 |
purpose).
|
|
|
eebdc3 |
</para>
|
|
|
74d256 |
</sect3>
|
|
|
74d256 |
|
|
|
74d256 |
</sect2>
|
|
|
74d256 |
|
|
|
74d256 |
<sect2 id="repo-ws-config-wc">
|
|
|
74d256 |
<title>Download Your Working Copy</title>
|
|
|
74d256 |
|
|
|
74d256 |
<para>
|
|
|
74d256 |
As convenction, to use the &TCAR;, you must register the user
|
|
|
74d256 |
name <emphasis>centos</emphasis> in your workstation, do login
|
|
|
74d256 |
with it, and download the working copy from the central
|
|
|
74d256 |
repository using the following command:
|
|
|
74d256 |
</para>
|
|
|
74d256 |
|
|
|
74d256 |
<screen>svn co https://projects.centos.org/svn/artwork /home/centos/Projects/artwork</screen>
|
|
|
c03f46 |
|
|
|
eebdc3 |
<para>
|
|
|
74d256 |
The first time you download the working copy it contains no
|
|
|
74d256 |
image files, nor documentation, or localized content inside
|
|
|
74d256 |
it. This is because all the files provided in the working copy
|
|
|
74d256 |
are source files (e.g., the files needed to produce other
|
|
|
74d256 |
files) and it is up to you the action of render them to
|
|
|
74d256 |
produce the final files (e.g., images and documentation) used
|
|
|
74d256 |
to implement &TCPCVI;.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<para>
|
|
|
74d256 |
In order to complete the instalation of your working copy, use
|
|
|
74d256 |
the <function>prepare</function> functionality of the
|
|
|
74d256 |
<command>centos-art.sh</command> script, as described in
|
|
|
74d256 |
linkend="scripts-bash-prepare" />.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
</sect2>
|
|
|
eebdc3 |
|
|
|
d2638e |
<sect2 id="repo-ws-config-envar">
|
|
|
74d256 |
<title>Set Your Environment Variables</title>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<para>
|
|
|
74d256 |
There are some environment variables that you can customize to
|
|
|
74d256 |
fit your personal needs (e.g., default text editor, default
|
|
|
74d256 |
locale information, default time zone representation, etc.).
|
|
|
74d256 |
To customize these variables you need to edit your personal
|
|
|
eebdc3 |
profile (i.e.,
|
|
|
eebdc3 |
class="directory">~/.bash_profile</filename>) and set the
|
|
|
eebdc3 |
redefinition there. Notice that you may need to logout and
|
|
|
eebdc3 |
then do login again in order for the new variable values to
|
|
|
eebdc3 |
take effect.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
74d256 |
<sect3>
|
|
|
74d256 |
<title>Default text editor</title>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
The default text editor information is controlled by the
|
|
|
eebdc3 |
<envar>EDITOR</envar> environment variable. The
|
|
|
eebdc3 |
<command>centos-art.sh</command> script uses the default text
|
|
|
eebdc3 |
editor to edit subversion pre-commit messages, translation
|
|
|
eebdc3 |
files, documentation files, script files, and similar
|
|
|
eebdc3 |
text-based files.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
If <envar>EDITOR</envar> environment variable is not set,
|
|
|
eebdc3 |
<command>centos-art.sh</command> script uses
|
|
|
eebdc3 |
class="directory">/usr/bin/vim</filename> as default text
|
|
|
eebdc3 |
editor. Otherwise, the following values are recognized by
|
|
|
eebdc3 |
<command>centos-art.sh</command> script:
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<itemizedlist>
|
|
|
eebdc3 |
<listitem>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
<filename class="directory">/usr/bin/vim</filename>
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
</listitem>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<listitem>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
<filename class="directory">/usr/bin/emacs</filename>
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
</listitem>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<listitem>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
<filename class="directory">/usr/bin/nano</filename>
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
</listitem>
|
|
|
eebdc3 |
</itemizedlist>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
If no one of these values is set in the <envar>EDITOR</envar>
|
|
|
eebdc3 |
environment variable, the <command>centos-art.sh</command>
|
|
|
eebdc3 |
script uses
|
|
|
eebdc3 |
class="directory">/usr/bin/vim</filename> text editor, the one
|
|
|
eebdc3 |
installed by default in &TC;;.
|
|
|
eebdc3 |
</para>
|
|
|
74d256 |
</sect3>
|
|
|
eebdc3 |
|
|
|
74d256 |
<sect3>
|
|
|
74d256 |
<title>Default locale information</title>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
The default locale information is controlled by the
|
|
|
eebdc3 |
<envar>LANG</envar> environment variable. This variable is
|
|
|
eebdc3 |
initially set in the installation process of &TC;;,
|
|
|
eebdc3 |
specifically in the <emphasis>Language</emphasis> step.
|
|
|
eebdc3 |
Generally, there is no need to customize this variable in your
|
|
|
eebdc3 |
personal profile. If you need to change the value of this
|
|
|
eebdc3 |
environment variable do it through the login screen of GNOME
|
|
|
eebdc3 |
Desktop Environment or the
|
|
|
eebdc3 |
<command>system-config-language</command> command.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
The <command>centos-art.sh</command> script uses the
|
|
|
eebdc3 |
<envar>LANG</envar> environment variable to determine what
|
|
|
eebdc3 |
language to use for printing output messages from the script
|
|
|
eebdc3 |
itself, as well as the portable objects locations that need to
|
|
|
eebdc3 |
be updated or edited when you localize directory structures
|
|
|
eebdc3 |
inside the working copy of &TCAR;.
|
|
|
eebdc3 |
</para>
|
|
|
74d256 |
</sect3>
|
|
|
eebdc3 |
|
|
|
74d256 |
<sect3>
|
|
|
74d256 |
<title>Default time zone representation</title>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
The time zone representation is a time correction applied to
|
|
|
eebdc3 |
the system time (stored in the BIOS clock) based on your
|
|
|
eebdc3 |
country location. This correction is specially useful to
|
|
|
eebdc3 |
distributed computers around the world that work together and
|
|
|
eebdc3 |
need to be syncronized in time to know when things happened.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
&TCAR; is made of one server and several workstations spread
|
|
|
eebdc3 |
around the world. In order for all these workstations to know
|
|
|
eebdc3 |
when changes in the server took place, it is required that
|
|
|
eebdc3 |
they all set their system clocks to use the same time
|
|
|
eebdc3 |
information (e.g., through UTC (Coordinated Universal Time))
|
|
|
eebdc3 |
and set the time correction for their specific countries in
|
|
|
eebdc3 |
the operating system. Otherwise, it would be difficult to
|
|
|
eebdc3 |
know when something exactly happened.
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
<para>
|
|
|
eebdc3 |
Generally, setting the time information is a straight-forward
|
|
|
eebdc3 |
task and configuration tools provided by &TC;; do cover time
|
|
|
eebdc3 |
correction for most of the countries around the world.
|
|
|
eebdc3 |
However, if you need a time precision not provided by any of
|
|
|
eebdc3 |
the date and time configuration tools provided by &TC;; then,
|
|
|
eebdc3 |
you need to customize the <envar>TZ</envar> environment
|
|
|
eebdc3 |
variable in your personal profile to correct the time
|
|
|
eebdc3 |
information by yourself. The format of <envar>TZ</envar>
|
|
|
eebdc3 |
environment variable is described in tzset(3)
|
|
|
eebdc3 |
manual page.
|
|
|
eebdc3 |
</para>
|
|
|
74d256 |
</sect3>
|
|
|
eebdc3 |
</sect2>
|
|
|
eebdc3 |
|
|
|
d2638e |
<sect2 id="repo-ws-config-sudo">
|
|
|
74d256 |
<title>Be Prepared For Administrative Tasks</title>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
<para>
|
|
|
74d256 |
Administrative tasks inside &TCAR; are standardized through
|
|
|
74d256 |
the <command>centos-art.sh</command> script which must be run
|
|
|
74d256 |
as <emphasis>centos</emphasis> user. The
|
|
|
74d256 |
<emphasis>centos</emphasis> user is a regular user and doesn't
|
|
|
74d256 |
have administrative rights. Therefore, it is required to give
|
|
|
74d256 |
some administrative rights to the <emphasis>centos</emphasis>
|
|
|
74d256 |
user in order for <command>centos-art.sh</command> to perform
|
|
|
74d256 |
the administrative tasks (e.g., installing packages through
|
|
|
74d256 |
<command>yum</command>).
|
|
|
eebdc3 |
</para>
|
|
|
eebdc3 |
|
|
|
39143d |
<para>
|
|
|
74d256 |
To give some administrative rights to a regular user like
|
|
|
74d256 |
<emphasis>centos</emphasis> you should execute the
|
|
|
74d256 |
<command>visudo</command> command as
|
|
|
74d256 |
<emphasis>root</emphasis> and set the rights you want to give
|
|
|
74d256 |
accordingly. In case you don't configure the sudoers file,
|
|
|
74d256 |
<command>centos-art.sh</command> won't be able to perform
|
|
|
74d256 |
administrative task and you will need to do so yourself by
|
|
|
74d256 |
hand as the <emphasis>root</emphasis> supeuser.
|
|
|
39143d |
</para>
|
|
|
eebdc3 |
|
|
|
74d256 |
<example id="repo-ws-config-sudo-example1">
|
|
|
74d256 |
<title>The <filename>/etc/sudoers</filename> configuration.</title>
|
|
|
74d256 |
<screenshot>
|
|
|
74d256 |
<screeninfo>The <filename>/etc/sudoers</filename> configuration.</screeninfo>
|
|
|
74d256 |
<mediaobject>
|
|
|
74d256 |
<textobject>
|
|
|
74d256 |
<programlisting>
|
|
|
74d256 |
...
|
|
|
74d256 |
</programlisting>
|
|
|
74d256 |
</textobject>
|
|
|
74d256 |
</mediaobject>
|
|
|
74d256 |
</screenshot>
|
|
|
74d256 |
</example>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
</sect2>
|
|
|
eebdc3 |
|
|
|
eebdc3 |
</sect1>
|