summary refs log tree commit diff
path: root/gnu/packages/ruby.scm
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-01-06 00:11:29 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-01-08 00:41:04 -0500
commitad6350ab8bb67fe0c2c815113f92a36945acdd11 (patch)
tree2193f9549acd3ef28d17be7903b2dc912017a471 /gnu/packages/ruby.scm
parenta2fb87fd0c469fc8568ab07b3081dbadb6bc4c58 (diff)
downloadguix-ad6350ab8bb67fe0c2c815113f92a36945acdd11.tar.gz
gnu: Add ruby-prawn-dev.
* gnu/packages/ruby.scm (ruby-prawn-dev): New variable.
Diffstat (limited to 'gnu/packages/ruby.scm')
-rw-r--r--gnu/packages/ruby.scm36
1 files changed, 36 insertions, 0 deletions
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index d6c5e91ab1..5a70c65118 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -10886,6 +10886,42 @@ support the tests found in Prawn, a pure Ruby PDF generation library.")
 functionality from Prawn.")
     (license license:gpl3+)))
 
+(define-public ruby-prawn-dev
+  (package
+    (name "ruby-prawn-dev")
+    (version "0.3.0")
+    (source (origin
+              (method url-fetch)
+              (uri (rubygems-uri "prawn-dev" version))
+              (sha256
+               (base32
+                "1hbzzgm0nwc6h8pyv8h9xx068bf676rispxcz4a0sm8nykz54z4x"))))
+    (build-system ruby-build-system)
+    (arguments
+     (list
+      #:tests? #f                       ;no test suite
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'extract-gemspec 'drop-rubocop-dependency
+            ;; Rubocop depends on Prawn.  Remove it to avoid the
+            ;; dependency cycle when using this tool to build
+            ;; Prawn components.
+            (lambda _
+              (substitute* "lib/prawn/dev/tasks.rb"
+                (("require 'rubocop/rake_task'")
+                 "")
+                (("RuboCop::RakeTask.new")
+                 ""))
+              (substitute* ".gemspec"
+                ((".*add.*dependency.*(rubocop|simplecov).*")
+                 "")))))))
+    (propagated-inputs (list ruby-rake ruby-rspec ruby-yard))
+    (synopsis "Shared tools for Prawn projects development")
+    (description "Prawn-dev contains tools to aid the development of the
+various Prawn projects.")
+    (home-page "https://prawnpdf.org/")
+    (license license:expat)))
+
 (define-public ruby-prawn
   ;; There hasn't been a new release since 2017/03/17.
   (let ((revision "1")