|
|
|
@ -14,250 +14,252 @@ Low number means high priority.
|
|
|
|
|
|
|
|
|
|
*/ |
|
|
|
|
|
|
|
|
|
{ config, lib, pkgs, ... }: |
|
|
|
|
{ config, pkgs, lib, ... }: |
|
|
|
|
|
|
|
|
|
with lib; |
|
|
|
|
|
|
|
|
|
let cfg = config.fonts.fontconfig; |
|
|
|
|
|
|
|
|
|
fcBool = x: "<bool>" + (boolToString x) + "</bool>"; |
|
|
|
|
|
|
|
|
|
# back-supported fontconfig version and package |
|
|
|
|
# version is used for font cache generation |
|
|
|
|
supportVersion = "210"; |
|
|
|
|
supportPkg = pkgs."fontconfig_${supportVersion}"; |
|
|
|
|
|
|
|
|
|
# latest fontconfig version and package |
|
|
|
|
# version is used for configuration folder name, /etc/fonts/VERSION/ |
|
|
|
|
# note: format differs from supportVersion and can not be used with makeCacheConf |
|
|
|
|
latestVersion = pkgs.fontconfig.configVersion; |
|
|
|
|
latestPkg = pkgs.fontconfig; |
|
|
|
|
|
|
|
|
|
# supported version fonts.conf |
|
|
|
|
supportFontsConf = pkgs.makeFontsConf { fontconfig = supportPkg; fontDirectories = config.fonts.fonts; }; |
|
|
|
|
|
|
|
|
|
# configuration file to read fontconfig cache |
|
|
|
|
# version dependent |
|
|
|
|
# priority 0 |
|
|
|
|
cacheConfSupport = makeCacheConf { version = supportVersion; }; |
|
|
|
|
cacheConfLatest = makeCacheConf {}; |
|
|
|
|
|
|
|
|
|
# generate the font cache setting file for a fontconfig version |
|
|
|
|
# use latest when no version is passed |
|
|
|
|
makeCacheConf = { version ? null }: |
|
|
|
|
let |
|
|
|
|
fcPackage = if version == null |
|
|
|
|
then "fontconfig" |
|
|
|
|
else "fontconfig_${version}"; |
|
|
|
|
makeCache = fontconfig: pkgs.makeFontsCache { inherit fontconfig; fontDirectories = config.fonts.fonts; }; |
|
|
|
|
cache = makeCache pkgs.${fcPackage}; |
|
|
|
|
cache32 = makeCache pkgs.pkgsi686Linux.${fcPackage}; |
|
|
|
|
in |
|
|
|
|
pkgs.writeText "fc-00-nixos-cache.conf" '' |
|
|
|
|
<?xml version='1.0'?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> |
|
|
|
|
<fontconfig> |
|
|
|
|
<!-- Font directories --> |
|
|
|
|
${concatStringsSep "\n" (map (font: "<dir>${font}</dir>") config.fonts.fonts)} |
|
|
|
|
<!-- Pre-generated font caches --> |
|
|
|
|
<cachedir>${cache}</cachedir> |
|
|
|
|
${optionalString (pkgs.stdenv.isx86_64 && cfg.cache32Bit) '' |
|
|
|
|
<cachedir>${cache32}</cachedir> |
|
|
|
|
''} |
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# rendering settings configuration file |
|
|
|
|
# priority 10 |
|
|
|
|
renderConf = pkgs.writeText "fc-10-nixos-rendering.conf" '' |
|
|
|
|
let |
|
|
|
|
cfg = config.fonts.fontconfig; |
|
|
|
|
|
|
|
|
|
fcBool = x: "<bool>" + (boolToString x) + "</bool>"; |
|
|
|
|
|
|
|
|
|
# back-supported fontconfig version and package |
|
|
|
|
# version is used for font cache generation |
|
|
|
|
supportVersion = "210"; |
|
|
|
|
supportPkg = pkgs."fontconfig_${supportVersion}"; |
|
|
|
|
|
|
|
|
|
# latest fontconfig version and package |
|
|
|
|
# version is used for configuration folder name, /etc/fonts/VERSION/ |
|
|
|
|
# note: format differs from supportVersion and can not be used with makeCacheConf |
|
|
|
|
latestVersion = pkgs.fontconfig.configVersion; |
|
|
|
|
latestPkg = pkgs.fontconfig; |
|
|
|
|
|
|
|
|
|
# supported version fonts.conf |
|
|
|
|
supportFontsConf = pkgs.makeFontsConf { fontconfig = supportPkg; fontDirectories = config.fonts.fonts; }; |
|
|
|
|
|
|
|
|
|
# configuration file to read fontconfig cache |
|
|
|
|
# version dependent |
|
|
|
|
# priority 0 |
|
|
|
|
cacheConfSupport = makeCacheConf { version = supportVersion; }; |
|
|
|
|
cacheConfLatest = makeCacheConf {}; |
|
|
|
|
|
|
|
|
|
# generate the font cache setting file for a fontconfig version |
|
|
|
|
# use latest when no version is passed |
|
|
|
|
makeCacheConf = { version ? null }: |
|
|
|
|
let |
|
|
|
|
fcPackage = if version == null |
|
|
|
|
then "fontconfig" |
|
|
|
|
else "fontconfig_${version}"; |
|
|
|
|
makeCache = fontconfig: pkgs.makeFontsCache { inherit fontconfig; fontDirectories = config.fonts.fonts; }; |
|
|
|
|
cache = makeCache pkgs."${fcPackage}"; |
|
|
|
|
cache32 = makeCache pkgs.pkgsi686Linux."${fcPackage}"; |
|
|
|
|
in |
|
|
|
|
pkgs.writeText "fc-00-nixos-cache.conf" '' |
|
|
|
|
<?xml version='1.0'?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> |
|
|
|
|
<fontconfig> |
|
|
|
|
|
|
|
|
|
<!-- Default rendering settings --> |
|
|
|
|
<match target="pattern"> |
|
|
|
|
<edit mode="append" name="hinting"> |
|
|
|
|
${fcBool cfg.hinting.enable} |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="autohint"> |
|
|
|
|
${fcBool cfg.hinting.autohint} |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="hintstyle"> |
|
|
|
|
<const>hintslight</const> |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="antialias"> |
|
|
|
|
${fcBool cfg.antialias} |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="rgba"> |
|
|
|
|
<const>${cfg.subpixel.rgba}</const> |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="lcdfilter"> |
|
|
|
|
<const>lcd${cfg.subpixel.lcdfilter}</const> |
|
|
|
|
</edit> |
|
|
|
|
</match> |
|
|
|
|
|
|
|
|
|
${optionalString (cfg.dpi != 0) '' |
|
|
|
|
<match target="pattern"> |
|
|
|
|
<edit name="dpi" mode="assign"> |
|
|
|
|
<double>${toString cfg.dpi}</double> |
|
|
|
|
</edit> |
|
|
|
|
</match> |
|
|
|
|
<!-- Font directories --> |
|
|
|
|
${concatStringsSep "\n" (map (font: "<dir>${font}</dir>") config.fonts.fonts)} |
|
|
|
|
<!-- Pre-generated font caches --> |
|
|
|
|
<cachedir>${cache}</cachedir> |
|
|
|
|
${optionalString (pkgs.stdenv.isx86_64 && cfg.cache32Bit) '' |
|
|
|
|
<cachedir>${cache32}</cachedir> |
|
|
|
|
''} |
|
|
|
|
|
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# local configuration file |
|
|
|
|
# priority 51 |
|
|
|
|
localConf = pkgs.writeText "fc-local.conf" cfg.localConf; |
|
|
|
|
|
|
|
|
|
# default fonts configuration file |
|
|
|
|
# priority 52 |
|
|
|
|
defaultFontsConf = |
|
|
|
|
let genDefault = fonts: name: |
|
|
|
|
optionalString (fonts != []) '' |
|
|
|
|
<alias> |
|
|
|
|
<family>${name}</family> |
|
|
|
|
<prefer> |
|
|
|
|
${concatStringsSep "" |
|
|
|
|
(map (font: '' |
|
|
|
|
<family>${font}</family> |
|
|
|
|
'') fonts)} |
|
|
|
|
</prefer> |
|
|
|
|
</alias> |
|
|
|
|
''; |
|
|
|
|
in |
|
|
|
|
pkgs.writeText "fc-52-nixos-default-fonts.conf" '' |
|
|
|
|
<?xml version='1.0'?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> |
|
|
|
|
<fontconfig> |
|
|
|
|
|
|
|
|
|
<!-- Default fonts --> |
|
|
|
|
${genDefault cfg.defaultFonts.sansSerif "sans-serif"} |
|
|
|
|
|
|
|
|
|
${genDefault cfg.defaultFonts.serif "serif"} |
|
|
|
|
|
|
|
|
|
${genDefault cfg.defaultFonts.monospace "monospace"} |
|
|
|
|
|
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# bitmap font options |
|
|
|
|
# priority 53 |
|
|
|
|
rejectBitmaps = pkgs.writeText "fc-53-nixos-bitmaps.conf" '' |
|
|
|
|
<?xml version="1.0"?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> |
|
|
|
|
<fontconfig> |
|
|
|
|
|
|
|
|
|
${optionalString (!cfg.allowBitmaps) '' |
|
|
|
|
<!-- Reject bitmap fonts --> |
|
|
|
|
<selectfont> |
|
|
|
|
<rejectfont> |
|
|
|
|
<pattern> |
|
|
|
|
<patelt name="scalable"><bool>false</bool></patelt> |
|
|
|
|
</pattern> |
|
|
|
|
</rejectfont> |
|
|
|
|
</selectfont> |
|
|
|
|
''} |
|
|
|
|
|
|
|
|
|
<!-- Use embedded bitmaps in fonts like Calibri? --> |
|
|
|
|
<match target="font"> |
|
|
|
|
<edit name="embeddedbitmap" mode="assign"> |
|
|
|
|
${fcBool cfg.useEmbeddedBitmaps} |
|
|
|
|
# rendering settings configuration file |
|
|
|
|
# priority 10 |
|
|
|
|
renderConf = pkgs.writeText "fc-10-nixos-rendering.conf" '' |
|
|
|
|
<?xml version='1.0'?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> |
|
|
|
|
<fontconfig> |
|
|
|
|
|
|
|
|
|
<!-- Default rendering settings --> |
|
|
|
|
<match target="pattern"> |
|
|
|
|
<edit mode="append" name="hinting"> |
|
|
|
|
${fcBool cfg.hinting.enable} |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="autohint"> |
|
|
|
|
${fcBool cfg.hinting.autohint} |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="hintstyle"> |
|
|
|
|
<const>hintslight</const> |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="antialias"> |
|
|
|
|
${fcBool cfg.antialias} |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="rgba"> |
|
|
|
|
<const>${cfg.subpixel.rgba}</const> |
|
|
|
|
</edit> |
|
|
|
|
<edit mode="append" name="lcdfilter"> |
|
|
|
|
<const>lcd${cfg.subpixel.lcdfilter}</const> |
|
|
|
|
</edit> |
|
|
|
|
</match> |
|
|
|
|
|
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# reject Type 1 fonts |
|
|
|
|
# priority 53 |
|
|
|
|
rejectType1 = pkgs.writeText "fc-53-nixos-reject-type1.conf" '' |
|
|
|
|
<?xml version="1.0"?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> |
|
|
|
|
<fontconfig> |
|
|
|
|
|
|
|
|
|
<!-- Reject Type 1 fonts --> |
|
|
|
|
<selectfont> |
|
|
|
|
<rejectfont> |
|
|
|
|
<pattern> |
|
|
|
|
<patelt name="fontformat"><string>Type 1</string></patelt> |
|
|
|
|
</pattern> |
|
|
|
|
</rejectfont> |
|
|
|
|
</selectfont> |
|
|
|
|
|
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# fontconfig configuration package |
|
|
|
|
confPkg = pkgs.runCommand "fontconfig-conf" { preferLocalBuild = true; } '' |
|
|
|
|
support_folder=$out/etc/fonts |
|
|
|
|
latest_folder=$out/etc/fonts/${latestVersion} |
|
|
|
|
|
|
|
|
|
mkdir -p $support_folder/conf.d |
|
|
|
|
mkdir -p $latest_folder/conf.d |
|
|
|
|
|
|
|
|
|
# fonts.conf |
|
|
|
|
ln -s ${supportFontsConf} $support_folder/fonts.conf |
|
|
|
|
ln -s ${latestPkg.out}/etc/fonts/fonts.conf \ |
|
|
|
|
$latest_folder/fonts.conf |
|
|
|
|
|
|
|
|
|
# fontconfig default config files |
|
|
|
|
ln -s ${supportPkg.out}/etc/fonts/conf.d/*.conf \ |
|
|
|
|
$support_folder/conf.d/ |
|
|
|
|
ln -s ${latestPkg.out}/etc/fonts/conf.d/*.conf \ |
|
|
|
|
$latest_folder/conf.d/ |
|
|
|
|
|
|
|
|
|
# update latest 51-local.conf path to look at the latest local.conf |
|
|
|
|
rm $latest_folder/conf.d/51-local.conf |
|
|
|
|
|
|
|
|
|
substitute ${latestPkg.out}/etc/fonts/conf.d/51-local.conf \ |
|
|
|
|
$latest_folder/conf.d/51-local.conf \ |
|
|
|
|
--replace local.conf /etc/fonts/${latestVersion}/local.conf |
|
|
|
|
|
|
|
|
|
# 00-nixos-cache.conf |
|
|
|
|
ln -s ${cacheConfSupport} \ |
|
|
|
|
$support_folder/conf.d/00-nixos-cache.conf |
|
|
|
|
ln -s ${cacheConfLatest} $latest_folder/conf.d/00-nixos-cache.conf |
|
|
|
|
|
|
|
|
|
# 10-nixos-rendering.conf |
|
|
|
|
ln -s ${renderConf} $support_folder/conf.d/10-nixos-rendering.conf |
|
|
|
|
ln -s ${renderConf} $latest_folder/conf.d/10-nixos-rendering.conf |
|
|
|
|
|
|
|
|
|
# 50-user.conf |
|
|
|
|
${optionalString (! cfg.includeUserConf) '' |
|
|
|
|
rm $support_folder/conf.d/50-user.conf |
|
|
|
|
rm $latest_folder/conf.d/50-user.conf |
|
|
|
|
''} |
|
|
|
|
|
|
|
|
|
# local.conf (indirect priority 51) |
|
|
|
|
${optionalString (cfg.localConf != "") '' |
|
|
|
|
ln -s ${localConf} $support_folder/local.conf |
|
|
|
|
ln -s ${localConf} $latest_folder/local.conf |
|
|
|
|
''} |
|
|
|
|
|
|
|
|
|
# 52-nixos-default-fonts.conf |
|
|
|
|
ln -s ${defaultFontsConf} $support_folder/conf.d/52-nixos-default-fonts.conf |
|
|
|
|
ln -s ${defaultFontsConf} $latest_folder/conf.d/52-nixos-default-fonts.conf |
|
|
|
|
|
|
|
|
|
# 53-nixos-bitmaps.conf |
|
|
|
|
ln -s ${rejectBitmaps} $support_folder/conf.d/53-nixos-bitmaps.conf |
|
|
|
|
ln -s ${rejectBitmaps} $latest_folder/conf.d/53-nixos-bitmaps.conf |
|
|
|
|
|
|
|
|
|
${optionalString (! cfg.allowType1) '' |
|
|
|
|
# 53-nixos-reject-type1.conf |
|
|
|
|
ln -s ${rejectType1} $support_folder/conf.d/53-nixos-reject-type1.conf |
|
|
|
|
ln -s ${rejectType1} $latest_folder/conf.d/53-nixos-reject-type1.conf |
|
|
|
|
${optionalString (cfg.dpi != 0) '' |
|
|
|
|
<match target="pattern"> |
|
|
|
|
<edit name="dpi" mode="assign"> |
|
|
|
|
<double>${toString cfg.dpi}</double> |
|
|
|
|
</edit> |
|
|
|
|
</match> |
|
|
|
|
''} |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# Package with configuration files |
|
|
|
|
# this merge all the packages in the fonts.fontconfig.confPackages list |
|
|
|
|
fontconfigEtc = pkgs.buildEnv { |
|
|
|
|
name = "fontconfig-etc"; |
|
|
|
|
paths = cfg.confPackages; |
|
|
|
|
ignoreCollisions = true; |
|
|
|
|
}; |
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# local configuration file |
|
|
|
|
localConf = pkgs.writeText "fc-local.conf" cfg.localConf; |
|
|
|
|
|
|
|
|
|
# default fonts configuration file |
|
|
|
|
# priority 52 |
|
|
|
|
defaultFontsConf = |
|
|
|
|
let genDefault = fonts: name: |
|
|
|
|
optionalString (fonts != []) '' |
|
|
|
|
<alias> |
|
|
|
|
<family>${name}</family> |
|
|
|
|
<prefer> |
|
|
|
|
${concatStringsSep "" |
|
|
|
|
(map (font: '' |
|
|
|
|
<family>${font}</family> |
|
|
|
|
'') fonts)} |
|
|
|
|
</prefer> |
|
|
|
|
</alias> |
|
|
|
|
''; |
|
|
|
|
in |
|
|
|
|
pkgs.writeText "fc-52-nixos-default-fonts.conf" '' |
|
|
|
|
<?xml version='1.0'?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'> |
|
|
|
|
<fontconfig> |
|
|
|
|
|
|
|
|
|
<!-- Default fonts --> |
|
|
|
|
${genDefault cfg.defaultFonts.sansSerif "sans-serif"} |
|
|
|
|
|
|
|
|
|
${genDefault cfg.defaultFonts.serif "serif"} |
|
|
|
|
|
|
|
|
|
${genDefault cfg.defaultFonts.monospace "monospace"} |
|
|
|
|
|
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# bitmap font options |
|
|
|
|
# priority 53 |
|
|
|
|
rejectBitmaps = pkgs.writeText "fc-53-no-bitmaps.conf" '' |
|
|
|
|
<?xml version="1.0"?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> |
|
|
|
|
<fontconfig> |
|
|
|
|
|
|
|
|
|
${optionalString (!cfg.allowBitmaps) '' |
|
|
|
|
<!-- Reject bitmap fonts --> |
|
|
|
|
<selectfont> |
|
|
|
|
<rejectfont> |
|
|
|
|
<pattern> |
|
|
|
|
<patelt name="scalable"><bool>false</bool></patelt> |
|
|
|
|
</pattern> |
|
|
|
|
</rejectfont> |
|
|
|
|
</selectfont> |
|
|
|
|
''} |
|
|
|
|
|
|
|
|
|
<!-- Use embedded bitmaps in fonts like Calibri? --> |
|
|
|
|
<match target="font"> |
|
|
|
|
<edit name="embeddedbitmap" mode="assign"> |
|
|
|
|
${fcBool cfg.useEmbeddedBitmaps} |
|
|
|
|
</edit> |
|
|
|
|
</match> |
|
|
|
|
|
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# reject Type 1 fonts |
|
|
|
|
# priority 53 |
|
|
|
|
rejectType1 = pkgs.writeText "fc-53-nixos-reject-type1.conf" '' |
|
|
|
|
<?xml version="1.0"?> |
|
|
|
|
<!DOCTYPE fontconfig SYSTEM "fonts.dtd"> |
|
|
|
|
<fontconfig> |
|
|
|
|
|
|
|
|
|
<!-- Reject Type 1 fonts --> |
|
|
|
|
<selectfont> |
|
|
|
|
<rejectfont> |
|
|
|
|
<pattern> |
|
|
|
|
<patelt name="fontformat"><string>Type 1</string></patelt> |
|
|
|
|
</pattern> |
|
|
|
|
</rejectfont> |
|
|
|
|
</selectfont> |
|
|
|
|
|
|
|
|
|
</fontconfig> |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# fontconfig configuration package |
|
|
|
|
confPkg = pkgs.runCommand "fontconfig-conf" { |
|
|
|
|
preferLocalBuild = true; |
|
|
|
|
} '' |
|
|
|
|
support_folder=$out/etc/fonts/conf.d |
|
|
|
|
latest_folder=$out/etc/fonts/${latestVersion}/conf.d |
|
|
|
|
|
|
|
|
|
mkdir -p $support_folder |
|
|
|
|
mkdir -p $latest_folder |
|
|
|
|
|
|
|
|
|
# fonts.conf |
|
|
|
|
ln -s ${supportFontsConf} $support_folder/../fonts.conf |
|
|
|
|
ln -s ${latestPkg.out}/etc/fonts/fonts.conf \ |
|
|
|
|
$latest_folder/../fonts.conf |
|
|
|
|
|
|
|
|
|
# fontconfig default config files |
|
|
|
|
ln -s ${supportPkg.out}/etc/fonts/conf.d/*.conf \ |
|
|
|
|
$support_folder/ |
|
|
|
|
ln -s ${latestPkg.out}/etc/fonts/conf.d/*.conf \ |
|
|
|
|
$latest_folder/ |
|
|
|
|
|
|
|
|
|
# update latest 51-local.conf path to look at the latest local.conf |
|
|
|
|
rm $latest_folder/51-local.conf |
|
|
|
|
|
|
|
|
|
substitute ${latestPkg.out}/etc/fonts/conf.d/51-local.conf \ |
|
|
|
|
$latest_folder/51-local.conf \ |
|
|
|
|
--replace local.conf /etc/fonts/${latestVersion}/local.conf |
|
|
|
|
|
|
|
|
|
# 00-nixos-cache.conf |
|
|
|
|
ln -s ${cacheConfSupport} \ |
|
|
|
|
$support_folder/00-nixos-cache.conf |
|
|
|
|
ln -s ${cacheConfLatest} $latest_folder/00-nixos-cache.conf |
|
|
|
|
|
|
|
|
|
# 10-nixos-rendering.conf |
|
|
|
|
ln -s ${renderConf} $support_folder/10-nixos-rendering.conf |
|
|
|
|
ln -s ${renderConf} $latest_folder/10-nixos-rendering.conf |
|
|
|
|
|
|
|
|
|
# 50-user.conf |
|
|
|
|
${optionalString (!cfg.includeUserConf) '' |
|
|
|
|
rm $support_folder/50-user.conf |
|
|
|
|
rm $latest_folder/50-user.conf |
|
|
|
|
''} |
|
|
|
|
|
|
|
|
|
# local.conf (indirect priority 51) |
|
|
|
|
${optionalString (cfg.localConf != "") '' |
|
|
|
|
ln -s ${localConf} $support_folder/../local.conf |
|
|
|
|
ln -s ${localConf} $latest_folder/../local.conf |
|
|
|
|
''} |
|
|
|
|
|
|
|
|
|
# 52-nixos-default-fonts.conf |
|
|
|
|
ln -s ${defaultFontsConf} $support_folder/52-nixos-default-fonts.conf |
|
|
|
|
ln -s ${defaultFontsConf} $latest_folder/52-nixos-default-fonts.conf |
|
|
|
|
|
|
|
|
|
# 53-no-bitmaps.conf |
|
|
|
|
ln -s ${rejectBitmaps} $support_folder/53-no-bitmaps.conf |
|
|
|
|
ln -s ${rejectBitmaps} $latest_folder/53-no-bitmaps.conf |
|
|
|
|
|
|
|
|
|
${optionalString (!cfg.allowType1) '' |
|
|
|
|
# 53-nixos-reject-type1.conf |
|
|
|
|
ln -s ${rejectType1} $support_folder/53-nixos-reject-type1.conf |
|
|
|
|
ln -s ${rejectType1} $latest_folder/53-nixos-reject-type1.conf |
|
|
|
|
''} |
|
|
|
|
''; |
|
|
|
|
|
|
|
|
|
# Package with configuration files |
|
|
|
|
# this merge all the packages in the fonts.fontconfig.confPackages list |
|
|
|
|
fontconfigEtc = pkgs.buildEnv { |
|
|
|
|
name = "fontconfig-etc"; |
|
|
|
|
paths = cfg.confPackages; |
|
|
|
|
ignoreCollisions = true; |
|
|
|
|
}; |
|
|
|
|
in |
|
|
|
|
{ |
|
|
|
|
|
|
|
|
|