From Fedora Project Wiki
This page is a draft only
It is still under construction and content may change. Do not rely on the information on this page.

The term guide here refers to any piece of formal Fedora documentation maintained by the Fedora Documentation Project and published on http://docs.fedoraproject.org. Guides range from detailed manuals hundreds of pages long to short articles that describe specific tasks such as how to burn a DVD from an ISO file.

Your guide might be an entirely new piece of writing or a project that you are migrating to Fedora from elsewhere, for example, a Red Hat Enterprise Linux document that you are bringing upstream into Fedora. These instructions apply in either case.

Prerequisites

Before you follow this procedure, you must

  • be a member of the Fedora Project (and therefore have an identity in the Fedora Account System (FAS)) — join the Fedora Project
  • be a member of the docs-writers group
  • have Git installed on your system. — yum install git
  • have Publican and the Fedora brand package for Publican installed on your system. — yum install publican publican-fedora

Apply to have your document hosted on fedorahosted.org

  1. Visit the Fedora Infrastructure Trac at https://fedorahosted.org/fedora-infrastructure/
  2. Click the Login link near the top right of the screen and supply your FAS username and password when prompted.
  3. Click the New Ticket link near the top right of the screen.
  4. Fill in the Short Summary field with:
    Hosting request for NAME_OF_YOUR_GUIDE
  5. Select Hosting Request in the Type drop-down menu.
  6. A dialog box opens and asks you whether to Apply template by ticket type?. Click No.
  7. Copy and paste the following information into the main text box, replacing any content already there:
    Project name: docs/name-of-your-guide
    
    Project short summary: SUMMARY_OF_YOUR_GUIDE
    
    SCM choice (git/bzr/hg/svn): git
    
    Project admin Fedora Account System account name: YOUR_FAS_USERNAME
    
    Yes/No, would you like a Trac instance for your project?: Yes
    
    Do you need a mailing list? No
    
    Send commits to the following list (leave empty if none needed): docs-commits@lists.fedorahosted.org
    
    NOTE: No separate commit group needed. Please give commit access to the docs-writers group.
    
    Provide the name of your guide in the Project name field in the following format:
    • lower case letters only
    • separate words with a hyphen
    • preface the title with docs/
    • do not include fedora in the name of your guide.

    For example, if your guide is the Fedora Configuration Guide, provide this as:

    Project name:docs/configuration-guide.
  8. Select Minor in the Priority drop-down menu.
  9. Select Hosted Projects in the Component drop-down menu.
  10. Click the Submit ticket button.

You will receive a notification by email when the Fedora Infrastructure Team has created space for your project.

Create local and remote repositories for your guide

When the Fedora Infrastructure Team notifies you that your hosting space is ready, create the local and remote git repositories for your guide.

  1. Open a virtual console or terminal emulator and change into a convenient directory in which to store your local copy of the source code.
  2. Check out the remote repository. Run:
    git clone ssh://USERNAME@git.fedorahosted.org/git/docs/NAME_OF_GUIDE.git
    

    Where USERNAME is your FAS username, and NAME_OF_GUIDE is the name of your guide.

    Git clones the remote repository into a new directory with the same name as the name of your guide. Because the repository is currently empty, Git warns you:

    warning: You appear to have cloned an empty repository.
    Ignore this warning.
  3. Change into the new directory.
  4. Add the files for your guide:
    • If you are creating a new guide, create the structure of the guide with Publican:
      publican create --name NAME_OF_GUIDE
      Refer to the Publican User Guide for instructions on setting up a new document with Publican
    • If you are moving an existing project into Fedora, copy or move the files into this new directory. If the project was previously in a version-control system, be careful not to copy hidden directories such as .svn or .git directories. If the project was previously maintained in SVN or CVS and has multiple branches, only import the trunk at this stage. Import separate branches of the project into separate Git branches later, using the procedure described in Branching a document in git
  5. When you have created or imported your source files, initialize the local git repository. In the directory created earlier by the git clone command, run:
    git init
  6. Now check the files into the remote repository. In the directory created earlier by the git clone command, run:
    git add .
    git commit -m"Initial check-in"
    git push origin master

Add your guide to the Docs Project guides table

When you have some hosting space and have checked in your source code, add your details and details of your guide to the guides table in the Fedora wiki: https://fedoraproject.org/wiki/Docs_Project_guides_table#Guides

Add your guide to Transifex

Transifex is the Fedora Project's translation interface.

If you have a stable version of your guide, create a separate branch in which translators can work. This branch is named after the branch of Fedora for which the documentation is to be released. The master branch of your document is used only for developing the English text and should not contain POT or PO files. The process for branching a Fedora document for translation is outlined on the Fedora wiki: https://fedoraproject.org/wiki/Branching_a_document_in_git

The translation branch should contain the Publican pot directory and any language directories that you are importing. You should also run publican update_po to add a few other languages heavily translated in Fedora, including nl-NL (Dutch), pl-PL (Polish), pt-PT (Portuguese), sv-SE (Swedish), and uk-UA (Ukrainian).

When you have created the translation branch, follow the instructions on the Fedora wiki to request the Fedora Localization Team to add it to Transifex: https://fedoraproject.org/wiki/L10N/FAQ#How_do_I_add_a_module_to_Transifex.3F_.28.23add-transifex.29

If your guide is still under development, you do not need to create a branch for translations yet. Wait until you finalise the English content first.

Publish your guide on docs.fedoraproject.org

Check out the git repo that holds the content of the docs.fedoraproject.org website:

ssh://USERNAME@git.fedorahosted.org/git/docs/web.git

Build your book in Publican, then insert it into a logical place in the directory structure. Edit the top-level index.html file to link to your book in the formats and languages in which it is available.

This process is currently (May 2010) undergoing changes to accommodate the new web publishing features coming in Publican 2.0.