Blame Manuals/Repository/filesystem-latex/Workstation/configuration.tex

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