The rubygem-asciidoctor rpms
Find a file
Fedora Release Engineering 53bc01f6bc - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
Signed-off-by: Fedora Release Engineering <releng@fedoraproject.org>
2018-02-09 13:33:47 +00:00
.gitignore Update to 1.5.6.1 2017-08-24 13:44:46 +02:00
README.adoc update README 2015-05-11 15:28:56 -06:00
rubygem-asciidoctor.spec - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild 2018-02-09 13:33:47 +00:00
sources Update to 1.5.6.1 2017-08-24 13:44:46 +02:00
test-install resolves #4 upgrade package to Asciidoctor 0.1.4 2013-09-22 17:40:13 -06:00

This repository is the official host of the build materials to create the Fedora RPM package for the Asciidoctor Ruby Gem. The RPM package is named rubygem-asciidoctor.

While this RPM spec was developed specifically for Fedora 18 and above, it may be useful for other RPM-based systems.

Build the Asciidoctor RPM

If you want to build the RPM on your own machine, follow the instructions in this section. If you want to test a pre-built package, skip to the next section on testing the RPM.

Preparing your environment

You first need to install the packages necessary to build the RPM. Begin by installing the @fedora-packager group (as root or using sudo):

yum install -y @fedora-packager wget

Next, clone this repository and switch to it:

git clone git://github.com/asciidoctor/rubygem-asciidoctor-rpm.git
cd rubygem-asciidoctor-rpm

Finally, install the packages that this build requires (as root or using sudo):

yum-builddep rubygem-asciidoctor.spec

Next, we need to put the package source and patches in place.

Preparing the sources

You can build RPMs as a non-privileged user, though you need to prepare the directories first. Lets use the directory rpmbuild in our $HOME directory:

echo "%_topdir %(echo $HOME)/rpmbuild" > $HOME/.rpmmacros

Youll also need to create all the required folders:

mkdir -p $HOME/rpmbuild/{BUILD,BUILDROOT,RPMS,SOURCES,SPECS,SRPMS}

Next, grab the Asciidoctor gem (the sources) and put it into the $HOME/rpmbuild/SOURCES directory:

wget -O $HOME/rpmbuild/SOURCES/asciidoctor-1.5.2.gem http://rubygems.org/gems/asciidoctor-1.5.2.gem

Finally, copy the .patch files from this repository to the same directory:

cp *.patch $HOME/rpmbuild/SOURCES/

Youre now ready to build the RPM.

Building the RPM

With everything in place, building the RPM is easy!

rpmbuild -ba rubygem-asciidoctor.spec

If all goes well, both the binary and source RPMs will emerge in the $HOME/rpmbuild/RPMS/noarch and $HOME/rpmbuild/SRPMS directories, respectively.

Alternatively, you can build directly from the SRPM.

wget -P srpms http://kojipkgs.fedoraproject.org/packages/rubygem-asciidoctor/1.5.2/1.fc21/src/rubygem-asciidoctor-1.5.2-1.fc21.src.rpm
rpmbuild --rebuild srpms/rubygem-asciidoctor-1.5.2-1.fc21.src.rpm

The SPRMs are stored with the builds in the koji build system.

Installing the RPM

Theres nothing special about installing this RPM. I recommend using yum because it will install any dependencies that the package requires (though you should already have them if you built the RPM).

yum install -y $HOME/rpmbuild/RPMS/noarch/rubygem-asciidoctor-1.5.2.rpm

Now, its time to start using Asciidoctor!

Test the Asciidoctor RPM and report feedback

Before the Asciidoctor package (rubygem-asciidoctor) can be included in the Fedora distribution, it must be tested by users and receive karma via the Bohdi system. One way to provide this feedback is to use the fedora-easy-karma tool.

Enable the updates-testing repository temporarily

In a terminal, type:

yum install -y rubygem-asciidoctor --enablerepo=updates-testing

This command will download and install the asciidoctor package.

Test the Asciidoctor API

First, lets test using Asciidoctor as a Ruby library.

  1. On your computer, create a new file and name it asciidoctor-test.rb

  2. Copy and paste the following code into the file:

    require 'asciidoctor'
    content = "= My First Document\n\nRender me some **HTML**!"
    puts Asciidoctor.render content, :header_footer => true
  3. Save the file.

  4. In a terminal, navigate to the directory where you saved asciidoctor-test.rb and type the following command to execute the file with Ruby:

    ruby asciidoctor-test.rb

    You should see this output in your terminal.

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <meta name="generator" content="Asciidoctor 1.5.2">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>My First Document</title>
    <link rel="stylesheet" href="./asciidoctor.css">
    </head>
    <body class="article">
    <div id="header">
    <h1>My First Document</h1>
    </div>
    <div id="content">
    <div id="preamble">
    <div class="sectionbody">
    <div class="paragraph">
    <p>Render me some <strong>HTML</strong>!</p>
    </div>
    </div>
    </div>
    </div>
    <div id="footer">
    <div id="footer-text">
    Last updated 2013-09-22 17:35:41 MDT
    </div>
    </div>
    </body>
    </html>
  5. You can render the output as HTML using:

    ruby asciidoctor-test.rb > asciidoctor-test.html
  6. Open your browser to see the result.

  7. Alternatively, if youre using Gnome, type:

    gnome-open asciidoctor-test.html

    A new tab should open in your current browser session.

Test the Asciidoctor CLI

Now lets test using the Asciidoctor executable (i.e., CLI).

  1. On your computer, create a new file and name it test.adoc

  2. Copy and paste the following markup into the file:

    = My Second Document
    Your Name
    
    AsciiDoc is _rockin'_ docs.
  3. Save the file

  4. In a terminal, navigate to the directory where you saved test.adoc and type the following command to run it through the Asciidoctor processor:

    asciidoctor test.adoc

    You shouldnt see any output in your terminal. Thats because it writes the output to the file test.html.

  5. Open your browser to see the result.

  6. Alternatively, if youre using Gnome, type:

    gnome-open test.html

    A new tab should open in your current browser session.

Provide feedback with fedora-easy-karma

  1. If you dont have fedora-easy-karma installed on your computer, type the following command in a terminal.

    yum install -y fedora-easy-karma
  2. Once fedora-easy-karma is installed, run it in the terminal.

    fedora-easy-karma --fas-username <yourFASaccount> *asciidoctor

    To be on the safe side, include the flag for your FAS account when you start fedora-easy-karma. Once fedora-easy-karma runs, you will not be able to switch accounts.

    Note
    It may take fedora-easy-karma several minutes to fetch the list of packages in updates-testing.

    When fedora-easy-karma finds rubygem-asciidoctor, it will display a summary of the package and prompt you to give -1 (negative), 0 (neutral), or 1 (postive) karma to the package. For more information about providing karma for packages and how to comment on packages, review the Fedora feedback guidelines.

  3. Enter your karma rating.

  4. Next, you will be asked to provide additional, detailed feedback. Please comment whether the package worked as expected and you successfully used it, if you think you may have encountered an error, but arent sure, or if you definitely encountered a bug.

  5. When prompted, enter your FAS password.

  6. W00t! The feedback process is complete.

  7. You can verify your feedback was recorded by visiting the Bodhi updates page.