From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([209.51.188.92]:38389) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gvS30-0001G7-HW for guix-patches@gnu.org; Sun, 17 Feb 2019 14:24:20 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gvS2t-0007j4-Bs for guix-patches@gnu.org; Sun, 17 Feb 2019 14:24:15 -0500 Received: from debbugs.gnu.org ([209.51.188.43]:52383) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gvS2r-0007gA-RW for guix-patches@gnu.org; Sun, 17 Feb 2019 14:24:11 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1gvS2r-00077U-MI for guix-patches@gnu.org; Sun, 17 Feb 2019 14:24:09 -0500 Subject: [bug#34514] [PATCH 18/34] gnu: Add ruby-sassc. Resent-Message-ID: From: Christopher Baines Date: Sun, 17 Feb 2019 19:22:58 +0000 Message-Id: <20190217192314.5666-18-mail@cbaines.net> In-Reply-To: <20190217192314.5666-1-mail@cbaines.net> References: <87sgwm44a9.fsf@cbaines.net> <20190217192314.5666-1-mail@cbaines.net> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+kyle=kyleam.com@gnu.org Sender: "Guix-patches" To: 34514@debbugs.gnu.org * gnu/packages/ruby.scm (ruby-sassc): New variable. --- gnu/packages/ruby.scm | 74 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index dbfd601d31..ab17c20d62 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -7340,6 +7340,80 @@ the @file{spec} directory.") features that don't exist yet like variables, nesting, mixins and inheritance.") (license license:expat))) +(define-public ruby-sassc + (package + (name "ruby-sassc") + (version "2.0.0") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "sassc" version)) + (sha256 + (base32 + "0xw8wyr27108x4gbidvb71ngxvn00h6c11xsrxby4c6h92zs06dn")))) + (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'"))))) + ;; 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 (package (name "ruby-jekyll-sass-converter") -- 2.20.1