Release Notes Construction

Getting the Release Notes prepared and pushed for release is a multi-step process. It is actually fairly simple and not terribly time-consuming, but missteps can take you down the wrong path and consume a lot of time.

There are basically three parts:
 * 1) Build the HTML for whatever languages are to be packaged
 * 2) Build the RPM
 * 3) Push the package

HTML
Building the HTMLs is fairly straightforward. However, there are a few caveats: The precise steps depend on the current state of the Release Notes, the languages to be packaged, the latest changes to publican and transifex, etc. However, there is nothing magic here except assuring that correct html's are available in tmp/ /html.
 * Start with a fresh git clone. In particular, do not do a publican publish between the time you clone and the time you make the package.
 * Build only those languages to be packaged.
 * Check that you were successful.

RPM
This is the part where only a few people know what to do. Fortunately, it is the easiest.

Install doc-publican-rpm from http://jjmcd.fedorapeople.org/Download/doc-publican-rpm doc-publican-rpm has both man and info pages.
 * Choose the RPM for your architecture
 * Versions 2.x.y produce RPMs for GNOME 2, 3.x.y for GNOME 3

Review Numbering the Release Notes RPM.

When you cloned the release notes, git created them in a directory named release-notes by default. Rename this directory fedora-release-notes.

Create a scratch directory to work in and change to that directory. Check the release notes out from packaging and copy the specfile to the work directory, renamed fedora-release-notes.spec.old.

fedpkg co fedora-release-notes cd fedora-release-notes fedpkg switch-branch f15 cp fedora-release-notes.spec ../fedora-release-notes.spec.old cd ..

Now, edit the changelog in fedora-release-notes.spec.old to reflect the new rpm. Also, check the description. The description references the current Fedora version and might be incorrect. Note that the only things doc-publican-rpm uses from the old specfile is the changelog and description.

Create a new file, doc-publican-rpm.config containing five lines: For example: John J. McDonough jjmcd@fedoraproject.org /home/jjmcd/Projects/Release-Notes/F15/fedora-release-notes 14.96.0 1
 * 1) your name
 * 2) your email address
 * 3) The directory where publican.cfg resides
 * 4) the version number
 * 5) the release

Then execute doc-publican-rpm

Depending on the number of languages to be packaged, this may take a few minutes.

doc-publican-rpm will have created a number of interesting artifacts:
 * 1) ./fedora-release-notes.spec - this is your new specfile
 * 2) ./fedora-release-notes-w.x.y.tar.gz - this contains everything that needs to be installed
 * 3) ~/rpmbuild/RPMS/noarch/fedora-release-notes-w.x.y-z.fnn.noarch.rpm
 * 4) ~/rpmbuild/SRPMS/fedora-release-notes-w.x.y-z.fnn.src.rpm

Now test that there was nothing on your system that did strange things:

cd ~/rpmbuild/SRPMS koji build --scratch dist-f15 fedora-release-notes-w.x.y-z.fnn.src.rpm koji build --scratch dist-rawhide fedora-release-notes-w.x.y-z.fnn.src.rpm

Take the koji RPM, install it, and check it out with a few of the available languages. Ideally, install it on a stick or VM so you can check out a few of the major desktops; GNOME, KDE, XFCE and LXDE.

For the terminally curious, see What did doc-publican-rpm do.

Push
When you are happy that you have an RPM that will work, you can proceed to Getting_the_release_notes_to_Bodhi Note that you will use the specfile and tar from .. when you use the fedpkg checkout you did earlier. i.e. in the Getting_the_release_notes_to_Bodhi instructions, "somewhere/" is "../"