2022-09-03 08:04:00 +00:00
|
|
|
{ callPackage, lib, fetchFromSourcehut }:
|
2022-06-06 16:26:06 +00:00
|
|
|
|
|
|
|
let
|
2022-09-03 08:04:00 +00:00
|
|
|
sets = [
|
2022-09-16 08:10:34 +00:00
|
|
|
# The compact, sans-serif set:
|
2022-09-03 08:04:00 +00:00
|
|
|
"comfy"
|
|
|
|
"comfy-fixed"
|
|
|
|
"comfy-duo"
|
2022-09-16 08:10:34 +00:00
|
|
|
# The compact, serif set:
|
2022-09-03 08:04:00 +00:00
|
|
|
"comfy-motion"
|
2022-09-16 07:16:59 +00:00
|
|
|
"comfy-motion-fixed"
|
2022-09-03 08:04:00 +00:00
|
|
|
"comfy-motion-duo"
|
2022-09-16 08:10:34 +00:00
|
|
|
# The wide, sans-serif set:
|
|
|
|
"comfy-wide"
|
|
|
|
"comfy-wide-fixed"
|
2022-09-16 07:16:59 +00:00
|
|
|
"comfy-wide-duo"
|
2022-09-03 08:04:00 +00:00
|
|
|
];
|
2022-09-16 07:16:42 +00:00
|
|
|
version = "1.0.0";
|
2022-09-03 08:04:00 +00:00
|
|
|
src = fetchFromSourcehut {
|
|
|
|
owner = "~protesilaos";
|
2022-07-15 11:17:27 +00:00
|
|
|
repo = "iosevka-comfy";
|
|
|
|
rev = version;
|
2022-09-16 07:16:42 +00:00
|
|
|
sha256 = "0psbz40hicv3v3x7yq26hy6nfbzml1kha24x6a88rfrncdp6bds7";
|
2022-07-15 11:17:27 +00:00
|
|
|
};
|
|
|
|
privateBuildPlan = src.outPath + "/private-build-plans.toml";
|
2022-06-06 16:26:06 +00:00
|
|
|
overrideAttrs = (attrs: {
|
2022-07-15 11:17:27 +00:00
|
|
|
inherit version;
|
2022-07-01 19:59:27 +00:00
|
|
|
|
2022-06-06 16:26:06 +00:00
|
|
|
meta = with lib; {
|
2022-09-03 08:04:00 +00:00
|
|
|
inherit (src.meta) homepage;
|
2022-06-06 16:26:06 +00:00
|
|
|
description = ''
|
2022-09-16 07:15:48 +00:00
|
|
|
Customised build of the Iosevka typeface, with a consistent
|
|
|
|
rounded style and overrides for almost all individual glyphs
|
2022-09-03 08:04:00 +00:00
|
|
|
in both roman (upright) and italic (slanted) variants.
|
|
|
|
'';
|
2022-06-06 16:26:06 +00:00
|
|
|
license = licenses.ofl;
|
|
|
|
platforms = attrs.meta.platforms;
|
|
|
|
maintainers = [ maintainers.DamienCassou ];
|
|
|
|
};
|
|
|
|
});
|
2022-09-03 08:04:00 +00:00
|
|
|
makeIosevkaFont = set:
|
|
|
|
(callPackage ./. { inherit set privateBuildPlan; }).overrideAttrs
|
|
|
|
overrideAttrs;
|
|
|
|
in builtins.listToAttrs (builtins.map (set: {
|
|
|
|
name = set;
|
|
|
|
value = makeIosevkaFont set;
|
|
|
|
}) sets)
|