56 lines
1.4 KiB
Nix
56 lines
1.4 KiB
Nix
{
|
|
config,
|
|
lib,
|
|
mylib,
|
|
pkgs,
|
|
...
|
|
}: let
|
|
inherit (config.modules) fonts;
|
|
in {
|
|
options.modules.fonts = import ./options.nix {inherit lib mylib;};
|
|
|
|
config = lib.mkIf fonts.enable {
|
|
fonts = {
|
|
# Some default fonts for unicode coverage
|
|
enableDefaultPackages = true;
|
|
|
|
# Puts fonts to /run/current-system/sw/share/X11/fonts
|
|
# https://wiki.nixos.org/wiki/Fonts#Flatpak_applications_can.27t_find_system_fonts
|
|
fontDir.enable = true;
|
|
|
|
# Font packages go here.
|
|
# They are installed system-wide so they land in fontdir,
|
|
# this is required for flatpak to find them.
|
|
packages = with pkgs; [
|
|
# Monospace fonts
|
|
nerd-fonts.jetbrains-mono
|
|
nerd-fonts.victor-mono
|
|
monolisa
|
|
|
|
# Sans/Serif fonts
|
|
noto-fonts
|
|
noto-fonts-emoji
|
|
noto-fonts-cjk-sans
|
|
lxgw-wenkai
|
|
];
|
|
|
|
fontconfig = {
|
|
enable = true;
|
|
antialias = true;
|
|
hinting.enable = true;
|
|
hinting.autohint = true;
|
|
cache32Bit = true;
|
|
|
|
# https://wiki.nixos.org/wiki/Fonts#Noto_Color_Emoji_doesn.27t_render_on_Firefox
|
|
useEmbeddedBitmaps = true;
|
|
|
|
defaultFonts = {
|
|
serif = [fonts.defaultSerifFont] ++ fonts.fallbackSerifFonts;
|
|
sansSerif = [fonts.defaultSansSerifFont] ++ fonts.fallbackSansSerifFonts;
|
|
monospace = [fonts.defaultMonoFont] ++ fonts.fallbackMonoFonts;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|