Commit 91f06db7 authored by toastal's avatar toastal
Browse files

open-relay-typefaces: init at 2025-03-20, subsumes kreative-square-fonts

Reference open-relay’s monorepo typefaces from a central location.
Refactor kreative-square-fonts to fall under this umbrella.
parent 6a0960ad
Loading
Loading
Loading
Loading
+0 −34
Original line number Diff line number Diff line
{
  lib,
  stdenvNoCC,
  fetchFromGitHub,
}:

stdenvNoCC.mkDerivation {
  pname = "kreative-square-fonts";
  version = "unstable-2021-01-29";

  src = fetchFromGitHub {
    owner = "kreativekorp";
    repo = "open-relay";
    rev = "084f05af3602307499981651eca56851bec01fca";
    hash = "sha256-+ihosENczaGal3BGDIaJ/de0pf8txdtelSYMxPok6ww=";
  };

  installPhase = ''
    runHook preInstall

    install -Dm444 -t $out/share/fonts/truetype/ KreativeSquare/KreativeSquare.ttf
    install -Dm444 -t $out/share/fonts/truetype/ KreativeSquare/KreativeSquareSM.ttf

    runHook postInstall
  '';

  meta = with lib; {
    description = "Fullwidth scalable monospace font designed specifically to support pseudographics, semigraphics, and private use characters";
    homepage = "https://www.kreativekorp.com/software/fonts/ksquare.shtml";
    license = licenses.ofl;
    platforms = platforms.all;
    maintainers = [ maintainers.linus ];
  };
}
+95 −0
Original line number Diff line number Diff line
{
  lib,
  stdenvNoCC,
  fetchFromGitHub,
}:

let
  mkOpenRelayTypeface =
    name:
    { directory, meta }:
    stdenvNoCC.mkDerivation (finalAttrs: {
      pname = "open-relay-${name}";
      version = "2025-03-20";

      src = fetchFromGitHub {
        owner = "kreativekorp";
        repo = "open-relay";
        tag = finalAttrs.version;
        hash = "sha256-OQpZHPbNL3rxXH89lwtHvm7eENl8fS0M0i8IBn4m2hI=";
      };

      installPhase = ''
        runHook preInstall

        install -D -m444 -t "$out/share/fonts/truetype" "${directory}/*.ttf"
        install -D -m644 -t "$out/share/doc/${finalAttrs.pname}-${finalAttrs.version}" "${directory}/OFL.txt"

        runHook postInstall
      '';

      meta = {
        homepage = "https://www.kreativekorp.com/software/fonts/index.shtml";
        description = "Free and open source fonts from Kreative Software";
        license = lib.licenses.ofl;
        platforms = lib.platforms.all;
        maintainers = with lib.maintainers; [
          linus
          toastal
        ];
      } // meta;
    });
in
lib.mapAttrs mkOpenRelayTypeface {
  constructium = {
    directory = "Constructium";
    meta = {
      homepage = "https://www.kreativekorp.com/software/fonts/constructium/";
      description = "fork of SIL Gentium designed specifically to support constructed scripts as encoded in the Under-ConScript Unicode Registry";
      longDescription = ''
        Constructium is a fork of SIL Gentium designed specifically to support
        constructed scripts as encoded in the Under-ConScript Unicode Registry.
        It is ideal for mixed Latin, Greek, Cyrillic, IPA, and conlang text in
        web sites and documents.
      '';
    };
  };

  fairfax = {
    directory = "Fairfax";
    meta = {
      homepage = "https://www.kreativekorp.com/software/fonts/fairfax/";
      description = "6×12 bitmap font supporting many Unicode blocks & scripts as well as constructed scripts";
      longDescription = ''
        Fairfax is a 6×12 bitmap font for terminals, text editors, IDEs, etc. It
        supports many scripts and a large number of Unicode blocks as well as
        constructed scripts as encoded in the Under-ConScript Unicode Registry,
        pseudographics and semigraphics, and tons of private use characters. It
        has been superceded by Fairfax HD but is still maintained.
      '';
    };
  };

  fairfax-hd = {
    directory = "FairfaxHD";
    meta = {
      homepage = "https://www.kreativekorp.com/software/fonts/fairfaxhd/";
      description = "halfwidth scalable monospace font supporting many Unicode blocks & script as well as constructed scripts";
      longDescription = ''
        Fairfax HD is a halfwidth scalable monospace font for terminals, text
        editors, IDEs, etc. It supports many scripts and a large number of
        Unicode blocks as well as constructed scripts as encoded in the
        Under-ConScript Unicode Registry, pseudographics and semigraphics, and
        tons of private use characters.
      '';
    };
  };

  kreative-square = {
    directory = "KreativeSquare";
    meta = {
      homepage = "https://www.kreativekorp.com/software/fonts/ksquare/";
      description = "Fullwidth scalable monospace font designed specifically to support pseudographics, semigraphics, and private use characters";
    };
  };
}
+1 −0
Original line number Diff line number Diff line
@@ -929,6 +929,7 @@ mapAliases {
  kodiPlugins = kodiPackages; # Added 2021-03-09;
  kramdown-rfc2629 = throw "'kramdown-rfc2629' has been renamed to/replaced by 'rubyPackages.kramdown-rfc2629'"; # Converted to throw 2024-10-17
  krb5Full = krb5;
  kreative-square-fonts = throw "'kreative-square-fonts' has been renamed to 'kreative-square'"; # Added 2025-04-16
  krita-beta = throw "'krita-beta' has been renamed to/replaced by 'krita'"; # Converted to throw 2024-10-17
  krun = throw "'krun' has been renamed to/replaced by 'muvm'"; # Added 2025-05-01
  kubei = kubeclarity; # Added 2023-05-20
+7 −0
Original line number Diff line number Diff line
@@ -13642,6 +13642,13 @@ with pkgs;
    vm = callPackage ../applications/audio/open-music-kontrollers/vm.nix { };
  };
  inherit (callPackages ../data/fonts/open-relay { })
    constructium
    fairfax
    fairfax-hd
    kreative-square
    ;
  openscad = libsForQt5.callPackage ../applications/graphics/openscad { };
  opentoonz = libsForQt5.callPackage ../applications/graphics/opentoonz { };