about summary refs log tree commit diff
path: root/nixpkgs/pkgs/applications/misc/nerd-font-patcher/default.nix
blob: 6807cd9024f587e707eb0b7fff3c05c074471eda (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
{ python3Packages, lib, fetchFromGitHub }:

python3Packages.buildPythonApplication rec {
  pname = "nerd-font-patcher";
  version = "2.1.0";

  # The size of the nerd fonts repository is bigger than 2GB, because it
  # contains a lot of fonts and the patcher.
  # until https://github.com/ryanoasis/nerd-fonts/issues/484 is not fixed,
  # we download the patcher from an alternative repository
  src = fetchFromGitHub {
    owner = "betaboon";
    repo = "nerd-fonts-patcher";
    rev = "180684d7a190f75fd2fea7ca1b26c6540db8d3c0";
    sha256 = "sha256-FAbdLf0XiUXGltAgmq33Wqv6PFo/5qCv62UxXnj3SgI=";
  };

  propagatedBuildInputs = with python3Packages; [ fontforge ];

  format = "other";

  postPatch = ''
    sed -i font-patcher \
      -e 's,__dir__ + "/src,"'$out'/share/${pname},'
  '';

  dontBuild = true;

  installPhase = ''
    mkdir -p $out/bin $out/share/${pname}
    install -Dm755 font-patcher $out/bin/${pname}
    cp -ra src/glyphs $out/share/${pname}
  '';

  meta = with lib; {
    description = "Font patcher to generate Nerd font";
    homepage = "https://nerdfonts.com/";
    license = licenses.mit;
    maintainers = with maintainers; [ ck3d ];
  };
}