summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/ruby-xyz.scm177
1 files changed, 78 insertions, 99 deletions
diff --git a/gnu/packages/ruby-xyz.scm b/gnu/packages/ruby-xyz.scm
index 3099089cee9..7ac2a601491 100644
--- a/gnu/packages/ruby-xyz.scm
+++ b/gnu/packages/ruby-xyz.scm
@@ -1294,6 +1294,84 @@ configurable levels.")
1294 (license license:expat) 1294 (license license:expat)
1295 (home-page "https://github.com/owenh000/asciidoctor-multipage"))) 1295 (home-page "https://github.com/owenh000/asciidoctor-multipage")))
1296 1296
1297(define-public ruby-asciidoctor-pdf
1298 (package
1299 (name "ruby-asciidoctor-pdf")
1300 (version "2.3.19")
1301 (source
1302 (origin
1303 (method git-fetch) ;no test suite in the distributed gem
1304 (uri (git-reference
1305 (url "https://github.com/asciidoctor/asciidoctor-pdf")
1306 (commit (string-append "v" version))))
1307 (file-name (git-file-name name version))
1308 (sha256
1309 (base32
1310 "1l8my8jj4aww2yad80n6f7hs76lq5gicld8dy014pw90pk3x43mp"))
1311 (patches
1312 (search-patches
1313 "ruby-asciidoctor-pdf-support-prawn-svg-0_36.patch"))))
1314 (build-system ruby-build-system)
1315 (arguments
1316 (list
1317 #:test-target "spec"
1318 #:phases
1319 #~(modify-phases %standard-phases
1320 ;; The tests rely on the Gem being installed, so move the check
1321 ;; phase after the install phase.
1322 (delete 'check)
1323 (add-after 'install 'check
1324 (lambda* (#:key tests? #:allow-other-keys)
1325 (setenv "GEM_PATH" (string-append
1326 (getenv "GEM_PATH") ":"
1327 #$output "/lib/ruby/vendor_ruby"))
1328 (when tests?
1329 (invoke "rspec" "-t" "~visual" "-t" "~cli"
1330 "-t" "~network")))))))
1331 (native-inputs
1332 (list ruby-chunky-png
1333 ruby-coderay
1334 ruby-pdf-inspector
1335 ruby-rouge
1336 ruby-rspec))
1337 (propagated-inputs
1338 (list ruby-asciidoctor
1339 ruby-concurrent-ruby
1340 ruby-prawn
1341 ruby-prawn-icon
1342 ruby-prawn-svg
1343 ruby-prawn-table
1344 ruby-prawn-templates
1345 ruby-text-hyphen
1346 ruby-treetop
1347 ruby-ttfunk))
1348 (synopsis"AsciiDoc to Portable Document Format (PDF)} converter")
1349 (description "Asciidoctor PDF is an extension for Asciidoctor that
1350converts AsciiDoc documents to Portable Document Format (PDF) using the Prawn
1351PDF library. It has features such as:
1352@itemize
1353@item Direct AsciiDoc to PDF conversion
1354@item Configuration-driven theme (style and layout)
1355@item Scalable Vector Graphics (SVG) support
1356@item PDF document outline (i.e., bookmarks)
1357@item Table of contents page(s)
1358@item Document metadata (title, authors, subject, keywords, etc.)
1359@item Internal cross reference links
1360@item Syntax highlighting with Rouge, Pygments, or CodeRay
1361@item Page numbering
1362@item Customizable running content (header and footer)
1363@item
1364“Keep together” blocks (i.e., page breaks avoided in certain block content)
1365@item Orphaned section titles avoided
1366@item Autofit verbatim blocks (as permitted by base_font_size_min setting)
1367@item Table border settings honored
1368@item Font-based icons
1369@item Custom TrueType (TTF) fonts
1370@item Double-sided printing mode (margins alternate on recto and verso pages)
1371@end itemize")
1372 (home-page "https://asciidoctor.org/docs/asciidoctor-pdf")
1373 (license license:expat)))
1374
1297(define-public ruby-prawn-icon 1375(define-public ruby-prawn-icon
1298 (package 1376 (package
1299 (name "ruby-prawn-icon") 1377 (name "ruby-prawn-icon")
@@ -2016,105 +2094,6 @@ web pages.")
2016 (home-page "https://github.com/tigris/open-uri-cached") 2094 (home-page "https://github.com/tigris/open-uri-cached")
2017 (license license:expat))) 2095 (license license:expat)))
2018 2096
2019(define-public ruby-asciidoctor-pdf
2020 (package
2021 (name "ruby-asciidoctor-pdf")
2022 (version "2.3.24")
2023 (source
2024 (origin
2025 (method git-fetch) ;no test suite in the distributed gem
2026 (uri (git-reference
2027 (url "https://github.com/asciidoctor/asciidoctor-pdf")
2028 (commit (string-append "v" version))))
2029 (file-name (git-file-name name version))
2030 (sha256
2031 (base32
2032 "0njpbgfdwzw7rbjj5vg5xjmykm55x588fk437nvaqg6bq7pv66mw"))
2033 (patches
2034 (search-patches
2035 "ruby-asciidoctor-pdf-support-prawn-svg-0_36.patch"))))
2036 (build-system ruby-build-system)
2037 (arguments
2038 (list
2039 #:phases
2040 #~(modify-phases %standard-phases
2041 (add-after 'extract-gemspec 'relax-dependencies
2042 (lambda _
2043 (substitute* "asciidoctor-pdf.gemspec"
2044 (("~>") ">="))))
2045 ;; The tests rely on the Gem being installed, so move the check
2046 ;; phase after the install phase.
2047 (delete 'check)
2048 (add-after 'install 'check
2049 (lambda* (#:key tests? #:allow-other-keys)
2050 (setenv "GEM_PATH" (string-append
2051 (getenv "GEM_PATH") ":"
2052 #$output "/lib/ruby/vendor_ruby"))
2053 (when tests?
2054 (let ((skippedtests
2055 (list ;; Disable tests requiring write access
2056 "should render linear gradient in SVG"
2057 ;; Disable visual+cli tests requiring network access
2058 "should allow remote image in SVG to be read if allow"
2059 "should warn if remote image is missing and allow"
2060 "should replace video with poster image if allow"
2061 "should read remote image over"
2062 "should embed remote image")))
2063 (setenv "SPEC_OPTS"
2064 (string-append
2065 "--warnings" " "
2066 ;; Disable tests failing in the guix environment:
2067 "--example-matches "
2068 "'(^(?!.*(" (string-join skippedtests "|") ")).*)'")))
2069 ;; The Fontconfig error: No writable cache directories errors
2070 ;; are caused by our read-only test environment and are
2071 ;; non-failing
2072 (invoke "rspec" "-t" "~network")))))))
2073 (native-inputs
2074 (list poppler
2075 ruby-chunky-png
2076 ruby-coderay
2077 ruby-pdf-inspector
2078 ruby-rouge
2079 ruby-rspec))
2080 (propagated-inputs
2081 (list ruby-asciidoctor
2082 ruby-concurrent-ruby
2083 ruby-prawn
2084 ruby-prawn-icon
2085 ruby-prawn-svg
2086 ruby-prawn-table
2087 ruby-prawn-templates
2088 ruby-text-hyphen
2089 ruby-treetop
2090 ruby-ttfunk))
2091 (synopsis"AsciiDoc to Portable Document Format (PDF)} converter")
2092 (description "Asciidoctor PDF is an extension for Asciidoctor that
2093converts AsciiDoc documents to Portable Document Format (PDF) using the Prawn
2094PDF library. It has features such as:
2095@itemize
2096@item Direct AsciiDoc to PDF conversion
2097@item Configuration-driven theme (style and layout)
2098@item Scalable Vector Graphics (SVG) support
2099@item PDF document outline (i.e., bookmarks)
2100@item Table of contents page(s)
2101@item Document metadata (title, authors, subject, keywords, etc.)
2102@item Internal cross reference links
2103@item Syntax highlighting with Rouge, Pygments, or CodeRay
2104@item Page numbering
2105@item Customizable running content (header and footer)
2106@item
2107“Keep together” blocks (i.e., page breaks avoided in certain block content)
2108@item Orphaned section titles avoided
2109@item Autofit verbatim blocks (as permitted by base_font_size_min setting)
2110@item Table border settings honored
2111@item Font-based icons
2112@item Custom TrueType (TTF) fonts
2113@item Double-sided printing mode (margins alternate on recto and verso pages)
2114@end itemize")
2115 (home-page "https://asciidoctor.org/docs/asciidoctor-pdf")
2116 (license license:expat)))
2117
2118(define-public ruby-ast 2097(define-public ruby-ast
2119 (package 2098 (package
2120 (name "ruby-ast") 2099 (name "ruby-ast")