summary refs log tree commit diff
path: root/pkgs/misc/lilypond/with-fonts.nix
blob: c8657298e44d65522c128d4f68142b82a5ca0955 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{ stdenv, lndir, symlinkJoin, makeWrapper
, lilypond, openlilylib-fonts
, fonts ? openlilylib-fonts.all
}:

stdenv.lib.appendToName "with-fonts" (symlinkJoin {
  inherit (lilypond) name version;

  paths = [ lilypond ];

  buildInputs = [ makeWrapper lndir ];

  postBuild = ''
    local datadir="$out/share/lilypond/${lilypond.version}"
    local fontsdir="$datadir/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}

      for p in $out/bin/*; do
          wrapProgram "$p" --set LILYPOND_DATADIR "$datadir"
      done
  '';

  inherit (lilypond) meta;
})