diff options
author | Xavier Noria <fxn@hashref.com> | 2016-12-18 07:23:59 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-12-18 07:23:59 -0800 |
commit | 4c5f1bc9d45eb721dfd942cbd1c4e837fdd01038 (patch) | |
tree | 0f9e06f0f3e6ca807fa5aea61c3b691b8f260256 /guides | |
parent | 3b055d2ca4d0836b2b32795dd2e0cfe5866c0ab0 (diff) | |
parent | 88792b1b2e22e7ce17c888b08ba06672c9a72013 (diff) | |
download | rails-4c5f1bc9d45eb721dfd942cbd1c4e837fdd01038.tar.gz rails-4c5f1bc9d45eb721dfd942cbd1c4e837fdd01038.tar.bz2 rails-4c5f1bc9d45eb721dfd942cbd1c4e837fdd01038.zip |
Merge pull request #27396 from bianjp/fix-kindlerb
Fix rake guides:generate:kindle error
Diffstat (limited to 'guides')
-rw-r--r-- | guides/Rakefile | 5 | ||||
-rw-r--r-- | guides/rails_guides/kindle.rb | 12 |
2 files changed, 7 insertions, 10 deletions
diff --git a/guides/Rakefile b/guides/Rakefile index bf501f6a64..f241cf5918 100644 --- a/guides/Rakefile +++ b/guides/Rakefile @@ -13,8 +13,9 @@ namespace :guides do desc "Generate .mobi file. The kindlegen executable must be in your PATH. You can get it for free from http://www.amazon.com/gp/feature.html?docId=1000765211" task :kindle do - unless `kindlerb -v 2> /dev/null` =~ /kindlerb 1.0.1/ - abort "Please `gem install kindlerb` and make sure you have `kindlegen` in your PATH" + require 'kindlerb' + unless Kindlerb.kindlegen_available? + abort "Please run `setupkindlerb` to install kindlegen" end unless `convert` =~ /convert/ abort "Please install ImageMagick`" diff --git a/guides/rails_guides/kindle.rb b/guides/rails_guides/kindle.rb index 4b73ae9518..5ac802c817 100644 --- a/guides/rails_guides/kindle.rb +++ b/guides/rails_guides/kindle.rb @@ -1,9 +1,6 @@ #!/usr/bin/env ruby -unless `which kindlerb` - abort "Please gem install kindlerb" -end - +require 'kindlerb' require "nokogiri" require "fileutils" require "yaml" @@ -28,10 +25,9 @@ module Kindle generate_document_metadata(mobi_outfile) puts "Creating MOBI document with kindlegen. This may take a while." - cmd = "kindlerb . > #{File.absolute_path logfile} 2>&1" - puts cmd - system(cmd) - puts "MOBI document generated at #{File.expand_path(mobi_outfile, output_dir)}" + if Kindlerb.run(output_dir) + puts "MOBI document generated at #{File.expand_path(mobi_outfile, output_dir)}" + end end end |