I’m trying out Avdi Grimm’s Quarto, a system for turning Markdown files into books in PDF, ePub and Mobi format. It’s an awesome idea, and Avdi’s books always look great.

Of course, Quarto has kind of an intimidating “install me first” list. Here’s what I needed to do:

  • I got to skip installing Git. If you need to install it, be sure to install XCode as well, which probably needs to happen from the Mac App Store these days.

  • brew update, because I hadn’t in awhile.

  • Install Pandoc. The package failed, so I had to use Homebrew to brew install haskell-platform, then cabal update, possibly cabal install cabal-install and finally cabal install pandoc. Haskell-platform can take 15 minutes to compile. If you need to install a new cabal-install (it’ll tell you if you do), that also takes awhile to compile. You can keep going, though - nothing else on this list depends on Pandoc until Quarto itself.

  • Install pygments. For me, that meant first installing pip (easy_install pip), a Python package manager, then pip install pygments.

  • Install xmllint (brew install libxml2).

  • Download and install PrinceXML, the free version. Unpacked, ran ./install.sh.

  • Install xmlstarlet (brew install xmlstarlet).

  • Install fontforge (brew install fontforge).

  • I didn’t need to install Ruby or RubyGems. If you do – well, try to make sure you get Ruby 1.9 or higher. This step could be difficult if you’re not already a Rubyist. We’re working on it :-(

  • gem install quarto

Looks like I’m not the first to notice that Quarto takes some installing :-)

Also looks like Quarto wouldn’t be too hard to put together a Homebrew recipe for.