aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Woodcroft <donttrustben@gmail.com>2018-02-05 11:59:20 +0100
committerChristopher Baines <mail@cbaines.net>2018-05-18 11:54:03 +0100
commite52a8254dc2a4ceb23a087b77f2a8e12cd610dd7 (patch)
tree3f1a0aa0e647ab41d13f6cf6b2f62b80ced10788
parent8849713632c9dc4c3ae0975a66b2208b5815001f (diff)
downloadguix-e52a8254dc2a4ceb23a087b77f2a8e12cd610dd7.tar
guix-e52a8254dc2a4ceb23a087b77f2a8e12cd610dd7.tar.gz
gnu: Add ruby-coffee-rails.
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/patches/ruby-coffee-rails-fix-rakefile.patch20
-rw-r--r--gnu/packages/rails.scm31
3 files changed, 52 insertions, 0 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 5e9961d212..a6c04107d6 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1077,6 +1077,7 @@ dist_patch_DATA = \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rsem-makefile.patch \
%D%/packages/patches/rtags-separate-rct.patch \
+ %D%/packages/patches/ruby-coffee-rails-fix-rakefile.patch \
%D%/packages/patches/ruby-rubygems-276-for-ruby24.patch \
%D%/packages/patches/ruby-concurrent-ignore-broken-test.patch \
%D%/packages/patches/ruby-concurrent-test-arm.patch \
diff --git a/gnu/packages/patches/ruby-coffee-rails-fix-rakefile.patch b/gnu/packages/patches/ruby-coffee-rails-fix-rakefile.patch
new file mode 100644
index 0000000000..bd98812da7
--- /dev/null
+++ b/gnu/packages/patches/ruby-coffee-rails-fix-rakefile.patch
@@ -0,0 +1,20 @@
+diff --git a/Rakefile b/Rakefile
+index ae682dc..fdf146d 100644
+--- a/Rakefile
++++ b/Rakefile
+@@ -13,12 +13,12 @@ end
+ task default: :test
+
+ specname = "coffee-rails.gemspec"
+-deps = `git ls-files`.split("\n") - [specname]
++deps = `find . -type f -print0 |sort`.split("\n") - [specname]
+
+ file specname => deps do
+ files = ["CHANGELOG.md", "MIT-LICENSE", "README.md"] + `git ls-files -- lib`.split("\n")
+- test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
+- executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
++ test_files = `ls test/*`.split("\n")
++ executables = []
+
+ require 'erb'
+
diff --git a/gnu/packages/rails.scm b/gnu/packages/rails.scm
index 3db9be3855..e8b7620b9b 100644
--- a/gnu/packages/rails.scm
+++ b/gnu/packages/rails.scm
@@ -20,6 +20,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
#:use-module (guix packages)
+ #:use-module (gnu packages)
#:use-module (gnu packages ruby)
#:use-module (guix build-system ruby))
@@ -409,3 +410,33 @@ API.")
"Sass adapter for the Rails asset pipeline.")
(home-page "https://github.com/rails/sass-rails")
(license license:expat)))
+
+(define-public ruby-coffee-rails
+ (package
+ (name "ruby-coffee-rails")
+ (version "4.2.1")
+ (source
+ (origin
+ (method url-fetch)
+ ;; Tests are not distributed at rubygems.org so download from GitHub
+ ;; instead.
+ (uri (string-append "https://github.com/rails/coffee-rails/archive/v"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0a7cac67n1ndky3n8b1vdrdq67cahq6sn76saiw5xgzd296b3zjy"))
+ (patches (search-patches "ruby-coffee-rails-fix-rakefile.patch"))))
+ (build-system ruby-build-system)
+ (arguments
+ `(#:tests? #f)) ; Tests require rails, disable to precent circular dependency.
+ (propagated-inputs
+ `(("ruby-coffee-script" ,ruby-coffee-script)
+ ("ruby-railties" ,ruby-railties)))
+ (synopsis
+ "CoffeeScript adapter for the Rails asset pipeline.")
+ (description
+ "CoffeeScript adapter for the Rails asset pipeline.")
+ (home-page
+ "https://github.com/rails/coffee-rails")
+ (license license:expat)))