Blob Blame History Raw
% Part   : Preparing Your Workstation
% Chapter: Configuration
% ------------------------------------------------------------
% $Id: configuration.tex 6191 2010-08-02 02:36:14Z al $
% ------------------------------------------------------------

This chapter describes configurations you need to set up before using
CentOS Artwork Repository.

\section{Firewall}

The CentOS Artwork Repository lives on the following URL:

\begin{quote}
https://projects.centos.org/svn/artwork/
\end{quote}

To reach this location you need to have Internet access and be sure no
rule in your firewall is denying this site. Note that the URL uses the
SSL protocol (port 443).

\section{Subversion Behind Squid}

Sometimes it is convenient to proxy Subversion client's requests
through a proxy-cache server like Squid. In cases like this, the Squid
proxy server is in the middle between you and CentOS Artwork
Repository. If you want to proxy Subversion client's requests through
Squid proxy-cache server, you need to configure your Subversion client
and your Squid proxy server to do so.

\subsection{Subversion Client Configuration}

Subversion client needs to be configured to send requests to your
Squid proxy-cache server. This configuration takes place in the file
\texttt{$\sim$/.subversion/servers}.

\subsection{Squid Server Configuration}

Squid proxy-cache server needs to be configured to accept the
extension methods \texttt{REPORT MERGE MKACTIVITY CHECKOUT MKCOL}.
This configuration takes place in the file
\texttt{/etc/squid/squid.conf}, specifically in the configuration tag
illustrated in \autoref{fig:Workstation:Configuration:Squid}.

\begin{figure}[!hbp]
\hrulefill
\begin{verbatim}
#  TAG: extension_methods
#       Squid only knows about standardized HTTP request methods.
#       You can add up to 20 additional "extension" methods here.
#
#Default:
# none
extension_methods REPORT MERGE MKACTIVITY CHECKOUT MKCOL
\end{verbatim}
\hrulefill
\caption{Squid configuration to proxy Subversion client's requests.%
   \label{fig:Workstation:Configuration:Squid}}
\end{figure}

\section{Working Copy}

A Subversion working copy is an ordinary directory tree on your local
system, containing a collection of files (i.e.  Translations, Designs,
Manuals, and Scripts). You can edit these files however you wish. Your
working copy is your own private work area: Subversion will never
incorporate other people's changes, nor make your own changes
available to others, until you explicitly tell it to do so.  You can
even have multiple working copies of the same project.\footnote{Even
this is basically correct, doing so when using CentOS Artowrk
Repository can bring some confusion when executing scripts. Presently,
only one absolute path can be defined as absolute path for scripts'
execution.  You can have as many working copies of CentOS Artwork
Repository as you want but scripts will be executed from just one
working copy absolute path. That is, the one stored under
\texttt{/home/centos/artwork/}}.

Once you've made some changes to your working copy files and verified
that they work properly, Subversion provides you with commands to
``publish'' your changes to the other people working with you on your
project (by writing to the repository). If other people publish their
own changes, Subversion provides you with commands to merge those
changes into your working directory (by reading from the repository).

\begin{figure}[!hbp]
\hrulefill
\begin{verbatim}
svn co https://projects.centos.org/svn/artwork /home/centos/
\end{verbatim}
\hrulefill
\caption{Subversion command used to download the working copy.%
   \label{fig:Workstation:WC:Download}}
\end{figure}

The subversion command illustrated in
\autoref{fig:Workstation:WC:Download} brings a CentOS Artwork
Repository working copy down to your workstation, specifically to your
home directory (\texttt{/home/centos/artwork/}). This process may take
some time.  Once the working copy is available in your workstation,
you are ready to start exploring and improving available works.

Note that you need to have a username called \texttt{centos} in your
system.  If you don't have it, you can create it using the comand
\texttt{useradd} as superuser (\texttt{root}).

\subsection{Standardizing Absolute Path}

When using Inkscape to import raster images inside SVG files the
absolute image path is required. If everyone stores the working copy
on a different absolute path imported images will not be loaded in
those location different from those they were conceived. There is no
way to find the right absolute image path but defining a convenction
about it. 

On a path string (e.g., /home/centos/artwork/trunk/) the username
(`centos') is the variable component, so it is the component we need
to standardize--in the sake of keeping the working copy inside user's
/home/ structure. Thus, analysing which username to use, the CentOS
Project is what join us all together, so the `centos' word in
lower-case seems to be a nice choise for us to use as common username. 

\section{User Identification}

At this point you probably have made some changes inside your working
copy and wish to publish them.  To publish your changes on CentOS
Artwork Repository you need to have a registered account with commit
privilege in CentOS Artwork Repository.

If you are new in CentOS Artwork Repository it is possible that you
can't commit your changes. That is because new registered accounts
haven't commit privilege set by default.  In order for your registered
account to have commit privilege inside CentOS Artwork Repository you
need to request it. See section
\ref{sec:Configuration:User:Privileges}.

\subsection{User Account Registration}
\label{sec:Configuration:Account}

To register a user account inside CentOS Artwork Repository, you need
to go to the following URL:

\begin{quote}
\url{https://projects.centos.org/trac/artwork/}
\end{quote}

\subsection{User Account Privileges}
\label{sec:Configuration:User:Privileges}

To have commit privileges in CentOS Artwork Repository it is needed
that you show your interest first, preferably with something useful
like a new or improved design, translation, manual, or script. As
convenction, people working on CentOS Artwork Repository share ideas
in the mailing list
\href{mailto:centos-devel@centos.org}{centos-devel@centos.org}. If you
are interested in joining us go there and express yourself.

\section{Repository Tagged Revisions}

The CentOS Artwork Repository is also available as tagged revisions.
Tagged revisions are checkpoints on the CentOS Artwork Repository
developing lifetime. They are inmutable copies of the CentOS Artwork
Repository state through time.  Tagged revisions contain the files
used to produce images but not images themselves.  Inside tagged
revisions you can find scripts (\texttt{.sh}), design templates
(\texttt{.svg}), translation files (\texttt{\.sed}), gimp projects
(\texttt{.xcf}), and documetation files (\texttt{.tex}).

CentOS Artowrk Repository tagged revisions are available for
downloading in the following location:

\begin{description}
\item[URL:] https://projects.centos.org/svn/artwork/tags
\end{description}

and alternatively, you can find references in the CentOS Project's
wiki, specifically in the ArtWork page:

\begin{description}
\item[URL:] http://wiki.centos.org/ArtWork
\end{description}