mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 23:46:13 -05:00
gnu: Add ruby-sassc.
* gnu/packages/ruby.scm (ruby-sassc): New variable.
This commit is contained in:
parent
8c15015779
commit
9efc888d97
1 changed files with 75 additions and 0 deletions
|
@ -7415,6 +7415,81 @@ (define-public ruby-sass
|
||||||
features that don't exist yet like variables, nesting, mixins and inheritance.")
|
features that don't exist yet like variables, nesting, mixins and inheritance.")
|
||||||
(license license:expat)))
|
(license license:expat)))
|
||||||
|
|
||||||
|
(define-public ruby-sassc
|
||||||
|
(package
|
||||||
|
(name "ruby-sassc")
|
||||||
|
(version "2.0.1")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (rubygems-uri "sassc" version))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1sr4825rlwsrl7xrsm0sgalcpf5zgp4i56dbi3qxfa9lhs8r6zh4"))))
|
||||||
|
(build-system ruby-build-system)
|
||||||
|
(arguments
|
||||||
|
'(#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
;; TODO: This would be better as a snippet, but the ruby-build-system
|
||||||
|
;; doesn't seem to support that
|
||||||
|
(add-after 'unpack 'remove-libsass
|
||||||
|
(lambda _
|
||||||
|
(delete-file-recursively "ext")
|
||||||
|
#t))
|
||||||
|
(add-after 'unpack 'dont-check-the-libsass-version
|
||||||
|
(lambda _
|
||||||
|
(substitute* "test/native_test.rb"
|
||||||
|
(("assert_equal.*Native\\.version") ""))
|
||||||
|
#t))
|
||||||
|
(add-after 'unpack 'remove-git-from-gemspec
|
||||||
|
(lambda _
|
||||||
|
(substitute* "sassc.gemspec"
|
||||||
|
(("`git ls-files -z`") "`find . -type f -print0 |sort -z`")
|
||||||
|
(("`git submodule --quiet foreach pwd`") "''"))
|
||||||
|
#t))
|
||||||
|
(add-after 'unpack 'remove-extensions-from-gemspec
|
||||||
|
(lambda _
|
||||||
|
(substitute* "sassc.gemspec"
|
||||||
|
(("\\[\"ext/Rakefile\"\\]") "[]"))
|
||||||
|
#t))
|
||||||
|
(add-after 'unpack 'fix-Rakefile
|
||||||
|
(lambda _
|
||||||
|
(substitute* "Rakefile"
|
||||||
|
(("test: 'libsass:compile'") ":test"))
|
||||||
|
#t))
|
||||||
|
(add-after 'unpack 'remove-unnecessary-dependencies
|
||||||
|
(lambda _
|
||||||
|
(substitute* "test/test_helper.rb"
|
||||||
|
(("require \"pry\"") ""))
|
||||||
|
#t))
|
||||||
|
(add-before 'build 'patch-native.rb
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
(substitute* "lib/sassc/native.rb"
|
||||||
|
((".*gem_root = spec.gem_dir") "")
|
||||||
|
(("ffi_lib .*\n")
|
||||||
|
(string-append
|
||||||
|
"ffi_lib '" (assoc-ref inputs "libsass") "/lib/libsass.so'")))
|
||||||
|
#t))
|
||||||
|
;; The gemspec still references the libsass files, so just keep the
|
||||||
|
;; one in the gem.
|
||||||
|
(delete 'extract-gemspec))))
|
||||||
|
(propagated-inputs
|
||||||
|
`(("ruby-ffi" ,ruby-ffi)
|
||||||
|
("ruby-rake" ,ruby-rake)))
|
||||||
|
(inputs
|
||||||
|
`(("libsass" ,libsass)))
|
||||||
|
(native-inputs
|
||||||
|
`(("bundler" ,bundler)
|
||||||
|
("ruby-minitest-around" ,ruby-minitest-around)
|
||||||
|
("ruby-test-construct" ,ruby-test-construct)))
|
||||||
|
(synopsis "Use libsss from Ruby")
|
||||||
|
(description
|
||||||
|
"This library provides Ruby q@acronym{FFI, Foreign Function Interface}
|
||||||
|
bindings to the libsass library. This enables rendering
|
||||||
|
@acronym{SASS,Syntactically awesome style sheets} from Ruby code.")
|
||||||
|
(home-page "https://github.com/sass/sassc-ruby")
|
||||||
|
(license license:expat)))
|
||||||
|
|
||||||
(define-public ruby-jekyll-sass-converter
|
(define-public ruby-jekyll-sass-converter
|
||||||
(package
|
(package
|
||||||
(name "ruby-jekyll-sass-converter")
|
(name "ruby-jekyll-sass-converter")
|
||||||
|
|
Loading…
Reference in a new issue