{ stdenv, iosevka, nerd-font-patcher, }: let custom-build-plan = import ./custom-build-plan.nix; names = import ./names.nix; in { iosevka-custom-aile = iosevka.override { set = "aile"; privateBuildPlan = custom-build-plan // { family = names.iosevka-custom-aile; spacing = "quasi-proportional"; serifs = "sans"; }; }; iosevka-custom-etoile = iosevka.override { set = "etoile"; privateBuildPlan = custom-build-plan // { family = names.iosevka-custom-etoile; spacing = "quasi-proportional"; serifs = "slab"; }; }; iosevka-custom-nerdfont = let monospace = iosevka.override { set = "custom"; privateBuildPlan = custom-build-plan // { family = names.iosevka-custom-nerdfont; spacing = "normal"; serifs = "sans"; }; }; in stdenv.mkDerivation { name = "${monospace.name}-nerd-font-patched"; src = monospace; nativeBuildInputs = [ nerd-font-patcher ]; buildPhase = '' find \( -name \*.ttf -o -name \*.otf \) -execdir nerd-font-patcher -c {} \; ''; installPhase = "cp -a . $out"; }; }