3
0
Fork 0
forked from mirrors/nixpkgs

vagrant: fix Ruby and libffi libraries on Darwin

On Darwin, keep the Ruby and libffi libraries and binaries bundled
with Vagrant instead of linking to the Nix ones, to avoid errors about
libraries not found.
This commit is contained in:
Diego Zamboni 2017-10-04 21:50:21 +02:00
parent dea58ce228
commit 97d9f0b5bb

View file

@ -85,6 +85,22 @@ in stdenv.mkDerivation rec {
ln -s ${openssl.bin}/bin/c_rehash opt/vagrant/embedded/bin
ln -s ${openssl.bin}/bin/openssl opt/vagrant/embedded/bin
# libiconv: iconv
rm opt/vagrant/embedded/bin/iconv
ln -s ${libiconv}/bin/iconv opt/vagrant/embedded/bin
# libxml: xml2-config, xmlcatalog, xmllint
rm opt/vagrant/embedded/bin/{xml2-config,xmlcatalog,xmllint}
ln -s ${libxml2.dev}/bin/xml2-config opt/vagrant/embedded/bin
ln -s ${libxml2.bin}/bin/xmlcatalog opt/vagrant/embedded/bin
ln -s ${libxml2.bin}/bin/xmllint opt/vagrant/embedded/bin
# libxslt: xslt-config, xsltproc
rm opt/vagrant/embedded/bin/{xslt-config,xsltproc}
ln -s ${libxslt.dev}/bin/xslt-config opt/vagrant/embedded/bin
ln -s ${libxslt.bin}/bin/xsltproc opt/vagrant/embedded/bin
'' + (stdenv.lib.optionalString (! stdenv.isDarwin) ''
# ruby: erb, gem, irb, rake, rdoc, ri, ruby
rm opt/vagrant/embedded/bin/{erb,gem,irb,rake,rdoc,ri,ruby}
ln -s ${ruby}/bin/erb opt/vagrant/embedded/bin
@ -101,24 +117,10 @@ in stdenv.mkDerivation rec {
ln -s $lib opt/vagrant/embedded/lib/''${lib##*/}
done
# libiconv: iconv
rm opt/vagrant/embedded/bin/iconv
ln -s ${libiconv}/bin/iconv opt/vagrant/embedded/bin
# libxml: xml2-config, xmlcatalog, xmllint
rm opt/vagrant/embedded/bin/{xml2-config,xmlcatalog,xmllint}
ln -s ${libxml2.dev}/bin/xml2-config opt/vagrant/embedded/bin
ln -s ${libxml2.bin}/bin/xmlcatalog opt/vagrant/embedded/bin
ln -s ${libxml2.bin}/bin/xmllint opt/vagrant/embedded/bin
# libxslt: xslt-config, xsltproc
rm opt/vagrant/embedded/bin/{xslt-config,xsltproc}
ln -s ${libxslt.dev}/bin/xslt-config opt/vagrant/embedded/bin
ln -s ${libxslt.bin}/bin/xsltproc opt/vagrant/embedded/bin
# libffi
ln -s ${libffi}/lib/libffi.so.6 opt/vagrant/embedded/lib/libffi.so.6
'') + ''
mkdir -p "$out"
cp -r opt "$out"
cp -r usr/bin "$out"