Customise for Modulo Notes
This commit is contained in:
113
flake.nix
113
flake.nix
@@ -1,5 +1,5 @@
|
||||
{
|
||||
description = "Iosevka Iaso fonts";
|
||||
description = "Iosevka fonts for Modulo Notes";
|
||||
|
||||
inputs = {
|
||||
nixpkgs.url = "nixpkgs/nixos-unstable";
|
||||
@@ -11,30 +11,25 @@
|
||||
let pkgs = import nixpkgs { inherit system; };
|
||||
in {
|
||||
packages.default = pkgs.stdenvNoCC.mkDerivation {
|
||||
name = "iosevka-iaso";
|
||||
name = "iosevka-modulo";
|
||||
dontUnpack = true;
|
||||
buildInputs = with pkgs; [ python311Packages.brotli python311Packages.fonttools ];
|
||||
buildPhase = let
|
||||
metric-override = {
|
||||
cap = 790;
|
||||
ascender = 790;
|
||||
xHeight = 570;
|
||||
};
|
||||
iosevka-curly = pkgs.iosevka.override {
|
||||
set = "curly";
|
||||
iosevka-regular = pkgs.iosevka.override {
|
||||
set = "regular";
|
||||
privateBuildPlan = {
|
||||
family = "Iosevka Curly Iaso";
|
||||
spacing = "term";
|
||||
family = "Iosevka Regular Modulo";
|
||||
spacing = "normal";
|
||||
serifs = "sans";
|
||||
no-ligation = false;
|
||||
ligations = { "inherit" = "default-calt"; };
|
||||
no-cv-ss = true;
|
||||
variants = {
|
||||
inherits = "ss01";
|
||||
design = {
|
||||
tilde = "low";
|
||||
l = "flat-tailed";
|
||||
zero = "dotted";
|
||||
asterisk = "turn-hex-high";
|
||||
number-sign = "slanted-tall";
|
||||
at = "fourfold-solid-inner-tall";
|
||||
at = "fourfold-solid-inner";
|
||||
};
|
||||
};
|
||||
slopes.upright = {
|
||||
@@ -43,54 +38,27 @@
|
||||
menu = "upright";
|
||||
css = "normal";
|
||||
};
|
||||
weights.regular = {
|
||||
shape = 400;
|
||||
menu = 400;
|
||||
css = 400;
|
||||
};
|
||||
widths.normal = {
|
||||
shape = 500;
|
||||
menu = 7;
|
||||
css = "normal";
|
||||
};
|
||||
inherit metric-override;
|
||||
};
|
||||
};
|
||||
iosevka-aile = pkgs.iosevka.override {
|
||||
set = "aile";
|
||||
privateBuildPlan = {
|
||||
family = "Iosevka Aile Iaso";
|
||||
spacing = "quasi-proportional";
|
||||
no-ligation = true;
|
||||
no-cv-ss = true;
|
||||
variants = {
|
||||
inherits = "ss01";
|
||||
design = {
|
||||
tilde = "low";
|
||||
number-sign = "slanted-tall";
|
||||
at = "fourfold-solid-inner-tall";
|
||||
};
|
||||
};
|
||||
slopes = {
|
||||
upright = {
|
||||
angle = 0;
|
||||
shape = "upright";
|
||||
menu = "upright";
|
||||
css = "normal";
|
||||
};
|
||||
italic = {
|
||||
angle = 9.4;
|
||||
shape = "italic";
|
||||
menu = "italic";
|
||||
css = "italic";
|
||||
};
|
||||
slopes.italic = {
|
||||
angle = 9.4;
|
||||
shape = "italic";
|
||||
menu = "italic";
|
||||
css = "italic";
|
||||
};
|
||||
weights.regular = {
|
||||
shape = 400;
|
||||
menu = 400;
|
||||
css = 400;
|
||||
};
|
||||
inherit metric-override;
|
||||
weights.bold = {
|
||||
shape = 700;
|
||||
menu = 700;
|
||||
css = 700;
|
||||
};
|
||||
weights.heavy = {
|
||||
shape = 900;
|
||||
menu = 900;
|
||||
css = 900;
|
||||
};
|
||||
};
|
||||
};
|
||||
iosevka-etoile = pkgs.iosevka.override {
|
||||
@@ -102,23 +70,13 @@
|
||||
no-ligation = true;
|
||||
no-cv-ss = true;
|
||||
variants = {
|
||||
inherits = "ss01";
|
||||
design = {
|
||||
capital-w = "straight-flat-top";
|
||||
f = "flat-hook-serifed";
|
||||
j = "flat-hook-serifed";
|
||||
t = "flat-hook";
|
||||
capital-t = "serifed"; # not part of original Iosevka Aile
|
||||
w = "straight-flat-top";
|
||||
#capital-g = "toothless-rounded-serifless-hooked";
|
||||
i = "zshaped";
|
||||
r = "serifed";
|
||||
|
||||
tilde = "low";
|
||||
l = "serifed-flat-tailed";
|
||||
zero = "dotted";
|
||||
asterisk = "turn-hex-high";
|
||||
number-sign = "slanted-tall";
|
||||
at = "fourfold-solid-inner-tall";
|
||||
at = "fourfold-solid-inner";
|
||||
};
|
||||
italic = { f = "flat-hook-tailed"; };
|
||||
};
|
||||
slopes = {
|
||||
upright = {
|
||||
@@ -139,12 +97,21 @@
|
||||
menu = 400;
|
||||
css = 400;
|
||||
};
|
||||
inherit metric-override;
|
||||
weights.bold = {
|
||||
shape = 700;
|
||||
menu = 700;
|
||||
css = 700;
|
||||
};
|
||||
weights.heavy = {
|
||||
shape = 900;
|
||||
menu = 900;
|
||||
css = 900;
|
||||
};
|
||||
};
|
||||
};
|
||||
in ''
|
||||
mkdir -p ttf
|
||||
for ttf in ${iosevka-curly}/share/fonts/truetype/*.ttf ${iosevka-aile}/share/fonts/truetype/*.ttf ${iosevka-etoile}/share/fonts/truetype/*.ttf; do
|
||||
for ttf in ${iosevka-regular}/share/fonts/truetype/*.ttf ${iosevka-etoile}/share/fonts/truetype/*.ttf; do
|
||||
cp $ttf .
|
||||
|
||||
echo "processing $ttf"
|
||||
|
||||
Reference in New Issue
Block a user