From b32b4523dd9b16c4de0859ed9077a33d002d20c3 Mon Sep 17 00:00:00 2001 From: Alain Reguera Delgado Date: Jun 12 2011 00:59:26 +0000 Subject: Move `branches/Manuals/Texinfo/Repository' to `trunk/Manuals/RepoReferences'. --- diff --git a/Manuals/RepoReferences/en_US/Directories/branches.texinfo b/Manuals/RepoReferences/en_US/Directories/branches.texinfo new file mode 100755 index 0000000..e8639d1 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/branches.texinfo @@ -0,0 +1,23 @@ +@subheading Goals + +This directory implements the Subversion's branches concept in a +trunk, branches, tags repository structure. + +@subheading Description + +The @file{branches/} directory structure provides the intermediate +space for creating several instances of @file{trunk/} directory +structure for parallel development and later merging changes back to +@file{trunk/} in the same parallel basis. + +@subheading Usage + +The @file{branches/} directory structure is unused, so far. + +@subheading See also + +@itemize +@item @ref{Directories tags}. +@item @ref{Directories trunk}. +@item The Subversion book (@url{http://svnbook.red-bean.com/}). +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/chapter-menu.texinfo b/Manuals/RepoReferences/en_US/Directories/chapter-menu.texinfo new file mode 100644 index 0000000..d99aff5 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/chapter-menu.texinfo @@ -0,0 +1,52 @@ +@menu +* Directories branches:: +* Directories tags:: +* Directories trunk:: +* Directories trunk Identity:: +* Directories trunk Identity Brushes:: +* Directories trunk Identity Fonts:: +* Directories trunk Identity Images:: +* Directories trunk Identity Images Themes:: +* Directories trunk Identity Images Themes Motifs:: +* Directories trunk Identity Images Themes Motifs Flame:: +* Directories trunk Identity Images Themes Motifs Modern:: +* Directories trunk Identity Images Themes Motifs Pipes:: +* Directories trunk Identity Images Themes Motifs TreeFlower:: +* Directories trunk Identity Models:: +* Directories trunk Identity Models Brands:: +* Directories trunk Identity Models Themes:: +* Directories trunk Identity Models Themes Default:: +* Directories trunk Identity Models Themes Default Concept:: +* Directories trunk Identity Models Themes Default Distro:: +* Directories trunk Identity Models Themes Default Distro 5:: +* Directories trunk Identity Models Themes Default Distro 5.5 Notes Release:: +* Directories trunk Identity Models Themes Default Distro 5 Anaconda:: +* Directories trunk Identity Models Themes Default Distro 5 Firstboot:: +* Directories trunk Identity Models Themes Default Distro 5 Gdm:: +* Directories trunk Identity Models Themes Default Distro 5 Grub:: +* Directories trunk Identity Models Themes Default Distro 5 Gsplash:: +* Directories trunk Identity Models Themes Default Distro 5 Kdm:: +* Directories trunk Identity Models Themes Default Distro 5 Ksplash:: +* Directories trunk Identity Models Themes Default Distro 5 Rhgb:: +* Directories trunk Identity Models Themes Default Distro 5 Syslinux:: +* Directories trunk Identity Models Themes Default Posters:: +* Directories trunk Identity Palettes:: +* Directories trunk Identity Patterns:: +* Directories trunk Identity Webenv:: +* Directories trunk Locales:: +* Directories trunk Manuals:: +* Directories trunk Manuals Directories:: +* Directories trunk Manuals Introduction:: +* Directories trunk Manuals Licenses:: +* Directories trunk Scripts:: +* Directories trunk Scripts Functions:: +* Directories trunk Scripts Functions Help:: +* Directories trunk Scripts Functions Help Backends:: +* Directories trunk Scripts Functions Help Backends Docbook:: +* Directories trunk Scripts Functions Help Backends Linuxdoc:: +* Directories trunk Scripts Functions Help Backends Texinfo:: +* Directories trunk Scripts Functions Locale:: +* Directories trunk Scripts Functions Prepare:: +* Directories trunk Scripts Functions Render:: +* Directories trunk Scripts Functions Tuneup:: +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/chapter-nodes.texinfo b/Manuals/RepoReferences/en_US/Directories/chapter-nodes.texinfo new file mode 100644 index 0000000..ce14a4f --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/chapter-nodes.texinfo @@ -0,0 +1,250 @@ +@node Directories branches +@section The @file{branches} Directory +@cindex Directories branches +@include Directories/branches.texinfo + +@node Directories tags +@section The @file{tags} Directory +@cindex Directories tags +@include Directories/tags.texinfo + +@node Directories trunk +@section The @file{trunk} Directory +@cindex Directories trunk +@include Directories/trunk.texinfo + +@node Directories trunk Identity +@section The @file{trunk/Identity} Directory +@cindex Directories trunk Identity +@include Directories/trunk/Identity.texinfo + +@node Directories trunk Identity Brushes +@section The @file{trunk/Identity/Brushes} Directory +@cindex Directories trunk Identity Brushes +@include Directories/trunk/Identity/Brushes.texinfo + +@node Directories trunk Identity Fonts +@section The @file{trunk/Identity/Fonts} Directory +@cindex Directories trunk Identity Fonts +@include Directories/trunk/Identity/Fonts.texinfo + +@node Directories trunk Identity Images +@section The @file{trunk/Identity/Images} Directory +@cindex Directories trunk Identity Images +@include Directories/trunk/Identity/Images.texinfo + +@node Directories trunk Identity Images Themes +@section The @file{trunk/Identity/Images/Themes} Directory +@cindex Directories trunk Identity Images Themes +@include Directories/trunk/Identity/Images/Themes.texinfo + +@node Directories trunk Identity Images Themes Motifs +@section The @file{trunk/Identity/Images/Themes/Motifs} Directory +@cindex Directories trunk Identity Images Themes Motifs +@include Directories/trunk/Identity/Images/Themes/Motifs.texinfo + +@node Directories trunk Identity Images Themes Motifs Flame +@section The @file{trunk/Identity/Images/Themes/Motifs/Flame} Directory +@cindex Directories trunk Identity Images Themes Motifs Flame +@include Directories/trunk/Identity/Images/Themes/Motifs/Flame.texinfo + +@node Directories trunk Identity Images Themes Motifs Modern +@section The @file{trunk/Identity/Images/Themes/Motifs/Modern} Directory +@cindex Directories trunk Identity Images Themes Motifs Modern +@include Directories/trunk/Identity/Images/Themes/Motifs/Modern.texinfo + +@node Directories trunk Identity Images Themes Motifs Pipes +@section The @file{trunk/Identity/Images/Themes/Motifs/Pipes} Directory +@cindex Directories trunk Identity Images Themes Motifs Pipes +@include Directories/trunk/Identity/Images/Themes/Motifs/Pipes.texinfo + +@node Directories trunk Identity Images Themes Motifs TreeFlower +@section The @file{trunk/Identity/Images/Themes/Motifs/TreeFlower} Directory +@cindex Directories trunk Identity Images Themes Motifs TreeFlower +@include Directories/trunk/Identity/Images/Themes/Motifs/TreeFlower.texinfo + +@node Directories trunk Identity Models +@section The @file{trunk/Identity/Models} Directory +@cindex Directories trunk Identity Models +@include Directories/trunk/Identity/Models.texinfo + +@node Directories trunk Identity Models Brands +@section The @file{trunk/Identity/Models/Brands} Directory +@cindex Directories trunk Identity Models Brands +@include Directories/trunk/Identity/Models/Brands.texinfo + +@node Directories trunk Identity Models Themes +@section The @file{trunk/Identity/Models/Themes} Directory +@cindex Directories trunk Identity Models Themes +@include Directories/trunk/Identity/Models/Themes.texinfo + +@node Directories trunk Identity Models Themes Default +@section The @file{trunk/Identity/Models/Themes/Default} Directory +@cindex Directories trunk Identity Models Themes Default +@include Directories/trunk/Identity/Models/Themes/Default.texinfo + +@node Directories trunk Identity Models Themes Default Concept +@section The @file{trunk/Identity/Models/Themes/Default/Concept} Directory +@cindex Directories trunk Identity Models Themes Default Concept +@include Directories/trunk/Identity/Models/Themes/Default/Concept.texinfo + +@node Directories trunk Identity Models Themes Default Distro +@section The @file{trunk/Identity/Models/Themes/Default/Distro} Directory +@cindex Directories trunk Identity Models Themes Default Distro +@include Directories/trunk/Identity/Models/Themes/Default/Distro.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5.5 Notes Release +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5.5/Notes/Release} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5.5 Notes Release +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5.5/Notes/Release.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Anaconda +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Anaconda} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Anaconda +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Anaconda.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Firstboot +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Firstboot} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Firstboot +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Firstboot.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Gdm +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Gdm} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Gdm +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Gdm.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Grub +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Grub} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Grub +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Grub.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Gsplash +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Gsplash} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Gsplash +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Gsplash.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Kdm +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Kdm} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Kdm +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Kdm.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Ksplash +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Ksplash} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Ksplash +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Ksplash.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Rhgb +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Rhgb} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Rhgb +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Rhgb.texinfo + +@node Directories trunk Identity Models Themes Default Distro 5 Syslinux +@section The @file{trunk/Identity/Models/Themes/Default/Distro/5/Syslinux} Directory +@cindex Directories trunk Identity Models Themes Default Distro 5 Syslinux +@include Directories/trunk/Identity/Models/Themes/Default/Distro/5/Syslinux.texinfo + +@node Directories trunk Identity Models Themes Default Posters +@section The @file{trunk/Identity/Models/Themes/Default/Posters} Directory +@cindex Directories trunk Identity Models Themes Default Posters +@include Directories/trunk/Identity/Models/Themes/Default/Posters.texinfo + +@node Directories trunk Identity Palettes +@section The @file{trunk/Identity/Palettes} Directory +@cindex Directories trunk Identity Palettes +@include Directories/trunk/Identity/Palettes.texinfo + +@node Directories trunk Identity Patterns +@section The @file{trunk/Identity/Patterns} Directory +@cindex Directories trunk Identity Patterns +@include Directories/trunk/Identity/Patterns.texinfo + +@node Directories trunk Identity Webenv +@section The @file{trunk/Identity/Webenv} Directory +@cindex Directories trunk Identity Webenv +@include Directories/trunk/Identity/Webenv.texinfo + +@node Directories trunk Locales +@section The @file{trunk/Locales} Directory +@cindex Directories trunk Locales +@include Directories/trunk/Locales.texinfo + +@node Directories trunk Manuals +@section The @file{trunk/Manuals} Directory +@cindex Directories trunk Manuals +@include Directories/trunk/Manuals.texinfo + +@node Directories trunk Manuals Directories +@section The @file{trunk/Manuals/Directories} Directory +@cindex Directories trunk Manuals Directories +@include Directories/trunk/Manuals/Directories.texinfo + +@node Directories trunk Manuals Introduction +@section The @file{trunk/Manuals/Introduction} Directory +@cindex Directories trunk Manuals Introduction +@include Directories/trunk/Manuals/Introduction.texinfo + +@node Directories trunk Manuals Licenses +@section The @file{trunk/Manuals/Licenses} Directory +@cindex Directories trunk Manuals Licenses +@include Directories/trunk/Manuals/Licenses.texinfo + +@node Directories trunk Scripts +@section The @file{trunk/Scripts} Directory +@cindex Directories trunk Scripts +@include Directories/trunk/Scripts.texinfo + +@node Directories trunk Scripts Functions +@section The @file{trunk/Scripts/Functions} Directory +@cindex Directories trunk Scripts Functions +@include Directories/trunk/Scripts/Functions.texinfo + +@node Directories trunk Scripts Functions Help +@section The @file{trunk/Scripts/Functions/Help} Directory +@cindex Directories trunk Scripts Functions Help +@include Directories/trunk/Scripts/Functions/Help.texinfo + +@node Directories trunk Scripts Functions Help Backends +@section The @file{trunk/Scripts/Functions/Help/Backends} Directory +@cindex Directories trunk Scripts Functions Help Backends +@include Directories/trunk/Scripts/Functions/Help/Backends.texinfo + +@node Directories trunk Scripts Functions Help Backends Docbook +@section The @file{trunk/Scripts/Functions/Help/Backends/Docbook} Directory +@cindex Directories trunk Scripts Functions Help Backends Docbook +@include Directories/trunk/Scripts/Functions/Help/Backends/Docbook.texinfo + +@node Directories trunk Scripts Functions Help Backends Linuxdoc +@section The @file{trunk/Scripts/Functions/Help/Backends/Linuxdoc} Directory +@cindex Directories trunk Scripts Functions Help Backends Linuxdoc +@include Directories/trunk/Scripts/Functions/Help/Backends/Linuxdoc.texinfo + +@node Directories trunk Scripts Functions Help Backends Texinfo +@section The @file{trunk/Scripts/Functions/Help/Backends/Texinfo} Directory +@cindex Directories trunk Scripts Functions Help Backends Texinfo +@include Directories/trunk/Scripts/Functions/Help/Backends/Texinfo.texinfo + +@node Directories trunk Scripts Functions Locale +@section The @file{trunk/Scripts/Functions/Locale} Directory +@cindex Directories trunk Scripts Functions Locale +@include Directories/trunk/Scripts/Functions/Locale.texinfo + +@node Directories trunk Scripts Functions Prepare +@section The @file{trunk/Scripts/Functions/Prepare} Directory +@cindex Directories trunk Scripts Functions Prepare +@include Directories/trunk/Scripts/Functions/Prepare.texinfo + +@node Directories trunk Scripts Functions Render +@section The @file{trunk/Scripts/Functions/Render} Directory +@cindex Directories trunk Scripts Functions Render +@include Directories/trunk/Scripts/Functions/Render.texinfo + +@node Directories trunk Scripts Functions Tuneup +@section The @file{trunk/Scripts/Functions/Tuneup} Directory +@cindex Directories trunk Scripts Functions Tuneup +@include Directories/trunk/Scripts/Functions/Tuneup.texinfo + diff --git a/Manuals/RepoReferences/en_US/Directories/chapter.texinfo b/Manuals/RepoReferences/en_US/Directories/chapter.texinfo new file mode 100644 index 0000000..b90daf3 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/chapter.texinfo @@ -0,0 +1,15 @@ +@node Directories +@chapter The Repository Directories +@cindex Repository directories + +The CentOS Artwork Repository uses directories to organize files and +describe conceptual idea about corporate identity. Such conceptual +ideas are explained in each directory related documentation entry. + +In this chapter you'll learn what each directory inside The CentOS +Artwork Repository is for and so, how you can make use of them. For +that purpose, the following list of directories is available for you +to explore: + +@include Directories/chapter-menu.texinfo +@include Directories/chapter-nodes.texinfo diff --git a/Manuals/RepoReferences/en_US/Directories/tags.texinfo b/Manuals/RepoReferences/en_US/Directories/tags.texinfo new file mode 100755 index 0000000..609583a --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/tags.texinfo @@ -0,0 +1,24 @@ +@subheading Goals + +This directory implements the Subversion's tags concept in a trunk, +branches, tags repository structure. + +@subheading Description + +The @file{tags/} directory structure provides frozen branches. +Generally, we use frozen branches to make check-points in time for +development lines under @file{branches/} or @file{trunk/} directory +structure. + +@subheading Usage + +The @file{tags/} directory structure is unused, so far. + +@subheading See also + +@itemize +@item @ref{Directories branches}. +@item @ref{Directories trunk}. +@item The subversion book (@url{http://svnbook.red-bean.com/}). +@end itemize + diff --git a/Manuals/RepoReferences/en_US/Directories/trunk.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk.texinfo new file mode 100644 index 0000000..a7ea8d1 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk.texinfo @@ -0,0 +1,26 @@ +@subheading Goals + +The @file{trunk/} directory structure implements the Subversion's +trunk concept in a trunk, branches, tags repository structure. + +@subheading Description + +The @file{trunk/} directory structure provides the main development +line inside the CentOS Artwork Repository. + +@subheading Usage + +@itemize +@item @xref{Directories trunk Identity}. +@item @xref{Directories trunk Manuals}. +@item @xref{Directories trunk Locales}. +@item @xref{Directories trunk Scripts}. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories branches}. +@item @ref{Directories tags}. +@item The Subversion book (@url{http://svnbook.red-bean.com/}). +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity.texinfo new file mode 100644 index 0000000..eca5563 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity.texinfo @@ -0,0 +1,279 @@ +@subheading Goals + +The @file{trunk/Identity} describes what The CentOS Project Corporate +Identity is and the components it is made of. + +@subheading Description + +The CentOS Project Corporate Identity is the ``persona'' of the +organization known as The CentOS Project. The CentOS Project +Corporate Identity plays a significant role in the way The CentOS +Project, as organization, presents itself to both internal and +external stakeholders. In general terms, The CentOS Project Corporate +Identity expresses the values and ambitions of The CentOS Project +organization, its business, and its characteristics. + +The CentOS Project Corporate Identity provides visibility, +recognizability, reputation, structure and identification to The +CentOS Project organization by means of @emph{Corporate Design}, +@emph{Corporate Communication}, and @emph{Corporate Behaviour}. + +@image{trunk/Identity/Images/Manual/Corporate/monolithic,450pt,,,jpg} + +@subsubheading Corporate Mission + +The CentOS Project exists to provide The CentOS Distribution. +Additionally, The CentOS Project provides The CentOS Web and The +CentOS Showroom to support and promote the existence of The CentOS +Distribution, respectively. + +@subsubheading Corporate Design + +Corporate design is focused on the effective communication of +corporate visual messages. Corporate visual messages are all the +information emitted by a corporation that can be perceived by the +people through their visual sence (i.e., the human eye). In order for +such visual communication to happen, it is required to put the visual +message on medium available for people to see. These kind of media +are know as corporate visual manifestations, since the corporate +manifests its existence through them using corporate design. + +The amount of visual manifestations a corporation uses to communicate +its existence is very specific to each corporation itself. Inside The +CentOS Project Corporate Identity, considering @emph{The CentOS +Project Corporate Structure}, @emph{The CentOS Project Corporate +Mission} and @emph{The CentOS Project Release Schema}, the following +visual manifestations were defined: + +@table @strong +@item The CentOS Distribution + +The CentOS Distribution visual manifestation exists to cover all +actions related to artwork production and rebranding required by the +The CentOS Distribution (--- @strong{Removed}(pxref:Directories trunk Identity Images Themes +Models Default Distro) ---) in order to comply with its upstream +redistribution guidelines. + +The CentOS Distribution is made of software packages. Inside the +distribution there are packages that make a remarkable use of images +and there are packages that don't use images at all. The CentOS +Distribution visual manifestation gets focused on software packages +that do use images in a remarkable way (e.g., @file{anaconda}, +@file{grub}, @file{syslinux}, @file{gdm}, @file{kdm}) and that way, +through images, implements the corporate design in The CentOS +Distribution (i.e., the operating system). + +@item The CentOS Web + +The CentOS Web visual manifestation exists to support The CentOS +Distribution. + +The CentOS Web covers web applications which let The CentOS Project to +manifest its existence on the Internet. Through these web applications +The CentOS Project provides Corporate Communication. These web +applications are free software and come from different providers which +distribute their work with predefined visual styles. Frequently, +these predefined visual styles have no visual relation among +themselves and introduce some visual contraditions when they all are +put together. These visual contraditions need to be removed in order +to comply with The CentOS Project Corporate Structure guidelines. + +@item The CentOS Showroom + +The CentOS Showroom visual manifestation exists to promote The CentOS +Distribution. + +The CentOS Showroom covers industrial production of objects branded by +The CentOS Project (e.g., clothes, stationery and installation media). +These branded objects are for distribution on social events and/or +shops. They provide a way of promotion and a route for +commercialization that may help to aliviate The CentOS Project +expenses (e.g., electrical power, hosting, servers, +full-time-developers, etc.), in a similar way as donations may do. + +@end table + +The visual manifestations above seem to cover all the media required +by The CentOS Project, as organization, to show its existence. +However, other visual manifestations could be added in the future, if +needed, to cover different areas like building, offices, road +transportation and whaterver visual manifestation The CentOS Project +thouches to show its existence. + +@subsubheading Corporate Communication + +The CentOS Project Corporate Communication is based on @emph{Community +Communication} and takes place through the following avenues: + +@itemize +@item The CentOS Chat (@code{#centos}, @code{#centos-social}, +@code{#centos-devel} on irc.freenode.net) +@item The CentOS Mailing Lists (@url{http://lists.centos.org/}). +@item The CentOS Forums (@url{http://forums.centos.org/}). +@item The CentOS Wiki (@url{http://wiki.centos.org/}). +@item Social events, interviews, conferences, etc. +@end itemize + +@subsubheading Corporate Behaviour + +The CentOS Project Corporate Behaviour is based on @emph{Community +Behaviour} which take place on @emph{Corporate Communication}. + +@subsubheading Corporate Structure + +The CentOS Project Corporate Structure is based on a @emph{Monolithic +Corporate Visual Identity Structure}. In this configuration, one +unique name and one unique visual style is used in all visual +manifestation of The CentOS Project. + +In a monolithic corporate visual identity structure, internal and +external stakeholders use to feel a strong sensation of uniformity, +orientation, and identification with the organization. No matter if +you are visiting web sites, using the distribution, or acting on +social events, the one unique name and one unique visual style +connects them all to say: @emph{Hey! we are all part of The CentOS +Project}. + +Other corporate structures for The CentOS Project have been considered +as well. Such is the case of producing one different visual style for +each major release of The CentOS Distribution. This structure isn't +inconvenient at all, but some visual contradictions could be +introduced if it isn't applied correctly and we need to be aware of +it. To apply it correctly, we need to know what The CentOS Project is +made of. + +The CentOS Project, as organization, is mainly made of (but not +limited to) three visual manifestions: Distribution, Web and Showroom. +Inside the Distribution visual manifestations, The CentOS Project +maintains near to four different major releases of CentOS +Distribution, parallely in time. However, inside The CentOS Web +visual manifestations, the content is produced for no specific release +information (e.g., there is no a complete web site for each major +release of The CentOS Distribution individually, but one web site to +cover them all). Likewise, the content produced in The CentOS Showroom +is created for no release-specific at all, but for The CentOS Project +in general. + +In order to produce the correct corporate structure for The CentOS +Project we need to concider all the visual manifestations The CentOS +Project is made of, not just one of them. If one different visual +style is used for each major release of The CentOS Distribution, which +one of those different visual styles would be used to cover the +remaining visual manifestations The CentOS Project is made of (e.g., +The CentOS Web and The CentOS Showroom)? + +Probably you are thinking, that's right, but The CentOS Brand connects +them all already, why would we need to join them up into the same +visual style too, isn't it more work to do, and harder to maintain? + +Harder to maintain, more work to do, probably. Specially when you +consider that The CentOS Project has proven stability and consistency +through time and, that, certainly, didn't come through swinging +magical wands or something but hardly working out to automate tasks +and providing maintainance through time. Said that, we consider that +The CentOS Project Corporate Structure must be consequent with such +stability and consistency tradition. It is true that The CentOS Brand +does connect all the visual manifestations it is present on, but that +connection would be stronger if one unique visual style backups it. +In fact, whatever thing you do to strength the visual connection among +The CentOS Project visual manifestations would be very good in favor +of The CentOS Project recognition. + +Obviously, having just one visual style in all visual manifestations +for eternity would be a very boring thing and would give the idea of a +visually dead project. So, there is no problem on creating a brand new +visual style for each new major release of The CentOS Distribution, in +order to refresh The CentOS Distribution visual style; the problem +itself is in not propagating the brand new visual style created for +the new release of The CentOS Distribution to all other visual +manifestations The CentOS Project is made of, in a way The CentOS +Project could be recognized no matter what visual manifestation be in +front of us. Such lack of uniformity is what introduces the visual +contradition we are precisely trying to solve by mean of themes +production in the CentOS Artwork Repository. + +@subheading Usage + +The @file{trunk/Identity} directory structure organizes most files +used to build and implement The CentOS Project Corporate Identity. In +that sake, the following work lines are available: + +@table @strong + +@item Brushes + +This work line provides brushes for GIMP. When you prepare the +repository, brushes in this location are made available immediatly for +you to use in the ``Brushes'' panel of GIMP. + +@xref{Directories trunk Identity Brushes}, for more +information. + +@item Fonts + +This work line provides the typography information required by all +different visual manifestations of The CentOS Project. When you +prepare the repository, fonts in this location are made available +immediatly for you to use in GIMP and Inkscape. + +@xref{Directories trunk Identity Fonts}, for more information. + +@item Images + +This work line provides output location for final images that don't +need to use background images (e.g., brands, icons, illustrations, +etc.). + +@xref{Directories trunk Identity Images}, for more information. + +@item Models + +This work line provides design models for final images that don't need +to use background images (e.g., brands, icons, illustrations, etc.). + +@xref{Directories trunk Identity Models}, for more information. + +@item Palettes + +This work line provides palettes of colors for GIMP and Inkscape. When +you prepare the repository, palettes of colors in this location are +made available immediatly for you to use in the ``Palettes'' panel of +GIMP and Inkscape. + +@xref{Directories trunk Identity Palettes}, for more information. + +@item Patterns + +This work line provides patterns for GIMP. When you prepare the +repository, patterns in this location are made available immediatly +for you to use in the ``Patterns'' panel of GIMP. + +@xref{Directories trunk Identity Patterns}, for more information. + +@item Themes + +This work line provides theme design models and theme artistic motifs +for The CentOS Project. If you are interested in creating brand new +visual styles for The CentOS Project this is the place for you. + +@xref{Directories trunk Identity Images Themes}, for more information. + +@item Webenv + +This work line provides the HTML/XHTML and CSS standard definitions +used by The CentOS Web visual manifestation. If you are a web +developer and plan to improve The CentOS Web visual manifestation, +then the files in this location may result very useful to you. + +@xref{Directories trunk Identity Webenv}, for more information. +@end table + +@subheading See also + +See @url{http://en.wikipedia.org/Corporate_identity} (and related +links), for general information on Corporate Identity. + +Specially useful has been, and still is, the book @emph{Corporate +Identity} by Wally Olins (1989). This book provides many of the +conceptual ideas we've used as base to build The CentOS Artwork +Repository. diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Brushes.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Brushes.texinfo new file mode 100755 index 0000000..0d046e0 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Brushes.texinfo @@ -0,0 +1,135 @@ +@subheading Goals + +This section describes how brushes are organized in the repository and +how to make them available for you to use in @acronym{GIMP,GNU Image +Manipulation Program}. + +@subheading Description + +A brush is a pixmap or set of pixmaps used for painting through an +image manipulation program like GIMP. Inside the repository, we've +organized brushes in @emph{common brushes} and @emph{theme-specific +brushes}. In both cases, brushes are initially created in @file{.xcf} +format and later exported to any of the brush formats recognized by +GIMP (e.g., @file{.gbr} or @file{.gih}) using the same name of its +source file. + +@verbatim +1. Common brushes 2. Theme-specific brushes +---------------------- ----------------------------------------------------------- +trunk/Identity/Brushes trunk/Identity/Images/Themes/THEMENAME/THEMEVERSION/Brushes +|-- Xcf |-- Xcf +| |-- 1.xcf | |-- 1.xcf +| |-- 2.xcf | |-- 2.xcf +| `-- 3.xcf | `-- 3.xcf +|-- 1.gbr |-- 1.gbr +|-- 2.gih |-- 2.gih +`-- 3.gbr `-- 3.gbr +@end verbatim + +In order for both common brushes and theme-specific brushes to be +loaded by GIMP, related @file{.gbr} and @file{.gih} brush files need +to be stored under @file{~/.gimp-2.2/brushes} directory. This location +is out of CentOS Artwork Repository and provides no version control by +itself. This way, brushes aren't exported to this location but into +the repository directory structure which is versioned. Later, we +create symbolic links in @file{~/.gimp-2.2/brushes} to connect file +brushes inside the repository and, this way, provide the configuration +needed by GIMP to use the brush files produced inside the repository. + +@quotation +@strong{Warning} +When brushes are added to or removed from the repository, you need to +update your working copy and all information related to brushes inside +your workstation (e.g., brush links in @file{~/.gimp-2.2/brushes} and +the Brushes panel in GIMP). Otherwise, you may end up with broken +links or brushes in the repository that wouldn't be available for you +to use in GIMP. +@end quotation + +Inside the repository, common brushes and theme-specific brushes are +created individually in different locations, but they all are linked +from one unique location (i.e., @file{~/.gimp-2.2/brushes}). This +configuration may provoke brush overlapping if a name convenction is +not implemented correctly. In that sake, file names used for brushes +inside the repository must be unique, no matter where they be. + +As file name convenction inside the repository, brushes are named +using lowercase letters, numbers, minus characters and dot characters, +only. Additionally, when links are built, we use one suffix for those +brushes retrived from @file{trunk/Identity/Brushes} and another suffix +for those brushes retrivided from theme-specific directories. Using +both the brush file name and the suffix information, it is possible +to build unique names for links under @file{~/.gimp-2.2/brushes} +directory, scalably. + +@verbatim +trunk/Identity/Brushes +|-- 1.gbr (file) <-- ~/.gimp-2.2/brushes/centos-1.gbr (link) +|-- 2.gbr (file) <-- ~/.gimp-2.2/brushes/centos-2.gbr (link) +`-- 3.gbr (file) <-- ~/.gimp-2.2/brushes/centos-3.gbr (link) +@end verbatim + +@verbatim +trunk/Identity/Images/Themes/THEMENAME/THEMEVERSION/Brushes +|-- 1.gbr (file) <-- ~/.gimp-2.2/brushes/centos-THEMENAME-THEMEVERSION-1.gbr (link) +|-- 2.gbr (file) <-- ~/.gimp-2.2/brushes/centos-THEMENAME-THEMEVERSION-2.gbr (link) +`-- 3.gbr (file) <-- ~/.gimp-2.2/brushes/centos-THEMENAME-THEMEVERSION-3.gbr (link) +@end verbatim + +Brushes produced with GIMP has a description field associated that is +shown in the Brushes panel of GIMP. This description is set when the +brush is created as @file{.xcf} file and can be updated when it is +exported either to @file{.gbr} or @file{.gih} format. It wouldn't be +too useful to have two or more brushes using the same description so, +we also make description of brush files unique, too. In that sake, we +use the same name schema used to name brush links as description but +without including the file extension (e.g., if we have the +@file{centos-flame-3.gbr} brush, its description would be +@code{centos-flame-3}). + +@subheading Usage + +The way you use brushes is up to your creativeness. However, the way +brushes are made available needs to be standardized. That's the reason +of organizing brushes in common brushes and theme-specific brushes. + +@subheading Common brushes + +Common brushes exist to organize brushes that can be used anywhere +inside the repository. Inside the repository, common brushes under +@file{trunk/Identity/Brushes} are mainly used to hold brand +information related to The CentOS Project (e.g., symbols, logos, +trademarks, etc.). + +Common brushes are always made available under +@file{~/.gimp-2.2/brushes} directory after preparing the repository +(@pxref{Directories trunk Scripts Functions Prepare}). + +@subheading Theme-specific brushes + +Theme-specific brushes exist to organize brushes that can be used +inside specific artistic motifs only. Inside the repository, +theme-specific brushes are stored in a directory named @file{Brushes} +which is stored in the first directory level under the artistic motif +directory structure. Each artistic motif inside the repository has its +own @file{Brushes} directory and uses it to store brushes that can be +considered auxiliars to that artistic motif construction. + +Theme-specific brushes aren't made available under +@file{~/.gimp-2.2/brushes} directory after preparing the repository. +In order to make theme-specific brushes available under +@file{~/.gimp-2.2./brushes} it is required to activate/deactivate them +using the @code{theme} functionality of @command{centos-art.sh} +script. @c (@pxref{Directories trunk Scripts Functions Theme}). + +@subheading See also + +@itemize +@item @url{file:///usr/share/gimp/2.0/help/en/index.html,The Gimp +Manual}, specifically the section related to +@url{file:///usr/share/gimp/2.0/help/en/gimp-concepts-brushes.html, +Brushes}. +@item @ref{Directories trunk Identity} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Fonts.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Fonts.texinfo new file mode 100644 index 0000000..ea4b08b --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Fonts.texinfo @@ -0,0 +1,44 @@ +@subheading Goals + +This section describes how typographies are organized in the +repository and how to make them available for you to use in +@acronym{GIMP,GNU Image Manipulation Program} and Inkscape. + +@subheading Description + +The CentOS Project Corporate Identity is attached to @samp{DejaVu LGC} +font-family and @samp{Denmark} font-family. + +@image{trunk/Identity/Images/Manual/Fonts/dejavu-lgc,430pt,,,jpg} + +@image{trunk/Identity/Images/Manual/Fonts/denmark,430pt,,,jpg} + +@quotation +@strong{Caution} +The copyright and license of @samp{Denmark} typography aren't very +specific and that issue may represent a threat to The CentOS Project +Corporate Identity. +@end quotation + +The @samp{Denmark} typography is used as base to build The CentOS Logo +(i.e., the main graphic design that connects/identifies all visual +manifestations related to The CentOS Project). If the typography used +to build The CentOS Logo is compromised somehow, the whole corporate +visual identity it represents would be compromised, as well. To +prevent such issues, it would be better for The CentOS Project to move +on from @samp{Denmark} typography to another typography (free, +preferably) that retain the same visual style of @samp{Denmark}, but +intruce a clearer copyright and license notice. + +@subheading Usage + +@itemize +@item @xref{Directories trunk Identity Models Brands}. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Identity}. +@item @ref{Directories trunk}. +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images.texinfo new file mode 100755 index 0000000..cbc5503 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images.texinfo @@ -0,0 +1,24 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Identity} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes.texinfo new file mode 100644 index 0000000..0bf7e5d --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes.texinfo @@ -0,0 +1,89 @@ +@subheading Goals + +The @file{trunk/Identity/Themes/} directory exists to organize +production of CentOS themes. + +@subheading Description + +Initially, we start working themes on their trunk development line +(e.g., @file{trunk/Identity/Images/Themes/TreeFlower/}), here we +organize information that cannot be produced automatically (i.e., +background images, concepts, color information, screenshots, etc.). + +Later, when theme trunk development line is considered ``ready'' for +implementation (e.g., all required backgrounds have been designed), +we create a branch for it (e.g., +@file{branches/Identity/Images/Themes/TreeFlower/1/}). Once the +branch has been created, we forget that branch and continue working +the trunk development line while others (e.g., an artwork quality +assurance team) test the new branch for tunning it up. + +Once the branch has been tunned up, and considered ``ready'' for +release, it is freezed under @file{tags/} directory (e.g., +@file{tags/Identity/Images/Themes/TreeFower/1.0/}) for packagers, +webmasters, promoters, and anyone who needs images from that CentOS +theme the tag was created for. + +Both branches and tags, inside CentOS Artwork Repository, use +numerical values to identify themselves under the same location. +Branches start at one (i.e., @samp{1}) and increment one unit for each +branch created from the same trunk development line. Tags start at +zero (i.e., @samp{0}) and increment one unit for each tag created from +the same branch development line. + +@quotation +@strong{Convenction} Do not freeze trunk development lines using tags +directly. If you think you need to freeze a trunk development line, +create a branch for it and then freeze that branch instead. +@end quotation + +The trunk development line may introduce problems we cannot see +immediatly. Certainly, the high changable nature of trunk development +line complicates finding and fixing such problems. On the other hand, +the branched development lines provide a more predictable area where +only fixes/corrections to current content are commited up to +repository. + +If others find and fix bugs inside the branched development line, we +could merge such changes/experiences back to trunk development line +(not visversa) in order for future branches, created from trunk, to +benefit. + +Time intervals used to create branches and tags may vary, just as +different needs may arrive. For example, consider the release schema +of CentOS distribution: one major release every 2 years, security +updates every 6 months, support for 7 years long. Each time a CentOS +distribution is released, specially if it is a major release, there is +a theme need in order to cover CentOS distribution artwork +requirements. At this point, is where CentOS Artwork Repository comes +up to scene. + +Before releasing a new major release of CentOS distribution we create +a branch for one of several theme development lines available inside +the CentOS Artwork Repository, perform quality assurance on it, and +later, freeze that branch using tags. Once a the theme branch has been +frozen (under @file{tags/} directory), CentOS Packagers (the persons +whom build CentOS distribution) can use that frozen branch as source +location to fulfill CentOS distribution artwork needs. The same +applies to CentOS Webmasters (the persons whom build CentOS websites), +and any other visual manifestation required by the project. + +@subheading Usage + +In this location themes are organized in ``Models'' ---to store common +information--- and ``Motifs''---to store unique information. At +rendering time, both motifs and models are combined to produce the +final CentOS themes. CentOS themes can be tagged as ``Default'' or +``Alternative''. CentOS themes are maintained by CentOS community. + +@itemize +@item @xref{Directories trunk Identity Models Themes}. +@item --- @strong{Removed}(xref:Directories trunk Identity Images Themes Motifs) ---. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Identity}. +@item @ref{Directories trunk}. +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs.texinfo new file mode 100644 index 0000000..85ff9ea --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs.texinfo @@ -0,0 +1,165 @@ +@subheading Goals + +The @file{trunk/Identity/Images/Themes} directory exists to: + +@itemize +@item Organize CentOS themes' artistic motifs. +@end itemize + +@subheading Description + +The artistic motif of theme is a graphic design component that +provides the visual style of themes, it is used as pattern to connect +all visual manifestations inside one unique theme. + +Artistic motifs are based on conceptual ideas. Conceptual ideas bring +the motivation, they are fuel for the engines of human imagination. +Good conceptual ideas may produce good motivation to produce almost +anything, and art works don't escape from it. + +@table @samp +@item TreeFlower +CentOS like trees, has roots, trunk, branches, leaves and flowers. Day +by day they work together in freedom, ruled by the laws of nature and +open standards, to show the beauty of its existence. +@item Modern +Modern, squares and circles flowing up. +@end table + +If you have new conceptual ideas for CentOS, then you can say that you +want to create a new artistic motif for CentOS. To create a new +artistic motif you need to create a directory under +@file{Identity/Images/Themes/} using a name coherent with your +conceptual idea. That name will be the name of your artistic motif. If +possible, when creating new conceptual ideas for CentOS, think about +what CentOS means for you, what does it makes you feel, take your +time, think deep, and share; you can improve the idea as time goes on. + +Once you have defined a name for your theme, you need to create the +motif structure of your theme. The motif structure is the basic +direcotry structure you'll use to work your ideas. Here is where you +organize your graphic design projects. + +To add a new motif structure to CentOS Artwork Repository, you need to +use the @command{centos-art} command line in the +@file{Identity/Images/Themes/} directory as described below: + +@example +centos-art add --motif=ThemeName +@end example + +The previous command will create the basic structure of themes for +you. The basic structure produced by @command{centos-art} command is +illustrated in the following figure: + +@example +trunk/Identity/Images/Themes/$ThemeName/ +|-- Backgrounds +| |-- Img +| `-- Tpl +|-- Info +| |-- Img +| `-- Tpl +|-- Palettes +`-- Screenshots +@end example + +@subheading Usage + +When designing artistic motifs for CentOS, consider the following +recommendations: + +@itemize +@item Give a unique (case-sensitive) name to your Motif. This name is +used as value wherever theme variable (@b{$THEME}) or translation marker +(@b{=THEME=}) is. Optionally, you can add a description about +inspiration and concepts behind your work. + +@item Use the location @file{trunk/Identity/Images/Themes/$THEME/} to +store your work. If it doesn't exist create it. Note that this require +you to have previous commit access in CentOS Artwork Repository. + +@item The CentOS Project is using the blue color (@b{#204c8d}) as base +color for its corporate visual identity. Use such base corporate color +information as much as possible in your artistic motif designs. + +@item Try to make your design fit one of the theme models. + +@item Feel free to make your art enterprise-level and beautiful. + +@item Add the following information on your artwork (both in a visible +design area and document metadata): + +@itemize + +@item The name (or logo) of your artistic motif. + +@item The copyright sentence: @b{Copyright (C) YEAR YOURNAME} + +@item The license under which the work is released. All CentOS Art +works are released under +@url{http://creativecommons.org/licenses/by-sa/3.0/,Creative Common +Share-Alike License 3.0} +(@url{http://creativecommons.org/licenses/by-sa/3.0/}). + +@end itemize +@end itemize + +@subheading See also + +@menu +* Directories trunk Identity Images Themes:: +* Directories trunk Identity:: +* Directories trunk:: +@end menu + +The @file{Backgrounds/} directory is used to organize artistic motif +background images and the projects used to build those images. + +Background images are linked (using the @b{import} feature of +Inkscape) inside almost all theme art works. This structure let you +make centralized changes on the visual identity and propagate them +quickly to other areas. + +In this configuration you design background images for different +screen resolutions based on the theme artistic motif. + +You may create different artistic motifs propositions based +on the same conceptual idea. The conceptual idea is what defines a +theme. Artistic motifs are interpretations of that idea. + +Inside this directory artistic motifs are organized by name (e.g., +TreeFlower, Modern, etc.). + +Each artistic motif directory represents just one unique artistic +motif. + +The artistic motif is graphic design used as common pattern to connect +all visual manifestations inside one unique theme. The artistic motif +is based on a conceptual idea. Artistic motifs provide visual style +to themes. + +Designing artistic motifs is for anyone interested in creating +beautiful themes for CentOS. When building a theme for CentOS, the +first design you need to define is the artistic motif. + +Inside CentOS Artwork Repository, theme visual styles (a.k.a., +artistic motifs) and theme visual structures (a.k.a., design models) +are two different working lines. When you design an artistic motif +for CentOS you concentrate on its visual style, and eventualy, use the +@command{centos-art} command line interface to render the visual +style, you are currently producing, against an already-made theme +model in order to produce the final result. Final images are stored +under @file{Motifs/} directory using the model name, and the model +directory structure as reference. + +The artistic motif base structure is used by @command{centos-art} to +produce images automatically. This section describes each directory of +CentOS artistic motif base structure. + +The @file{Backgrounds/} directory is probably the core component, +inside @file{Motifs/} directory structure. Inside @file{Backgrounds/} +directory you produce background images used by almost all theme +models (e.g., Distribution, Websites, Promotion, etc.). The +@file{Backgrounds/} directory can contain subdirectories to help you +organize the design process. diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Flame.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Flame.texinfo new file mode 100644 index 0000000..3cfae8b --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Flame.texinfo @@ -0,0 +1,120 @@ +@subheading Goals + +This section describes the @emph{Flame} artistic motif. This section +may be useful for anyone interested in reproducing the @emph{Flame} +artistic motif, or in creating new artistic motifs for The CentOS +Project corporate visual identity. + +@subheading Description + +The @emph{Flame} artistic motif was built using the flame filter of +Gimp 2.2 in CentOS 5.5. + +The flame filter of Gimp can produce stunning, randomly generated +fractal patterns. The flame filter of Gimp gives us a great oportunity +to reduce the time used to produce new artistic motifs, because of its +``randomly generated'' nature. Once the artistic motif be created, it +is propagated through all visual manifestations of CentOS Project +corporate visual identity using the @file{centos-art.sh} script +(@pxref{Directories trunk Scripts}) inside the CentOS Artwork +Repository. + +To set the time intervals between each new visual style production, we +could reuse the CentOS distribution major release schema. I.e., we +could produce a new visual style, every two years, based on a new +``randomly generated'' flame pattern, and publish the whole corporate +visual identity (i.e., distribution stuff, promotion stuff, websites +stuff, etc.) with the new major release of CentOS distribution all +together at once. + +Producing a new visual style is not one day's task. Once we have +defined the artistic motif, we need to propagate it through all visual +manifestations of The CentOS Project corporate visual identity. When +we say that we could produce one new visual style every two years we +really mean: to work two years long in order to propagate a new visual +style to all visual manifestations of The CentOS Project corporate +visual identity. + +Obviously, in order to propagate one visual style to all different +visual manifestations of The CentOS Project corporate visual identity, +we need first to know which the visual manifestations are. To define +which visual manifestations are inside The CentOS Project corporate +visual identity is one of the goals the CentOS Artwork Repository and +this documentation manual are both aimed to satisfy. + +Once we define which the visual manifestation are, it is possible to +define how to produce them, and this way, organize the automation +process. Such automation process is one of the goals of +@file{centos-art.sh} script. + +With the combination of both CentOS Artwork Repository and +@file{centos-art.sh} scripts we define work lines where translators, +programmers, and graphic designers work together to distribute and +reduce the amount of time employed to produce The CentOS Project +monolithic corporate identity. + +From a monolithic corporate visual identity point of view, notice that +we are producing a new visual style for the same theme (i.e., +@emph{Flame}). It would be another flame design but still a flame +design. This idea is very important to be aware of, because we are +somehow ``refreshing'' the theme, not changing it at all. + +This way, as we are ``refreshing'' the theme, we still keep oursleves +inside the monolithic conception we are trying to be attached to +(i.e., one unique name, and one unique visual style for all visual +manifestations). + +Producing artistic motifs is a creative process that may consume long +time, specially for people without experienced knowledge on graphic +design land. Using ``randomly generated'' conception to produce +artistic motifs could be, practically, a way for anyone to follow in +order to produce maintainable artistic motifs in few steps. + +Due to the ``randomly generated'' nature of Flame filter, we find that +@emph{Flame} pattern is not always the same when we use @emph{Flame} +filter interface. + +Using the same pattern design for each visual manifestation is +essential in order to maintain the visual connection among all visual +manifestations inside the same theme. Occasionally, we may introduce +pattern variations in opacity, size, or even position but never change +the pattern design itself, nor the color information used by images +considered part of the same theme. + +@quotation +@strong{Important} +When we design background images, which are considered part of the +same theme, it is essential to use the same design pattern always. +This is what makes theme images to be visually connected among +themeselves, and so, the reason we use to define the word ``theme'' +as: a set of images visually connected among themeselves. +@end quotation + +In order for us to reproduce the same flame pattern always, +@emph{Flame} filter interface provides the @samp{Save} and @samp{Open} +options. The @samp{Save} option brings up a file save dialog that +allows you to save the current Flame settings for the plug-in, so that +you can recreate them later. The @samp{Open} option brings up a file +selector that allows you to open a previously saved Flame settings +file. + +The Flame settings we used in our example are saved in the file named +@file{800x600.xcf-flame.def}, inside the @file{Backgrounds/Xcf} +directory structure. + +@ifhtml +@subheading Screenshots + +@image{trunk/Identity/Images/Themes/Flame/1/Concept/motif-thumb-250,,,,jpg} +@image{trunk/Identity/Images/Themes/Flame/2/Concept/motif-thumb-250,,,,jpg} +@image{trunk/Identity/Images/Themes/Flame/3/Concept/motif-thumb-250,,,,jpg} +@end ifhtml + +@subheading See also + +@itemize +@item --- @strong{Removed}(xref:Directories trunk Identity Images Themes Motifs) ---. +@item @xref{Directories trunk Identity Images Themes}. +@item @xref{Directories trunk Identity}. +@item @xref{Directories trunk}. +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Modern.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Modern.texinfo new file mode 100644 index 0000000..df12723 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Modern.texinfo @@ -0,0 +1,24 @@ +@subheading Goals + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@ifhtml +@subheading Screenshots + +@image{trunk/Identity/Images/Themes/Modern/1/Concept/motif-thumb-250,,,,jpg} +@end ifhtml + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Pipes.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Pipes.texinfo new file mode 100755 index 0000000..80f2bcc --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/Pipes.texinfo @@ -0,0 +1,28 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@ifhtml +@subheading Screenshots + +@image{trunk/Identity/Images/Themes/Pipes/1/Concept/motif-thumb-250,,,,jpg} +@end ifhtml + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/TreeFlower.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/TreeFlower.texinfo new file mode 100644 index 0000000..9c31afb --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Images/Themes/Motifs/TreeFlower.texinfo @@ -0,0 +1,19 @@ +@subheading Goals + +@subheading Description + +@ifhtml +@subheading Screenshots + +@image{trunk/Identity/Images/Themes/TreeFlower/1/Concept/motif-thumb-250,,,,jpg} +@image{trunk/Identity/Images/Themes/TreeFlower/2/Concept/motif-thumb-250,,,,jpg} +@image{trunk/Identity/Images/Themes/TreeFlower/3/Concept/motif-thumb-250,,,,jpg} +@image{trunk/Identity/Images/Themes/TreeFlower/4/Concept/motif-thumb-250,,,,jpg} +@end ifhtml + +@subheading Usage + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models.texinfo new file mode 100755 index 0000000..7e764ff --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models.texinfo @@ -0,0 +1,23 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item @dots{} +@end itemize + +@subheading See also + +@itemize +@item ... +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Brands.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Brands.texinfo new file mode 100644 index 0000000..8b4da53 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Brands.texinfo @@ -0,0 +1,139 @@ +@subheading Goals + +The @file{trunk/Identity/Models/Brands} directory organizes The CentOS +Brand design models. + +@subheading Description + +The CentOS Brand provides the one unique name or trademark that +connects The CentOS Project with their products (e.g., GNU/Linux +distribution, web sites, stationery, etc.). + +The CentOS Project uses The CentOS Brand inside its GNU/Linux +enterprise distributions, web sites, and promotions stuff to connect +them all visually and this way committing the monolithic visual +structure where one unique name and one unique visual style is used in +all visual manifestations. + +@subsubheading Symbol + +At the moment of writting these lines, I haven't found any reference +about the author who worked out The CentOS Symbol and the concept +behind its design. That information would be useful as motivation +source. The CentOS Symbol is the visual representation of that the +CentOS Community is working for, it would be very nice to have that +information available somewhere. Until then, all we can do is giving +interpretations about it. + +I will take the adventure of describing my personal interpretation +about The CentOS Symbol design and the concept behind it. This +interpretation is not definite, nor a final concept. Certainly, this +interpretation may have nothing in common with the one used by the +author of The CentOS Symbol. The ideas written in this section may +change in the future in the sake of reaching a better interpretation +of The CentOS Symbol for the CentOS community to stand on. + +The first thing, in order to interpret The CentOS Symbol, is to know +what is the mission of The CentOS Project and feel a deep compromise +with it. Later on, take a look to The CentOS Symbol and try to +identify each component its design is based on. If you take a careful +look at it you'll find that The CentOS Symbol is based on squares, +arrows and four different colors. + +@image{trunk/Identity/Images/Brands/Symbols/centos-512,400pt,,,} + +The square is a geometrical figure that has four parallel sides of +equal dimensions. The equal dimensions brings the idea of justice +among all parts involved. That is, each part is in harmony one +another. This kind of harmony could be verified at simple sight, or +you can take a rule and messure each side to see that they have the +same dimensions. As long as we can verify this harmony is true, it +starts to be a fact of reason that we can rely on. + +In a second state, the CentOS symbol is built of four identical 90 +degree squares filled with unique colors. The squares provide reason +based pragmatic facts. The colors provide emotions. So, in this design +state we could say that different emotions are controlled by the same +pragmatic reasons. + +In a third state, the 90 degree set of squares is duplicated to create +a new set of squares. In this new set of squares fill colors were +removed and the whole squares set was rotated 45 degree. At this +point eight arrows, pointing the outside, are immediatly visible. +Emotions are so strong that they found a way to expand themselves out +of 90 degree pragmatic reasons. But reason evolves with changes and +takes new forms ---the 45 degree squares set--- to let flow off the +emotions' nature, and thus, uses that enormous expansion force to +create an infinite loop of common benefits, still controlled by the +reason of pragmatic facts. + +At this point The CentOS Symbol has been completed. + +@subsubheading Typography + +The CentOS Brand is the main visual representation of The CentOS +Project so the typography used in it must be the same always, no +matter where it be shown. It also has to be clear enough to dismiss +any confussion between similar typefaces (e.g., the number one (1) +sometimes is confuesed with the letter @samp{el} (l) or letter +@samp{ai} (i)). + +As convenction, the word @samp{CentOS} uses @samp{Denmark} typography +as base, both for the word @samp{CentOS} and the phrase +@samp{Community Enterprise Operating System}. The phrase size of +CentOS logo is half the size in poits the word @samp{CentOS} has and +it below @samp{CentOS} word and aligned with it on the left. The +distance between @samp{CentOS} word and phrase @samp{Community +Enterprise Operating System} have the size in points the phrase has. + +@image{trunk/Identity/Images/Manual/Brands/Logos/a,400pt,,,} + +When the CentOS release brand is built, use @samp{Denmark} typography +for the release number. The release number size is two times larger +(in height) than default @samp{CentOS} word. The separation between +release number and @samp{CentOS} word is twice the size in points of +separation between @samp{CentOS} word and phrase @samp{Community +Enterprise Operating System}. + +@subsubheading Type of mark + +Another component inside The CentOS Brand to consider is the type of +mark it is. Is it a Trademark or a Registered mark? + +The Trademark symbol (â„¢) specifies that The CentOS Brand must be +consider a product brand, even it is not a registered one. The +trademark symbol uses DejaVu LGC Sans Regular typography. The +trademark symbol is aligned right-top on the outter side of +@samp{CentOS} word. The trademark symbol must not exceed haf the +distance, in points, between @samp{CentOS} word and the release number +on its right. + +The Registered symbol (®) would be very convenient for the CentOS +Project and its community, however, the registration may involve +monetary cost. To make The CentOS Brand a register trademark prevents +legal complications in the market place of brands. It grants the +consistency, through time, of The CentOS Project corporate visual +identity. + +@quotation +@strong{Note} The information about trademarks and corporate identity +is my personal interpretation of +@url{http://en.wikipedia.org/Corporate_identity} and +@url{http://en.wikipedia.org/Trademark} description. If you have +practical experiences with these affairs, please serve yourself to +improve this section with your reasons. +@end quotation + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Identity Models} +@item @ref{Directories trunk Identity} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes.texinfo new file mode 100644 index 0000000..375e1b3 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes.texinfo @@ -0,0 +1,46 @@ +@subheading Goals + +This section describes design models from The CentOS Themes. + +@subheading Description + +Theme models let you modeling characteristics (e.g., dimensions, +translation markers, position of each element on the display area, +etc.) common to all themes. Theme models let you reduce the time +needed when propagating artistic motifs to different visual +manifestations. + +Theme models serves as a central pool of design templates for themes +to use. This way you can produce themes with different artistic motifs +but same characteristics. + +@subsubheading Default Design Model + +Default Design Models for CentOS Themes provide the common structural +information (e.g., image dimensions, translation markers, trademark +position, etc.) the @command{centos-art} script uses to produce images +when no other design model is specified. + +@subsubheading Alternative Design Models + +CentOS alternative theme models exist for people how want to use a +different visual style on their installations of CentOS distribution. +As the visual style is needed for a system already installed +components like Anaconda are not required inside alternative themes. +Inside alternative themes you find post-installation visual style only +(i.e. Backgrounds, Display Managers, Grub, etc.). CentOS alternative +themes are maintained by CentOS Community. + +@subheading Usage + +@itemize +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default) ---. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Identity Images Themes}. +@item @ref{Directories trunk Identity}. +@item @ref{Directories trunk}. +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default.texinfo new file mode 100644 index 0000000..60f0afd --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default.texinfo @@ -0,0 +1,79 @@ +@subheading Goals + +This section describes the default design model of The CentOS Themes. + +@subheading Description + +The @file{trunk/Identity/Themes/Models/Default} directory implements +the concept of @emph{Default Design Model} for The CentOS Themes. The +CentOS Themes Default Design Model provides the common structural +information (e.g., image dimensions, translation markers, trademark +position, etc.) the @command{centos-art} script uses to produce images +when no other design model is specified. + +Deisgn models in this directory do use the @emph{CentOS Release +Brand}. The CentOS Release Brand is a combination of both The CentOS +Type and The CentOS Release Schema used to illustrate the major +release of The CentOS Distribution the image produced belongs to. --- +@strong{Removed}(xref:Directories trunk Identity Models Tpl Brands) +---, for more information. + +The CentOS Project maintains near to four different major releases of +CentOS Distribution. Each major release of CentOS Distribution has +internal differences that make them unique and, at the same time, each +CentOS Distribution individually is tagged into the one unique visual +manifestation (i.e., Distribution). So, how could we implement the +monolithic visual structure in one visual manifestation that has +internal difference? + +To answer this question we broke the question in two parts and later +combined the resultant answers to build a possible solution. + +@table @strong +@item How to remark the internal differences visually? + +Merge both The CentOS Project Release Schema into The CentOS Project +Trademark to build The CentOS Project Release Trademark. The CentOS +Project Release Trademark remarks two things: first, it remarks the +image is from The CentOS Project and second, it remarks which major +release of CentOS Distribution does the image belongs to. +--- @strong{Removed}(xref:Directories trunk Identity Models Tpl Brands) ---, for more +information on how to develop and improve The CentOS Project Brand. + +@item How to remark the visual resemblance? + +Use a common artistic motifs as background for all CentOS Distribution +images. --- @strong{Removed}(xref:Directories trunk Identity Images Themes Motifs) ---, for more +information. + +@item So, combining answers above, we could conclude that: + +In order to implement the CentOS Monolithic Visual Structure on CentOS +Distribution visual manifestations, a CentOS Release Trademark and a +background information based on one unique artistic motif should be +used in all remarkable images The CentOS Distribution visual +manifestation is made of. +@end table + +@quotation +@strong{Important} Remarking the CentOS Release Schema inside each +major release of CentOS Distribution ---or similar visual +manifestations--- takes @emph{high attention} inside The CentOS +Project corporate visual identity. It should be very clear for +everyone which major release of CentOS Distribution is being used. +@end quotation + +@subheading Usage + +@itemize +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro) ---. +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Concept) ---. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Identity Images Themes} +@item @ref{Directories trunk Identity Models Themes} +@item --- @strong{Removed}(ref:Directories trunk Identity Images Themes Motifs) --- +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Concept.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Concept.texinfo new file mode 100755 index 0000000..e226b31 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Concept.texinfo @@ -0,0 +1,22 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro.texinfo new file mode 100644 index 0000000..6cee901 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro.texinfo @@ -0,0 +1,111 @@ +@subheading Goals + +This section organizes default design models for different major +releases of CentOS Distribution. + +@subheading Description + +In order to better understatand how this visual manifestation is +organized, it is necessary to consider what The CentOS Distribution is +and how it is released. + +@subsubheading The CentOS Distribution + +The CentOS Distribution is an Enterprise-class Linux Distribution +derived from sources freely provided to the public by a prominent +North American Enterprise Linux vendor. The CentOS Distribution +conforms fully with the upstream vendors redistribution policy and +aims to be 100% binary compatible. (The CentOS Project mainly changes +packages to remove upstream vendor branding and artwork.) + +The CentOS Distribution is developed by a small but growing team of +core developers. In turn the core developers are supported by an +active user community including system administrators, network +administrators, enterprise users, managers, core Linux contributors +and Linux enthusiasts from around the world. + +@subsubheading The CentOS Distribution Release Schema + +The upstream vendor has released 4 versions of their +@acronym{EL,Enterprise Linux} product that The CentOS Project rebuilds +the freely available SRPMS for. The upstream vendor releases security +updates as required by circumstances. The CentOS Project releases +rebuilds of security updates as soon as possible. Usually within 24 +hours (our stated goal is with 72 hours, but we are usually much +faster). + +The upstream vendor also releases numbered update sets for major +versions of their EL product from 2 to 4 times per year. There are new +ISOs from the upstream vendor provided for these update sets. Update +sets will be completed as soon as possible after the upstream vendor +releases their version @dots{} generally within 2 weeks. The CentOS +Project follows these conventions as well, so CentOS-3.9 correlates +with EL 3 update 9 and CentOS-4.6 correlates with EL 4 update 6, +CentOS-5.1 correlates to EL 5 update 1, etc. + +One thing some people have problems understanding is that if you have +any CentOS-3 product and update it, you will be updated to the latest +CentOS-3.x version. + +The same is true for CentOS-4 and CentOS-5. If you update any CentOS-4 +product, you will be updated to the latest CentOS-4.x version, or to +the latest CentOS-5.x version if you are updating a CentOS-5 system. +This is exactly the same behavior as the upstream product. Let's +assume that the latest EL4 product is update 6. If you install the +upstream original EL4 CDs (the ones before any update set) and upgrade +via @command{yum}, you will have latest update set installed (EL4 +update 6 in our example). Since all updates within a major release +(CentOS-2, CentOS-3, CentOS-4, CentOS-5) always upgrade to the latest +version when updates are performed (thus mimicking upstream behavior), +only the latest version is maintained in each main tree on The CentOS +Mirrors (@url{http://mirrors.centos.org/}). + +There is a CentOS Vault (@url{http://vault.centos.org/}) containing +old CentOS trees. This vault is a picture of the older tree when it +was removed from the main tree, and does not receive updates. It +should only be used for reference. + +The CentOS Distribution visual style is controlled by image files. +These image files are packaged inside The CentOS Distribution and made +visible once such packages are installed and executed. The way to go +for changing The CentOS Distribution visual style is changing all +those image files to add the desired visual style first and later, +repackage them to make them available inside the final iso files of +CentOS Distribution. + +@subheading Usage + +Sometimes, between major releases, image files inside packages can be +added, removed or just get the name changed. In order to describe such +variations, the design models directory structure is organized in the +same way the variations are introduced (i.e., through The CentOS +Distribution Release Schema). So, each major release of The CentOS +Distribution has its own design model directory structure. + +When a new package/component is added to one or all the major releases +of The CentOS Distribution, a design model directory structure for +that component needs to be created. Later, it is filled up with +related design models. Design models are created for each image file +inside the component that need to be rebuilt in order to set the +visual style and brand information correctly. + +When a package is removed from one or all major releases of The CentOS +Distribution, the design model directory structure releated to that +package/component is no longer used. However, it could be very useful +for historical reasons. Also, someone could feel motivation enough to +keep himself documenting it or supporting it for whatever reason. + +@itemize +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro +5) ---. +@end itemize + +@subheading See also + +@itemize +@item --- @strong{Removed}(ref:Directories trunk Identity Models Themes Default) ---. +@item @ref{Directories trunk Identity Models Themes}. +@item @ref{Directories trunk Identity Images Themes}. +@item @ref{Directories trunk Identity}. +@item @ref{Directories trunk}. +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5.5/Notes/Release.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5.5/Notes/Release.texinfo new file mode 100755 index 0000000..d6bb628 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5.5/Notes/Release.texinfo @@ -0,0 +1,23 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item ... +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5.texinfo new file mode 100755 index 0000000..c76921e --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5.texinfo @@ -0,0 +1,35 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro 5 Syslinux) ---. +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro 5 Anaconda) ---. +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro 5 Rhgb) ---. +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro 5 Gdm) ---. +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro 5 Kdm) ---. +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro 5 Grub) ---. +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro 5 Gsplash) ---. +@item --- @strong{Removed}(xref:Directories trunk Identity Models Themes Default Distro 5 Ksplash) ---. +@end itemize + +@subheading See also + +@itemize +@item --- @strong{Removed}(ref:Directories trunk Identity Models Themes Default Distro) ---. +@item --- @strong{Removed}(ref:Directories trunk Identity Models Themes Default) ---. +@item @ref{Directories trunk Identity Models Themes}. +@item @ref{Directories trunk Identity Images Themes}. +@item @ref{Directories trunk Identity}. +@item @ref{Directories trunk}. +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Anaconda.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Anaconda.texinfo new file mode 100644 index 0000000..c10b6dd --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Anaconda.texinfo @@ -0,0 +1,14 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@subheading Usage + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Firstboot.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Firstboot.texinfo new file mode 100755 index 0000000..e226b31 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Firstboot.texinfo @@ -0,0 +1,22 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Gdm.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Gdm.texinfo new file mode 100755 index 0000000..53ef237 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Gdm.texinfo @@ -0,0 +1,30 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +Another example of using last-rendition flow is that related to GDM +and KDM @file{tar.gz} file construction. Each @file{tar.gz} file is +made of several files that need to be put together in order to make +them installable. In the very specific case of GDM and KDM some of the +required files are retrived from design models directory structure and +others from artistic motifs directory structure after had been +produced through base-rendition. In this case, the action of grouping +files and packing them is realized through last-rendition action. This +couldn't be possible through post-rendition because we need to wait to +have two images first (produced through base-rendition) before we +could grouping them all into the @file{tar.gz} package. + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Grub.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Grub.texinfo new file mode 100755 index 0000000..e226b31 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Grub.texinfo @@ -0,0 +1,22 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Gsplash.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Gsplash.texinfo new file mode 100755 index 0000000..e226b31 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Gsplash.texinfo @@ -0,0 +1,22 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Kdm.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Kdm.texinfo new file mode 100755 index 0000000..e226b31 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Kdm.texinfo @@ -0,0 +1,22 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Ksplash.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Ksplash.texinfo new file mode 100755 index 0000000..02aa8be --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Ksplash.texinfo @@ -0,0 +1,25 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +The @file{Preview.png} image of Ksplash which is made of three +different images. In order to build the @file{Preview.png} image, we +need to create the three images the @file{Preview.png} image is made +of first (e.g., through base-rendition) and then, combine them all +together into one new image, the @file{Preview.png} image in this +case. + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Rhgb.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Rhgb.texinfo new file mode 100755 index 0000000..e226b31 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Rhgb.texinfo @@ -0,0 +1,22 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Syslinux.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Syslinux.texinfo new file mode 100755 index 0000000..d6bb628 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Distro/5/Syslinux.texinfo @@ -0,0 +1,23 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item ... +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Posters.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Posters.texinfo new file mode 100644 index 0000000..e226b31 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Models/Themes/Default/Posters.texinfo @@ -0,0 +1,22 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Palettes.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Palettes.texinfo new file mode 100755 index 0000000..e226b31 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Palettes.texinfo @@ -0,0 +1,22 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Patterns.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Patterns.texinfo new file mode 100755 index 0000000..cbc5503 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Patterns.texinfo @@ -0,0 +1,24 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Identity} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Webenv.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Webenv.texinfo new file mode 100755 index 0000000..5736d03 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Identity/Webenv.texinfo @@ -0,0 +1,327 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +The CentOS web environment is formed by a central web application +---to cover base needs (e.g., per-major release information like +release notes, lifetime, downloads, documentation, support, security +advisories, bugs, etc.)--- and many different free web applications +---to cover specific needs (e.g., wiki, mailing lists, etc.)---. + +The CentOS web environment is addressed to solve the following issues: + +@itemize +@item One unique name and one unique visual style to all web +applications used inside the web environment. + +@item One-step navigation to web applications inside the environment. + +@item High degree of customization to change the visual style of all +web applications with few changes (e.g, updating just two or three +images plus common style sheet [CSS] definitions). +@end itemize + +The CentOS project is attached to a monolithic corporate visual +identity (@pxref{Directories trunk Identity}), where all visual manifestations +have one unique name and one unique visual style. This way, the CentOS +web environment has one unique name (the CentOS brand) and one unique +visual style (the CentOS default theme) for all its visual +manifestations, the web applications in this case. + +Since a maintainance point of view, achiving the one unique visual +style inside CentOS web environment is not a simple task. The CentOS +web environment is built upon many different web applications which +have different visual styles and different internal ways to customize +their own visual styles. For example: MoinMoin, the web application +used to support the CentOS wiki (@url{http://wiki.centos.org/}) is +highly customizable but Mailman (in its 2.x.x serie), the web +application used to support the CentOS mailing list, doesn't +support@footnote{The theme support of Mailman may be introduced in +mailman-3.x.x release.} a customization system that separates +presentation from logic, similar to that used by MoinMoin. + +This visual style diversity complicates our goal of one unique visual +style for all web applications. So, if we want one unique visual style +for all web applications used, it is innevitable to modify the web +applications in order to implement the CentOS one unique visual style +customization in them. Direct modification of upstream applications is +not convenient because upstream applications come with their one +visual style and administrators take the risk of loosing all +customization changes the next time the application be updated (since +not all upstream web applications, used in CentOS web environment, +separate presentation from logic). + +To solve the ``one unique visual style'' issue, installation and +actualization of web applications ---used inside CentOS web +environment--- need to be independent from upstream web applications +development line; in a way that CentOS web environment administrators +can install and update web applications freely without risk of loosing +the one unique visual style customization changes. + +At the surface of this issue we can see the need of one specific yum +repository to store CentOS web environment customized web applications. + +@subsubheading Design model (without ads) + +@subsubheading Design model (with ads) + +@subsubheading HTML definitions + +@subsubheading Controlling visual style + +Inside CentOS web environment, the visual style is controlled by the +following compenents: + +@table @strong +@item Webenv header background +@verbatim +trunk/Identity/Images/Themes/$THEME/Backgrounds/Img/1024x250.png +@end verbatim + +@item CSS definitions +@verbatim +trunk/Identity/Themes/Models/Default/Promo/Web/CSS/stylesheet.css +@end verbatim +@end table + +@subsubheading Producing visual style + +The visual style of CentOS web environment is defined in the following +files: + +@verbatim +trunk/Identity/Images/Themes/$THEME/Backgrounds/Xcf/1024x250.xcf +trunk/Identity/Images/Themes/$THEME/Backgrounds/Img/1024x250.png +trunk/Identity/Images/Themes/$THEME/Backgrounds/Img/1024x250-bg.png +trunk/Identity/Images/Themes/$THEME/Backgrounds/Tpl/1024x250.svg +@end verbatim + +As graphic designer you use @file{1024x250.xcf} file to produce +@file{1024x250-bg.png} file. Later, inside @file{1024x250.svg} file, +you use the @file{1024x250-bg.png} file as background layer to draw +your vectorial design. When you consider you artwork ready, use the +@command{centos-art.sh} script, as described below, to produce the +visual style controller images of CentOS web environment. + +@verbatim +centos-art render --entry=trunk/Identity/Images/Themes/$THEME/Backgrounds --filter='1024x250' +@end verbatim + +Once you have rendered required image files, changing the visual style +of CentOS web environment is a matter of replacing old image files +with new ones, inside webenv repository file system structure. The +visual style changes will take effect the next time customization line +of CentOS web applications be packaged, uploded, and installed from +[webenv] or [webenv-test] repositories. + +@subsubheading Navigation + +Inside CentOS web environment, the one-step navegation between web +applications is addressed using the web environment navigation bar. +The web environment navigation bar contains links to main applications +and is always visible no matter where you are inside the web +environment. + +@subsubheading Development and release cycle + +The CentOS web environment development and relase cycle is described +below: + +@table @strong + +@item Download + +The first action is download the source code of web applications we +want to use inside CentOS web environment. + +@quotation +@strong{Important} The source location from which web application are +downloaded is very important. Use SRPMs from CentOS @strong{[base]} +and @strong{[updates]} repositories as first choise, and third party +repositories (e.g. RPMForge, EPEL, etc.) as last resource. +@end quotation + +@item Prepare + +Once web application source code has been downloaded, our duty is +organize its files inside @samp{webenv} version controlled repository. + +When preparing the structure keep in mind that different web +applications have different visual styles, and also different ways to +implement it. A convenient way to organize the file system structure +would be create one development line for each web application we use +inside CentOS web environment. For example, consider the following +file system structure: + +@verbatim +https://projects.centos.org/svn/webenv/trunk/ +|-- WebApp1/ +| |-- Sources/ +| | `-- webapp1-0.0.1/ +| |-- Rpms/ +| | `-- webapp1-0.0.1.rpm +| |-- Srpms/ +| | `-- webapp1-0.0.1.srpm +| `-- Specs/ +| `-- webapp1-0.0.1.spec +|-- WebApp2/ +`-- WebAppN/ +@end verbatim + +@item Customize + +Once web applications have been organized inside the version +controlled repository file system, use subversion to create the CentOS +customization development line of web applications source code. For +example, using the above file system structure, you can create the +customization development line of @file{webapp1-0.0.1/} with the +following command: + +@verbatim +svn cp trunk/WebApp1/Sources/webapp1-0.0.1 trunk/WebApp1/Sources/webapp1-0.0.1-webenv +@end verbatim + +The command above creates the following structure: + +@verbatim +https://projects.centos.org/svn/webenv/trunk/ +|-- WebApp1/ +| |-- Sources/ +| | |-- webapp1-0.0.1/ +| | `-- webapp1-0.0.1-webenv/ +| |-- Rpms/ +| | `-- webapp1-0.0.1.rpm +| |-- Srpms/ +| | `-- webapp1-0.0.1.srpm +| `-- Specs/ +| `-- webapp1-0.0.1.spec +|-- WebApp2/ +`-- WebAppN/ +@end verbatim + +In the above structure, the @file{webapp1-0.0.1-webenv/} directory is +the place where you customize the visual style of +@file{webapp1-0.0.1/} web application. + +@quotation +@strong{Tip} Use the @command{diff} command of Subversion between +CentOS customization and upstream development lines to know what you +are changing exactly. +@end quotation + +@item Build packages + +When web application has been customized, build the web application +RPM and SRPM using the source location with @samp{-webenv} prefix. + +@verbatim +https://projects.centos.org/svn/webenv/trunk/ +|-- WebApp1/ +| |-- Sources/ +| | |-- webapp1-0.0.1/ +| | `-- webapp1-0.0.1-webenv/ +| |-- Rpms/ +| | |-- webapp1-0.0.1.rpm +| | `-- webapp1-0.0.1-webenv.rpm +| |-- Srpms/ +| | |-- webapp1-0.0.1.srpm +| | `-- webapp1-0.0.1-webenv.srpm +| `-- Specs/ +| |-- webapp1-0.0.1.spec +| `-- webapp1-0.0.1-webenv.spec +|-- WebApp2/ +`-- WebAppN/ +@end verbatim + +@item Release for testing + +When the customized web application has been packaged, make packages +available for testing and quality assurance. This can be achives using +a [webenv-test] yum repository. + +@quotation +@strong{Note} The [webenv-test] repository is not shipped inside +CentOS distribution default yum configuraiton. In order to use +[webenv-test] repository you need to configure it first. +@end quotation + +If some problem is found to install/update/use the customized version +of web application, the problem is notified somewhere (a bugtracker +maybe) and the customization face is repated in order to fix the +problem. To release the new package add a number after @samp{-webenv} +prefix. For example, if some problem is found in +@file{webapp1-0.0.1-webenv.rpm}, when it be fixed the new package will +be named @file{webapp1-0.0.1-webenv-1.rpm}. If a problem is found in +@file{webapp1-0.0.1-webenv-1.rpm}, when it be fixed the new package +will be named @file{webapp1-0.0.1-webenv-2.rpm}, and so on. + +The ``customization --- release for testing'' process is repeated +until CentOS quality assurance team considers the package is ready for +production. + +@item Release for production + +When customized web application packages are considered ready for +production they are moved from [webenv-test] to [webenv] repository. +This action is commited by CentOS quality assurance team. + +@quotation +@strong{Note} The [webenv] repository is not shipped inside CentOS +distribution default yum configuraiton. In order to use [webenv] +repository you need to configure it first. +@end quotation +@end table + +@subsubheading The [webenv-test] repository + +@verbatim +/etc/yum.repos.d/CentOS-Webenv-test.repo +@end verbatim + +@verbatim +[webenv-test] +name=CentOS-$releasever - Webenv-test +mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=webenv-test +#baseurl=http://mirror.centos.org/centos/$releasever/webenv-test/$basearch/ +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-$releasever +enabled=1 +priority=10 +@end verbatim + +@subsubheading The [webenv] repository + +@verbatim +/etc/yum.repos.d/CentOS-Webenv.repo +@end verbatim + +@verbatim +[webenv] +name=CentOS-$releasever - Webenv +mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=webenv +#baseurl=http://mirror.centos.org/centos/$releasever/webenv/$basearch/ +gpgcheck=1 +gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-$releasever +enabled=1 +priority=10 +@end verbatim + +@subsubheading Priority configuration + +Both [webenv] and [webenv-test] repositories update packages inside +CentOS [base] and CentOS [updates] repositories. + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@menu +@end menu diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Locales.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Locales.texinfo new file mode 100644 index 0000000..823d887 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Locales.texinfo @@ -0,0 +1,72 @@ +@subheading Goals + +The @file{trunk/Locales} directory structure provides the localization +work line and its main goal is provide the translation messages +required to produce content in different languages. + +@subheading Description + +Translation messages inside the repository are stored as portable +objects (e.g., .po, .pot) and machine objects (.mo) under +@file{trunk/Locales} directory structure. + +Translation messages are organized using the directory structure of +the component being translated. For example, if we want to provide +translation messages for @file{trunk/Manuals/Repository}, then the +@file{trunk/Locales/Manuals/Repository} directory needs to be created. + +Once the locale directory exists for the component we want to provide +translation messages for, it is necessary to create the translation +files where translation messages are. The translation files follows +the concepts of @command{xml2po} and GNU @command{gettext} tools. + +The basic translation process is as follow: first, translatable +strings are extracted from files and a portable object template (.pot) +is created or updated with the information. Using the portable object +template, a portable object (.po) is created or updated for translator +to locale the messages retrived. Finally, a machine object (.mo) is +created from portable object to sotore the translated messages. + +Inside the repository there are two ways to retrive translatable +strings from files. The first one is through @command{xml2po} command +and the second through @command{xgettext} command. The @command{xml2po} +is used to retrive translatable strings from XML files (e.g., Scalable +Vector Graphics, DocBook, etc.) and the @command{xgettext} command is +used to retrive translatable strings from shell scripts files (e.g., +the files that make the @command{centos-art.sh} command-line +interface). + +When translatable strings are retrived from XML files, using the +@command{xml2po} command, there is no need to create the machine +object as we do when translatable strings ar retrived from shell +files, using the @command{xgettext} command. The @command{xml2po} +produces a temporal machine object in order to create a translated XML +file. Once the translated XML file has been created the machine object +is no longer needed. On the other hand, the machine object produced by +the @command{xgettext} command is required by the system in order for +the show shell script localized messages. + +Another difference between @command{xml2po} and @command{xgettext} we +need to be aware of is the directory structure used to store machine +objects. In @command{xml2po}, the machine object is created in the +current working directory as @file{.xml2po.mo} and can be safetly +removed once the translated XML file has been created. In the case of +@command{xgettext}, the machine object needs to be stored in the +@file{$TEXTDOMAIN/$LOCALE/LL_MESSAGES/$TEXTDOMAIN.mo} file in order +for the system to interpret it and should not be removed since it is +the file that contain the translation messages themselves. + +Automation of localization tasks is achived through the @code{locale} +functionality of command-line interface. + +@subheading Usage + +@itemize +@item @xref{Directories trunk Scripts Functions Locale}. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Manuals.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Manuals.texinfo new file mode 100644 index 0000000..4ec2167 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Manuals.texinfo @@ -0,0 +1,94 @@ +@subheading Goals + +The @file{trunk/Manual} directory is the place where files related to +documentation work line are stored in. The main goal of documentation +work line is to describe what each directory inside the CentOS Artwork +Repository is for, the conceptual ideas behind them and, if possible, +how automation scripts make use of them. + +@subheading Description + +The repository documentation manual is made of the following files: + +@table @file + +@item repository.css + +This file controls the visual style for XHTML output files of +repository documentation manual. + +@item repository-index.texinfo + +This file controls the index definition for source files of repository +documentation manual. + +@item repository.info.bz2 + +This file provides the Info output of repository documentation manual. + +@item repository-init.pl + +This file provides the initialization script of @command{texi2html}, +the program used by @command{centos-art.sh} script to produce the +XHTML output of repository documentation manual. + +@item repository-menu.texinfo + +This file controls the menu definition of chapters for source files of +repository documentation manual. + +@item repository-node.texinfo + +This file controls the node definition of chapters for source files of +repository documentation manual. + +@item repository.pdf + +This file provides the PDF output of repository documentation manual. + +@item repository.sed + +This file provides post-transformations for XHTML output files. In +this file is where XHTML definitions for admonitions are set in. + +@item repository.texinfo + +This is the source file of repository documentation manual where +the manual structure initialization is set. +manual. + +@item repository.txt.bz2 + +This file provides the TXT output of repository documentation manual. + +@item repository.xhtml.bz2 + +This file provides the XHTML output of repository documentation +manual. + +@item repository.xml + +This file provides the XML output of repository documentation manual. + +@end table + +The repository documentation manual is made of the following +directories: + +@itemize +@item @xref{Directories trunk Manuals Directories}. +@item @xref{Directories trunk Manuals Introduction}. +@item @xref{Directories trunk Manuals Licenses}. +@end itemize + +@subheading Usage + +@itemize +@item @xref{Directories trunk Scripts Functions Help}. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Directories.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Directories.texinfo new file mode 100755 index 0000000..0a72b17 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Directories.texinfo @@ -0,0 +1,27 @@ +@subheading Goals + +The @file{trunk/Manual/Directories} directory stores source +documentation files related to repository directories. The directory +structure in this location mirrors the directory structure being +documented in the repository from top level directories (e.g., +@file{trunk}, @file{branches} and @file{tags}) to inner levels, +including the @file{trunk/Manual} location itself where documentation +source files are stored in. + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item ... +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Introduction.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Introduction.texinfo new file mode 100755 index 0000000..d6bb628 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Introduction.texinfo @@ -0,0 +1,23 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item ... +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Licenses.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Licenses.texinfo new file mode 100755 index 0000000..d6bb628 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Manuals/Licenses.texinfo @@ -0,0 +1,23 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item ... +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts.texinfo new file mode 100644 index 0000000..bdd4fcb --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts.texinfo @@ -0,0 +1,167 @@ +@subheading Goals + +This section provides the automation work line. The automation work +line exists to standardize content production in CentOS Artwork +Repository. There is no need to type several tasks, time after time, +if they can be programmed into just one executable script. + +In this section you'll find how to organize and extend the +@command{centos-art.sh} script, a bash scripts specially designed to +automate most frequent tasks in the repository (e.g., image rendition, +documenting directory structures, translating content, etc.). If you +can't resist the idea of automating repeatable tasks, then take a look +here. + +@subheading Description + +The best way to understand the @command{centos-art.sh} script is +studying and improving its source code. However, as start point, you +may prefer to read an introductory resume before diving into the +source code details. In this section we identify the different parts +the @command{centos-art.sh} script is made of and how these parts +interact one another. + +@subsubheading Execution environments + +The @command{centos-art.sh} script is basically made of four execution +environments which are named @emph{script}, @emph{global}, +@emph{specific} and @emph{action}. These execution environments are +nested one into another and provide different definition levels for +variables and functions. In this design, variables and functions +defined in higher execution environments are available on lower +execution environments, but variables and functions defined in lower +execution environments are not available for higher execution +enviroments. + +@verbatim ++----------------------------------------------------------------------+ +| [centos@host]$ centos-art function path/to/dir --option='value' | ++----------------------------------------------------------------------+ +| ~/bin/centos-art --> ~/artwork/trunk/Scripts/centos-art.sh | ++---v--------------------------------------------------------------v---+ + | centos-art.sh | + +---v------------------------------------------------------v---+ + . | cli $@ | . + . +---v----------------------------------------------v---+ . + . . | cli_getFunctions | . . + . . +---v--------------------------------------v---+ . . + . . . | function | . . . + . . . +---v------------------------------v---+ . . . + . . . . | function_getOptions | . . . . + . . . . | function_doSomething | . . . . + . . . . +------------------------------+ . . . . + . . . . . . . . + . . . . Execution environment (action) . . . . + . . . ........................................ . . . + . . . . . . + . . . Execution environment (specific) . . . + . . ................................................ . . + . . . . + . . Execution environment (global) . . + . ........................................................ . + . . + . Execution environment (script) . + ................................................................ +@end verbatim + +The script execution environment exists to provide script definitions +that can't be set anywhere else inside the script. Example of such +definitions include initialization of internationalization through +@command{gettext} program, script personal information and +initialization of global functionalities. + +The global execution environment exists to provide definitions that +can't be set anywhere else inside the script. Example of such +definitions include initialization of functionalities (e.g., +@code{cli_printMessage}, @code{cli_getCurrentLocale}, +@code{cli_checkFiles}, etc.) and variables (e.g., @var{FUNCNAM}, +@var{FUNCDIR}, @var{FUNCDIRNAM}, @var{ARGUMENTS}, etc.) that can be +both used on specific and action execution environments, only. + +The specific execution environment exists to provide definitions that +can't be set anywhere else inside the script. Example of such +definitions include initialization of specifc functionalities (e.g., +@code{render}, @code{help}, @code{locale}, etc.) and specific +variables (@var{ACTIONNAM}, @var{ACTIONVAL}, etc.) that can be used on +action execution environment only. + +The action execution environment exists to perform the script actions +themselves. It is here where we perform content rendition, content +documentation, content localization and whatever action you plan for +the @command{centos-art.sh} script to perform. For example, if you +passed the @code{render} value as first argument to +@command{centos-art.sh} command-line, the script performs the content +rendition action through the @code{render} function which is defined +in the @file{render.sh} file under +@file{trunk/Scripts/Functions/Render} directory. Is there, inside +@code{render} functionality were the action execution environment +takes place exactly. + +@subsubheading Command-line interface + +When the @command{centos-art} command is executed in a bash terminal, +the bash interpreter uses the @env{PATH} environment variable to find +where such command is. In order to run the @command{centos-art}, it +must exist either as a link to an executable file or an executable +file by its own, in any of the paths provided by @env{PATH} +environment variable. Otherwise, the bash interpreter will print an +error message and prompt you back to type a valid command. + +By default, after installing The CentOS Distribution, there is no +@command{centos-art} command available in the @env{PATH} environment +variable for you to execute. The @command{centos-art} command is made +available in your workstation as result of executing the +@code{prepare} functionality of @command{centos-art.sh} script +(@pxref{Directories trunk Scripts Functions Prepare}) which requires +you had previously downloaded a working copy of CentOS Artwork +Repository in your workstation. + +When the @command{centos-art} is executed, the first positional +parameter passed is required and represents the name of the function +you want to perform (e.g., @code{render} for content rendition, +@code{locale} for content localization, etc.). Beyond the first +positional parameter you can provide either option or non-option +parameters in no specific order. There are also, option parameters +with arguments and without arguments. Frequently, non-option paramters +are used to specify the path location inside the repository where the +function will be performed in (e.g., the directory structure do you +want to produce content for) and option parameters to specify how such +functionality is performed (e.g., do you want to go quietly? do you +want to do filtering? etc.). + +@verbatim + A B C D E +---------- ------- ----------- ---------------- ------- +centos-art funcnam path/to/dir --filter='regex' --quiet +---------- ------- ----------- ---------------- ------- + + A = The centos-art.sh script command-line. + B = The centos-art.sh function name. + C = Non-option parameter. + D = Option parameter (with argument). + E = Option parameter (without argument). +@end verbatim + +@subsubheading Parsing command-line options + +The action of parsing options is performed through @command{getopt} +and results particularly interesting. @command{getopt} breaks up +(parse) options in command lines and checks for legal options using +the GNU @code{getopt} routines to do this. One important consideration +on @command{centos-art.sh} script design is that positional parameters +are retrived in the @code{cli} function but parsed on each specific +function, individually. There isn't a big parsing definition to cover +all specific functions, but one parsing definitions for each specific +functions. + +@subheading Usage + +@itemize +@item @xref{Directories trunk Scripts Functions}. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions.texinfo new file mode 100755 index 0000000..910e891 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions.texinfo @@ -0,0 +1,348 @@ +@subheading Goals + +The @file{trunk/Scripts/Functions} directory exists to organize +@file{centos-art.sh} specific functionalities. + +@subheading Description + +The specific functions of @file{centos-art.sh} script are designed +with the ``Software Toolbox'' philosophy (@inforef{Toolbox +introduction,,coreutils.info}) in mind: each program ``should do one +thing well''. Inside @file{centos-art.sh} script, each specific +functionality is considered a program that should do one thing well. +Of course, if you find that they still don't do it, feel free to +improve them in order for them to do so. + +The specific functions of @file{centos-art.sh} script are organized +inside specific directories under @file{trunk/Scripts/Functions} +location. Each specific function directory should be named as the +function it represents, with the first letter in uppercase. For +example, if the function name is @code{render}, the specific function +directory for it would be @samp{trunk/Scripts/Functions/Render}. + +@subsubheading Creating the @code{greet} functionality + +To better understand how to design specific functions for +@file{centos-art.sh} script, let's create the @code{greet} +functionality which only goal is to print out different kind of +greetings to your screen. The @code{greet} functionality will be set +using the follwiing directory structure: + +@verbatim +trunk/Scripts/Functions/Greet <-- The source location of greet function. +|-- greet_getOptions.sh <-- Defines command-line interface. +|-- greet_sayGoodbye.sh <-- Defines specific action. +|-- greet_sayHello.sh <-- Defines specific action. +`-- greet.sh <-- Defines function initialization. +@end verbatim + +The @file{greet.sh} file contains the initialization script of +@code{greet} functionality. It is the first file loaded from function +source location by @command{centos-art.sh} script when it is executed +using the @code{greet} functionality as first argument. + +Inside @file{centos-art.sh} script, as convenction, each function +script has one top commentary, followed by one blank line, and then +one function defintion below it only. The top commentary has the +function description, one-line for copyright notice with your personal +information, the license under which the function source code is +released ---the @file{centos-art.sh} script is released as GPL, so do +all its functions--- and the @code{$Id$} keyword of Subversion which +is later expanded by @command{svn propset} command. In our example, +the top comment of @code{greet.sh} function script would look like the +following: + +@verbatim +#!/bin/bash +# +# greet.sh -- This function outputs different kind of greetings to +# your screen. Use this function to understand how centos-art.sh +# script specific functionalities work. +# +# Copyright (C) YEAR YOURFULLNAME +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or (at +# your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +# ---------------------------------------------------------------------- +# $Id$ +# ---------------------------------------------------------------------- + +function greet { + + # Define command-line interface. + greet_getOptions + + # Execute action name. + if [[ $ACTIONNAM =~ "^${FUNCNAM}_[A-Za-z]+$" ]];then + eval $ACTIONNAM + else + cli_printMessage "`gettext "A valid action is required."`" 'AsErrorLine' + cli_printMessage "${FUNCDIRNAM}" 'AsToKnowMoreLine' + fi + +} +@end verbatim + +The first definition inside @code{greet} function is for variables +that will be available along the whole execution environment of +@code{greet} function. This time we didn't define any variable here +so, we continued with definition of command-line interface, through +@code{greet_getOptions} function. + +The command-line interface of @code{greet} functionality defines how +to interpret arguments passed from @command{centos-art.sh} script +command-line. Inside @command{centos-art.sh} script, the +interpretation of arguments passed through its command-line takes +place by mean of @command{getopt} command and is written as the +following code example describes: + +@verbatim +function greet_getOptions { + + # Define short options we want to support. + local ARGSS="" + + # Define long options we want to support. + local ARGSL="hello:,bye:,quiet" + + # Redefine ARGUMENTS variable using getopt output. + cli_doParseArguments + + # Redefine positional parameters using ARGUMENTS variable. + eval set -- "$ARGUMENTS" + + # Look for options passed through command-line. + while true; do + + case "$1" in + + --hello ) + ACTIONNAM="${FUNCNAM}_sayHello" + ACTIONVAL="$2" + shift 2 + ;; + + --bye ) + ACTIONNAM="${FUNCNAM}_sayGoodbye" + ACTIONVAL="$2" + shift 2 + ;; + + --quiet ) + FLAG_QUIET='true' + shift 1 + ;; + + -- ) + # Remove the `--' argument from the list of arguments + # in order for processing non-option arguments + # correctly. At this point all option arguments have + # been processed already but the `--' argument still + # remains to mark ending of option arguments and + # begining of non-option arguments. The `--' argument + # needs to be removed here in order to avoid + # centos-art.sh script to process it as a path inside + # the repository, which obviously is not. + shift 1 + break + ;; + esac + done + + # Redefine ARGUMENTS variable using current positional parameters. + cli_doParseArgumentsReDef "$@" + +} +@end verbatim + +The @code{greet_sayHello} and @code{greet_sayGoodbye} function definitions +are the core of @code{greet} specific functionality. In such function +definitions we set what our @code{greet} function really does: to +output different kinds of greetings. + +@verbatim +function greet_sayHello { + + cli_printMessage "`gettext "Hello"`, $ACTIONVAL" + +} +@end verbatim + +The @code{greet_sayHello} function definition is stored in +@file{greet_sayHello.sh} function script. + +@verbatim +function greet_sayGoodbye { + + cli_printMessage "`gettext "Goodbye"`, $ACTIONVAL" + +} +@end verbatim + +The @code{greet_sayGoodbye} function definition is stored in the +@file{greet_sayGoodbye.sh} function script. + +@subsubheading Executing the @code{greet} functionality + +To execute the @code{greet} specific functionality we've just created, +pass the function name (i.e., @code{greet}) as first argument to +@file{centos-art.sh} script and any of the valid options after it. +Some examples are illustrated below: + +@verbatim +[centos@projects ~]$ centos-art greet --hello='World' +Hello, World +[centos@projects ~]$ centos-art greet --bye='World' +Goodbye, World +[centos@projects ~]$ centos-art greet --bye='World' --quiet +[centos@projects ~]$ +@end verbatim + +The word @samp{World} in the examples above can be anything. Likewise, +if you need to change the way either the hello or goodbye messages are +printed out, you can modifie the functions @code{greet_sayHello} and +@code{greet_sayGoodbye}, respectively. + +@subsubheading Documenting the @command{greet} functionality + +Now that @code{greet} functionality works as we expect, it is time to +document it. To document functionalities inside +@command{centos-art.sh} script we use the function directory path as +argument to the @code{help} functionality (@pxref{Directories trunk +Scripts Functions Help}) of @file{centos-art.sh} script, just as the +following command illustrates: + +@verbatim +centos-art help --edit trunk/Scripts/Functions/Greet +@end verbatim + +The function documentation helps to understand how the function really +works and how it should be used. Also, when @command{centos-art.sh} +script ends because an error, the documentation entry related to the +functionality being currently executed is used as vehicle to +communicate the user what is the correct way of using the +functionality. + +@subsubheading Localizing the @command{greet} functionality + +Now that @code{greet} functionality has been documented, it is time to +localize its output messages. Localizing specific functionalities of +@command{centos-art.sh} script takes place as part of +@command{centos-art.sh} script localization itself which is performed +by applying the path @file{trunk/Scripts} to the @code{locale} +functionality of @command{centos-art.sh} script. + +As the @code{greet} functionality added new translatable strings to +the @command{centos-art.sh} script, it is required to update the +translation messages firstly, to add the new translatable strings from +@code{greet} functionality to @command{centos-art.sh} script +translation messages and then, edit the translation messages of +@command{centos-art.sh} script to localize the new translatable +strings that have been added. To achieve this, execute the following +two commands: + +@verbatim +centos-art locale --update trunk/Scripts +@end verbatim + +@verbatim +centos-art locale --edit trunk/Scripts +@end verbatim + +@quotation +@strong{Warning} To translate output messages in different languages, +your system locale information ---as in @env{LANG} environment +variable--- must be set to that locale you want to produce translated +messages for. For example, if you want to produce translated messages +for Spanish language, your system locale information must be set to +@samp{es_ES.UTF-8}, or similar, before executing the @code{locale} +functionality of @command{centos-art.sh} script. +@end quotation + +Well, it seems that our example is rather complete by now. + +@subsubheading Extending the @code{greet} functionality + +In the @code{greet} functionality we've described so far, we only use +@code{cli_printMessage} function in action specific function +definitions in order to print messages, but more interesting things +can be achieved inside action specific function definitions. For +example, if you pass a directory path as argument, you could use it to +retrive a list of files from therein and process them. If the list of +files turns too long or you just want to control which files to +process, so you could add another argument in the form +@option{--filter='regex'} and reduce the list of files to process +using a regular expression pattern. + +In case you consider to extend the @code{greet} functionality to do +something different but print out grettings, consider changing the +function name from @code{greet} to something more appropriate, as +well. The name change must be coherent with the actions the new +function is designed to perform. + +If you doubt what name is better for your functionality, write to +@email{centos-devel@@centos.org} mailing list, explain what your +functionality intends to do and request suggestion about what name +would be more appropriate for it. That would be also very convenient +for you, in order to evaluate the purposes of your function and what +the community thinks about it. It is a way for you to gather ideas +that help you to write using the community feeling as base. + +If your function passes the community evaluation, that is a good sign +for you to start/keep writing it. However, if it doesn't, it is time +for you to rethink what you are doing and ask again until it passes +the community evaluation. You can considered you've passed the +community evaluation when after proposing your idea, you get a +considerable amount of possitve responses for what you are doing, +specially if those responses come from community leaders. + +It is very hard to do something useful for a community of people +without any point of contact with that community you are trying to do +things for. How could you know you are doing something that is needed +if you don't know what the needs are? So, explore the community needs +first, define them, work them out and repeat the process time after +time, even when you might think the need has been already satisfied. +At that point, surely, you'll find smaller needs that need to be +satisfied, as well. + +@subsubheading Conclusions + +The @code{greet} functionality described in this section may serve as +introduction for you to understand how specific functionalities are +created inside @file{centos-art.sh} script. With some of luck this +introduction will also serve you as motivation to create your own +specific functionalities for @file{centos-art.sh} script. + +By the way, the @code{greet} functionality doesn't exist inside +@file{centos-art.sh} script yet. Would you like to create it? + +@subheading Usage + +The following specific functions of @file{centos-art.sh} script, are +available for you to use: + +@itemize +@item @xref{Directories trunk Scripts Functions Help}. +@item @xref{Directories trunk Scripts Functions Locale}. +@item @xref{Directories trunk Scripts Functions Prepare}. +@item @xref{Directories trunk Scripts Functions Render}. +@item @xref{Directories trunk Scripts Functions Tuneup}. +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help.texinfo new file mode 100644 index 0000000..6242eeb --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help.texinfo @@ -0,0 +1,192 @@ +@subheading Name + +The @code{help} functionlity is part of @command{centos-art.sh} script +and standardizes documentation tasks inside the working copy of CentOS +Artwork Repository. + +@subheading Synopsis + +@command{centos-art help [OPTIONS] path/to/dir @dots{}} + +The @file{path/to/dir} parameter specifies what directory structure +inside the working copy of CentOS Artwork Repository you want to +process. + +The @code{help} functionality of @command{centos-art.sh} script +accepts the following options: + +@table @option +@item --quiet + +Supress all output messages except error messages. When this option +is passed, all confirmation requests are supressed as well and a +possitive answer is assumed for them, just as if the +@option{--answer-yes} option had been provided. + +@item --answer-yes + +Assume `yes' to all confirmation requests. + +@item --dont-commit-changes + +Supress all commit and update actions realized over files, before and +after the action itself had took place over files in the working copy. + +@item --backend="STRING" + +Specifies the documentation system used as backend to manage the +repository documentation manual. When this option is not provided, the +@samp{texinfo} backend (@pxref{Directories trunk Scripts Functions +Help Backends Texinfo}) is used as default documentation system. + +To know more about documentation backends and the common +characteristics they share, @pxref{Directories trunk Scripts Functions +Help Backends}. + +@item --search="STRING" + +Go to node pointed by index entry @samp{STRING}. + +@item --edit "path/to/dir" + +Edit documentation entry related to path specified by +@file{path/to/dir}. + +The @file{path/to/dir} must point to any directory inside the +repository. When more than one @file{path/to/dir} are passed as +non-option arguments to the @command{centos-art.sh} script +command-line, they are queued for further edition. The edition itself +takes place through your default text editor (e.g., the one you +specified in the @env{EDITOR} environment variable) and the text +editor opens one file at time (i.e., the queue of files to edit is not +loaded in the text editor.). + +@item --read "path/to/dir" + +Read documentation entry specified by @file{file/to/dir} path. This +option is used internally by @command{centos-art.sh} script to print +out the reference you can follow to know more about an error message. + +@item --update + +Update output files rexporting them from the specified backend source +files. + +@item --copy "path/to/srcdir" "path/to/dstdir" + +Duplicate documentation entries inside the working copy of CentOS +Artwork Repository. + +When documentation entries are copied, only two non-option arguments +can be passed to @command{centos-art.sh} script. In this case, the +first non-option argument is considered the source location and the +second one the target location. Both source location and target +location must point to a directory under the working copy or files +under @file{trunk/Manuals/Texinfo/Directories} directory structure. + +@item --delete "path/to/dir" + +Delete documentation entries inside the working copy of CentOS +Artwork Repository. + +@item --rename "path/to/srcdir" "path/to/dstdir" + +Rename documentation entries inside the working copy of CentOS Artwork +Repository. + +When documentation entries are renamed, only two non-option arguments +can be passed to @command{centos-art.sh} script. In this case, the +first non-option argument is considered the source location and the +second one the target location. Both source location and target +location must point to a directory under the working copy or files +under @file{trunk/Manuals/Texinfo/Directories} directory structure. + +Renaming a repository documentation entries introduce some +complications because inclusions, menus, nodes and cross references +are built using master path information as reference. Now, to see +what kind of complication we are trying to solve with path +syncronization, consider what would happen to document structural +definitions (i.e., inlusions, menus, nodes and cross refereces) when a +master path that is suddenly renamed to something different. At this +point, if the path information is not updated, we lose connection +between the master path and the auxiliar path created to store the +related documentation entry, as well as the related structural +definitions that will end up pointing to a master path that no longer +exist. + +@end table + +When documentation entries are removed (e.g., through +@option{--delete} or @option{--rename} options), the +@command{centos-art.sh} script takes care of updating nodes, menus and +cross references related to documentation entries in order to keep the +manual structure in a correct state. + +@subheading Description + +Inside the CentOS Artwork Repository, The CentOS Project corporate +identity is organized through directories. Each directory inside the +repository responds to one or more conceptual ideas. Conceptual ideas +are implemented through files. + +The @code{help} functionality of @command{centos-art.sh} script uses +the repository directory layout as reference to document the +conceptual ideas it is based on. Each directory inside the repository +can be documented, in order to provide the explanation of what it is +for and how automation scripts use it. + +@quotation +@strong{Caution} When the repository directory layout changes, the +documentation layout related must be changed as well in order for both +locations to be consistent in their paths. Otherwise, you may end up +having documentation entries that point to unexistent directories in +the repository. +@end quotation + +Files inside the repository are not documented. The only exception to +this rule are files under @file{trunk/Manuals} directory, the place +where documentation source files are stored in. Inside this location +you can refer files for direct actions using the @code{help} +functionality of @command{centos-art.sh} script. File actions, in this +location, are also used to manage specific parts of the manual which +have no association outside @file{trunk/Manuals} directory (e.g., +Preface, Introduction, etc.). + +@subheading Examples + +@table @command +@item centos-art help --edit trunk/Identity + +This command edits the documentation entry related to +@file{trunk/Identity} directory. + +@item centos-art help --read trunk/Identity + +This command reads the doumentation entry related to +@file{trunk/Identity} directory in info format. + +@end table + +@subheading Author + +Written by Alain Reguera Delgado. + +@subheading Reporting bugs + +Report bugs to @email{centos-artwork@@centos.org} mailing list. + +@subheading Copyright + +Copyright @copyright{} 2009, 2010, 2011 The CentOS Project. + +This is free software. You may redistribute copies of it under the +terms of the @ref{GNU General Public License}. There is NO WARRANTY, +to the extent permitted by law. + +@subheading See also + +@itemize +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends.texinfo new file mode 100755 index 0000000..2dd34d0 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends.texinfo @@ -0,0 +1,102 @@ +@subheading Goals + +The @file{trunk/Scripts/Functions/Help/Backends} directory organizes +documentation backends used by @code{help} functionality of +@command{centos-art.sh} script. + +@subheading Description + +Documentation backends are organized inside directories. There is one +directory for each documentation backend. Inside backend directories, +documentation actions are implemented by mean of shell functions. +There is one shell function for each documentation action (e.g., +reading, editing, updating output, etc.) and auxiliar shell functions +to backup documentation actions. + +Inside backend directories, shell functions must have the same +structure in their names. The name structure used by shell functions +here is: @code{suffix_funcname.sh}, were @code{suffix} is the name of +the directory backend in lowercase and @code{funcname} is the name of +the function. Assuming, both @samp{texinfo} and @samp{docbook} +backends have been already implemented, they must have a structure +similar to the following: + +@verbatim +trunk/Scripts/Functions/Help/Backends +|-- Docbook +| |-- Templates +| | |-- en_US +| | `-- ... +| |-- docbook_editEntry.sh +| |-- docbook_updateOutputFiles.sh +| `-- ... +`-- Texinfo + |-- Templates + | |-- en_US + | `-- ... + |-- texinfo_editEntry.sh + |-- texinfo_updateOutputFiles.sh + `-- ... +@end verbatim + +The repository documentation entries are organized as sections inside +a chapter named @samp{The repository directories}. Each section +contains three subsections (e.g., Goals, Description, Usage and See +also) and optionally one or more subsubsections inside them to +describe what the related repository directory is for. The first three +section are created in blank for you to fill with information, but the +last one is created automatically and contains a list of links to +previous sections. + +The internal document organization and language used in repository +documentation entries are both defined through templates. Templates +are organized in the @file{Templates} directory which is located +inside the backend directory. Templates are used when a new +documentation structure is created and later, when a new documentation +entry is created inside it. There is one documentation manual +structure for each language supported and one documentation entry +inside the documentation manual for each directory inside the +repositroy. + +The relation between template files and repository paths is set in the +@file{repository.conf} file. In this file, all lines begining with a +@samp{#} character are considered comments. Both comments and empty +lines are removed from the configuration file before evaluating it, so +only configuration lines will remain to be evaluated. Configuration +lines must be in the form @samp{template = "path-regex"}, where +@samp{template} is the relative path to section template and +@samp{"path-regex"} a regular expression describing the path +information where you want to apply the template on. Empty spaces are +irrelevant around the equal sign. As example, consider the following +configuration file: + +@verbatim +# This file defines the relation between section templates and +# repository paths. Here you can customize the section template of +# specific directories inside the repository. The first match wins. +# ---------------------------------------------------------------------- +# $Id: repository.conf 3222 2011-06-04 19:35:00Z al $ +# ---------------------------------------------------------------------- + +Directories/section-functions.texinfo = "(trunk|branches|tags)/Scripts/Functions/[[:alnum:]]+\.texinfo$" +Directories/section.texinfo = "(trunk|branches|tags).*\.texinfo$" +@end verbatim + +@subheading Usage + +The following documentation backends are available: + +@itemize +@item @ref{Directories trunk Scripts Functions Help Backends Texinfo} +@item @ref{Directories trunk Scripts Functions Help Backends Docbook} +@item @ref{Directories trunk Scripts Functions Help Backends Linuxdoc} +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Scripts Functions Help} +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Docbook.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Docbook.texinfo new file mode 100644 index 0000000..3acd745 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Docbook.texinfo @@ -0,0 +1,50 @@ +@subheading Goals + +The @file{trunk/Scripts/Functions/Help/Backends/Docbook} organizes +the implementation of @samp{docbook} documentation backend used by +@code{help} functionality of @command{centos-art.sh} script. + +@subheading Description + +Creation of new language-specific documentation structure is based on +English documentation structure. When we try to edit a documentation +entry in a documentation structure that doesn't exist, +@command{centos-art.sh} script renders the new documentation structure +using the language-specific translation messages for the current +language information. If the @command{centos-art.sh} script doesn't +find any translation message for the current language, it asks you to +create them through the @code{locale} functionality. Later, uses the +translation messages to render the new language-specific documentation +structure. Obviously, if translation messages are created but no +localization is inside them you'll have the new language-specific +documentation struction in the same language of source documentation +structure (i.e., English). + +Localization of language-specific documentation structures are +maintained through the @code{locale} and @code{render} functionalities +of @command{centos-art.sh} script. Eventhough, a language-specific +documentation structure is available, you must not edit it directly +because it is produced automatically from translation messages. +Instead, edit translation messages whenever you need to update +language-specific documentation structures. Using this configuration +let us to have an accurate documentation structures: running the +@code{locale} functionality will take advice of new changes and will +call our attention about them. This way, we go directly to changes +and save the time of looking them inside the English documentation +structure. + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Scripts Functions Help Backends} +@item @ref{Directories trunk Scripts Functions Help} +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Linuxdoc.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Linuxdoc.texinfo new file mode 100644 index 0000000..3275187 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Linuxdoc.texinfo @@ -0,0 +1,27 @@ +@subheading Goals + +@itemize +@item ... +@end itemize + +@subheading Description + +@itemize +@item ... +@end itemize + +@subheading Usage + +@itemize +@item ... +@end itemize + +@subheading See also + +@itemize +@item @ref{Directories trunk Scripts Functions Help Backends} +@item @ref{Directories trunk Scripts Functions Help} +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Texinfo.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Texinfo.texinfo new file mode 100644 index 0000000..7a52b04 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Help/Backends/Texinfo.texinfo @@ -0,0 +1,95 @@ +@subheading Goals + +The @file{trunk/Scripts/Functions/Help/Backends/Texinfo} directory +structure organizes the `texinfo' backend used by @code{help} +functionality to manage the repository documentation manual +(@pxref{Directories trunk Manuals}). + +@subheading Description + +The @code{texinfo} backend is supported by GNU Texinfo, a +documentation system that can produce both online information and a +printed manual from a single source. The @code{texinfo} backend is an +interface the @command{centos-art.sh} script uses to control the +frequent documenting tasks (e.g., reading, editing, update output +files, etc.) in the source files of a Texinfo documentation manual +structure. + +The @code{texinfo} backend takes the repository documentation manual +in texinfo format as input and produces Info, Pdf, XML, Xhtml and Txt +output files in the @file{trunk/Manuals/Texinfo/$LANG} directory +structure, where @var{$LANG} represents the language of the manual. +The Info, Pdf and Txt output files are produced through +@command{makeinfo} command and the Xhtml output through +@command{texi2html} command. Using the @command{makeinfo} command it +is also possible to output the repository documentation manual in +Docbook format, however, the output produced by @command{makeinfo} +command seems to have some malformations, so the @samp{docbook} +backend is considered instead (@pxref{Directories trunk Scripts +Functions Help Backends Docbook}). + +When producing Xhtml output, through @command{texi2html} command, the +output customization is controlled by common and specific +configuration files. Common configuration files are stored in +@file{trunk/Manuals/Texinfo} and include @file{repository.css}, +@file{repository-init.pl} and @file{repository.sed}. Specific +configuration files, on the other hand, are stored inside +backend-specific directories (e.g., +@file{trunk/Scripts/Functions/Help/Backends/Texinfo/Templates/$LANG}) +and includes @file{repository-init.pl}, @file{repository.conf}, +@file{repository.sed}. + +When writting texinfo files, produced by @samp{texinfo} backend, the +way absolute paths are defined is important. Absolute path +definitions (e.g., through `@@include' and `@@image') must be set from +@file{trunk/} directory structure on. This is necessary because the +documentation manual is exported using @file{@var{$HOME}/artwork} +directory structure as base. + +Internationalization of repository documentation manual is performed +trough document templates and the @env{LANG} environment variable. +There is one repository documentation manual for each locale specified +by @env{LANG} environment variable. When no template is available for +a specific language, the @code{en_US} templates are used as reference. + +Each repository documentation manual written in language other than +English, must include the @samp{@@documentlanguage} and +@samp{@@documentencoding} directives in the main document file (e.g., +@file{repository.texinfo}) to provide the language and encoding +information respectively. The language information can be any value +specified by ISO-639 language code standard and the ecoding +informormation can be either @samp{US-ASCII}, @samp{ISO-8859-1}, +@samp{ISO-8859-15} or @samp{ISO-8859-2}. + +The encoding information is required in order for Txt and Info outputs +to show special characters, defined through Texinfo special way of +accentuation (e.g., @samp{@@'a}, @samp{@@~n}, etc.), correctly. In +this specific case, to read both Txt and Info files, it is required +that the terminal you are performing the reading action (e.g., +@command{gnome-terminal}) be encoded with the same value you specified +inside the repository documentation manual. Otherwise, special +characters may not look as expected. + +Using Texinfo special way of accentuation is also required for +@command{texi2html} command to transform special characters to HTML +entities (e.g., @samp{á}, @samp{ñ}, etc.). In the Pdf +output, special characters are printed well most of times with some +exceptions (e.g., the @samp{@@'i} don't replaces the dot over the +letter with the accentuation, but put the accentuation over it.). + +@subheading Usage + +The @samp{texinfo} backend is the default backend used by @code{help} +functionality when no @option{--backend} option is provided to +@command{centos-art.sh} script; or when it is explicitly specified +(e.g., @option{--backend="texinfo"}). + +@subheading See also + +@itemize +@item @ref{Directories trunk Scripts Functions Help Backends} +@item @ref{Directories trunk Scripts Functions Help} +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Locale.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Locale.texinfo new file mode 100644 index 0000000..0eb5ff4 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Locale.texinfo @@ -0,0 +1,255 @@ +@subheading Name + +The @code{locale} functionlity is part of @command{centos-art.sh} +script and standardizes localization tasks inside the working copy of +CentOS Artwork Repository. + +@subheading Synopsis + +@command{centos-art locale [OPTIONS] path/to/dir} + +The @file{path/to/dir} parameter specifies what directory structure +inside the working copy of CentOS Artwork Repository you want to +create translation messages for. + +The @code{locale} functionality of @command{centos-art.sh} script +accepts the following options: + +@table @option +@item --quiet + +Supress all output messages except error messages. When this option +is passed, all confirmation requests are supressed as well and a +possitive answer is assumed for them, just as if the +@option{--answer-yes} option had been provided. + +@item --answer-yes + +Assume `yes' to all confirmation requests. + +@item --filter="REGEX" + +Reduce the list of files to process using @samp{REGEX} as pattern. +You can use this option in combination with @file{path/to/dir} in +order to control the amount of files you want to produce as +base-rendition. The deeper you go into the directory structure the +more specific you'll be about the component you want to produce. When +you cannot go deeper into the directory structure, you can use +@option{--filter} option to reduce the list of files. + +@item --dont-commit-changes + +Supress all commit and update actions realized over files, before and +after the action itself had took place over files in the working copy. + +@item --update + +This option extracts translatable strings from both XML-based files +(using @command{xml2po}) and shell scripts (using @command{xgettext}) +under @file{path/to/dir}. Translatable strings are initially stored in +portable objects templates (.pot) which are later merged into portable +objects (.po) in order to be converted as machine objects (.mo). + +Use this option each time you change translatable stirngs inside +design models and script files. + +@item --edit + +This option edits the portable object related to @file{path/to/dir} +location. + +Use this option after updating portable objects (through +@option{--update} option) in order to change the language-specific +information of translatable strings. + +@item --dont-create-mo + +This option supresses the creation of machine objects. + +@end table + +@subheading Description + +The CentOS Artwork Repository exists to cover the visual needs of The +CentOS Project Corporate Identity. The CentOS Project is an +internationl project and sometimes requires contents in different +languages. So, in that sake, the CentOS Artwork Repository is designed +to produce content in as many locales as supported by The CentOS +Distribution, the platform that supports the whole CentOS Artwork +Repository, both in workstations and server. + +@quotation +@strong{Tip} To know what locales are supported by The CentOS +Distribution you are currently using, run the following command: + +@verbatim +locale -a | less +@end verbatim +@end quotation + +The localization process is very tied to the input files we want to +provide localized messages for. Inside the CentOS Artwork Repository, +it is possible to localize XML files (e.g., SVG, XHTML, Docbook) and +programs written in most popular programming languages (e.g., C, C++, +C#, Shell Scripts, Python, Java, GNU awk, PHP, etc.). + +@subsubheading Design models localization + +Design models are used as input to produce most images and some other +contents as well. Design models are always XML-based files (e.g., SVG, +XHTML, Docbook), so the @code{locale} functionality uses the +@command{xml2po} program to create protable objects from them under +@file{trunk/Locales/Models} directory. Portable objects contain the +relation between message id and message translation, as translator, +need to take care of. + +Thanks to @command{xml2po}, it is possible for the @code{locale} +functionality to separate designing tasks from the translating tasks. +It is possible for graphic designers to concentrate their efforts on +designing models in English language while translators take care of +their localization using the @option{--update} and @option{--edit} +options as much as it be needed. + +Once design models have been localized, rendering them in different +language is a matter using the @code{render} functionality of +@command{centos-art.sh} script. @xref{Directories trunk Scripts +Functions Render}, for more information about it. + +@subsubheading Shell script localization + +The @code{locale} functionality is used to localize the +@command{centos-art.sh} script itself. The @command{centos-art.sh} +script is a shell script written in Bash, so the @code{locale} +functionality uses the @command{gettext} tools to retrive translatable +strings, create portable objects and machine objects. + +Thanks to @command{gettext}, it is possible for the @code{locale} +functionality to separate programming tasks from the translating +tasks. It is possible for programmer to concentrate their efforts in +programming output messages in English language while translators take +care of their localization using the @option{--update} and +@option{--edit} options as much as it be needed. + +Once @command{centos-art.sh} script has been localized, the translated +messages should be immediatly visible to you, the next time you +execute the @command{centos-art.sh} script + +@quotation +@strong{Note} +In order to localize translatable strings from English language to +another language you need to be sure the @env{LANG} environment +variable has been already set to the locale code you want to localize +message for or see them printed out before running the +@command{centos-art.sh} script. Localizing English language to itself +is not supported. +@end quotation + +@subheading Examples + +@table @command +@item centos-art locale --update trunk/Identity/Models/Default/Distro/5/Anaconda + +This command updates portable objects related to Anaconda default +design models of The CentOS Distribution major release 5. The update +action consists on adding new translatable strings or removing old +translatable strings from portable objects in order to keep both the +portable object and the design model consistent. + +This command is executed by translators once the graphic designers +have committed updates to Anaconda default design models (e.g., slide +text changes). + +@item centos-art locale --edit trunk/Identity/Models/Default/Distro/5/Anaconda + +This command let translators to edit portable objects related to +Anaconda default design models of The CentOS Distribution major +release 5. The edit action is where the translator localize +translatable strings in English language to another language. + +When portable objects for XML-base files are produced, there is no +need to retain the machine object format, so we the +@option{--dont-create-mo} is automatically assumed. + +@item centos-art locale --update trunk/Scripts + +This command updates portable objects related to +@command{centos-art.sh} script. The update action consists on adding +new translatable strings or removing old translatable strings from +portable objects in order to keep both the portable object and the +@command{centos-art.sh} script to be consistent one another. + +This command is executed by translators once the programmers have +committed updates @command{centos-art.sh} script. + +@item centos-art locale --edit trunk/Scripts + +This command edits portable objects related to @command{centos-art.sh} +script in your prefered language. + +@item centos-art locale --update trunk/Manual/repository.xhtml + +This command updates portable objects for the XHTML output of the +repository documentation manual. The portable objects are created in +your prefered language and can be used to produced localized versions +of the manual in XHTML format. + +The update action consists on adding new translatable strings to or +removing old translatable strings from the portable objects in order +to keep both the portable object and the manual XHTML output +consistent one another. + +People execute this command after committing changes to the repository +documentation manual. + +@item centos-art locale --edit trunk/Manual/repository.xhtml + +This command takes all the repository documentation manual XHTML +output files, which have not been translated yet inside the +@file{trunk/Manual/repository.xhtml} directory, as input to produce +portable objects from them so as for you to localize translatable +strings to your prefered language (e.g., as specified by the +@env{LANG} environment variable). + +Once the portable objects have been created they are used to produce +the translated version of the manual in XHTML format under the +@file{trunk/Manual/repository.xml/LANG} directory, where @samp{LANG} +refers your prefered language. The translated version of the XHTML +files is produced using the @code{render} functionality of +@command{centos-art.sh} script (@pxref{Directories trunk Scripts +Functions Render}). + +When your prefered language is other but English, the +@command{centos-art.sh} script takes care of updating both the +portable objects and the translated version of files after you've +edited a manual documentation entry, using the @code{help} +functionality of @command{centos-art.sh} script (@pxref{Directories +trunk Scripts Functions Help}). In other situations, you need to do +these actions by yourself. + +@end table + +@subheading Author + +Written by Alain Reguera Delgado. + +@subheading Reporting bugs + +Report bugs to @email{centos-artwork@@centos.org} mailing list. + +@subheading Copyright + +Copyright @copyright{} 2009, 2010, 2011 The CentOS Project. + +This is free software. You may redistribute copies of it under the +terms of the GNU General Public License (@pxref{GNU General Public +License}). There is NO WARRANTY, to the extent permitted by law. + +@subheading See also + +@itemize +@item The GNU @command{gettext} tools documentation (@command{info gettext}) +@item The @command{xml2po} command documentation (@command{man xml2po}) +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Prepare.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Prepare.texinfo new file mode 100644 index 0000000..ea9f743 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Prepare.texinfo @@ -0,0 +1,305 @@ +@subheading Name + +The @code{prepare} functionality is part of the +@command{centos-art.sh} script and standardizes configuration of +preliminar steps you need to follow in order to get your workstation +ready for using a working copy of CentOS Artwork Repository. + +@subheading Synopsis + +@command{centos-art prepare [OPTIONS]} + +There is no need to specify @file{path/to/dir} information in this +functionality. Most actions are performed through options. + +The @code{prepare} functionality of centos-art.sh script accepts the +following options: + +@table @option + +@item --quiet + +Supress all output messages except error messages. When this option +is passed, all confirmation requests are supressed as well and a +possitive answer is assumed for them, just as if the +@option{--answer-yes} option had been provided. + +@item --answer-yes + +Assume @samp{yes} to all confirmation requests. + +@item --packages + +Install/update software packages required by the working copy of +CentOS Artwork Repository. + +The process of software installation takes place through @command{sudo +yum} and the repository configuration currently set in your +workstation. + +Most of the software packages required by the working copy of CentOS +Artwork Repository are available on The CentOS Distribution and can be +installed using The CentOS Distribution installation media. The only +exception is Inkscape, the program used to manipulate +@acronym{SVG,Scalable Vector Graphics} files in the working copy. + +The @file{inkscape} package isn't inside The CentOS Distribution or +any of The CentOS Project repositories neither, so you need to install +it from a third party repository like @samp{RPMForge} or @samp{EPEL}. +See page +@url{http://wiki.centos.org/AdditionalResources/Repositories/,The +CentOS Repositories}, to know how to configure third party +repositories in The CentOS Distribution. + +@item --link + +This option uses symbolic links to install/update the connection +between components inside the working copy and components outside the +working copy. Among the components that need to be connected figure +out the command-line internface of @command{centos-art.sh} script; +fonts, brushes, palettes and patterns used by programs like GIMP and +Inkscape; and configuration files of text editors. + +The main purpose of such connection is to adapt the working copy to +the CentOS Distribution filesystem layout (e.g., @file{~/bin} +directory is for storing personal programs, @file{~/gimp-2.2/brushes} +is for storing GIMP brushes for personal use, etc.) and, at the same +time, to provide a way of sharing changes made to connected components +to other workstations (e.g., if I update a GIMP brush in my +workstation, you'll receive the change the next you update your +working copy and then will be immediatly available for you to use in +GIMP). + +@item --environment + +Print the name and value of some of the environment variables used by +@command{centos-art.sh} scripts. + +@end table + +@subheading Description + +The @code{prepare} functionality of @command{centos-art.sh} script is +part of the CentOS Artwork Repository. So, in order to execute the +@code{prepare} functionality of @command{centos-art.sh} script you +need to have access to a working copy of CentOS Artwork Repository, +first. Working copies of CentOS Artwork Repository are downloaded +from the source repository and made available to you by mean of +workstations. A workstation is a computer that you install and +configure (prepare) to do something. In this case, you pick up a +computer and prepare it for working on the CentOS Artwork Repository. + +@subsubheading Installing the workstation + +Installing the workstation is the first step you need to do. In this +step you make your computer functional through an operating system. In +this case, The Community Enterprise Operating System; which is also +know as The CentOS Distribution or just CentOS, for short. + +To install The CentOS Distribution you need to have the installation +media somehow (e.g., CDs, DVDs, Pendrives, etc.). There are several +different ways to perform the installation process of CentOS +distribution, but generally, you put the installation media in your +media reader, boot the computer from it, and follow the installer +intructions. That simple. + +If you don't have the installation media of CentOS distribution, you +need to download the ISO files related to the media you plan to use +(e.g., CD or DVD) and then create the installation media by yourself. +The CentOS Distribution ISO files can be downloaded from +@url{http://mirrors.centos.org/} and, if you chosen CD or DVD as your +prefered installation medium, you can burn the ISO files using the +@command{K3B} application so as to create the installation media +you'll use. Of course, in order to download the ISO files and create +the installation media, you need to have an already installed CentOS +workstation where you can realized all the work. + +@subsubheading Configuring the workstation + +Once you've installed the workstation and it is up and running, login +as @samp{root} user, create a username (e.g., @samp{centos}) and set a +password for it. This is the username you must use for everyday work +inside your working copy of the CentOS Artwork Repository. + +@quotation +@strong{Caution} Do not use the @samp{root} username for your everyday +work inside the working copy of CentOS Artwork Repository. It is +dangerous and might provoke unreversable damages on your workstation. +@end quotation + +Once you've created the username for your everyday work, there are +some environment variables that you can customize to fit your personal +needs (e.g., default text editor, default locale information, default +time zone representation, etc.). To customize these variables you +need to edit your profile file (i.e., @file{~/.bash_profile}) and set +the redefinition there. Notice that you may need to logout and then +do login again in order for the new variable values to take effect. + +@table @strong +@item Default text editor: + +The default text editor information is contrlled by the @env{EDITOR} +environment variable. The @file{centos-art.sh} script uses the default +text editor to edit subversion pre-commit messages, translation files, +documentation files, script files, and similar text-based files. + +If @env{EDITOR} environment variable is not set, @file{centos-art.sh} +script uses @file{/usr/bin/vim} as default text editor. Otherwise, the +following values are recognized by @file{centos-art.sh} script: + +@itemize +@item @file{/usr/bin/vim} +@item @file{/usr/bin/emacs} +@item @file{/usr/bin/nano} +@end itemize + +If no one of these values is set in the @env{EDITOR} environment +variable, the @file{centos-art.sh} script uses @file{/usr/bin/vim} +text editor, the one installed by default in The CentOS Distribution. + +@item Default locale information: + +The default locale information is controlled by the @env{LANG} +environment variable. This variable is initially set in the +configuration process of CentOS distribution installer, specifically +in the @samp{Language} step; or once installed using the +@command{system-config-language} tool. + +The @command{centos-art.sh} script uses the @env{LANG} environment +variable to determine what language to use for printing output +messages. Another use of @env{LANG} variable inside +@command{centos-art.sh} script is to determine what translation file +to update or edit when input files are localized. + +@item Default time zone representation: + +The time zone representation is a time correction applied to the +system time (stored in the BIOS clock) based on your country location. +This correction is specially useful to distributed computers around +the world that work together and need to be syncronized in time to +know when things happened. + +The CentOS Artwork Repository is made of one server and several +workstations spread around the world. In order for all these +workstations to know when changes in the server took place, it is +required that they all set their system clocks to use the same time +information (i.e., @acronym{UTC,Coordinated Universal Time}) and set +the time correction for their specific countries in the operating +system. Otherwise, it would be difficult to know when something +exactly happened. + +Generally, setting the time information is a straight-forward task and +configuration tools provided by The CentOS Distribution do cover time +correction for most of the countries around the world. However, if +you need a time precision not provided by any of the date and time +configuration tools provided by The CentOS Distribution then, you need +to use the @env{TZ} environment variable to correct the time +information by yourself. The format of @env{TZ} environment variable +is described in @file{tzset(3)} manual page. +@end table + +@subsubheading Downloading the working copy + +Once you've configured the workstation, it is time to download the +working copy of CentOS Artwork Repository. + +To download the working copy of CentOS Artwork Repository you need to +login as your everyday work username (e.g., @samp{centos}) and use the +Subversion client to bring all the files you need to work with down +from the source location of CentOS Artwork Repository +(@url{https://projects.centos.org/svn/artwork/}) to your workstation, +just as the following command describes: + +@verbatim +svn co https://projects.centos.org/svn/artwork ~/ +@end verbatim + +This command will create the working copy of CentOS Artwork Repository +in your workstation, specifically in the @file{/home/centos/artwork} +directory. Note that you only need to execute this command once. +After that, to keep your working copy up to date, you use the +Subversion @command{update} command instead. + +@quotation +@strong{Tip} In the condition that you don't have Subversion client +installed in the workstation, then you can install it using the +command: + +@verbatim +sudo yum install subversion +@end verbatim +@end quotation + +@subsubheading Configuring the working copy + +Once you have a working copy of CentOS Artwork Repository in your +workstation, you can go and run the @code{prepare} functionality of +@command{centos-art.sh} script to realize the remaining configuration +stuff. + +Assuming this is the very first time you run the +@command{centos-art.sh} script, you'll find that there is no +@command{centos-art} command-line interface for it in your +workstation. This is correct. In order to have the +@command{centos-art} command-line in your workstation, you need to run +the @command{centos-art.sh} script using its absolute path: + +@verbatim +~/artwork/trunk/Scripts/centos-art.sh prepare [OPTIONS] +@end verbatim + +Assuming you've already run the @code{prepare} functionality +before, there is no need for you to use the absolute path again. +Instead, you can use the @command{centos-art} command-line interface +directly, as the following example describes: + +@verbatim +centos-art.sh prepare [OPTIONS] +@end verbatim + +Notice that you can execute the @code{prepare} functionality more than +once. This is specially useful to keep the link information +syncronized. For example, considering you've added new brushes to or +removed old brushes from your working copy of CentOS Artwork +Repository, the link information related to those files need to be +updated in the @file{~/.gimp-2.2/brushes} 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 components. + +@subheading Examples + +@table @command +@item centos-art prepare --packages --link +Preapare both links and packages required to use the working copy of +CentOS Artwork Repository in the workstation. If required packages are +already installed this command looks for updates instead. + +@item centos-art prepare --link --quiet +Update connection between the workstation and the working copy of +CentOS Artwork Repository, using no output. +@end table + +@subheading Author + +Written by Alain Reguera Delgado. + +@subheading Reporting bugs + +Report bugs to @email{centos-artwork@@centos.org} mailing list. + +@subheading Copyright + +Copyright @copyright{} 2009, 2010, 2011 The CentOS Project. + +This is free software. You may redistribute copies of it under the +terms of the GNU General Public License (@pxref{GNU General Public +License}). There is NO WARRANTY, to the extent permitted by law. + +@subheading See also + +@itemize +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Render.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Render.texinfo new file mode 100644 index 0000000..c55dbe4 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Render.texinfo @@ -0,0 +1,388 @@ +@subheading Name + +The @code{render} functionlity is part of @command{centos-art.sh} +script and standardizes rendition tasks inside the working copy of +CentOS Artwork Repository. + +@subheading Synopsis + +@command{centos-art render [OPTIONS] path/to/dir} + +The @file{path/to/dir} parameter specifies what directory structure +inside the working copy of CentOS Artwork Repository you want to +produce. + +The @code{render} functionality of @command{centos-art.sh} script +accepts the following options: + +@table @option +@item --quiet + +Supress all output messages except error messages. When this option +is passed, all confirmation requests are supressed as well and a +possitive answer is assumed for them, just as if the +@option{--answer-yes} option had been provided. + +@item --answer-yes + +Assume `yes' to all confirmation requests. + +@item --filter="REGEX" + +Reduce the list of files to process using @samp{REGEX} as pattern. +You can use this option in combination with @file{path/to/dir} in +order to control the amount of files you want to produce as +base-rendition. The deeper you go into the directory structure the +more specific you'll be about the component you want to produce. When +you cannot go deeper into the directory structure, you can use +@option{--filter} option to reduce the list of files. + +@item --dont-commit-changes + +Supress all commit and update actions realized over files, before and +after the action itself had took place over files in the working copy. + +@item --releasever="STRING" + +This option expands release-specific translation makers to +@samp{STRING}. Use this option when no releasae-specific information +can be retrived from the path of the directory structure you are +currently rendering. + +@item --basearch="STRING" + +This option expands architecture-specific translation makers to +@samp{STRING}. Use this option when no architecture-specific +information can be retrived from the path of the directory structure +you are currently rendering. + +@item --theme-model="STRING" + +Specify the name of the theme model you want to use to produce theme +artistic motifs. By default, if this option is not passed, the +@samp{Default} theme model is used as reference to produce theme +motifs. + +@item --post-rendition="STRING" + +This option let you apply a command as post-rendition action. In this +case, the @samp{STRING} represents the command string you want to +execute in order to perform in-place modifications to base-rendition +output. + +@item --last-rendition="STRING" + +This option let you apply a command as last-rendition action. In this +case, the @samp{STRING} represents the command string you want to +execute in order to perform in-place modifications to base-rendition, +post-rendition and directory-specific rendition outputs. + +@end table + +@subheading Description + +Inside the working copy of CentOS Artwork Repository, rendition tasks +take place inside renderable directories. Inside the @code{render} +functionality of @command{centos-art.sh} script, you can control +rendition tasks through different flows of rendition named +base-rendition, post-rendition, last-rendition and directory-specific +rendition. + +@subsubheading Renderable directories + +In order for a directory structure to be considered renderable, it +should have one directory structure for input files and one directory +structure for output files. Optionally, a third directory structure +might be available for storing translation files. + +Renderable directories are very tied to the way content is produced +inside the working copy of CentOS Artwork Repository. Presently, +content is produced through the following organizations: + +@table @strong +@item Direct rendition + +In direct rendition, there is one directory structure for input files +(@file{trunk/Identity/Models}) and one directory structure for output +files (e.g., @file{trunk/Identity/Images}). Optionally, a third +directory structure is available to store the input related +translation files (e.g., @file{trunk/Locales/Identity/Models}). + +In direct rendition, when the @code{render} functionality of +@command{centos-art.sh} script is executed, it uses the input +directory structure to build a list of files to process, which is used +as reference to determine the location of the translation file and the +location of the output file, as well. + +@item Theme-specific rendition + +In theme-specific rendition, there is one directory structure to store +input files (@file{trunk/Identity/Themes/Models}), one directory +structure to store translation files +(@file{trunk/Locales/Identity/Themes/Models/}), one directory +structure to store artistic motifs +(@file{trunk/Identity/Images/Themes}) and one directory structure to +store output files (@file{trunk/Identity/Images/Themes}). + +In theme-specific rendition, when the @code{render} functionality of +@command{centos-art.sh} script is executed, it uses the input +directory structure to build a list of files to process, which is used +as reference to determine the location of the translation file and the +location of the output file, as well. + +In contrast with direct rendition, when we use theme-specific +rendition, it is possible to combine both design models and artistic +motifs to produce output in an arbitrary way. This configuration is +specially interesting because it is possible to create different +artistic motifs and one unique design model in order to produce one +unique theme structure with different visual styles. Or the opposite, +to create different theme structures and apply one unique visual style +to produce one unique visual styles on different theme structure. Or +even get a bit farther and experiment with arbitrary combinations +among them all. + +@end table + +In both direct and theme-specific rendition, if the location where the +output file should be stored doesn't exist, the @code{render} +functionality of @command{centos-art.sh} script will create it for +you. + +In both direct and theme-specific rendition, if the input related +translation file doesn't exist, the @code{render} functionality of +@command{centos-art.sh} script will produce the output in the same +language of its input file. + +@subsubheading The base-rendition flow + +The base-rendition flow takes place immediatly after executing the +@code{render} functionality of @command{centos-art.sh} script. The +base-rendition produces different outputs from one unique input format +(i.e., one input file is used to produce one ore more output files). +When translation files are available for input files, the +base-rendition applies the translation file to the input file in order +to produce a translated instance of it, then this translated instance +is used as input file to produce one or more output files. + +The base-rendition flow processes input files using design model file +extensions and backend-specific functionalities as reference. When you +try to render a location in the repository, a list of supported file +extensions is evaluated and a list of files to process is built for +each supported extension. Later, each list of files is processed using +functionalities from a specific backend. Backend-specific +functionalities group the function files needed to perform the +specific tasks related to one file extension (e.g., when design model +is a SVG file, the @samp{svg} backend-specific functionalities are +loaded to process the design model. Likewise, when design model is a +DocBook file, the @samp{docbook} backend-specific functionalities are +loaded to process the design model file). There is no need to load +@samp{docbook} backend-specific functionalities when SVG files are +rendered, nor the opposite. + +The base-rendition flow uses XML files as input (e.g., SVG or DocBook) +and @acronym{PO,Portable Objects} as translation files. The format +produced as output depends on the input file provided (e.g., when the +input format is a SVG file, the base output is a PNG file; when the +input format is a DocBook file the base output is PDF and XHTML.). + +As application example of base-rendition flow, consider the +description of the following sections: + +@itemize +@item @ref{Directories trunk Identity Models Themes Default Distro 5 +Anaconda} +@item @ref{Directories trunk Manuals} +@end itemize + +@subsubheading The post-rendition flow + +The post-rendition flow is performed immediatly after base-rendition +flow to extend the base-rendition flow by applying transformations or +in-place modifications to base-rendition output. In-place +modifications can be performed either through the +@option{--post-rendition} command-line option of +@command{centos-art.sh} script or through directory-specific +rendition. + +Actions commanded through @option{--post-rendition} option are applied +first and directory-specific actions later. This order is required to +propagate in-place changes commited to base-rendition output to +modified copies (i.e., new files) of it created through +directory-specific rendition. Creation of modified copies is +something specific to directory-specific rendition only. It is not +possible for the @option{--post-rendition} option to create modified +copies of base-rendition output because commands passed through it are +applied to the base-rendition output file directly in a disposition +that don't support creation of new files, but in-place modifications +only. + +The command passed to @option{--post-rendition} option can be changed +everytime you run the @command{centos-art.sh} script, but actions +specified in directory-specific rendition cannot be changed in the +same way. Direcctory-specific rendition is set inside +@command{centos-art.sh} script to perform specific tasks that cannot +be achived through @option{--post-rendition} option. + +As application example of post-rendition flow, consider the +description of the following sections: + +@itemize +@item @ref{Directories trunk Identity Models Themes Default Distro 5 +Syslinux} +@item @ref{Directories trunk Identity Models Themes Default Distro 5 +Grub} +@end itemize + +@subsubheading The last-rendition flow + +The last-rendition flow takes place after post-rendition and applies +transformations or in-place modifications to all files produced as +result of both base-rendition and post-rendition flows in the same +directory structure, just before passing to process a different +directory structure. In-place modifications can be performed either +through the @option{--last-rendition} command-line option of +@command{centos-art.sh} script or through directory-specific +rendition. + +Actions commanded through @option{--last-rendition} option are applied +after directory-specific actions. This order is required to prevent +last-rendition actions commanded from directory-specifc rendition to +overlap last-rendition actions commanded from +@option{--last-rendition} option. + +The command passed to @option{--last-rendition} option can be changed +everytime you run the @command{centos-art.sh} script, but actions +specified in directory-specific rendition cannot be changed in the +same way. Actions commanded from directory-specific rendition are set +inside @command{centos-art.sh} script to perform specific tasks that +cannot be achived through @option{--last-rendition} option. + +As application example of last-rendition flow, consider the +description of the following sections: + +@itemize +@item @ref{Directories trunk Identity Models Themes Default Distro 5 +Ksplash} +@item @ref{Directories trunk Identity Models Themes Default Distro 5 +Gdm} +@end itemize + +@subsubheading The directory-specific rendition flow + +Inside the working copy of CentOS Artwork Repository, some directory +structure (e.g., @file{Syslinux}, @file{Gurb}, @file{Gdm}, @file{Kdm} +and @file{KSplash}) required more than base-rendition or even the +commands you could pass through the @option{--post-rendition} and +@option{--last-rendition} options, in order for their final files to +be produced. In these situations, we make use of directory-specific +rendition flow. + +The directory-specific rendition flow applies specific actions to +specific directory structures when they enter into the rendition flow. +Using this configuration speeds up production of all those components +that require intermediate formats or even several independent files, +in order for the final content to be created. + +The directory-specific rendition flow is generally used in combination +with post-rendition and last-rendition flows inside +@command{centos-art.sh} script. + +@subsubheading Translations + +To translate output files, the @code{render} functionality of +@command{centos-art.sh} script creates a translated instance of the +input file and uses it then to create the base output file. The +translated instance is created using the related translation messages +of the input file. Translation messages are stored under +@file{trunk/Locales} and are created using the @code{locale} +functionality of @command{centos-art.sh} script (@pxref{Directories +trunk Scripts Functions Locale}). + +Translation files are optional. When no translation file is available +for the input file, the base-rendition output is produced using the +same language of the input file. + +@subheading Examples + +@table @command +@item centos-art render trunk/Identity/Images/Brands + +This command produces all branding information related to The CentOS +Project (e.g., symbols, logos and variants of them). + +@item centos-art render trunk/Identity/Images/Brands --filter="symbol" + +This command produces all branding information, related to The CentOS +Project, which file names contain the @samp{symbol} string on it. + +@item centos-art render trunk/Identity/Images/Themes/Flame/2 + +This command produces all visual manifestations related to version 2 of +Flame artistic motif (e.g., Distribution, Posters, etc.) as specified +by default design models. + +@item centos-art render trunk/Identity/Images/Themes/Flame/2/Distro + +This command produces the Distribution visual manifestations related +to version 2 of Flame artistic motif (e.g., Anaconda, Syslinux, Grub, +Firstboot, Gdm, Kdm, Gsplash, Ksplash, and Rhgb) as specified by +default design models. + +@item centos-art render trunk/Identity/Images/Themes --filter='Distro/5/Anaconda' + +This command produces all the images related to Anaconda component +from Distribution visual manifestations on its major release number +five, for all the artistic motifs available and as specified by +default design models. + +@item centos-art render trunk/Identity/Images/Themes --filter='Concept' --post-rendition='mogrify -normalize' + +This command produces all the images related to Concept component from +all artistic motifs as specified by default design models. Moreover, +the @command{mogrify -normalize} command is applied to each PNG image +produced as result of the base-rendition output. + +@quotation +@strong{Note} The @command{mogrify} command is part of +ImageMagick@registeredsymbol{} software suite and let you to resize an +image, blur, crop, despeckle, dither, draw on, flip, join, re-sample, +and much more. The ImageMagick@registeredsymbol{} software suite is +copyrighted to +@url{http://redux.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi, +ImageMagick Studio LLC}, a non-profit organization dedicated to making +software imaging solutions freely available. + +@end quotation + +@item centos-art render trunk/Manuals/Repository --filter="repository" --dont-commit-changes + +This command produces the repository documetnation manual in PDF, +XHTML and Text format. + +@end table + +@subheading Author + +Written by Alain Reguera Delgado. + +@subheading Reporting bugs + +Report bugs to @email{centos-artwork@@centos.org} mailing list. + +@subheading Copyright + +Copyright @copyright{} 2009, 2010, 2011 The CentOS Project. + +This is free software. You may redistribute copies of it under the +terms of the GNU General Public License (@pxref{GNU General Public +License}). There is NO WARRANTY, to the extent permitted by law. + +@subheading See also + +@itemize +@item The ImageMagick@registeredsymbol{} software suite documentation +(@command{rpm -qd ImageMagick | less}). +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Tuneup.texinfo b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Tuneup.texinfo new file mode 100755 index 0000000..2b6845d --- /dev/null +++ b/Manuals/RepoReferences/en_US/Directories/trunk/Scripts/Functions/Tuneup.texinfo @@ -0,0 +1,190 @@ +@subheading Name + +The @code{tuneup} functionlity is part of @command{centos-art.sh} +script and standardizes tasks related to file maintainance inside the +working copy of CentOS Artwork Repository. + +@subheading Synopsis + +@command{centos-art tuneup [OPTIONS] path/to/dir} + +The @file{path/to/dir} parameter specifies what directory structure +inside the working copy of CentOS Artwork Repository you want to +process. + +The @code{tuneup} functionality of @command{centos-art.sh} script +accepts the following options: + +@table @option +@item --quiet + +Supress all output messages except error messages. When this option +is passed, all confirmation requests are supressed as well and a +possitive answer is assumed for them, just as if the +@option{--answer-yes} option had been provided. + +@item --answer-yes + +Assume `yes' to all confirmation requests. + +@item --filter="REGEX" + +Reduce the list of files to process using @samp{REGEX} as pattern. +You can use this option in combination with @file{path/to/dir} in +order to control the amount of files you want to produce as +base-rendition. The deeper you go into the directory structure the +more specific you'll be about the component you want to produce. When +you cannot go deeper into the directory structure, you can use +@option{--filter} option to reduce the list of files. + +@item --dont-commit-changes + +Supress all commit and update actions realized over files, before and +after the action itself had took place over files in the working copy. + +@end table + +@subheading Description + +Tasks related to file maintainance are repetitive. You might find +yourself doing them time after time inside the working copy of CentOS +Artwork Repository. Some of these maintainance tasks do update top +comments on shell scripts, create table of contents for web pages, +update metadata related to design models and remove unused definitions +from design models. + +When you execute the @code{tuneup} functionality of +@command{centos-art.sh} script, it looks for all files that match the +supported extensions (e.g., @file{.sh}, @file{.svg} and @file{.xhtml}) +in the directory specified, builds a list with them and applies the +maintainance tasks using file extensions as reference. + +@subsubheading Maintaining @file{.sh} files + +If shell scripts are found, the @code{tuneup} functionality of +@command{centos-art.sh} script reads a comment template from +@file{trunk/Scripts/Functions/Prepare/Config/shell_topcomment.sed} and +applies it to shell scripts found, one by one. As result, all shell +scripts will end up having the same copyright and license information +the comment template does. + +In order for the shell script top comment template to be applied +correctly, the shell scripts you write must have the following +structure: + +@verbatim + 1| #!/bin/bash + 2| # + 3| # doSomething.sh -- The function description goes here. + 4| # + 5| # Copyright + 6| # + 7| # ... + 8| # + 9| # ---------------------------------------------------------------------- +10| # $Id$ +11| # ---------------------------------------------------------------------- +12| +13| function doSomething { +14| +15| } +@end verbatim + +The @code{tuneup} functionality of @command{centos-art.sh} script +replaces all lines between the @samp{Copyright} line (e.g., line 5) +and the first separator line (e.g., line 9), inclusively. Everything +else in the file will remain immutable. + +@subsubheading Maintaining @file{.svg} files + +If scalable vector graphics are found, the @code{tuneup} functionality +reads a metadata template +(@file{trunk/Scripts/Functions/Tuneup/Config/svg_metadata.sed}) and +applies it to all files found, one by one. Immediatly after the +metadata template has been applied and, before passing to next file, +all unused definition are removed from file, too. + +The metadata we apply from the metadata template is created dynamicaly +combining the file absolute path, the workstation time information and +the @command{centos-art.sh} script copyright holder information as +reference. Additionally, the @emph{Creative Common +Distribution-ShareAlike 3.0 License} is also set in the metadata. + +The elimination of unused definitions inside SVG files takes place +through the @option{--vacuum-defs} option of @command{inkscape} +command-line interface which is described in its man page +(@command{man inkscape}). + +@subsubheading Maintaining @file{.xhtml} files + +If web pages are found, the @code{tuneup} functionality of +@command{centos-art.sh} script transforms web page headings to make +them accessible through a table of contents. The table of contents is +expanded in place, wherever the @code{
} piece +of code be in the page. + +Once the @code{
} piece of code has be expanded, +there is no need to put anything else in the page. You can run the +@code{tuneup} functionality everytime you update the heading +information so as to update the table of contents, too. + +In order for the @code{tuneup} functionality of +@command{centos-art.sh} script to transform headings, you need to put +headings in just one line using one of the following forms: + +@verbatim +

Title

+

Title

+

Title

+@end verbatim + +In the example above, h1 can vary from h1 to h6. Closing tag must be +present and also match the openning tag. The value of @option{name} +and @option{href} options from the anchor element are set dynamically +using the md5sum output of combining the page location, the +@code{head-} string and the heading string. If any of the components +used to build the heading reference changes, you need to run the the +@code{tuneup} functionality of @command{centos-art.sh} script in order +for the anchor elements to use the correct information. + +@subheading Examples + +@table @command +@item centos-art tuneup trunk/Scripts + +Update the copyright and license notice of all the shell scripts we +have in @file{trunk/Scripts} directory structure. + +@item centos-art tuneup trunk/Identity/Models/Brands --filter="symbol" +Update metadata and remove unused definitions from all design models +in @file{trunk/Identity/Models/Brands} which have the word +@samp{symbol} in the file name. + +@item centos-art tuneup trunk/Identity/Webenv/App/Home +Update headings and the related table of contents to all web pages +inside @file{trunk/Identity/Webenv/App/Home}, recusively. +@end table + +@subheading Author + +Written by Alain Reguera Delgado. + +@subheading Reporting bugs + +Report bugs to @email{centos-artwork@@centos.org} mailing list. + +@subheading Copyright + +Copyright @copyright{} 2009, 2010, 2011 The CentOS Project. + +This is free software. You may redistribute copies of it under the +terms of the GNU General Public License (@pxref{GNU General Public +License}). There is NO WARRANTY, to the extent permitted by law. + +@subheading See also + +@itemize +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Introduction/authors.texinfo b/Manuals/RepoReferences/en_US/Introduction/authors.texinfo new file mode 100755 index 0000000..f62bdd3 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/authors.texinfo @@ -0,0 +1,41 @@ +This section records authoring information of CentOS Artwork +Repository along the years: + +@subheading Graphic Design + +@itemize +@item Guideon de Kok +@item @email{al@@art.centos.org,Alain Reguera Delgado} +@item @email{mm@@art.centos.org,Marcus Moeller} +@end itemize + +@subheading Documentation + +@itemize +@item @email{al@@art.centos.org,Alain Reguera Delgado} +@item @email{ralph@@dev.centos.org,Ralph Angenendt} +@end itemize + +@subheading Localization + +@itemize +@item @email{al@@art.centos.org,Alain Reguera Delgado} (Spanish) +@end itemize + +@subheading Automation + +@itemize +@item @email{al@@art.centos.org,Alain Reguera Delgado} +@end itemize + +@subheading Infrastructure +@itemize +@item @email{karan@@dev.centos.org,Karanbirn Singh} +@item @email{ralph@@dev.centos.org,Ralph Angenendt} +@end itemize + +@subheading Packaging +@itemize +@item @email{karan@@dev.centos.org,Karanbirn Singh} +@item @email{ralph@@dev.centos.org,Ralph Angenendt} +@end itemize diff --git a/Manuals/RepoReferences/en_US/Introduction/chapter-intro.texinfo b/Manuals/RepoReferences/en_US/Introduction/chapter-intro.texinfo new file mode 100644 index 0000000..96fb6b2 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/chapter-intro.texinfo @@ -0,0 +1,21 @@ +Welcome to CentOS Artwork Repository Manual. + +The CentOS Artwork Repository Manual describes how The CentOS Project +Corporate Visual Identity is organized and produced inside the CentOS +Artwork Repository (@url{https://projects.centos.org/svn/artwork/}). +If you are looking for a comprehensive, task-oriented guide for +understanding how The CentOS Project Corporate Visual Identity is +produced, this is the manual for you. + +This manual discusses the following intermedite topics: + +@itemize +@item The CentOS Brand +@item The CentOS Corporate Visual Structure +@item The CentOS Corporate Visual Style +@end itemize + +This guide assumes you have a basic understanding of your CentOS +system. If you need help with CentOS, refer to the help page on the +CentOS Wiki (@url{http://wiki.centos.org/Help}) for a list of +different places you can find help. diff --git a/Manuals/RepoReferences/en_US/Introduction/chapter-menu.texinfo b/Manuals/RepoReferences/en_US/Introduction/chapter-menu.texinfo new file mode 100644 index 0000000..39781c3 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/chapter-menu.texinfo @@ -0,0 +1,8 @@ +@menu +* History:: +* Authors:: +* Copying Conditions:: +* Document Convenctions:: +* Repository Convenctions:: +* Feedback:: +@end menu diff --git a/Manuals/RepoReferences/en_US/Introduction/chapter-nodes.texinfo b/Manuals/RepoReferences/en_US/Introduction/chapter-nodes.texinfo new file mode 100644 index 0000000..dff1350 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/chapter-nodes.texinfo @@ -0,0 +1,30 @@ +@node History +@section History +@cindex History +@include Introduction/history.texinfo + +@node Authors +@section Authors +@cindex Authors +@include Introduction/authors.texinfo + +@node Copying Conditions +@section Copying Conditions +@cindex Copying conditions +@include Introduction/copying.texinfo + +@node Document Convenctions +@section Document Convenctions +@cindex Document convenctions +@include Introduction/doc-convenctions.texinfo + +@node Repository Convenctions +@section Repository Convenctions +@cindex Repository convenctions +@include Introduction/repo-convenctions.texinfo + +@node Feedback +@section Send in Your Feedback +@cindex Feedback +@include Introduction/feedback.texinfo + diff --git a/Manuals/RepoReferences/en_US/Introduction/chapter.texinfo b/Manuals/RepoReferences/en_US/Introduction/chapter.texinfo new file mode 100644 index 0000000..de11d5f --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/chapter.texinfo @@ -0,0 +1,6 @@ +@node Introduction +@chapter Introduction +@cindex Introduction +@include Introduction/chapter-intro.texinfo +@include Introduction/chapter-menu.texinfo +@include Introduction/chapter-nodes.texinfo diff --git a/Manuals/RepoReferences/en_US/Introduction/copying.texinfo b/Manuals/RepoReferences/en_US/Introduction/copying.texinfo new file mode 100755 index 0000000..b8dc0f2 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/copying.texinfo @@ -0,0 +1,89 @@ +Copyright @copyright{} 2009, 2010, 2011 The CentOS Project. + +Everyone is permitted to copy and distribute verbatim copies of this +license document, but changing it is not allowed. + +@subheading Preamble + +The CentOS Artwork Repository organizes files in a very specific way +to implement The CentOS Project corporate visual identity. This very +specific organization of files is part of @command{centos-art.sh} +script, a bash script that automate most of the frequent tasks inside +the repository. + +The @command{centos-art.sh} script and the organization of files it +needs to work are not in the public domain; they are copyrighted and +there are restrictions on their distribution, but these restrictions +are designed to permit everything that a good cooperating citizen +would want to do. What is not allowed is to try to prevent others +from further sharing any version of this program that they might get +from you. + +Specifically, we want to make sure that you have the right to give +away copies of @command{centos-art.sh} script, that you receive source +code or else can get it if you want it, that you can change this +program or use pieces of it in new free programs, and that you know +you can do these things. + +To make sure that everyone has such rights, we have to forbid you to +deprive anyone else of these rights. For example, if you distribute +copies of the @command{centos-art.sh} script, you must give the +recipients all the rights that you have. You must make sure that +they, too, receive or can get the source code. And you must tell them +their rights. + +Also, for our own protection, we must make certain that everyone finds +out that there is no warranty for the @command{centos-art.sh} script. +If this program is modified by someone else and passed on, we want +their recipients to know that what they have is not what we +distributed, so that any problems introduced by others will not +reflect on our reputation. + +The centos-art.sh script is released as a GPL work. Individual +packages used by centos-art.sh script include their own licenses and +the centos-art.sh script license applies to all packages that it does +not clash with. If there is a clash between the centos-art.sh script +license and individual package licenses, the individual package +license applies instead. + +The precise conditions of the license for the @command{centos-art.sh} +script are found in the General Public Licenses (@pxref{GNU General +Public License}). This manual specifically is covered by the GNU Free +Documentation License (@pxref{GNU Free Documentation License}). + +@subheading 1. The CentOS Brand + +The CentOS Brand (@pxref{Directories trunk Identity Models Brands}) is +the main visual manifestaion of The CentOS Project. The CentOS Project +uses The CentOS Brand to connect all its visual manifestions (e.g., +GNU/Linux Distributions, Websites, Stationery, etc.) and, this way, it +provides recognition among other similar projects. + +Both The CentOS Brand and all the visual manifestations that derivate +from it are available for you to study and propose improvement around +a good citizen's will at The CentOS Community environment, but you are +not allowed to redistribute them elsewhere, without the given +permission of The CentOS Project. + +If you need to redistribute either The CentOS Brand or any the visual +manifestatinos that derivate from it, write your intentions to the +@email{centos-devel@@centos.org} mailing list. + +@subheading 2. The CentOS Artwork SIG + +The CentOS Artwork @acronym{SIG,Special Interest Group} is a group +inside The CentOS Project. The CentOS Artwork SIG produces The CentOS +Project corporate visual identity through image files, mainly. On the +other hand, The CentOS Project produces The CentOS Distribution and +uses the image files produced by The CentOS Artwork SIG to cover the +artwork needs inside The CentOS Distirbution and other corporate +visual manifestations like web sites and showrooms. + +The contents produced by The CentOS Artwork SIG (e.g., graphic +desings, documentaion, scripts and translations) are copyright of The +CentOS Artwork SIG and the content produced by The CentOS Project +(e.g., The CentOS Distribution) is copyright of The CentOS Project. + +The content produced by The CentOS Project and The CentOS Artwork SIG +are both released as a GPL work in order for them to integrate one +another. diff --git a/Manuals/RepoReferences/en_US/Introduction/doc-convenctions.texinfo b/Manuals/RepoReferences/en_US/Introduction/doc-convenctions.texinfo new file mode 100644 index 0000000..9a9cca6 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/doc-convenctions.texinfo @@ -0,0 +1,109 @@ +In this manual the personal pronoun @emph{we} is used to repesent +@emph{The CentOS Artwork SIG}. This is, the group of persons building +the CentOS Artwork Repository. + +In this manual, certain words are represented in different fonts, +typefaces, sizes, and weights. This highlighting is systematic; +different words are represented in the same style to indicate their +inclusion in a specific category. The types of words that are +represented this way include the following: + +@table @command +@item command + +Linux commands (and other operating system commands, when used) are +represented this way. This style should indicate to you that you can +type the word or phrase on the command line and press Enter to invoke +a command. Sometimes a command contains words that would be displayed +in a different style on their own (such as file names). In these +cases, they are considered to be part of the command, so the entire +phrase is displayed as a command. For example: + +Use the @command{centos-art identity --render='path/to/dir'} command +to produce contents inside the @file{trunk/Identity} directory +structure. +@end table + +@table @file +@item file name + +File names, directory names, paths, and RPM package names are +represented this way. This style indicates that a particular file or +directory exists with that name on your system. Examples: + +The @file{init.sh} file in @file{trunk/Scripts/Bash/Cli/} directory is +the initialization script, written in Bash, used to automate most of +tasks in the repository. + +The @command{centos-art} command uses the @file{ImageMagick} RPM +package to convert images from PNG format to other formats. +@end table + +@table @key +@item @key{key} + +A key on the keyboard is shown in this style. For example: + +To use @key{TAB} completion to list particular files in a directory, +type @command{ls}, then a character, and finally the Tab key. Your +terminal displays the list of files in the working directory that +begin with that character. +@end table + +@table @key +@item @key{key-combination} +A combination of keystrokes is represented in this way. For example: + +The @key{Ctrl-Alt-Backspace} key combination exits your graphical +session and returns you to the graphical login screen or the console. +@end table + +@table @code +@item @code{computer output} + +Text in this style indicates text displayed to a shell prompt such as +error messages and responses to commands. For example: + +The @command{ls} command displays the contents of a directory. For example: + +@verbatim +Config help_renameEntry.sh +help_copyEntry.sh help_restoreCrossReferences.sh +help_deleteCrossReferences.sh help_searchIndex.sh +@end verbatim + +The output returned in response to the command (in this case, the +contents of the directory) is shown in this style. +@end table + +Additionally, we use several different strategies to draw your +attention to certain pieces of information. In order of urgency, these +items are marked as a note, tip, important, caution, or warning. For +example: + +@quotation +@strong{Note} Remember that Linux is case sensitive. In other words, a +rose is not a ROSE is not a rOsE. +@end quotation + +@quotation +@strong{Tip} The directory @file{/usr/share/doc/} contains additional +documentation for packages installed on your system. +@end quotation + +@quotation +@strong{Important} If you modify the DHCP configuration file, the +changes do not take effect until you restart the DHCP daemon. +@end quotation + +@quotation +@strong{Caution} Do not perform routine tasks as root --- use a +regular user account unless you need to use the root account for +system administration tasks. +@end quotation + +@quotation +@strong{Warning} Be careful to remove only the necessary partitions. +Removing other partitions could result in data loss or a corrupted +system environment. +@end quotation diff --git a/Manuals/RepoReferences/en_US/Introduction/feedback.texinfo b/Manuals/RepoReferences/en_US/Introduction/feedback.texinfo new file mode 100644 index 0000000..1c7f597 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/feedback.texinfo @@ -0,0 +1,9 @@ +If you find an error in the @emph{CentOS Artwork Repository}, or if +you have thought of a way to make this manual better, we would like to +hear from you! Share your suggestions in the appropriate mailing list +(@url{http://lists.centos.org/}) and/or bug tracker +(@url{http://bugs.centos.org/}). + +When you make suggestion, try to be as specific as possible. For +example, if you have found an error in the manual, include the section +number and some of the surrounding text so we can find it easily. diff --git a/Manuals/RepoReferences/en_US/Introduction/history.texinfo b/Manuals/RepoReferences/en_US/Introduction/history.texinfo new file mode 100755 index 0000000..d96b914 --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/history.texinfo @@ -0,0 +1,139 @@ +This section records noteworthy changes of CentOS Artwork Repository +through years. + +@subheading 2008 + +The CentOS Artwork Repository started at CentOS Developers mailing +(@email{centos-devel@@centos.org}) during a discussion about how +to automate the slide images of Anaconda. In such discussion, Ralph +Angenendt rose up his hand to ask: Do you have something to show? + +To answer the question, Alain Reguera Delgado suggested a bash script +which combined SVG and SED files in order to produce PNG images in +different languages ---together with the proposition of creating a +Subversion repository where translations and image production could be +distributed inside The CentOS Community---. + +Karanbirn Sighn considered the idea intresting and provided the +infrastructure necessary to support the effort. This way the CentOS +Artwork SIG (@url{https://projects.centos.org/trac/artwork/}) and the +CentOS Artwork Repository +(@url{https://projects.centos.org/svn/artwork/}) were officially +created. + +Once the CentOS Artwork Repository was available, Alain Reguera +Delagdo uploaded the bash script for rendering Anaconda slides; Ralph +Angenendt documented it very well; and people started to download +working copies of CentOS Artwork Repository to produce slide images in +their own languages. + +@subheading 2009 + +The rendition script was at a very rustic state where only slide +images could be produced, so it was redesigned to extend the image +production to other areas, not just slide images. In this +configuration, one SVG file was used as input to produce a translated +instance of it which, in turn, was used to produce one translated PNG +image as output. The SVG translated instance was created through SED +replacement commands. The translated PNG image was created from the +SVG translated instance using Inkscape command-line interface. + +The rendition script was named @command{render.sh}. + +The repository directory structure was prepared to receive the +rendition script using design templates and translation files in the +same location. There was one directory structure for each artwork +that needed to be produced. In this configuration, if you would want +to produce the same artwork with a different visual style or +structure, it was needed to create a new directory structure for it +because both the image structure and the image visual style were +together in the design template. + +The rendition script was moved to a common place and linked from +different directory structures. There was no need to have the same +code in different directory structures if it could be in just one +place and then be linked from different locations. + +The concepts about corporate identity began to be considered. As +referece, it was used the book ``Corporate Identity'' by Wally Olins +(1989) and Wikipedia +(@url{http://en.wikipedia.org/Corporate_identity}). This way, the +rendition script main's goal becomes to: automate production of a +monolithic corporate visual identity structure, based on the mission +and the release schema of The CentOS Project. + +The directory structures started to be documented inside the +repository using text files without markup. Later, documentation in +flat text files was moved to LaTeX format and this way ``The CentOS +Artwork Repository Manual'' started to take form. + +@subheading 2010 + +The rendition script changed its name from @command{render.sh} to +@command{centos-art.sh} and became a collection of functionalities +where rendition was just one among others (e.g., documenting and +localizing). + +The @command{centos-art.sh} was created to organize automation of most +frequent tasks inside the repository. There was no need to have links +all around the repository if a command-line interface could be created +(through symbolic links, in the @file{~/bin} directory) and be called +anywhere inside the repository as it would be a regular command. + +Inside @command{centos-art.sh}, functionalities started to get +identified and separated one another. For example, when images were +rendered, there was no need to load functionalities related to +documentation manual. This layout moved us onto common functionalities +and specific functionalities inside @command{centos-art.sh} script. +Common functionalities are loaded when @command{centos-art.sh} script +is initiated and are available to specific functionalities. + +The @command{centos-art.sh} script was redesigned to handle +command-line options trough @command{getopt} option parser. + +The repository directory structure was updated to improve the +implementation of concepts related to corporate visual identity. +Specially in the area related to themes which were divided into +``design models'' and ``artistic motifs'' to eliminate the content +duplication produced by having both image structure and image visual +style in the same file. Now, themes are produced as result of +arbitrary combinations of both design models (structures) and artistic +motifs (visual styles). + +In the documentation area, the documentation files in LaTeX format +were migrated to Texinfo format. In this configuration, each +directory structure in the repository has a documentation entry +associated in a Texinfo structure which can be read, edited and +administered (e.g., renamed, deleted, copied) interactively throuch +@command{centos-art.sh}. Additionally, the @command{texi2html} program +was used to produced XHTML output customized by CSS from The CentOS +Webenv. + +@subheading 2011 + +The @command{centos-art.sh} script was redesigned to start translating +SVG and other XML-based files (e.g., XHTML and Docbook files) through +the @command{xml2po} program and shell scripts files (e.g., Bash +scripts) through GNU @command{gettext} tools. This configuration +provided a stronger interface for graphic designers, translators and +programmers to produce localized content. The SED files are no longer +used to handle translations. + +Improve option parsing through @command{getopt}. + +Consolidate the @code{render}, @code{help} and @code{locale} +functionalities as the most frequent tasks performed inside the +repository. Additionally, the @code{prepare} and @code{tuneup} +functionalities are maintained as useful tasks. + +The @command{centos-art.sh} script is updated to organize +functionalities in two groups: ``the administrative functionalities'' +and ``the productive functionalities''. The administrative +functionalities cover actions like: copying, deleting and renaming +directory structures inside the repository. Also, preparing your +workstation for using @command{centos-art.sh} script, making +backups of the distribution theme currently installed, installing +themes created inside repository and restoring themes from backup. On +the other hand, the productive functionalities cover actions like: +content rendition, content localization, content documentation and +content maintainance. diff --git a/Manuals/RepoReferences/en_US/Introduction/repo-convenctions.texinfo b/Manuals/RepoReferences/en_US/Introduction/repo-convenctions.texinfo new file mode 100644 index 0000000..48b2fae --- /dev/null +++ b/Manuals/RepoReferences/en_US/Introduction/repo-convenctions.texinfo @@ -0,0 +1,537 @@ +The CentOS Artwork Repository is supported by Subversion +(@url{http://subversion.tigris.org/}), a version control system which +allows you to keep old versions of files and directories (usually +source code), keep a log of who, when, and why changes occurred, etc., +like CVS, RCS or SCCS. + +When using Subversion there is one @emph{source repository} and many +@emph{working copies} of that source repository. The working copies +are independent one another, can be distributed all around the world +and provide a local place for designers, documentors, translators and +programmers to perform their works in a descentralized way. The +source repository, on the other hand, provides a central place for all +independent working copies to interchange data and provides the +information required to permit extracting previous versions of files +at any time. + +@subsection Repository policy +@cindex Repository policy + +The CentOS Artwork Repository is a collaborative tool that anyone can +have access to. However, changing that tool in any form is something +that should be requested in @email{centos-devel@@centos.org} mailing +list. Generally, people download working copies from CentOS Artwork +Repository, study the repository organization, make some changes in +their working copies, make some tests to verify such changes do work +the way expected and finally request access to commit them up to the +CentOS Artwork Repository (i.e., the source repository) for others to +benefit from them. + +Once you've received access to commit your changes, there is no need +for you to request permission again to commit other changes from your +working copy to CentOS Artwork Repository as long as you behave as a +@emph{good community citizen}. + +As a good community citizen one understand of a person who respects +the work already done for others and share ideas with authors before +changing relevant parts of their work, specially in situations when +the access required to realize the changes has been granted already. +Of course, there is a time when conversation has taken place, the +paths has been traced and changing the work is so obvious that there +is no need for you to talk about it; that's because you already did, +you already built the trust to keep going. Anyway, the mailing list +mentioned above is available for sharing ideas in a way that good +relationship between community citizens could be constantly balanced. + +The relationship between community citizens is monitored by repository +administrators. Repository administrators are responsible of granting +everything goes the way it needs to go in order for the CentOS Artwork +Repository to comply its mission which is: to provide a colaborative +tool for The CentOS Community where The CentOS Project Corporate +Identity is built and maintained from The CentOS Community itself. + +It is also important to remember that all source files inside CentOS +Artwork Repository should comply the terms of GNU General Public +License (@pxref{GNU General Public License}) in order for them to +remain inside the repository. + +@subsection Repository organization +@cindex Repository organization + +The CentOS Artwork Repository uses a @file{trunk}, @file{branches}, +and @file{tags} organization. + +@table @file +@item trunk + +The @file{trunk} directory organizes the main development line of +CentOS Artwork Repository. @xref{Directories trunk}, for more +information. + +@item branches + +The @file{branches} directory oranizes intermediate development lines +taken from the main development line. @xref{Directories branches}, +for more information. + +@item tags + +The @file{tags} directory organizes frozen development lines taken +either from the main or the intermediate lines of development. +@xref{Directories tags}, for more information. +@end table + +@subsection Repository file names +@cindex Repository file names + +Inside the CentOS Artwork Repository, file names are all written in +lowercase (e.g., @samp{01-welcome.png}, @samp{splash.png}, +@samp{anaconda_header.png}, etc.) and directory names are all written +capitalized (e.g., @samp{Identity}, @samp{Themes}, @samp{Motifs}, +@samp{TreeFlower}, etc.). + +@subsection Repository work lines + +Inside CentOS Artwork Repository there are four major work lines of +production which are: @emph{graphic design}, @emph{documentation}, +@emph{localization} and @emph{automation}. These work lines describe +different areas of content production. Content production inside these +specific areas may vary as much as persons be working on them. +Producing content in too many different ways may result innapropriate +in a collaborative environment like CentOS Artwork Repository where +content produced in one area depends somehow from content produced in +another different area. So, a @emph{content production standard} is +required for each available work line. + +@subsubsection Graphic design +@cindex Graphic design work line + +The graphic design work line exists to cover brand design, typography +design and themes design mainly. Additionally, some auxiliar areas +like icon design, illustration design, brushes design, patterns +designs and palettes of colors are also included here for +completeness. + +Inside CentOS Artwork Repository graphic design is performed through +Inkscape (@url{http://www.inkscape.org/}) and GIMP +(@url{http://www.gimp.org/}). The Inkscape tool is used to create and +manipulate scalable vector graphics and export them to PNG format; it +also provides a command-line interface that we use to perform massive +exportation from SVG files to PNG files in automation scripts. On the +other hand, GIMP is used to create and manipulate rastered images, +create brushes, patterns and palettes of colors. + +@quotation +@strong{Tip} Combine both Inkscape and GIMP specific functionalities +and possibilities to produce very beautiful images. +@end quotation + +The CentOS Project Corporate Visual Identity is made of different +visual manifestations (e.g., Distributions, Web sites, Stationery, +etc.). Visual manifestations implement the corporate identity +concepts by mean of images. To produce these images, we decompose +image production in @emph{design models} and @emph{artistic motifs}. + +Design models provide the structural information of images (i.e., +dimension, position of common elements in the visible area, +translation markers, etc.) and they are generally produced as scalable +vector graphics to take advantage of SVG standard, an XML-based +standard. + +Artistic motifs provide the visual style (i.e., the background +information, the look and feel) some design models need to complete +the final image produced by automation scripts. Artistic motifs are +generally produced as rastered images. + +The result produced from combining one design model with one artistic +motif is what we know as a @emph{theme}. Inside themes directory +structure (@pxref{Directories trunk Identity Images Themes}), you can find +several design models and several artistic motifs independently one +another that can be albitrarily combined through @emph{theme +rendition}, a flexible way to produce images for different visual +manifestations in very specific visual styles. Inside themes directory +structure, theme rendition is performed in +@file{trunk/Identity/Images/Themes} directory structure, the required +design models are taken from @file{trunk/Identity/Models/Themes} +directory structure and the action itself is controlled by the +@code{render} functionality of @command{centos-art.sh} script. + +In addition to theme rendition you can find @emph{direct rendition}, +too. Direct rendition is another way of image production where there +is no artistic motif at all but design models only. Direct rendition +is very useful to produce simple content that doesn't need specific +background information. Some of these contents are brands, icons and +illustrations. Direct rendition is performed in +@file{trunk/Identity/Images}, the required design models are taken +from @file{trunk/Identity/Models} directory structure and the action +itself is controlled by the @code{render} functionality of +@command{centos-art.sh} script. + +@xref{Directories trunk Identity}, for more information about The +CentOS Corporate Identity and how graphic design fits on it. + +@subsubsection Documentation +@cindex Documentation work line + +The documentation work line exists to describe what each directory +inside the CentOS Artwork Repository is for, the conceptual ideas +behind them and, if possible, how automation scripts make use of them. + +The CentOS Artwork Repository documentation is supported by Texinfo, a +documentation system that uses a single source file to produce both +online information and printed output. + +The repository documentation is organized under @file{trunk/Manual} +directory and uses the repository directory structre as reference. +Each directory in the repository has a documentation entry associated +in the documentation manual. Documentation entries are stored under +@file{trunk/Manual/Directories} directory and the action itself is +controlled by the @code{help} functionality of @command{centos-art.sh} +script. + +The @code{help} functionality let you create, edit and delete +documentation entries in a way that you don't need to take care of +updating menus, nodes and cross reference information inside the +manual structure; the functionality takes care of it for you. +However, if you need to write repository documentation that have +nothing to do with repository directories (e.g., Preface, Introduction +and similar) you need to do it manually, there is no functionality to +automate such process yet. + +@xref{Directories trunk Manuals}, for more information on +documentation. + +@subsubsection Localization +@cindex Localization work line + +The localization work line exists to provide the translation messages +required to produce content in different languages. Translation +messages inside the repository are stored as portable objects (e.g., +.po, .pot) and machine objects (.mo) under @file{trunk/Locales} +directory structure. + +The procedure used to localize content is taken from @command{gettext} +standard specification. Basically, translatable strings are retrived +from source files in order to create portable objects and machine +objects for them. These portable objects are editable files that +contain the information used by translators to localize the +translatable strings retrived from source files. On the other hand, +machine objects are produced to be machine-redable only, as its name +implies, and are produced from portable objects. + +Since @command{gettext} needs to extract translatable strings form +source files in order to let translators to localize them, we are +limitted to use source files supported by @command{gettext} program. +This is not a limitation at all since @command{gettext} supports most +popular programming laguages (e.g., C, C++, Java, Bash, Python, Perl, +PHP and GNU Awk just to mention a few ones). Nevertheless, formats +like SVG, XHTML and Docbook don't figure as supported formats in the +list of @command{gettext} supported source files. + +To translate XML based source files like SVG, XHTML and Docbook we use +the @command{xml2po} program instead. The @command{xml2po} comes with +the @file{gnome-doc-utils} package and retrives translatable strings +from one XML file to produce portable objects for them. + +@quotation +@strong{Note} +Portable objects produced by @command{xml2po} have the same format +that portable objects produced by @command{gettext}. This make the +localization process quite consistent from translators' point of view. +No matter what the source file be, the translator will always face the +same translation file format (i.e., the portable object format). +@end quotation + +With the portable object in place, the @command{xml2po} program is +used again to create the final translated XML, just with the same +definition of the source file where translatable strings were taken +from (e.g., if we extract translatable strings from a SVG file, as +result we get the same SVG file but with translatable strings already +localized ---obviously, for this to happen translators need to +localize translatable strings inside the portable object first, +localization won't appear as art of magic---). When using +@command{xml2po}, the machine object is used as temporal file to +produce the final translated XML file. + +@quotation +@strong{Tip} If you want to have your content localized inside CentOS +Artwork Repository be sure to use source files supported either by +@command{gettext} or @command{xml2po} programs. +@end quotation + +@xref{Directories trunk Locales}, for more information. + +@subsubsection Automation +@cindex Automation work line + +The automation work line exists to standardize content production in +CentOS Artwork Repository. There is no need to type several tasks, +time after time, if they can be programmed into just one executable +script. + +The automation work line takes place under @file{trunk/Scripts} +directory structure. Here is developed the @command{centos-art.sh} +script, a bash script specially designed to automate most frequent +tasks (e.g., rendition, documentation and localization) inside the +repository. Basically, the @command{centos-art.sh} script is divided +in several functionalities independent one another that perform +specific tasks and relay on repository organization to work as +expected. + +@quotation +@strong{Tip} If you need to improve the way content is produced, look +inside automation scripts and make your improvement there for everyone +to benefit. +@end quotation + +@xref{Directories trunk Scripts}, for more information on automation. + +@subsection Connection between directories +@cindex Connection between directories +@cindex Master paths +@cindex Auxiliar paths + +In order to produce content in CentOS Artwork Repository, it is +required that all work lines be connected somehow. This is the way +automation scripts can know where to retrive the information they need +to work with (e.g., design model, translation messages, output +location, etc.). We build this kind of connection using two path +constructions named @emph{master paths} and @emph{auxiliar paths}. + +The master path points only to directories that contain the source +files (e.g., SVG files) required to produce base content (e.g., PNG +files) through automation scripts. Each master path inside the +repository may have several auxiliar paths associated, but auxiliar +paths can only have one master path associated. + +The auxiliar paths can point either to directories or files. When an +auxiliar path points to a directory, that directory contains +information that modifies somehow the content produced from master +paths (e.g., translation messages) or provides the output information +required to know where to store the content produced from master path. +When an auxiliar path points to a file, that file has no other purpose +but to document the master path it refers to. + +The relation between auxiliar paths and master paths is realized +combining two path informations which are: the master path itself and +one second level directory structure from the repository. Generally, +the master path is considered the path identifier and the second level +directory structure taken from the repository is considered the common +part of the path where the identifier is appended. + +@float Figure, Path construction +@verbatim +-----+---------------+----------------------------+------+----------- +Path | Suffix | Identifier |Prefix| Type +-----+---------------+----------------------------+------+----------- + A | |trunk/Identity/Models/Brands| | Directory +-----+---------------+----------------------------+------+----------- + B | trunk/Manual/|trunk/Identity/Models/Brands|.texinfo | File +-----+---------------+----------------------------+------+----------- + C | trunk/Locales/|trunk/Identity/Models/Brands| | Directory +-----+---------------+----------------------------+------+----------- + D | |trunk/Identity/Images/Brands| | Directory +-----+---------------+----------------------------+------+----------- + E | trunk/Locales/|trunk/Identity/Images/Brands|.texinfo | File +-----+---------------+----------------------------+------+----------- + + A = Master path. + B = Auxiliar path to documentation entry. + C = Auxiliar path to translation messages. + D = Auxiliar path to final content output. + E = Auxiliar path to documentation entry. +@end verbatim +@caption{Path construction.} +@end float + +The path information described above (@pxref{Path construction}) is +used by direct rendition and can be taken as reference to add other +components that are equally produced in the repository. To add new +components that make use of direct rendition inside the repository, +change just the component name used above (e.g., @file{Brands}) to +that one you want to add, without changing the path structure around +it. + +The file organization used by theme rendition extends direct rendition +by separating design models information from backgrounds information. +To better understand this configuration, you can consider it as two +independent lists, one of design models and one of artistic motifs, +which are arbitrary combined between themselves in order to render +images in specific ways. The possibilities of this configuration are +endless and let us describe visual manifestations very well. For +example, consider the organization used to produce @file{Anaconda} +images; for CentOS distribution major release 5; using @file{Default} +design models and version @file{3} of @file{Flame} artistic motif: + +@float Figure, Path construction extended +@verbatim +-----+---------------+------------------------------------------------------+------+----------- +Path | Suffix | Identifier |Prefix| Type +-----+---------------+------------------------------------------------------+------+----------- + A | |trunk/Identity/Models/Themes/Default/Distro/5/Anaconda| | Directory +-----+---------------+------------------------------------------------------+------+----------- + B | trunk/Manual/|trunk/Identity/Models/Themes/Default/Distro/5/Anaconda|.texinfo | File +-----+---------------+------------------------------------------------------+------+----------- + C | trunk/Locales/|trunk/Identity/Models/Themes/Default/Distro/5/Anaconda| | Directory +-----+---------------+------------------------------------------------------+------+----------- + D | |trunk/Identity/Images/Themes/Flame/3/Distro/5/Anaconda| | Directory +-----+---------------+------------------------------------------------------+------+----------- + E | trunk/Locales/|trunk/Identity/Images/Themes/Flame/3/Distro/5/Anaconda|.texinfo | File +-----+---------------+------------------------------------------------------+------+----------- + + A = Master path. + B = Auxiliar path to documentation entry. + C = Auxiliar path to translation messages. + D = Auxiliar path to final content output. + E = Auxiliar path to documentation entry. +@end verbatim +@caption{Path construction extended.} +@end float + +The path information described above (@pxref{Path construction +extended}) is used by theme rendition and can be taken as reference to +add other components that are equally produced in the repository. + +In this configuration we can change both design model name (e.g., +@file{Default}) and artistic motif name (e.g., @file{Flame/3}) to +something else in order to achieve a different result. The only +limitations impossed are the storage space provided in the server +machine and your own creativeness as graphic designer. + +@quotation +@strong{Note} +A theme ready for implementation may consume from 100 MB to 400 MB of +storage space. The exact space consumed by a theme depends on the +amount of screen resolutions the theme supports. The more screen +resolutions the theme supports, the more storage space demanded for +it. +@end quotation + +In this configuration we saw how to build the path information for +@file{Anaconda} component as part of CentOS Distribution visual +manifestation, but that is not the only component we have inside +CentOS Distribution visual manifestation. There are other components +like Syslinux, Grub, Rhgb, Gdm, Kdm, Gsplash and Ksplash that share a +similar file organization to that described above for @file{Anaconda} +component. + +@subsection Syncronizing path information +@cindex Syncronizing path information + +Syncronizing path information is the action that keeps all path +information up to date in the repository. This action implies both +@emph{file movement} and @emph{file content replacement} in this very +specific order. File movement is related to duplicate, delete and +rename files and directories in the repository. File content +replacement is related to replace information, path information in +this case, inside files in the repository. + +The order followed to syncronize path information is relevant because +the versioned nature of the files we are working with. We don't +perform file content replacement first because that would imply a +repository change which will immediatly demmand a commit in order for +actions like duplicate, delete or rename to take place. However, if we +perform file movement first, it is possible to commit both file moved +and file content replacements as if they were just one change. In this +case the file content replacement takes palce in the target location +that have been duplicated or renamed, not the one use as source +location. This configuration is specially useful when files are +renamed (i.e., one file is copied from a source location to a target +location and then the source location of it is removed from +repository). + +@quotation +@strong{Warning} There is no support for URLs actions inside +@command{centos-art.sh} script. The @command{centos-art.sh} script is +designed to work with local files inside the working copy only. If you +need to perform URL actions directly, use Subversion commands instead. +@end quotation + +When one master path is changed it is required that all related +auxiliar paths be changed, too. This is required in order for master +paths to retain their relation with auxiliar paths. This way, +automation scripts are able to know where to retrive translation +messages from, where to store final output images to and where to look +for documentation. If relation between master paths and auxiliar paths +is lost, there is no way for automation scripts to know where to +retrive the information they need. + +The auxiliar paths should never be modified under any reason but to +satisfy the relationship with the master path. Liberal change of +auxiliar paths may suppress the conceptual idea they were initially +created for; and certainly, automation scripts may stop working as +expected. The update direction to rename path information must be from +master path to auxiliar path and never the opposite. + +The relation between master and auxiliar paths is useful to keep +repository organized but introduce some complications when we work +with files that use master path information as reference to build +structural information. This is the case of repository documentation +manual source files where inclusions, menus, nodes and cross +references are built using master path information as reference. Now, +to see what kind of complication we are talking about, consider what +would happen to a structural definitions (i.e., inlusions, menus, +nodes and cross refereces) already set in the manual from one master +path that is suddenly renamed to something different. If the path +information is not syncronized, at this point, we lose connection +between the master path and the auxiliar path created to store the +related documentation entry, as well as the related structural +definitions that end up pointing to a master path that no longer +exist. + +The syncronization of path information is aimed to solve these kind of +issues. + +@subsection Extending repository organization +@cindex Extending repository organization + +Occasionly, you may find that new components of The CentOS Project +Corporate Identity need to be added to the repository in order to work +them out. If that is the case, the first question we need to ask +ourselves, before start to create directories blindly all over, is: +@emph{What is the right place to store it?} + +The best place to find answers is in The CentOS Community (see page +@url{http://wiki.centos.org/GettingHelp}), but going there with hands +empty is not good idea. It may give the impression you don't really +care about. Instead, consider the following suggestions to find your +own comprehension in order to make your own propositions based on it. + +When extending respository structure it is very useful to bear in mind +The CentOS Project Corporate Identity Structure (@pxref{Directories +trunk Identity}) The CentOS Mission and The CentOS Release Schema. The +rest is just matter of choosing appropriate names. It is also worth to +know that each directory in the repository responds to a conceptual +idea that justifies its existence. + +To build a directory structure, you need to define the conceptual idea +first and later create the directory. There are some locations inside +the repository that already define some concepts you probably want to +reuse. For example, @file{trunk/Identity/Images/Themes} to store theme +artistic motifs, @file{trunk/Identity/Models/Themes} to store theme +design models, @file{trunk/Manual} to store documentation files, +@file{trunk/Locales} to store translation messages, +@file{trunk/Scripts} to store automation scripts and so on. + +To illustrate this desition process let's consider the +@file{trunk/Identity/Images/Themes/TreeFlower/3} directory structure +as example. This directory can be read as: the theme development line +of version @file{3} of @file{TreeFlower} artistic motif. Additional, +we can identify that artistic motifs are part of themes as well as +themes are part of The CentOS Project Corporate Identity. These +concepts are better described independently in each documentation +entry related to the directory structure as it is respectively shown +in the list of commands bellow. + +@verbatim +centos-art help --read turnk +centos-art help --read turnk/Identity +centos-art help --read turnk/Identity/Themes +centos-art help --read turnk/Identity/Images/Themes +centos-art help --read turnk/Identity/Images/Themes/TreeFlower +centos-art help --read turnk/Identity/Images/Themes/TreeFlower/3 +@end verbatim + +The concepts behind other location can be found in the same way +described above, just change the path information used above to the +one you are trying to know concepts for. diff --git a/Manuals/RepoReferences/en_US/Licenses/chapter-menu.texinfo b/Manuals/RepoReferences/en_US/Licenses/chapter-menu.texinfo new file mode 100755 index 0000000..b8240ba --- /dev/null +++ b/Manuals/RepoReferences/en_US/Licenses/chapter-menu.texinfo @@ -0,0 +1,4 @@ +@menu +* GNU General Public License:: +* GNU Free Documentation License:: +@end menu diff --git a/Manuals/RepoReferences/en_US/Licenses/chapter-nodes.texinfo b/Manuals/RepoReferences/en_US/Licenses/chapter-nodes.texinfo new file mode 100755 index 0000000..da644be --- /dev/null +++ b/Manuals/RepoReferences/en_US/Licenses/chapter-nodes.texinfo @@ -0,0 +1,9 @@ +@node GNU General Public License +@section GNU General Public License +@cindex GNU General Public License +@include trunk/Scripts/Functions/Help/Backends/Texinfo/Templates/en_US/Licenses/GPL.texinfo + +@node GNU Free Documentation License +@section GNU Free Documentation License +@cindex GNU Free Documentation License +@include trunk/Scripts/Functions/Help/Backends/Texinfo/Templates/en_US/Licenses/GFDL.texinfo diff --git a/Manuals/RepoReferences/en_US/Licenses/chapter.texinfo b/Manuals/RepoReferences/en_US/Licenses/chapter.texinfo new file mode 100755 index 0000000..27e70ae --- /dev/null +++ b/Manuals/RepoReferences/en_US/Licenses/chapter.texinfo @@ -0,0 +1,5 @@ +@node Licenses +@chapter Licenses +@cindex Licenses +@include Licenses/chapter-menu.texinfo +@include Licenses/chapter-nodes.texinfo diff --git a/Manuals/RepoReferences/en_US/repository-index.texinfo b/Manuals/RepoReferences/en_US/repository-index.texinfo new file mode 100644 index 0000000..abe002c --- /dev/null +++ b/Manuals/RepoReferences/en_US/repository-index.texinfo @@ -0,0 +1,3 @@ +@node Index +@unnumbered Index +@printindex cp diff --git a/Manuals/RepoReferences/en_US/repository-menu.texinfo b/Manuals/RepoReferences/en_US/repository-menu.texinfo new file mode 100644 index 0000000..89f2a86 --- /dev/null +++ b/Manuals/RepoReferences/en_US/repository-menu.texinfo @@ -0,0 +1,6 @@ +@menu +* Introduction:: +* Directories:: +* Licenses:: +* Index:: +@end menu diff --git a/Manuals/RepoReferences/en_US/repository-nodes.texinfo b/Manuals/RepoReferences/en_US/repository-nodes.texinfo new file mode 100644 index 0000000..722d48f --- /dev/null +++ b/Manuals/RepoReferences/en_US/repository-nodes.texinfo @@ -0,0 +1,3 @@ +@include Introduction/chapter.texinfo +@include Directories/chapter.texinfo +@include Licenses/chapter.texinfo diff --git a/Manuals/RepoReferences/en_US/repository.texinfo b/Manuals/RepoReferences/en_US/repository.texinfo new file mode 100644 index 0000000..dd3ff8e --- /dev/null +++ b/Manuals/RepoReferences/en_US/repository.texinfo @@ -0,0 +1,54 @@ +\input texinfo @c -*-texinfo-*- +@c $Id$ +@setfilename repository.info +@settitle CentOS Artwork Repository +@afourpaper +@finalout + +@c -- Summary Description and Copyright ----------------------- +@copying +This manuals documents relevant information regarding the deployment, +organization, and administration of CentOS Artwork Repository. + +Copyright @copyright{} 2009, 2010, 2011 The CentOS Artwork SIG + +Permission is granted to copy, distribute and/or modify this document +under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no +Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A +copy of the license is included in the section entitled @ref{GNU Free +Documentation License}. +@end copying + +@c -- Titlepage, Contents, Copyright --------------------------- + +@titlepage +@title CentOS Artwork Repository +@subtitle Manual +@author Alain Reguera Delgado +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage + +@contents + +@c -- `Top' Node and Master Menu ------------------------------- + +@ifnottex +@node Top +@top CentOS Artwork Repository +@insertcopying +@end ifnottex + +@include repository-menu.texinfo + +@c -- The Body of the Document -------------------------------- + +@include repository-nodes.texinfo + +@c -- The End of the Document --------------------------------- + +@include repository-index.texinfo + +@bye diff --git a/Manuals/RepoReferences/es_ES/Directories/branches.texinfo b/Manuals/RepoReferences/es_ES/Directories/branches.texinfo new file mode 100644 index 0000000..c7d53ec --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/branches.texinfo @@ -0,0 +1,21 @@ +@subheading Objetivos + +El directorio @file{branches} organiza @dots{} + +@subheading Descripci@'on + +@itemize +@item ... +@end itemize + +@subheading Uso + +@itemize +@item ... +@end itemize + +@subheading Vea adem@'as + +@itemize +@item @dots{} +@end itemize diff --git a/Manuals/RepoReferences/es_ES/Directories/chapter-menu.texinfo b/Manuals/RepoReferences/es_ES/Directories/chapter-menu.texinfo new file mode 100644 index 0000000..2cd6d67 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/chapter-menu.texinfo @@ -0,0 +1,10 @@ +@menu +* Directories branches:: +* Directories tags:: +* Directories trunk:: +* Directories trunk Identity:: +* Directories trunk Scripts:: +* Directories trunk Scripts Functions:: +* Directories trunk Scripts Functions Help:: +* Directories trunk Scripts Functions Help Backends:: +@end menu diff --git a/Manuals/RepoReferences/es_ES/Directories/chapter-nodes.texinfo b/Manuals/RepoReferences/es_ES/Directories/chapter-nodes.texinfo new file mode 100644 index 0000000..b45c868 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/chapter-nodes.texinfo @@ -0,0 +1,40 @@ +@node Directories branches +@section El directorio @file{branches} +@cindex Directories branches +@include Directories/branches.texinfo + +@node Directories tags +@section El directorio @file{tags} +@cindex Directories tags +@include Directories/tags.texinfo + +@node Directories trunk +@section El directorio @file{trunk} +@cindex Directories trunk +@include Directories/trunk.texinfo + +@node Directories trunk Identity +@section El directorio @file{trunk/Identity} +@cindex Directories trunk Identity +@include Directories/trunk/Identity.texinfo + +@node Directories trunk Scripts +@section El directorio @file{trunk/Scripts} +@cindex Directories trunk Scripts +@include Directories/trunk/Scripts.texinfo + +@node Directories trunk Scripts Functions +@section El directorio @file{trunk/Scripts/Functions} +@cindex Directories trunk Scripts Functions +@include Directories/trunk/Scripts/Functions.texinfo + +@node Directories trunk Scripts Functions Help +@section El directorio @file{trunk/Scripts/Functions/Help} +@cindex Directories trunk Scripts Functions Help +@include Directories/trunk/Scripts/Functions/Help.texinfo + +@node Directories trunk Scripts Functions Help Backends +@section El directorio @file{trunk/Scripts/Functions/Help/Backends} +@cindex Directories trunk Scripts Functions Help Backends +@include Directories/trunk/Scripts/Functions/Help/Backends.texinfo + diff --git a/Manuals/RepoReferences/es_ES/Directories/chapter.texinfo b/Manuals/RepoReferences/es_ES/Directories/chapter.texinfo new file mode 100644 index 0000000..dbb2216 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/chapter.texinfo @@ -0,0 +1,5 @@ +@node Directories +@chapter Los directorios del repositorio +@cindex Directorios +@include Directories/chapter-menu.texinfo +@include Directories/chapter-nodes.texinfo diff --git a/Manuals/RepoReferences/es_ES/Directories/tags.texinfo b/Manuals/RepoReferences/es_ES/Directories/tags.texinfo new file mode 100644 index 0000000..26f2688 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/tags.texinfo @@ -0,0 +1,21 @@ +@subheading Objetivos + +El directorio @file{tags} organiza @dots{} + +@subheading Descripci@'on + +@itemize +@item ... +@end itemize + +@subheading Uso + +@itemize +@item ... +@end itemize + +@subheading Vea adem@'as + +@itemize +@item @dots{} +@end itemize diff --git a/Manuals/RepoReferences/es_ES/Directories/trunk.texinfo b/Manuals/RepoReferences/es_ES/Directories/trunk.texinfo new file mode 100644 index 0000000..25ca4e6 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/trunk.texinfo @@ -0,0 +1,21 @@ +@subheading Objetivos + +El directorio @file{trunk} organiza @dots{} + +@subheading Descripci@'on + +@itemize +@item ... +@end itemize + +@subheading Uso + +@itemize +@item ... +@end itemize + +@subheading Vea adem@'as + +@itemize +@item @dots{} +@end itemize diff --git a/Manuals/RepoReferences/es_ES/Directories/trunk/Identity.texinfo b/Manuals/RepoReferences/es_ES/Directories/trunk/Identity.texinfo new file mode 100644 index 0000000..a6b2b11 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/trunk/Identity.texinfo @@ -0,0 +1,21 @@ +@subheading Objetivos + +El directorio @file{trunk/Identity} organiza @dots{} + +@subheading Descripci@'on + +@itemize +@item ... +@end itemize + +@subheading Uso + +@itemize +@item ... +@end itemize + +@subheading Vea adem@'as + +@itemize +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts.texinfo b/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts.texinfo new file mode 100644 index 0000000..b35dda9 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts.texinfo @@ -0,0 +1,21 @@ +@subheading Objetivos + +El directorio @file{trunk/Scripts} organiza @dots{} + +@subheading Descripci@'on + +@itemize +@item ... +@end itemize + +@subheading Uso + +@itemize +@item ... +@end itemize + +@subheading Vea adem@'as + +@itemize +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions.texinfo b/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions.texinfo new file mode 100644 index 0000000..893f211 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions.texinfo @@ -0,0 +1,22 @@ +@subheading Objetivos + +El directorio @file{trunk/Scripts/Functions} organiza @dots{} + +@subheading Descripci@'on + +@itemize +@item ... +@end itemize + +@subheading Uso + +@itemize +@item ... +@end itemize + +@subheading Vea adem@'as + +@itemize +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions/Help.texinfo b/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions/Help.texinfo new file mode 100644 index 0000000..5c8f209 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions/Help.texinfo @@ -0,0 +1,40 @@ +@subheading Nombre + +El directorio @file{trunk/Scripts/Functions/Help} organiza @dots{} + +@subheading Sinopsis + +@dots{} + +@subheading Descripci@'on + +@dots{} + +@subheading Ejemplos + +@dots{} + +@subheading Autor + +Escrito por @dots{} + +@subheading Reporte de errores + +Reporte de errores a la lista de correo @email{centos-artwork@@centos.org}. + +@subheading Derecho de copia + +Copyright @copyright{} 2009, 2010, 2011 The CentOS Project + +Esto es software libre. Usted pude redistribuir copias de ello bajo +los t@'erminos de la Licencia P@'ublica General GNU (@pxref{GNU +General Public License}). Hasta donde la ley se extiende, NO HAY +GARANT@'IA. + +@subheading Vea adem@'as + +@itemize +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions/Help/Backends.texinfo b/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions/Help/Backends.texinfo new file mode 100644 index 0000000..afa889c --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Directories/trunk/Scripts/Functions/Help/Backends.texinfo @@ -0,0 +1,24 @@ +@subheading Objetivos + +El directorio @file{trunk/Scripts/Functions/Help/Backends} organiza @dots{} + +@subheading Descripci@'on + +@itemize +@item ... +@end itemize + +@subheading Uso + +@itemize +@item ... +@end itemize + +@subheading Vea adem@'as + +@itemize +@item @ref{Directories trunk Scripts Functions Help} +@item @ref{Directories trunk Scripts Functions} +@item @ref{Directories trunk Scripts} +@item @ref{Directories trunk} +@end itemize diff --git a/Manuals/RepoReferences/es_ES/Licenses/chapter-menu.texinfo b/Manuals/RepoReferences/es_ES/Licenses/chapter-menu.texinfo new file mode 100755 index 0000000..b8240ba --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Licenses/chapter-menu.texinfo @@ -0,0 +1,4 @@ +@menu +* GNU General Public License:: +* GNU Free Documentation License:: +@end menu diff --git a/Manuals/RepoReferences/es_ES/Licenses/chapter-nodes.texinfo b/Manuals/RepoReferences/es_ES/Licenses/chapter-nodes.texinfo new file mode 100755 index 0000000..2266b6e --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Licenses/chapter-nodes.texinfo @@ -0,0 +1,9 @@ +@node GNU General Public License +@section Licencia P@'ublica General de GNU +@cindex Licencia p@'ublica general GNU +@include trunk/Scripts/Functions/Help/Backends/Texinfo/Templates/es_ES/Licenses/GPL.texinfo + +@node GNU Free Documentation License +@section Licencia de Documentaci@'on Libre de GNU +@cindex Licencia documentaci@'on libre GNU +@include trunk/Scripts/Functions/Help/Backends/Texinfo/Templates/es_ES/Licenses/GFDL.texinfo diff --git a/Manuals/RepoReferences/es_ES/Licenses/chapter.texinfo b/Manuals/RepoReferences/es_ES/Licenses/chapter.texinfo new file mode 100755 index 0000000..38edb4b --- /dev/null +++ b/Manuals/RepoReferences/es_ES/Licenses/chapter.texinfo @@ -0,0 +1,5 @@ +@node Licenses +@chapter Licencias +@cindex Licencias +@include Licenses/chapter-menu.texinfo +@include Licenses/chapter-nodes.texinfo diff --git a/Manuals/RepoReferences/es_ES/repository-index.texinfo b/Manuals/RepoReferences/es_ES/repository-index.texinfo new file mode 100755 index 0000000..a299097 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/repository-index.texinfo @@ -0,0 +1,3 @@ +@node Index +@unnumbered @'Indice +@printindex cp diff --git a/Manuals/RepoReferences/es_ES/repository-menu.texinfo b/Manuals/RepoReferences/es_ES/repository-menu.texinfo new file mode 100644 index 0000000..a7cb577 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/repository-menu.texinfo @@ -0,0 +1,5 @@ +@menu +* Directories:: +* Licenses:: +* Index:: +@end menu diff --git a/Manuals/RepoReferences/es_ES/repository-nodes.texinfo b/Manuals/RepoReferences/es_ES/repository-nodes.texinfo new file mode 100644 index 0000000..3bf2339 --- /dev/null +++ b/Manuals/RepoReferences/es_ES/repository-nodes.texinfo @@ -0,0 +1,2 @@ +@include Directories/chapter.texinfo +@include Licenses/chapter.texinfo diff --git a/Manuals/RepoReferences/es_ES/repository.texinfo b/Manuals/RepoReferences/es_ES/repository.texinfo new file mode 100644 index 0000000..d3e7d8f --- /dev/null +++ b/Manuals/RepoReferences/es_ES/repository.texinfo @@ -0,0 +1,59 @@ +\input texinfo @c -*-texinfo-*- +@c $Id$ +@c -- Header -------------------------------------------------- + +@setfilename repository.info +@settitle Repositorio Art@'istico de CentOS +@documentlanguage es +@documentencoding ISO-8859-1 +@afourpaper +@finalout + +@c -- Summary description and copyright ----------------------- + +@copying +Este manual documenta informaci@'on relevante al desempe@~no, organizaci@'on +y administraci@'on del repositorio art@'istico del proyecto CentOS. + +Copyright @copyright{} 2009, 2010, 2011 The CentOS Artwork SIG + +Se otorga permiso para copiar, distribuir y/o modificar este documento +bajo los t@'erminos de la Licencia de Documentaci@'on Libre de GNU, +Versi@'on 1.1 o cualquier otra versi@'on posterior publicada por la +Free Software Foundation; con las Secciones Invariantes, con Textos de +Cubierta Delantera, y con los Textos de Cubierta Trasera. Una copia +de la licencia est@'a incluida en la secci@'on titulada @ref{GNU Free +Documentation License}. +@end copying + +@c -- Titlepage, contents, copyright --------------------------- + +@titlepage +@title Repositorio Art@'istico de CentOS +@subtitle Manual +@author The CentOS Project +@page +@vskip 0pt plus 1filll +@insertcopying +@end titlepage +@contents + +@c -- `Top' node and master menu ------------------------------- + +@ifnottex +@node Top +@top Repositorio Art@'istico de CentOS +@insertcopying +@end ifnottex + +@include repository-menu.texinfo + +@c -- The body of the document -------------------------------- + +@include repository-nodes.texinfo + +@c -- The end of the document --------------------------------- + +@include repository-index.texinfo + +@bye diff --git a/Manuals/RepoReferences/repository-init.pl b/Manuals/RepoReferences/repository-init.pl new file mode 100755 index 0000000..3a2b5c2 --- /dev/null +++ b/Manuals/RepoReferences/repository-init.pl @@ -0,0 +1,389 @@ +#!/usr/bin/perl +# +# repository.init -- This file initializes Texi2HTML program to +# produce the repository documentation manual using the CentOS Web +# Environment XHTML and CSS standard definition. +# +# Copyright (C) 2009-2011 Alain Reguera Delgado +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA. +# ---------------------------------------------------------------------- +# $Id$ +# ---------------------------------------------------------------------- + +# -iso +# if set, ISO8859 characters are used for special symbols (like +# copyright, etc) +$USE_ISO = 1; + +# -I +# add a directory to the list of directories where @include files are +# searched for (besides the directory of the file). additional '-I' +# args are appended to this list. (APA: Don't implicitely search ., +# to conform with the docs!) my @INCLUDE_DIRS = ("."); +@INCLUDE_DIRS = ("/home/centos/artwork"); + +# Extension used on output files. +$EXTENSION = "xhtml"; + +# Horizontal rules. +$DEFAULT_RULE = '

'; +$SMALL_RULE = $DEFAULT_RULE; +$MIDDLE_RULE = $DEFAULT_RULE; +$BIG_RULE = $DEFAULT_RULE; + +# -split section|chapter|node|none +# if $SPLIT is set to 'section' (resp. 'chapter') one html file per +# section (resp. chapter) is generated. If $SPLIT is set to 'node' one +# html file per node or sectionning element is generated. In all these +# cases separate pages for Top, Table of content (Toc), Overview and +# About are generated. Otherwise a monolithic html file that contains +# the whole document is created. +$SPLIT = 'section'; + +# -sec-nav|-nosec-nav +# if this is set then navigation panels are printed at the beginning +# of each section. If the document is split at nodes then navigation +# panels are printed at the end if there were more than $WORDS_IN_PAGE +# words on page. +# +# If the document is split at sections this is ignored. +# +# This is most useful if you do not want to have section navigation +# with -split chapter. There will be chapter navigation panel at the +# beginning and at the end of chapters anyway. +$SECTION_NAVIGATION = 1; + +# Layout control +$print_page_head = \&T2H_XHTML_print_page_head; +$print_page_foot = \&T2H_XHTML_print_page_foot; +$print_frame = \&T2H_XHTML_print_frame; +$button_icon_img = \&T2H_XHTML_button_icon_img; +$print_navigation = \&T2H_XHTML_print_navigation; + +#FIXME update once it is more stabilized in texi2html.init +sub T2H_XHTML_print_page_head +{ + my $fh = shift; + my $longtitle = "$Texi2HTML::THISDOC{'title_unformatted'}"; + $longtitle .= ": $Texi2HTML::UNFORMATTED{'This'}" if exists $Texi2HTML::UNFORMATTED{'This'}; + print $fh < + + + + + $longtitle + + + + + + + + + + + + + + + + + +
+ +
+ +
+ + +EOT +} + +sub T2H_XHTML_print_page_foot +{ + my $fh = shift; + my @date=localtime(time); + my $year=$date[5] += 1900; + my $program_string = program_string(); + print $fh <$program_string

+ +
+ +
+ + +
+ + + + +EOT +} + +# / in +sub T2H_XHTML_button_icon_img +{ + my $button = shift; + my $icon = shift; + my $name = shift; + return '' if (!defined($icon)); + if (defined($name) && $name) + { + $name = ": $name"; + } + else + { + $name = ''; + } + $button = "" if (!defined ($button)); + return qq{$button$name}; +} + +$simple_map{'*'} = '
'; + +# formatting functions + +$def_line = \&t2h_xhtml_def_line; +$index_summary = \&t2h_xhtml_index_summary; +$image = \&t2h_xhtml_image; + +# need / in +sub t2h_xhtml_image($$$) +{ + my $file = shift; + my $base = shift; + my $preformatted = shift; + return "[ $base ]" if ($preformatted); + return "\"$base\""; +} + +# process definition commands line @deffn for example +# replaced by +sub t2h_xhtml_def_line($$$$$) +{ + my $category = shift; + my $name = shift; + my $type = shift; + my $arguments = shift; + my $index_label = shift; + $index_label = '' if (!defined($index_label)); + $name = '' if (!defined($name) or ($name =~ /^\s*$/)); + $type = '' if (!defined($type) or $type =~ /^\s*$/); + if (!defined($arguments) or $arguments =~ /^\s*$/) + { + $arguments = ''; + } + else + { + $arguments = '' . $arguments . ''; + } + my $type_name = ''; + $type_name = " $type" if ($type ne ''); + $type_name .= ' ' . $name . '' if ($name ne ''); + $type_name .= $arguments . "\n"; + if (! $DEF_TABLE) + { + return '
'. '' . $category . ':' . $type_name . $index_label . "
\n"; + } + else + { + + return "\n" . $type_name . + "\n" . $category . $index_label . "\n" . "\n"; + } +} + +# There is a br which needs / +sub t2h_xhtml_index_summary($$) +{ + my $alpha = shift; + my $nonalpha = shift; + my $join = ''; + my $nonalpha_text = ''; + my $alpha_text = ''; + $join = "   \n
\n" if (@$nonalpha and @$alpha); + if (@$nonalpha) + { + $nonalpha_text = join("\n   \n", @$nonalpha) . "\n"; + } + if (@$alpha) + { + $alpha_text = join("\n   \n", @$alpha) . "\n   \n"; + } + #I18n + return "
" . &$I('Jump to') . ":   " . + $nonalpha_text . $join . $alpha_text . '
'; +} + +# Layout of navigation panel +sub T2H_XHTML_print_navigation +{ + my $fh = shift; + my $buttons = shift; + my $vertical = shift; + print $fh '' . "\n"; + + print $fh "" unless $vertical; + for my $button (@$buttons) + { + print $fh qq{\n} if $vertical; + print $fh qq{\n"; + print $fh "\n" if $vertical; + } + print $fh "" unless $vertical; + print $fh "\n"; +} + +# Use icons for navigation. +$ICONS = 0; + +# insert here name of icon images for buttons +# Icons are used, if $ICONS and resp. value are set +%ACTIVE_ICONS = + ( + 'Top', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-top.png', + 'Contents', 'file:///usr/share/icons/Bluecurve/24x24/stock/help-contents.png', + 'Overview', '', + 'Index', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-find.png', + 'This', '', + 'Back', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-back.png', + 'FastBack', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-first.png', + 'Prev', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-back.png', + 'Up', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-up.png', + 'Next', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-forward.png', + 'NodeUp', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-up.png', + 'NodeNext', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-forward.png', + 'NodePrev', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-back.png', + 'Following', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-forward.png', + 'Forward', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-forward.png', + 'FastForward', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-last.png', + 'About' , 'file:///usr/share/icons/Bluecurve/24x24/stock/gtk-about.png', + 'First', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-first.png', + 'Last', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-last.png', + ' ', '' + ); + +# Insert here name of icon images for these, if button is inactive +%PASSIVE_ICONS = + ( + 'Top', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-top.png', + 'Contents', 'file:///usr/share/icons/Bluecurve/24x24/stock/help-contents.png', + 'Overview', '', + 'Index', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-find.png', + 'This', '', + 'Back', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-back.png', + 'FastBack', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-first.png', + 'Prev', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-back.png', + 'Up', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-up.png', + 'Next', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-forward.png', + 'NodeUp', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-up.png', + 'NodeNext', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-forward.png', + 'NodePrev', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-back.png', + 'Following', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-forward.png', + 'Forward', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-go-forward.png', + 'FastForward', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-last.png', + 'About' , 'file:///usr/share/icons/Bluecurve/24x24/stock/gtk-about.png', + 'First', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-first.png', + 'Last', 'file:///usr/share/icons/Bluecurve/24x24/stock/stock-goto-last.png', + ' ', '' + ); + +return 1; diff --git a/Manuals/RepoReferences/repository.css b/Manuals/RepoReferences/repository.css new file mode 100755 index 0000000..af7401c --- /dev/null +++ b/Manuals/RepoReferences/repository.css @@ -0,0 +1,67 @@ +/* CSS + * + * repository.css -- This file extends `base-app.css' to provide + * specific visual style to Texi2HTML output. + * + * Copyright (C) 2009-2011 Alain Reguera Delgado + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 + * USA. + * ---------------------------------------------------------------------- + * $Id$ + * ---------------------------------------------------------------------- + */ + +/* Define default visual style. +-------------------------------*/ +@import url("/home/centos/artwork/trunk/Identity/Webenv/Css/base.css"); +@import url("/home/centos/artwork/trunk/Identity/Webenv/Css/base-app.css"); + +/* Texi2html specific definitions. +----------------------------------*/ +div#page-body div#content { + padding-top: 5px; + padding-bottom: 5px; + background-color: #FFF; + } + +table { + margin-top: 0px; + } + +div#content table tr td, +div#content table tr th { + border:none; + } + +div#content pre.example { + padding: 0.5em 1em; + } + +div#content p img { + margin-right: 10px; + margin-top: 10px; + padding: 5px; + border: 1px solid #DADADA; + } + +div#content table.navibar { + margin-top: 20px; + border-bottom: 1px solid #f8f8f8; + } + +div#content p.credits { + font-size: small; + } diff --git a/Manuals/RepoReferences/repository.sed b/Manuals/RepoReferences/repository.sed new file mode 100644 index 0000000..3d338e1 --- /dev/null +++ b/Manuals/RepoReferences/repository.sed @@ -0,0 +1,29 @@ +#!/bin/sed +# +# repository.sed -- This file provides common transformations for +# texi2html output, based on The CentOS Project CSS definitions. +# +# Copyright (C) 2009-2010 Alain Reguera Delgado +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +# General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software +# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 +# USA. +# +# ---------------------------------------------------------------------- +# $Id$ +# ---------------------------------------------------------------------- + +# Links +s!