forked from mirrors/nixpkgs
c76632804c
svn path=/nixos/trunk/; revision=13191
55 lines
1.5 KiB
Nix
55 lines
1.5 KiB
Nix
args : with args; with builderDefs;
|
|
let localDefs = builderDefs.passthru.function rec {
|
|
src = "";/* put a fetchurl here */
|
|
|
|
buildInputs = [mkfontdir mkfontscale ttmkfdir];
|
|
configureFlags = [];
|
|
fontDirs = import ./fonts.nix {inherit pkgs config;};
|
|
installPhase = FullDepEntry ("
|
|
list='';
|
|
for i in ${toString fontDirs} ; do
|
|
if [ -d \$i/ ]; then
|
|
list=\"\$list \$i\";
|
|
fi;
|
|
done
|
|
list=\$(find \$list -name fonts.dir);
|
|
fontDirs='';
|
|
for i in \$list ; do
|
|
fontDirs=\"\$fontDirs \$(dirname \$i)\";
|
|
done;
|
|
mkdir -p \$out/share/X11-fonts/;
|
|
for i in \$(find \$fontDirs -type f -o -type l); do
|
|
j=\${i##*/}
|
|
if ! test -e \$out/share/X11-fonts/\${j}; then
|
|
ln -s \$i \$out/share/X11-fonts/\${j};
|
|
fi;
|
|
done;
|
|
cd \$out/share/X11-fonts/
|
|
rm fonts.dir
|
|
rm fonts.scale
|
|
rm fonts.alias
|
|
mkfontdir
|
|
mkfontscale
|
|
mv fonts.scale fonts.scale.old
|
|
mv fonts.dir fonts.dir.old
|
|
ttmkfdir
|
|
cat fonts.scale.old >> fonts.scale
|
|
cat fonts.dir.old >> fonts.dir
|
|
rm fonts.dir.old
|
|
rm fonts.scale.old
|
|
cat \$( find ${fontalias}/ -name fonts.alias) >fonts.alias
|
|
") ["minInit" "addInputs"];
|
|
};
|
|
in with localDefs;
|
|
stdenv.mkDerivation rec {
|
|
name = "X11-fonts";
|
|
builder = writeScript (name + "-builder")
|
|
(textClosure localDefs
|
|
[installPhase doForceShare doPropagate]);
|
|
meta = {
|
|
description = "
|
|
Directory to contain all X11 fonts requested.
|
|
";
|
|
};
|
|
}
|