aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/data/fonts/iosevka/bin.nix
diff options
context:
space:
mode:
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/data/fonts/iosevka/bin.nix')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/data/fonts/iosevka/bin.nix39
1 files changed, 39 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/data/fonts/iosevka/bin.nix b/infra/libkookie/nixpkgs/pkgs/data/fonts/iosevka/bin.nix
new file mode 100644
index 000000000000..90b64c5f159e
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/data/fonts/iosevka/bin.nix
@@ -0,0 +1,39 @@
+{ stdenv, lib, fetchurl, iosevka, unzip
+, variant ? ""
+}:
+
+let
+ name = "iosevka" + lib.optionalString (variant != "") "-" + variant;
+
+ variantHashes = import ./variants.nix;
+ validVariants = map (lib.removePrefix "iosevka-")
+ (builtins.attrNames (builtins.removeAttrs variantHashes [ "iosevka" ]));
+in stdenv.mkDerivation rec {
+ pname = "${name}-bin";
+ version = "4.0.0";
+
+ src = fetchurl {
+ url = "https://github.com/be5invis/Iosevka/releases/download/v${version}/ttc-${name}-${version}.zip";
+ sha256 = variantHashes.${name} or (throw ''
+ No such variant "${variant}" for package iosevka-bin.
+ Valid variants are: ${lib.concatStringsSep ", " validVariants}.
+ '');
+ };
+
+ nativeBuildInputs = [ unzip ];
+
+ phases = [ "unpackPhase" ];
+
+ unpackPhase = ''
+ mkdir -p $out/share/fonts
+ unzip -d $out/share/fonts/truetype $src
+ '';
+
+ meta = iosevka.meta // {
+ maintainers = with lib.maintainers; [
+ cstrahan
+ ];
+ };
+
+ passthru.updateScript = ./update-bin.sh;
+}