Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 stdenvNoCC,
4 fetchzip,
5}:
6
7stdenvNoCC.mkDerivation (finalAttrs: {
8 pname = "monaspace";
9 version = "1.200";
10
11 src = fetchzip {
12 url = "https://github.com/githubnext/monaspace/releases/download/v${finalAttrs.version}/monaspace-v${finalAttrs.version}.zip";
13 stripRoot = false;
14 hash = "sha256-j1xQYVxfTNDVuzCKvT5FbU29t8XsH4XqcZ477sjydts=";
15 };
16
17 outputs = [
18 "out"
19 "woff"
20 ];
21
22 installPhase = ''
23 runHook preInstall
24
25 pushd monaspace-v${finalAttrs.version}/fonts/
26 install -Dm644 frozen/*.ttf -t $out/share/fonts/truetype
27 install -Dm644 otf/*.otf -t $out/share/fonts/opentype
28 install -Dm644 variable/*.ttf -t $out/share/fonts/truetype
29 install -Dm644 webfonts/*.woff -t $woff/share/fonts/woff
30 popd
31
32 runHook postInstall
33 '';
34
35 meta = {
36 description = "Innovative superfamily of fonts for code";
37 longDescription = ''
38 Since the earliest days of the teletype machine, code has been set in
39 monospaced type — letters, on a grid. Monaspace is a new type system that
40 advances the state of the art for the display of code on screen.
41
42 Every advancement in the technology of computing has been accompanied by
43 advancements to the display and editing of code. CRTs made screen editors
44 possible. The advent of graphical user interfaces gave rise to integrated
45 development environments.
46
47 Even today, we still have limited options when we want to layer additional
48 meaning on top of code. Syntax highlighting was invented in 1982 to help
49 children to code in BASIC. But beyond colors, most editors must
50 communicate with developers through their interfaces — hovers, underlines,
51 and other graphical decorations.
52
53 Monaspace offers a more expressive palette for code and the tools we use
54 to work with it.
55 '';
56 homepage = "https://monaspace.githubnext.com/";
57 license = lib.licenses.ofl;
58 maintainers = with lib.maintainers; [ ];
59 platforms = lib.platforms.all;
60 };
61})