nixpkgs/modules/config/fonts/fontconfig.nix
Eelco Dolstra eb110fd3ce fontconfig: Set the default hinting style to "slight"
This works around a bug in infinality that causes broken rendering in
some cases.  Issue NixOS/nixpkgs#663.

Upstream suggests that "slight" is a better/safer default in any case.
It also looks better, IMHO, YMMV.
2013-06-27 13:28:22 +02:00

62 lines
1.5 KiB
Nix

{ config, pkgs, ... }:
with pkgs.lib;
{
options = {
fonts = {
enableFontConfig = mkOption { # !!! should be enableFontconfig
default = true;
description = ''
If enabled, a Fontconfig configuration file will be built
pointing to a set of default fonts. If you don't care about
running X11 applications or any other program that uses
Fontconfig, you can turn this option off and prevent a
dependency on all those fonts.
'';
};
};
};
config = mkIf config.fonts.enableFontConfig {
# Bring in the default (upstream) fontconfig configuration.
environment.etc."fonts/fonts.conf".source =
pkgs.makeFontsConf { fontDirectories = config.fonts.fonts; };
environment.etc."fonts/conf.d/00-nixos.conf".text =
''
<?xml version='1.0'?>
<!DOCTYPE fontconfig SYSTEM 'fonts.dtd'>
<fontconfig>
<!-- Set the default hinting style to "slight". -->
<match target="font">
<edit mode="assign" name="hintstyle">
<const>hintslight</const>
</edit>
</match>
</fontconfig>
'';
environment.shellInit =
''
# FIXME: This variable is no longer needed, but we'll keep it
# around for a while for applications linked against old
# fontconfig builds.
export FONTCONFIG_FILE=/etc/fonts/fonts.conf
'';
environment.systemPackages = [ pkgs.fontconfig ];
};
}