Blame Manuals/Sources/Repository/LaTeX/Workstation/configuration.tex

ad1d7b
% Part   : Preparing Your Workstation
ad1d7b
% Chapter: Configuration
ad1d7b
% ------------------------------------------------------------
ad1d7b
% $Id: configuration.tex 6191 2010-08-02 02:36:14Z al $
ad1d7b
% ------------------------------------------------------------
ad1d7b
ad1d7b
This chapter describes configurations you need to set up before using
ad1d7b
CentOS Artwork Repository.
ad1d7b
ad1d7b
\section{Firewall}
ad1d7b
ad1d7b
The CentOS Artwork Repository lives on the following URL:
ad1d7b
ad1d7b
\begin{quote}
ad1d7b
https://projects.centos.org/svn/artwork/
ad1d7b
\end{quote}
ad1d7b
ad1d7b
To reach this location you need to have Internet access and be sure no
ad1d7b
rule in your firewall is denying this site. Note that the URL uses the
ad1d7b
SSL protocol (port 443).
ad1d7b
ad1d7b
\section{Subversion Behind Squid}
ad1d7b
ad1d7b
Sometimes it is convenient to proxy Subversion client's requests
ad1d7b
through a proxy-cache server like Squid. In cases like this, the Squid
ad1d7b
proxy server is in the middle between you and CentOS Artwork
ad1d7b
Repository. If you want to proxy Subversion client's requests through
ad1d7b
Squid proxy-cache server, you need to configure your Subversion client
ad1d7b
and your Squid proxy server to do so.
ad1d7b
ad1d7b
\subsection{Subversion Client Configuration}
ad1d7b
ad1d7b
Subversion client needs to be configured to send requests to your
ad1d7b
Squid proxy-cache server. This configuration takes place in the file
ad1d7b
\texttt{$\sim$/.subversion/servers}.
ad1d7b
ad1d7b
\subsection{Squid Server Configuration}
ad1d7b
ad1d7b
Squid proxy-cache server needs to be configured to accept the
ad1d7b
extension methods \texttt{REPORT MERGE MKACTIVITY CHECKOUT MKCOL}.
ad1d7b
This configuration takes place in the file
ad1d7b
\texttt{/etc/squid/squid.conf}, specifically in the configuration tag
ad1d7b
illustrated in \autoref{fig:Workstation:Configuration:Squid}.
ad1d7b
ad1d7b
\begin{figure}[!hbp]
ad1d7b
\hrulefill
ad1d7b
\begin{verbatim}
ad1d7b
#  TAG: extension_methods
ad1d7b
#       Squid only knows about standardized HTTP request methods.
ad1d7b
#       You can add up to 20 additional "extension" methods here.
ad1d7b
#
ad1d7b
#Default:
ad1d7b
# none
ad1d7b
extension_methods REPORT MERGE MKACTIVITY CHECKOUT MKCOL
ad1d7b
\end{verbatim}
ad1d7b
\hrulefill
ad1d7b
\caption{Squid configuration to proxy Subversion client's requests.%
ad1d7b
   \label{fig:Workstation:Configuration:Squid}}
ad1d7b
\end{figure}
ad1d7b
ad1d7b
\section{Working Copy}
ad1d7b
ad1d7b
A Subversion working copy is an ordinary directory tree on your local
ad1d7b
system, containing a collection of files (i.e.  Translations, Designs,
ad1d7b
Manuals, and Scripts). You can edit these files however you wish. Your
ad1d7b
working copy is your own private work area: Subversion will never
ad1d7b
incorporate other people's changes, nor make your own changes
ad1d7b
available to others, until you explicitly tell it to do so.  You can
ad1d7b
even have multiple working copies of the same project.\footnote{Even
ad1d7b
this is basically correct, doing so when using CentOS Artowrk
ad1d7b
Repository can bring some confusion when executing scripts. Presently,
ad1d7b
only one absolute path can be defined as absolute path for scripts'
ad1d7b
execution.  You can have as many working copies of CentOS Artwork
ad1d7b
Repository as you want but scripts will be executed from just one
ad1d7b
working copy absolute path. That is, the one stored under
ad1d7b
\texttt{/home/centos/artwork/}}.
ad1d7b
ad1d7b
Once you've made some changes to your working copy files and verified
ad1d7b
that they work properly, Subversion provides you with commands to
ad1d7b
``publish'' your changes to the other people working with you on your
ad1d7b
project (by writing to the repository). If other people publish their
ad1d7b
own changes, Subversion provides you with commands to merge those
ad1d7b
changes into your working directory (by reading from the repository).
ad1d7b
ad1d7b
\begin{figure}[!hbp]
ad1d7b
\hrulefill
ad1d7b
\begin{verbatim}
ad1d7b
svn co https://projects.centos.org/svn/artwork /home/centos/
ad1d7b
\end{verbatim}
ad1d7b
\hrulefill
ad1d7b
\caption{Subversion command used to download the working copy.%
ad1d7b
   \label{fig:Workstation:WC:Download}}
ad1d7b
\end{figure}
ad1d7b
ad1d7b
The subversion command illustrated in
ad1d7b
\autoref{fig:Workstation:WC:Download} brings a CentOS Artwork
ad1d7b
Repository working copy down to your workstation, specifically to your
ad1d7b
home directory (\texttt{/home/centos/artwork/}). This process may take
ad1d7b
some time.  Once the working copy is available in your workstation,
ad1d7b
you are ready to start exploring and improving available works.
ad1d7b
ad1d7b
Note that you need to have a username called \texttt{centos} in your
ad1d7b
system.  If you don't have it, you can create it using the comand
ad1d7b
\texttt{useradd} as superuser (\texttt{root}).
ad1d7b
ad1d7b
\subsection{Standardizing Absolute Path}
ad1d7b
ad1d7b
When using Inkscape to import raster images inside SVG files the
ad1d7b
absolute image path is required. If everyone stores the working copy
ad1d7b
on a different absolute path imported images will not be loaded in
ad1d7b
those location different from those they were conceived. There is no
ad1d7b
way to find the right absolute image path but defining a convenction
ad1d7b
about it. 
ad1d7b
ad1d7b
On a path string (e.g., /home/centos/artwork/trunk/) the username
ad1d7b
(`centos') is the variable component, so it is the component we need
ad1d7b
to standardize--in the sake of keeping the working copy inside user's
ad1d7b
/home/ structure. Thus, analysing which username to use, the CentOS
ad1d7b
Project is what join us all together, so the `centos' word in
ad1d7b
lower-case seems to be a nice choise for us to use as common username. 
ad1d7b
ad1d7b
\section{User Identification}
ad1d7b
ad1d7b
At this point you probably have made some changes inside your working
ad1d7b
copy and wish to publish them.  To publish your changes on CentOS
ad1d7b
Artwork Repository you need to have a registered account with commit
ad1d7b
privilege in CentOS Artwork Repository.
ad1d7b
ad1d7b
If you are new in CentOS Artwork Repository it is possible that you
ad1d7b
can't commit your changes. That is because new registered accounts
ad1d7b
haven't commit privilege set by default.  In order for your registered
ad1d7b
account to have commit privilege inside CentOS Artwork Repository you
ad1d7b
need to request it. See section
ad1d7b
\ref{sec:Configuration:User:Privileges}.
ad1d7b
ad1d7b
\subsection{User Account Registration}
ad1d7b
\label{sec:Configuration:Account}
ad1d7b
ad1d7b
To register a user account inside CentOS Artwork Repository, you need
ad1d7b
to go to the following URL:
ad1d7b
ad1d7b
\begin{quote}
ad1d7b
\url{https://projects.centos.org/trac/artwork/}
ad1d7b
\end{quote}
ad1d7b
ad1d7b
\subsection{User Account Privileges}
ad1d7b
\label{sec:Configuration:User:Privileges}
ad1d7b
ad1d7b
To have commit privileges in CentOS Artwork Repository it is needed
ad1d7b
that you show your interest first, preferably with something useful
ad1d7b
like a new or improved design, translation, manual, or script. As
ad1d7b
convenction, people working on CentOS Artwork Repository share ideas
ad1d7b
in the mailing list
ad1d7b
\href{mailto:centos-devel@centos.org}{centos-devel@centos.org}. If you
ad1d7b
are interested in joining us go there and express yourself.
ad1d7b
ad1d7b
\section{Repository Tagged Revisions}
ad1d7b
ad1d7b
The CentOS Artwork Repository is also available as tagged revisions.
ad1d7b
Tagged revisions are checkpoints on the CentOS Artwork Repository
ad1d7b
developing lifetime. They are inmutable copies of the CentOS Artwork
ad1d7b
Repository state through time.  Tagged revisions contain the files
ad1d7b
used to produce images but not images themselves.  Inside tagged
ad1d7b
revisions you can find scripts (\texttt{.sh}), design templates
ad1d7b
(\texttt{.svg}), translation files (\texttt{\.sed}), gimp projects
ad1d7b
(\texttt{.xcf}), and documetation files (\texttt{.tex}).
ad1d7b
ad1d7b
CentOS Artowrk Repository tagged revisions are available for
ad1d7b
downloading in the following location:
ad1d7b
ad1d7b
\begin{description}
ad1d7b
\item[URL:] https://projects.centos.org/svn/artwork/tags
ad1d7b
\end{description}
ad1d7b
ad1d7b
and alternatively, you can find references in the CentOS Project's
ad1d7b
wiki, specifically in the ArtWork page:
ad1d7b
ad1d7b
\begin{description}
ad1d7b
\item[URL:] http://wiki.centos.org/ArtWork
ad1d7b
\end{description}