Ricardo Wurmus writes: > Christopher Baines writes: > >> * gnu/packages/ruby.scm (ruby-rbnacl): New variable. > […] >> + (add-after 'unpack 'remove-unnecessary-dependencies >> + (lambda _ >> + ;; Coveralls relates to a network service, and Rubocop to code >> + ;; linting and both are unnecessary to run the tests >> + (substitute* "Gemfile" >> + ((".*rubocop.*") "\n") >> + ((".*guard-rspec.*") "\n") >> + ((".*coveralls.*") "\n")) >> + (substitute* "spec/spec_helper.rb" >> + (("require \"coveralls\"") "") >> + (("Coveralls.wear!") "")))) > > Please end this phase with #T as substitute* has no defined return value. Ah, yes, I've tweaked the patch. >> + (add-after 'unpack 'use-libsodium-from-store >> + (lambda* (#:key inputs #:allow-other-keys) >> + (substitute* '("lib/rbnacl/init.rb" >> + "lib/rbnacl/sodium.rb") >> + (("\"sodium\", \"libsodium\\.so\\.18\", \"libsodium\\.so\\.23\"") >> + (string-append "\"" >> + (assoc-ref inputs "libsodium") "/lib/libsodium.so" >> + "\""))))) > > Same here. > > This regexp looks brittle. Can we do without the “18” and “23”? Sure, I've replaced it by "ffi_lib \\[.+\\]". That should do the trick without being specific about the filenames.