about summary refs log tree commit diff
path: root/modules/system/fonts/default.nix
blob: acef713887b46b643a68502bde49214758a9342e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
{ pkgs, config, lib, ... }:
let
  cfg = config.my.systems.fonts;
  iosevka-aile = pkgs.iosevka-bin.override { variant = "aile"; };
  iosevka-curly = pkgs.iosevka-bin.override { variant = "curly"; };
  iosevka-etoile = pkgs.iosevka-bin.override { variant = "etoile"; };
  iosevka-slab = pkgs.iosevka-bin.override { variant = "slab"; };
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; [
        cascadia-code
        dejavu_fonts
        fira-code
        font-awesome_5
        iosevka
        iosevka-aile
        iosevka-bin
        iosevka-curly
        iosevka-etoile
        iosevka-slab
        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" ]; };
    };
  };
}