nixpkgs/pkgs/misc/lilypond/with-fonts.nix
Eric Bailey f497421e14
lilypond-with-fonts: use all fonts by default
Add a list of all fonts to openlilylib-fonts and use that as the default
fonts argument to lilypond-with-fonts.
2017-03-06 04:34:08 -06:00

35 lines
882 B
Nix

{ stdenv
, lndir
, lilypond
, openlilylib-fonts
, fonts ? openlilylib-fonts.all
}:
stdenv.mkDerivation {
name = "${lilypond.name}-with-fonts";
phases = "installPhase";
buildInputs = fonts;
nativeBuildInputs = [ lndir ];
installPhase = ''
local fontsdir=$out/share/lilypond/${lilypond.version}/fonts
install -m755 -d $fontsdir/otf
install -m755 -d $fontsdir/svg
${stdenv.lib.concatMapStrings (font: ''
lndir -silent ${font}/otf $fontsdir/otf
lndir -silent ${font}/svg $fontsdir/svg
'') fonts}
install -m755 -d $out/lib
lndir -silent ${lilypond}/lib $out/lib
install -m755 -d $out/share
lndir -silent ${lilypond}/share $out/share
install -m755 -Dt $out/bin ${lilypond}/bin/*
for p in $out/bin/*; do
substituteInPlace $p --replace "exec -a ${lilypond}" "exec -a $out"
done
'';
}