diff options
Diffstat (limited to 'pkgs/data')
-rw-r--r-- | pkgs/data/fonts/iosevka/default.nix | 44 | ||||
-rw-r--r-- | pkgs/data/fonts/iosevka/package.json | 2 | ||||
-rw-r--r-- | pkgs/data/fonts/twitter-color-emoji/default.nix | 37 |
3 files changed, 43 insertions, 40 deletions
diff --git a/pkgs/data/fonts/iosevka/default.nix b/pkgs/data/fonts/iosevka/default.nix index a1461032f1b8..fb00fff130f9 100644 --- a/pkgs/data/fonts/iosevka/default.nix +++ b/pkgs/data/fonts/iosevka/default.nix @@ -1,5 +1,5 @@ -{ stdenv, lib, pkgs, fetchFromGitHub -, nodejs, nodePackages, remarshal, ttfautohint-nox, otfcc +{ stdenv, lib, pkgs, fetchFromGitHub, nodejs, nodePackages, remarshal +, ttfautohint-nox, otfcc # Custom font set options. # See https://github.com/be5invis/Iosevka#build-your-own-style @@ -13,27 +13,30 @@ # ]; # }; , privateBuildPlan ? null -# Extra parameters. Can be used for ligature mapping. + # Extra parameters. Can be used for ligature mapping. + # It must be a raw toml string. + # + # Ex: + # [[iosevka.compLig]] + # unicode = 57808 # 0xe1d0 + # featureTag = 'XHS0' + # sequence = "+>" , extraParameters ? null -# Custom font set name. Required if any custom settings above. -, set ? null -}: + # Custom font set name. Required if any custom settings above. +, set ? null }: assert (privateBuildPlan != null) -> set != null; stdenv.mkDerivation rec { - pname = - if set != null - then "iosevka-${set}" - else "iosevka"; + pname = if set != null then "iosevka-${set}" else "iosevka"; - version = "2.3.0"; + version = "2.3.2"; src = fetchFromGitHub { owner = "be5invis"; repo = "Iosevka"; rev = "v${version}"; - sha256 = "1qnbxhx9wvij9zia226mc3sy8j7bfsw5v1cvxvsbbwjskwqdamvv"; + sha256 = "0s0vdvp1sn8p2pi2xm9n05pabk30ki7wjlmr0zz0nkhidb8apw6k"; }; nativeBuildInputs = [ @@ -44,9 +47,10 @@ stdenv.mkDerivation rec { ttfautohint-nox ]; - privateBuildPlanJSON = builtins.toJSON { buildPlans.${pname} = privateBuildPlan; }; - extraParametersJSON = builtins.toJSON { ${pname} = extraParameters; }; - passAsFile = [ "privateBuildPlanJSON" "extraParametersJSON" ]; + privateBuildPlanJSON = + builtins.toJSON { buildPlans.${pname} = privateBuildPlan; }; + inherit extraParameters; + passAsFile = [ "privateBuildPlanJSON" "extraParameters" ]; configurePhase = '' runHook preConfigure @@ -55,9 +59,11 @@ stdenv.mkDerivation rec { ''} ${lib.optionalString (extraParameters != null) '' echo -e "\n" >> parameters.toml - remarshal -i "$extraParametersJSONPath" -if json -of toml >> parameters.toml + cat "$extraParametersPath" >> parameters.toml ''} - ln -s ${nodePackages."iosevka-build-deps-../../data/fonts/iosevka"}/lib/node_modules/iosevka-build-deps/node_modules . + ln -s ${ + nodePackages."iosevka-build-deps-../../data/fonts/iosevka" + }/lib/node_modules/iosevka-build-deps/node_modules . runHook postConfigure ''; @@ -76,8 +82,8 @@ stdenv.mkDerivation rec { enableParallelBuilding = true; meta = with stdenv.lib; { - homepage = https://be5invis.github.io/Iosevka; - downloadPage = https://github.com/be5invis/Iosevka/releases; + homepage = "https://be5invis.github.io/Iosevka"; + downloadPage = "https://github.com/be5invis/Iosevka/releases"; description = '' Slender monospace sans-serif and slab-serif typeface inspired by Pragmata Pro, M+ and PF DIN Mono, designed to be the ideal font for programming. diff --git a/pkgs/data/fonts/iosevka/package.json b/pkgs/data/fonts/iosevka/package.json index ae162a975382..e6221b283927 100644 --- a/pkgs/data/fonts/iosevka/package.json +++ b/pkgs/data/fonts/iosevka/package.json @@ -1,6 +1,6 @@ { "name": "iosevka-build-deps", - "version": "2.3.0", + "version": "2.3.2", "scripts": { "build": "verda -f verdafile.js" }, diff --git a/pkgs/data/fonts/twitter-color-emoji/default.nix b/pkgs/data/fonts/twitter-color-emoji/default.nix index bb22ec517c21..4e464f370229 100644 --- a/pkgs/data/fonts/twitter-color-emoji/default.nix +++ b/pkgs/data/fonts/twitter-color-emoji/default.nix @@ -3,28 +3,20 @@ { stdenv , fetchFromGitHub +, fetchpatch , cairo -, imagemagick +, graphicsmagick , pkg-config , pngquant , python3 , which , zopfli +, noto-fonts-emoji }: let version = "12.1.2"; - # Cannot use noto-fonts-emoji.src since it is too old - # and still tries to use vendored pngquant. - notoSrc = fetchFromGitHub { - name = "noto"; - owner = "googlefonts"; - repo = "noto-emoji"; - rev = "833a43d03246a9325e748a2d783006454d76ff66"; - sha256 = "1g6ikzk8banm3ihqm9g27ggjq2mn1b1hq3zhpl13lxid6mp60s4a"; - }; - twemojiSrc = fetchFromGitHub { name = "twemoji"; owner = "twitter"; @@ -33,36 +25,42 @@ let sha256 = "0vzmlp83vnk4njcfkn03jcc1vkg2rf12zf5kj3p3a373xr4ds1zn"; }; - python = python3.withPackages (pp: with pp; [ - nototools - ]); in stdenv.mkDerivation rec { pname = "twitter-color-emoji"; inherit version; srcs = [ - notoSrc + noto-fonts-emoji.src twemojiSrc ]; - sourceRoot = notoSrc.name; + sourceRoot = noto-fonts-emoji.src.name; postUnpack = '' chmod -R +w ${twemojiSrc.name} - mv ${twemojiSrc.name} ${notoSrc.name} + mv ${twemojiSrc.name} ${noto-fonts-emoji.src.name} ''; nativeBuildInputs = [ cairo - imagemagick + graphicsmagick pkg-config pngquant - python + python3 + python3.pkgs.nototools which zopfli ]; + patches = [ + # ImageMagick -> GrahphicsMagick + (fetchpatch { + url = "https://src.fedoraproject.org/rpms/twitter-twemoji-fonts/raw/3bc176c10ced2824fe03da5ff561e22a36bf8ccd/f/noto-emoji-use-gm.patch"; + sha256 = "0yfmfzaaiq5163c06172g4r734aysiqyv1s28siv642vqzsqh4i2"; + }) + ]; + postPatch = let templateSubstitutions = stdenv.lib.concatStringsSep "; " [ ''s#Noto Color Emoji#Twitter Color Emoji#'' @@ -118,6 +116,5 @@ stdenv.mkDerivation rec { ## Non-artwork is MIT license = with licenses; [ asl20 ofl cc-by-40 mit ]; maintainers = with maintainers; [ jtojnar ]; - broken = true; # Can't be build using the current Python 3 version of nototools }; } |