{ pkgs, config, lib, ... }: let cfg = config.my.systems.fonts; in { options.my.systems.fonts = with lib; { enable = mkEnableOption "fonts configuration"; }; config = lib.mkIf cfg.enable { fonts = { enableDefaultFonts = true; fontDir.enable = true; fontconfig.enable = true; fonts = with pkgs; [ dejavu_fonts font-awesome_5 noto-fonts noto-fonts-cjk # Chinese, Japanese, Korean noto-fonts-emoji noto-fonts-emoji noto-fonts-extra source-code-pro source-sans-pro source-serif-pro ]; fontconfig.defaultFonts = { monospace = [ "Source Code Pro" ]; }; }; }; }