nerdfonts: separate into individual font packages, 3.2.1 -> 3.3.0 (#354543)
This commit is contained in:
commit
de4dbc58fd
@ -749,6 +749,11 @@
|
||||
- The `atlassian-crowd` package and its `services.crowd` NixOS module
|
||||
- The `atlassian-jira` package and its `services.jira` NixOS module
|
||||
|
||||
- `nerdfonts` has been separated into individual font packages under the namespace `nerd-fonts`. The directories for font
|
||||
files have changed from `$out/share/fonts/{opentype,truetype}/NerdFonts` to
|
||||
`$out/share/fonts/{opentype,truetype}/NerdFonts/<fontDirName>`, where `<fontDirName>` can be found in the
|
||||
[official website](https://www.nerdfonts.com/font-downloads) as the titles in preview images, with the "Nerd Font"
|
||||
suffix and any whitespaces trimmed.
|
||||
|
||||
- `python3Packages.nose` has been removed, as it has been deprecated and unmaintained for almost a decade and does not work on Python 3.12.
|
||||
Please switch to `pytest` or another test runner/framework.
|
||||
|
@ -2,7 +2,7 @@
|
||||
, harfbuzz, fontconfig, pkg-config, ncurses, imagemagick
|
||||
, libstartup_notification, libGL, libX11, libXrandr, libXinerama, libXcursor
|
||||
, libxkbcommon, libXi, libXext, wayland-protocols, wayland, xxHash
|
||||
, nerdfonts
|
||||
, nerd-fonts
|
||||
, lcms2
|
||||
, librsync
|
||||
, openssl
|
||||
@ -144,7 +144,7 @@ buildPythonApplication rec {
|
||||
|
||||
# Add the font by hand because fontconfig does not finds it in darwin
|
||||
mkdir ./fonts/
|
||||
cp "${(nerdfonts.override {fonts = ["NerdFontsSymbolsOnly"];})}/share/fonts/truetype/NerdFonts/SymbolsNerdFontMono-Regular.ttf" ./fonts/
|
||||
cp "${nerd-fonts.symbols-only}/share/fonts/truetype/NerdFonts/Symbols/SymbolsNerdFontMono-Regular.ttf" ./fonts/
|
||||
|
||||
${ lib.optionalString (stdenv.hostPlatform.isDarwin && stdenv.hostPlatform.isx86_64) "export MACOSX_DEPLOYMENT_TARGET=11" }
|
||||
${if stdenv.hostPlatform.isDarwin then ''
|
||||
|
28
pkgs/data/fonts/nerd-fonts/convert-license.nix
Normal file
28
pkgs/data/fonts/nerd-fonts/convert-license.nix
Normal file
@ -0,0 +1,28 @@
|
||||
lib:
|
||||
let
|
||||
ls = lib.licenses;
|
||||
in
|
||||
licenseString:
|
||||
builtins.getAttr licenseString (
|
||||
(
|
||||
with builtins;
|
||||
lib.trivial.pipe (attrValues ls) [
|
||||
(filter (l: l ? spdxId))
|
||||
(map (l: lib.attrsets.nameValuePair l.spdxId l))
|
||||
listToAttrs
|
||||
]
|
||||
)
|
||||
// {
|
||||
"Bitstream-Vera AND MIT" = with ls; [
|
||||
bitstreamVera
|
||||
mit
|
||||
];
|
||||
"LicenseRef-Monofur" = ls.free; # upstream `src/unpatched-fonts/Monofur/LICENSE.txt`
|
||||
"LicenseRef-UbuntuFont" = ls.ufl;
|
||||
"LicenseRef-VicFieger" = ls.free; # upstream `src/unpatched-fonts/HeavyData/Vic Fieger License.txt`
|
||||
"MIT OR OFL-1.1-no-RFN" = ls.mit;
|
||||
"OFL-1.1-RFN" = ls.ofl;
|
||||
"OFL-1.1-no-RFN or LGPL-2.1-only" = ls.ofl;
|
||||
"OFL-1.1-no-RFN" = ls.ofl;
|
||||
}
|
||||
)
|
94
pkgs/data/fonts/nerd-fonts/default.nix
Normal file
94
pkgs/data/fonts/nerd-fonts/default.nix
Normal file
@ -0,0 +1,94 @@
|
||||
{
|
||||
lib,
|
||||
stdenvNoCC,
|
||||
fetchurl,
|
||||
}:
|
||||
|
||||
let
|
||||
releaseInfo = lib.trivial.importJSON ./manifests/release.json;
|
||||
fontsInfo = lib.trivial.importJSON ./manifests/fonts.json;
|
||||
checksums = lib.trivial.importJSON ./manifests/checksums.json;
|
||||
|
||||
convertAttrName =
|
||||
name:
|
||||
let
|
||||
lowerName = lib.strings.toLower name;
|
||||
in
|
||||
if builtins.match "[[:digit:]].*" lowerName != null then "_" + lowerName else lowerName;
|
||||
|
||||
convertVersion =
|
||||
version: date:
|
||||
if builtins.match "[[:digit:]].*" version != null then
|
||||
version
|
||||
else
|
||||
"0-unstable-" + builtins.head (lib.strings.splitString "T" date);
|
||||
|
||||
convertLicense = import ./convert-license.nix lib;
|
||||
|
||||
makeNerdFont =
|
||||
{
|
||||
caskName,
|
||||
description,
|
||||
folderName,
|
||||
licenseId,
|
||||
patchedName,
|
||||
version,
|
||||
...
|
||||
}:
|
||||
stdenvNoCC.mkDerivation {
|
||||
pname = lib.strings.toLower caskName;
|
||||
version = convertVersion version releaseInfo.published_at;
|
||||
|
||||
src =
|
||||
let
|
||||
filename = folderName + ".tar.xz";
|
||||
url = "https://github.com/ryanoasis/nerd-fonts/releases/download/${releaseInfo.tag_name}/${filename}";
|
||||
sha256 = checksums.${filename};
|
||||
in
|
||||
fetchurl {
|
||||
inherit url sha256;
|
||||
};
|
||||
|
||||
sourceRoot = ".";
|
||||
|
||||
installPhase =
|
||||
let
|
||||
dirName = lib.strings.concatStrings (lib.strings.splitString " " patchedName);
|
||||
in
|
||||
''
|
||||
runHook preInstall
|
||||
|
||||
dst_opentype=$out/share/fonts/opentype/NerdFonts/${dirName}
|
||||
dst_truetype=$out/share/fonts/truetype/NerdFonts/${dirName}
|
||||
|
||||
find -name \*.otf -exec mkdir -p $dst_opentype \; -exec cp -p {} $dst_opentype \;
|
||||
find -name \*.ttf -exec mkdir -p $dst_truetype \; -exec cp -p {} $dst_truetype \;
|
||||
|
||||
runHook postInstall
|
||||
'';
|
||||
|
||||
passthru.updateScript = {
|
||||
command = ./update.py;
|
||||
supportedFeatures = [ "commit" ];
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "Nerd Fonts: " + description;
|
||||
license = convertLicense licenseId;
|
||||
homepage = "https://nerdfonts.com/";
|
||||
changelog = "https://github.com/ryanoasis/nerd-fonts/blob/${releaseInfo.tag_name}/changelog.md";
|
||||
platforms = lib.platforms.all;
|
||||
maintainers = with lib.maintainers; [
|
||||
doronbehar
|
||||
rc-zb
|
||||
];
|
||||
};
|
||||
};
|
||||
|
||||
nerdFonts = lib.trivial.pipe fontsInfo [
|
||||
(map (font: lib.attrsets.nameValuePair (convertAttrName font.caskName) (makeNerdFont font)))
|
||||
builtins.listToAttrs
|
||||
];
|
||||
in
|
||||
|
||||
nerdFonts
|
70
pkgs/data/fonts/nerd-fonts/manifests/checksums.json
Normal file
70
pkgs/data/fonts/nerd-fonts/manifests/checksums.json
Normal file
@ -0,0 +1,70 @@
|
||||
{
|
||||
"0xProto.tar.xz": "d72bdd83f02a9071d4bb0acd38a37fe687a47bd29189e838edf847ed39b87e10",
|
||||
"3270.tar.xz": "304010729a11da9bea9f2f1e35e84f4f2240cd8b0ec2a315ef3c1af0ba3af185",
|
||||
"Agave.tar.xz": "2f7939592934ac02ed74e90556a7e13e95ca621b6e44df31db729ae6930f9cb4",
|
||||
"AnonymousPro.tar.xz": "85798dd957cb18837c387ca7fd43044a62830a58860d24e7bd315fc10b5b94f6",
|
||||
"Arimo.tar.xz": "4abbf467968a0f31bb3ad8da7ecd15117cdc8265a67a793e5b9ded6437654ce7",
|
||||
"AurulentSansMono.tar.xz": "b1898e9bbfa1cbea8fd514b151ff4bb572d2562234e942408a9ef90dfb14075f",
|
||||
"BigBlueTerminal.tar.xz": "44bf48101c6c31f6777a42430021681cf54c2f0699f1357a33c73c8788c5aa35",
|
||||
"BitstreamVeraSansMono.tar.xz": "0e5c4ed24358be59a8f7268f3b7352d92f5f19894cdbc62e3c0d91af16250d95",
|
||||
"CascadiaCode.tar.xz": "86ac1e16199fe9c3448a7882e4f3e90c11c27396fd4771c552661648e3d18f96",
|
||||
"CascadiaMono.tar.xz": "29e494f00c6ec0bbbeba031cb69f30ebbe4cf46945d341e0347aab7073049bf0",
|
||||
"CodeNewRoman.tar.xz": "b032b5521c070076148f986d861708ed142fe19f2014a9f248ca4d0a43e9cc8e",
|
||||
"ComicShannsMono.tar.xz": "cb3667e107e265010566d05e544170b57eec3808f33b0c1790b3b1bd069690aa",
|
||||
"CommitMono.tar.xz": "aa7f15a591374a04379223a0c224cd66a7c98938e52cda306311681cc51a1c22",
|
||||
"Cousine.tar.xz": "c7ee3224ff34c69fadfe947d5a9bf349952206cf8e0708564f7cf3d49095d4d8",
|
||||
"D2Coding.tar.xz": "cad0abe4898b6d9aa12d28c4383ea7260eadba951b6ed9d347a524efc234dd1b",
|
||||
"DaddyTimeMono.tar.xz": "8a4b6f1fda69bad7dbf102059416998caa5a870fb413c49e88d64ac2912a93e5",
|
||||
"DejaVuSansMono.tar.xz": "e02d9dcf740b6fe72288ece5ea235a78cdc3763502b2682d7659c7618d4400c5",
|
||||
"DepartureMono.tar.xz": "45dca8cadd11f6eb289c13f66be3ad7fbd525504168d3c0931d57c8ad56be909",
|
||||
"DroidSansMono.tar.xz": "1e2b79f888e4d07617857ddae0f82ffe07b65328fc0664e9a94bc0fac1aef888",
|
||||
"EnvyCodeR.tar.xz": "be99355fc93e9c351a4c70d7713c8f4fe038a65ac72f7ac9cc5550bc52734b70",
|
||||
"FantasqueSansMono.tar.xz": "947166571476762b8e9b87a6b0532f9eab29147dc9e5d15aad1b7983229328d7",
|
||||
"FiraCode.tar.xz": "7c64c44d7e530b25faf23904e135e9d1ff0339a92ee64e35e7da9116aa48af67",
|
||||
"FiraMono.tar.xz": "d23c8db9d53397606bcfe6593f576abb12dd8e3d0605062231e391e2719e92c0",
|
||||
"GeistMono.tar.xz": "8c5cacfa8a1fe276ea4ebdbe3b542ce71a7144c04a811c9f210faa401b436b3b",
|
||||
"Go-Mono.tar.xz": "d3d2a8ec7f30513e52412f8907ec4838fd5843323b9e2a5a841de6531aff9a3a",
|
||||
"Gohu.tar.xz": "da43efcf1eb53dc1773938861a9f3fcb19b71065a6a5bb0295e6038e90545027",
|
||||
"Hack.tar.xz": "f797524e4b99191a5f35614c6fe48e96f7b8872712e2943a2aaf59cda086e909",
|
||||
"Hasklig.tar.xz": "9cb2f02337782dd5eb1711f9890edaeea3d59eca00dd7ea3810c237336883fe3",
|
||||
"HeavyData.tar.xz": "a3473e58cf5a7469a511dfdba2935611945e5cbd2f17d09a361c1ce19a30df0f",
|
||||
"Hermit.tar.xz": "fddd0ada8ab3266042d4f6ddb3dd7a9c652c15ac80eda35097c3914281e14db0",
|
||||
"IBMPlexMono.tar.xz": "f7b420dae1361d347858c78d6d48e385bc644e32781cc21eb7dcc483c3682eb1",
|
||||
"Inconsolata.tar.xz": "d843486d7bab95ccf06c6c17ef03773b2dc5b284602b3926356a668c49be565f",
|
||||
"InconsolataGo.tar.xz": "105963a2025b4cb96798d1538f38aa65bd13a856cda9941ce25c139959eccd03",
|
||||
"InconsolataLGC.tar.xz": "442501cffb407e11539fa9fb4714253d779dd0508c0257c42eec187f11a18b13",
|
||||
"IntelOneMono.tar.xz": "0a5287b9e24a9adce148daea25c04242ae65f9bb04e3610c8374eaca7379ec20",
|
||||
"Iosevka.tar.xz": "01b352cd732b36d24fb7b0f2b331ddc34c2a39155af6e7a42bddf2ee279bb25d",
|
||||
"IosevkaTerm.tar.xz": "5ca2a43d1ed2a0098fbc9f87e7dc89c6a13d0399bcb82f09359fa141f9afb70b",
|
||||
"IosevkaTermSlab.tar.xz": "c8e7e72b6652adb34e4f0af20e22d1eda06368db3a6ebab5194d1078944ea31a",
|
||||
"JetBrainsMono.tar.xz": "7d171ea3884be22fc08bf1a1aee640a3dc93f031989c27f6f9ceb30a6a668de1",
|
||||
"Lekton.tar.xz": "2f83aabdf69d1ae28e9b60ef3777e572aafc359f32c8eae7a6278337f1364014",
|
||||
"LiberationMono.tar.xz": "cc2d9a78c88c91875d8fee10d7d5d67ee9f0687ef004fd61bee4e7a1ecef700b",
|
||||
"Lilex.tar.xz": "1f4d1c13252f12e9b09e09f881ea21a77645e1eac3472604990b3a11deea78c1",
|
||||
"MPlus.tar.xz": "55d7390e8b45fc19a028dd93d42aebf0fe55fd85321940d1be13a5f6fa592e76",
|
||||
"MartianMono.tar.xz": "7cad96ae914fecff010fa438276a99daf984044ade8b473049b3b63f771a5603",
|
||||
"Meslo.tar.xz": "6ad716ed719e2c97794abd5856a90c6131c406606b249debdc83b04ae11f4cb7",
|
||||
"Monaspace.tar.xz": "faeb907827a2a07ae64c8fa1a5ca48cd9e60c9084a24c48d779a30cf6bd0693a",
|
||||
"Monofur.tar.xz": "9dfad24a7debf0ca56db2465e8bd5a0a28435945c23e2a831bcd111785b57480",
|
||||
"Monoid.tar.xz": "51765143936c5c5078249eb77f2dc862f0d9436328c4c698918b276637d5caee",
|
||||
"Mononoki.tar.xz": "b9bff1032796daffef71610639685d28a4a5baf31cb4ca43dd53f3d14820f5cf",
|
||||
"NerdFontsSymbolsOnly.tar.xz": "8b5ecbe2612cb37d75e2645f7644876bc38960574909b1c01c002d0e8d33deb3",
|
||||
"Noto.tar.xz": "556a30d1dcdbf565946605f50657fa77105d95d150413492cfa7065263f56427",
|
||||
"OpenDyslexic.tar.xz": "5cd679c82f992f4140f2ab4f6cb77b0080f71a3d7152fb8c91fe0c07f4dcce83",
|
||||
"Overpass.tar.xz": "6dc50cddca27afa51bd2cce334d6b451d6ce56e6f955c06518ae5b9b1f99e9fc",
|
||||
"ProFont.tar.xz": "960a9f36ea58ab07c2955b8cb37b4386626ae19b23d026095ef896a05842dadb",
|
||||
"ProggyClean.tar.xz": "70e91ef90a6d6230f6870a978b856e6138dcff0b98efa9ba3e84c447dda638a2",
|
||||
"Recursive.tar.xz": "2c9d0b6db82ef6acf71b235b5bd7b16f33cfbbba5ce08bfb1278f7dc6ec1eb20",
|
||||
"RobotoMono.tar.xz": "fad79b182e2c27454276b45d9633c0800302da996168bc5cee0109fda2181ed3",
|
||||
"ShareTechMono.tar.xz": "0f7fb196b3700caeee85ddad56efde174416d73afc651a79d38bd319c1587d43",
|
||||
"SourceCodePro.tar.xz": "87834bca780558bbe3ff808e51c89e1c3d98140a2c1a0d3100e10e944456a63c",
|
||||
"SpaceMono.tar.xz": "a2058cfc43eee5a170208c6e90fa77d8f0aa755e0d213e795f70781f7d807942",
|
||||
"Terminus.tar.xz": "88b17b50aab7ee284f9a1ed395f96c20ab4d22640fde1fe0f80a31f1eacd6585",
|
||||
"Tinos.tar.xz": "f763b82e01f06ebce5830c475306598734d2fc91ded1760fe925a826b3cba8ef",
|
||||
"Ubuntu.tar.xz": "4ff08c04bec3ec86b60d75a987b5c09d7e5c434f006f426bcfdac80f6f66d938",
|
||||
"UbuntuMono.tar.xz": "dc8a6aebd8950e59dd89a1c5f49be3914879691e2e1293c157b7f66291c09712",
|
||||
"UbuntuSans.tar.xz": "3d0ed4bbadf13f9655c5e4a3bc089eef6db232fa3d4552144b1683adc9fad98d",
|
||||
"VictorMono.tar.xz": "f61229287e333e575f134923fd46da32fe4e01120a2a74a17d2d9b7591a9b87e",
|
||||
"ZedMono.tar.xz": "fa29af2373bbf6edda1c3c9a42655227748d1a9f7b2563bf4b79253618768318",
|
||||
"iA-Writer.tar.xz": "50d885c7f03931323c5ea232c677b8963f8d1a196cfd8f2935e2ddcf535b5971"
|
||||
}
|
546
pkgs/data/fonts/nerd-fonts/manifests/fonts.json
Normal file
546
pkgs/data/fonts/nerd-fonts/manifests/fonts.json
Normal file
@ -0,0 +1,546 @@
|
||||
[
|
||||
{
|
||||
"caskName": "0xproto",
|
||||
"description": "A programming font focused on source code legibility",
|
||||
"folderName": "0xProto",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "0xProto",
|
||||
"version": "2.201"
|
||||
},
|
||||
{
|
||||
"caskName": "3270",
|
||||
"description": "Derived from the x3270 font, a modern format of a font with high nostalgic value",
|
||||
"folderName": "3270",
|
||||
"licenseId": "BSD-3-Clause",
|
||||
"patchedName": "3270",
|
||||
"version": "3.0.1"
|
||||
},
|
||||
{
|
||||
"caskName": "agave",
|
||||
"description": "A small, monospace, outline font that is geometrically regular and simple",
|
||||
"folderName": "Agave",
|
||||
"licenseId": "MIT",
|
||||
"patchedName": "Agave",
|
||||
"version": "37"
|
||||
},
|
||||
{
|
||||
"caskName": "anonymice",
|
||||
"description": "Inspired by Anonymous 9 on Macintosh, since 2009, distinct `O`, `0`, `I`, `l`, `1`",
|
||||
"folderName": "AnonymousPro",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "AnonymicePro",
|
||||
"version": "1.002"
|
||||
},
|
||||
{
|
||||
"caskName": "arimo",
|
||||
"description": "Metrically similar to Arial, pan-European WGL character set, sans serif",
|
||||
"folderName": "Arimo",
|
||||
"licenseId": "Apache-2.0",
|
||||
"patchedName": "Arimo",
|
||||
"version": "1.33"
|
||||
},
|
||||
{
|
||||
"caskName": "aurulent-sans-mono",
|
||||
"description": "Sans serif, designed by Stephen G. Hartke which also created Verily Serif",
|
||||
"folderName": "AurulentSansMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "AurulentSansM",
|
||||
"version": "-"
|
||||
},
|
||||
{
|
||||
"caskName": "bigblue-terminal",
|
||||
"description": "Nostalgic, closely based on IBM's 8x14 EGA/VGA charset",
|
||||
"folderName": "BigBlueTerminal",
|
||||
"licenseId": "CC-BY-SA-4.0",
|
||||
"patchedName": "BigBlueTerm",
|
||||
"version": "-"
|
||||
},
|
||||
{
|
||||
"caskName": "bitstream-vera-sans-mono",
|
||||
"description": "Dotted zero, compact lowercase characters",
|
||||
"folderName": "BitstreamVeraSansMono",
|
||||
"licenseId": "Bitstream-Vera",
|
||||
"patchedName": "BitstromWera",
|
||||
"version": "1.1"
|
||||
},
|
||||
{
|
||||
"caskName": "blex-mono",
|
||||
"description": "It's global, it's versatile and it's distinctly IBM",
|
||||
"folderName": "IBMPlexMono",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "BlexMono",
|
||||
"version": "2.004 (6.4.0)"
|
||||
},
|
||||
{
|
||||
"caskName": "caskaydia-cove",
|
||||
"description": "A fun, new monospaced font that includes programming ligatures and is designed to enhance the modern look and feel of the Windows Terminal",
|
||||
"folderName": "CascadiaCode",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "CaskaydiaCove",
|
||||
"version": "2111.01"
|
||||
},
|
||||
{
|
||||
"caskName": "caskaydia-mono",
|
||||
"description": "Like Cascadia Code but without any ligatures",
|
||||
"folderName": "CascadiaMono",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "CaskaydiaMono",
|
||||
"version": "2111.01"
|
||||
},
|
||||
{
|
||||
"caskName": "code-new-roman",
|
||||
"description": "Tunable, slashed zeros, compact smaller characters",
|
||||
"folderName": "CodeNewRoman",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "CodeNewRoman",
|
||||
"version": "2.0"
|
||||
},
|
||||
{
|
||||
"caskName": "comic-shanns-mono",
|
||||
"description": "The very typeface you\u2019ve been trained to recognize since childhood",
|
||||
"folderName": "ComicShannsMono",
|
||||
"licenseId": "MIT",
|
||||
"patchedName": "ComicShannsMono",
|
||||
"version": "1.3.1"
|
||||
},
|
||||
{
|
||||
"caskName": "commit-mono",
|
||||
"description": "An anonymous and neutral programming typeface",
|
||||
"folderName": "CommitMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "CommitMono",
|
||||
"version": "1.143"
|
||||
},
|
||||
{
|
||||
"caskName": "cousine",
|
||||
"description": "Similar to Courier New with better readablitiy, dotted zeros",
|
||||
"folderName": "Cousine",
|
||||
"licenseId": "Apache-2.0",
|
||||
"patchedName": "Cousine",
|
||||
"version": "1.211"
|
||||
},
|
||||
{
|
||||
"caskName": "d2coding",
|
||||
"description": "A coding font for Koreans. This is the variant with ligatures.",
|
||||
"folderName": "D2Coding",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "D2CodingLigature",
|
||||
"version": "1.3.2"
|
||||
},
|
||||
{
|
||||
"caskName": "daddy-time-mono",
|
||||
"description": "A monospaced font for programmers and other terminal groupies",
|
||||
"folderName": "DaddyTimeMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "DaddyTimeMono",
|
||||
"version": "1.2.3"
|
||||
},
|
||||
{
|
||||
"caskName": "departure-mono",
|
||||
"description": "A monospaced pixel font with a lo-fi, techy vibe",
|
||||
"folderName": "DepartureMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "DepartureMono",
|
||||
"version": "1.422"
|
||||
},
|
||||
{
|
||||
"caskName": "dejavu-sans-mono",
|
||||
"description": "Dotted zero, based on the Bitstream Vera Fonts with a wider range of character",
|
||||
"folderName": "DejaVuSansMono",
|
||||
"licenseId": "Bitstream-Vera",
|
||||
"patchedName": "DejaVuSansM",
|
||||
"version": "2.37"
|
||||
},
|
||||
{
|
||||
"caskName": "droid-sans-mono",
|
||||
"description": "Good for small screens or font sizes",
|
||||
"folderName": "DroidSansMono",
|
||||
"licenseId": "Apache-2.0",
|
||||
"patchedName": "DroidSansM",
|
||||
"version": "1.00-113"
|
||||
},
|
||||
{
|
||||
"caskName": "envy-code-r",
|
||||
"description": "Fully-scalable monospaced font designed for programming and command prompts",
|
||||
"folderName": "EnvyCodeR",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "EnvyCodeR",
|
||||
"version": "0.79"
|
||||
},
|
||||
{
|
||||
"caskName": "fantasque-sans-mono",
|
||||
"description": "\"Wibbly-wobbly handwriting-like fuzziness\", takes some inspiration from Inconsolata and Monaco",
|
||||
"folderName": "FantasqueSansMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "FantasqueSansM",
|
||||
"version": "1.8.0"
|
||||
},
|
||||
{
|
||||
"caskName": "fira-code",
|
||||
"description": "Programming ligatures, extension of Fira Mono font, enlarged operators",
|
||||
"folderName": "FiraCode",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "FiraCode",
|
||||
"version": "6.2"
|
||||
},
|
||||
{
|
||||
"caskName": "fira-mono",
|
||||
"description": "Mozilla typeface, dotted zero",
|
||||
"folderName": "FiraMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "FiraMono",
|
||||
"version": "3.206"
|
||||
},
|
||||
{
|
||||
"caskName": "geist-mono",
|
||||
"description": "Monospaced typeface designed to be used in code editors, diagrams, terminals, and other textbased interfaces where code is represented",
|
||||
"folderName": "GeistMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "GeistMono",
|
||||
"version": "1.2.0 (1.3.0)"
|
||||
},
|
||||
{
|
||||
"caskName": "go-mono",
|
||||
"description": "Created specifically for the Go project, looks particularly clear for use with the Go language",
|
||||
"folderName": "Go-Mono",
|
||||
"licenseId": "BSD-3-Clause-Clear",
|
||||
"patchedName": "GoMono",
|
||||
"version": "2.010"
|
||||
},
|
||||
{
|
||||
"caskName": "gohufont",
|
||||
"description": "Bitmap font, tall capitals and ascenders, small serifs",
|
||||
"folderName": "Gohu",
|
||||
"licenseId": "WTFPL",
|
||||
"patchedName": "GohuFont",
|
||||
"version": "2.0"
|
||||
},
|
||||
{
|
||||
"caskName": "hack",
|
||||
"description": "Dotted zero, short descenders, expands upon work done for Bitstream Vera & DejaVu, legible at common sizes",
|
||||
"folderName": "Hack",
|
||||
"licenseId": "Bitstream-Vera AND MIT",
|
||||
"patchedName": "Hack",
|
||||
"version": "3.003"
|
||||
},
|
||||
{
|
||||
"caskName": "hasklug",
|
||||
"description": "Monospaced ligatures, makes composite glyphs (e.g. ->) more reabable, especially in Haskell",
|
||||
"folderName": "Hasklig",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "Hasklug",
|
||||
"version": "1.2"
|
||||
},
|
||||
{
|
||||
"caskName": "heavy-data",
|
||||
"description": "Novel and unique design, dotted zero",
|
||||
"folderName": "HeavyData",
|
||||
"licenseId": "LicenseRef-VicFieger",
|
||||
"patchedName": "HeavyData",
|
||||
"version": "1"
|
||||
},
|
||||
{
|
||||
"caskName": "hurmit",
|
||||
"description": "Symbols stand out from common text",
|
||||
"folderName": "Hermit",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "Hurmit",
|
||||
"version": "2.0"
|
||||
},
|
||||
{
|
||||
"caskName": "im-writing",
|
||||
"description": "A heavy modification of IBM's Plex font",
|
||||
"folderName": "iA-Writer",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "iMWriting",
|
||||
"version": "Dec 2018"
|
||||
},
|
||||
{
|
||||
"caskName": "inconsolata",
|
||||
"description": "Slashed zero, takes inspiration from many different fonts and glyphs, subtle curves in lowercase",
|
||||
"folderName": "Inconsolata",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "Inconsolata",
|
||||
"version": "3.000"
|
||||
},
|
||||
{
|
||||
"caskName": "inconsolata-go",
|
||||
"description": "Inconsolata with straight quotes",
|
||||
"folderName": "InconsolataGo",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "InconsolataGo",
|
||||
"version": "1.013"
|
||||
},
|
||||
{
|
||||
"caskName": "inconsolata-lgc",
|
||||
"description": "Inconsolata with added the Cyrillic alphabet",
|
||||
"folderName": "InconsolataLGC",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "Inconsolata LGC",
|
||||
"version": "1.5.2"
|
||||
},
|
||||
{
|
||||
"caskName": "intone-mono",
|
||||
"description": "Expressive monospaced font family that\u2019s built with clarity, legibility, and the needs of developers in mind",
|
||||
"folderName": "IntelOneMono",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "IntoneMono",
|
||||
"version": "1.4.0"
|
||||
},
|
||||
{
|
||||
"caskName": "iosevka",
|
||||
"description": "Narrow and horizontally tight characters, slashed zero",
|
||||
"folderName": "Iosevka",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "Iosevka",
|
||||
"version": "29.0.4"
|
||||
},
|
||||
{
|
||||
"caskName": "iosevka-term",
|
||||
"description": "A narrower variant focusing terminal uses: Arrows and geometric symbols will be narrow to follow typical terminal usages",
|
||||
"folderName": "IosevkaTerm",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "IosevkaTerm",
|
||||
"version": "29.0.4"
|
||||
},
|
||||
{
|
||||
"caskName": "iosevka-term-slab",
|
||||
"description": "Nice as Iosevka but with slab serifs",
|
||||
"folderName": "IosevkaTermSlab",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "IosevkaTermSlab",
|
||||
"version": "29.0.4"
|
||||
},
|
||||
{
|
||||
"caskName": "jetbrains-mono",
|
||||
"description": "JetBrains officially created font for developers",
|
||||
"folderName": "JetBrainsMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "JetBrainsMono",
|
||||
"version": "2.304"
|
||||
},
|
||||
{
|
||||
"caskName": "lekton",
|
||||
"description": "Very light and thin characters, sharp m's, `0` and `O` very similar",
|
||||
"folderName": "Lekton",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "Lekton",
|
||||
"version": "34"
|
||||
},
|
||||
{
|
||||
"caskName": "liberation",
|
||||
"description": "`0` and `O` very similar, very short tight descenders",
|
||||
"folderName": "LiberationMono",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "LiterationMono",
|
||||
"version": "2.1.5"
|
||||
},
|
||||
{
|
||||
"caskName": "lilex",
|
||||
"description": "Modern with ligatures",
|
||||
"folderName": "Lilex",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "Lilex",
|
||||
"version": "2.400"
|
||||
},
|
||||
{
|
||||
"caskName": "martian-mono",
|
||||
"description": "Free and open-source monospaced font from Evil Martians",
|
||||
"folderName": "MartianMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "MartianMono",
|
||||
"version": "1.0.0"
|
||||
},
|
||||
{
|
||||
"caskName": "meslo-lg",
|
||||
"description": "Slashed zeros, customized version of Apple's Menlo",
|
||||
"folderName": "Meslo",
|
||||
"licenseId": "Apache-2.0",
|
||||
"patchedName": "MesloLG",
|
||||
"version": "1.21"
|
||||
},
|
||||
{
|
||||
"caskName": "monaspace",
|
||||
"description": "Five matching fonts all having 'texture healing' to improve legibility",
|
||||
"folderName": "Monaspace",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "Monaspice",
|
||||
"version": "1.101"
|
||||
},
|
||||
{
|
||||
"caskName": "monofur",
|
||||
"description": "Dotted zeros, slightly exaggerated curvy characters, compact characters",
|
||||
"folderName": "Monofur",
|
||||
"licenseId": "LicenseRef-Monofur",
|
||||
"patchedName": "Monofur",
|
||||
"version": "1.0"
|
||||
},
|
||||
{
|
||||
"caskName": "monoid",
|
||||
"description": "Ligatures, distinguishable glyphs with short ascenders & descenders, large operators & punctuation",
|
||||
"folderName": "Monoid",
|
||||
"licenseId": "MIT OR OFL-1.1-no-RFN",
|
||||
"patchedName": "Monoid",
|
||||
"version": "0.61"
|
||||
},
|
||||
{
|
||||
"caskName": "mononoki",
|
||||
"description": "Keeps in mind differentiation of characters and resolution sizes",
|
||||
"folderName": "Mononoki",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "Mononoki",
|
||||
"version": "1.6"
|
||||
},
|
||||
{
|
||||
"caskName": "mplus",
|
||||
"description": "Multiple styles and weights, many glyph sets (e.g. Kana glyphs)",
|
||||
"folderName": "MPlus",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "M+",
|
||||
"version": "2023/09"
|
||||
},
|
||||
{
|
||||
"caskName": "noto",
|
||||
"description": "`0` and `O` very similar, characters are either very curvy or straight lined",
|
||||
"folderName": "Noto",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "Noto",
|
||||
"version": "div"
|
||||
},
|
||||
{
|
||||
"caskName": "open-dyslexic",
|
||||
"description": "Designed specifically to alleviate reading errors caused by dyslexia",
|
||||
"folderName": "OpenDyslexic",
|
||||
"licenseId": "Bitstream-Vera",
|
||||
"patchedName": "OpenDyslexic",
|
||||
"version": "2.001"
|
||||
},
|
||||
{
|
||||
"caskName": "overpass",
|
||||
"description": "An open source font family inspired by Highway Gothic",
|
||||
"folderName": "Overpass",
|
||||
"licenseId": "OFL-1.1-no-RFN or LGPL-2.1-only",
|
||||
"patchedName": "Overpass",
|
||||
"version": "3.0.5"
|
||||
},
|
||||
{
|
||||
"caskName": "profont",
|
||||
"description": "Looks best with anti-aliasing turned off, squared off character corners, vertically tight small `s`",
|
||||
"folderName": "ProFont",
|
||||
"licenseId": "MIT",
|
||||
"patchedName": "ProFont",
|
||||
"version": "2.3/2.2"
|
||||
},
|
||||
{
|
||||
"caskName": "proggy-clean-tt",
|
||||
"description": "Designed particularly for use at small point sizes",
|
||||
"folderName": "ProggyClean",
|
||||
"licenseId": "MIT",
|
||||
"patchedName": "ProggyClean",
|
||||
"version": "2004/04/15"
|
||||
},
|
||||
{
|
||||
"caskName": "recursive-mono",
|
||||
"description": "inspired by casual script signpainting, 4 variants",
|
||||
"folderName": "Recursive",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "RecMono",
|
||||
"version": "1.085"
|
||||
},
|
||||
{
|
||||
"caskName": "roboto-mono",
|
||||
"description": "Dashed zero, curved and straight character lines",
|
||||
"folderName": "RobotoMono",
|
||||
"licenseId": "Apache-2.0",
|
||||
"patchedName": "RobotoMono",
|
||||
"version": "3.0"
|
||||
},
|
||||
{
|
||||
"caskName": "shure-tech-mono",
|
||||
"description": "Dotted zeros, distinguishable 1 and l, curved and straight character lines",
|
||||
"folderName": "ShareTechMono",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "ShureTechMono",
|
||||
"version": "1.003"
|
||||
},
|
||||
{
|
||||
"caskName": "sauce-code-pro",
|
||||
"description": "Monospaced font family for user interface and coding environments",
|
||||
"folderName": "SourceCodePro",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "SauceCodePro",
|
||||
"version": "2.042"
|
||||
},
|
||||
{
|
||||
"caskName": "space-mono",
|
||||
"description": "Squarish character lines, dotted zero, aggressive parethesis",
|
||||
"folderName": "SpaceMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "SpaceMono",
|
||||
"version": "1.001"
|
||||
},
|
||||
{
|
||||
"caskName": "symbols-only",
|
||||
"description": "Just the Nerd Font Icons. I.e Symbol font only",
|
||||
"folderName": "NerdFontsSymbolsOnly",
|
||||
"licenseId": "MIT",
|
||||
"patchedName": "Symbols",
|
||||
"version": "latest"
|
||||
},
|
||||
{
|
||||
"caskName": "terminess-ttf",
|
||||
"description": "Squarish characters that are slightly askew",
|
||||
"folderName": "Terminus",
|
||||
"licenseId": "OFL-1.1-RFN",
|
||||
"patchedName": "Terminess",
|
||||
"version": "4.49.2"
|
||||
},
|
||||
{
|
||||
"caskName": "tinos",
|
||||
"description": "Some similarities to Times New Roman, designed by Steve Matteson, includes pan-European WGL character set",
|
||||
"folderName": "Tinos",
|
||||
"licenseId": "Apache-2.0",
|
||||
"patchedName": "Tinos",
|
||||
"version": "1.23"
|
||||
},
|
||||
{
|
||||
"caskName": "ubuntu",
|
||||
"description": "Specially created for Ubuntu",
|
||||
"folderName": "Ubuntu",
|
||||
"licenseId": "LicenseRef-UbuntuFont",
|
||||
"patchedName": "Ubuntu",
|
||||
"version": "0.83"
|
||||
},
|
||||
{
|
||||
"caskName": "ubuntu-mono",
|
||||
"description": "Dotted zeros, used the `n`, `o`, `H` & `O` Latin characters as a base for design",
|
||||
"folderName": "UbuntuMono",
|
||||
"licenseId": "LicenseRef-UbuntuFont",
|
||||
"patchedName": "UbuntuMono",
|
||||
"version": "0.80"
|
||||
},
|
||||
{
|
||||
"caskName": "ubuntu-sans",
|
||||
"description": "Refreshed version of Ubuntu and Ubuntu Mono fonts",
|
||||
"folderName": "UbuntuSans",
|
||||
"licenseId": "LicenseRef-UbuntuFont",
|
||||
"patchedName": "UbuntuSans",
|
||||
"version": "1.004"
|
||||
},
|
||||
{
|
||||
"caskName": "victor-mono",
|
||||
"description": "Clean, crisp and narrow, with a large x-height and clear punctuation",
|
||||
"folderName": "VictorMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "VictorMono",
|
||||
"version": "1.5.6"
|
||||
},
|
||||
{
|
||||
"caskName": "zed-mono",
|
||||
"description": "Zed Mono is a more rounded version of Iosevka",
|
||||
"folderName": "ZedMono",
|
||||
"licenseId": "OFL-1.1-no-RFN",
|
||||
"patchedName": "ZedMono",
|
||||
"version": "1.2.0"
|
||||
}
|
||||
]
|
4
pkgs/data/fonts/nerd-fonts/manifests/release.json
Normal file
4
pkgs/data/fonts/nerd-fonts/manifests/release.json
Normal file
@ -0,0 +1,4 @@
|
||||
{
|
||||
"tag_name": "v3.3.0",
|
||||
"published_at": "2024-11-18T12:43:12Z"
|
||||
}
|
90
pkgs/data/fonts/nerd-fonts/update.py
Executable file
90
pkgs/data/fonts/nerd-fonts/update.py
Executable file
@ -0,0 +1,90 @@
|
||||
#! /usr/bin/env nix-shell
|
||||
#! nix-shell -p python3 -i python3
|
||||
import os
|
||||
import urllib.request as ureq
|
||||
import json
|
||||
|
||||
if not all(
|
||||
f"UPDATE_NIX_{v}" in os.environ
|
||||
for v in ["NAME", "PNAME", "OLD_VERSION", "ATTR_PATH"]
|
||||
) or not os.environ['UPDATE_NIX_ATTR_PATH'].startswith("nerd-fonts."):
|
||||
raise Exception(
|
||||
"Please don't run this script manually, only with:\n"
|
||||
"nix-shell maintainers/scripts/update.nix --argstr path nerd-fonts "
|
||||
"--argstr commit true"
|
||||
)
|
||||
|
||||
RELEASE_INFO_URL = "https://api.github.com/repos/ryanoasis/nerd-fonts/releases/latest"
|
||||
FONTS_INFO_URL_TEMPLATE = "https://raw.githubusercontent.com/ryanoasis/nerd-fonts/refs/tags/{}/bin/scripts/lib/fonts.json"
|
||||
SHA256_URL_TEMPLATE = "https://github.com/ryanoasis/nerd-fonts/releases/download/{}/SHA-256.txt"
|
||||
|
||||
RELEASE_INFO_FILENAME = "release.json"
|
||||
FONTS_INFO_FILENAME = "fonts.json"
|
||||
CHECKSUMS_FILENAME = "checksums.json"
|
||||
|
||||
def fetchjson(url):
|
||||
with ureq.urlopen(url) as r:
|
||||
return json.loads(r.read())
|
||||
|
||||
def storejson(path, obj):
|
||||
with open(path, "w", encoding="utf-8") as f:
|
||||
json.dump(obj, f, indent=2)
|
||||
# Needed to satisfy EditorConfig's rules
|
||||
f.write('\n')
|
||||
|
||||
def slicedict(d, ks):
|
||||
return {k: d[k] for k in ks}
|
||||
|
||||
os.chdir(os.path.join(os.path.dirname(os.path.abspath(__file__)), "manifests"))
|
||||
|
||||
release_info = slicedict(
|
||||
fetchjson(RELEASE_INFO_URL),
|
||||
["tag_name", "published_at"]
|
||||
)
|
||||
|
||||
tag_name = release_info["tag_name"]
|
||||
with open(RELEASE_INFO_FILENAME, "r", encoding="utf-8") as f:
|
||||
former_tag_name = json.load(f)["tag_name"]
|
||||
if tag_name == former_tag_name:
|
||||
raise Exception("no newer version available")
|
||||
# See: https://github.com/NixOS/nixpkgs/blob/master/pkgs/README.md#supported-features
|
||||
print(json.dumps(
|
||||
[
|
||||
{
|
||||
"attrPath": "nerd-fonts",
|
||||
"oldVersion": former_tag_name.removeprefix("v"),
|
||||
"newVersion": tag_name.removeprefix("v"),
|
||||
},
|
||||
],
|
||||
indent=2
|
||||
))
|
||||
|
||||
storejson(RELEASE_INFO_FILENAME, release_info)
|
||||
|
||||
storejson(
|
||||
FONTS_INFO_FILENAME,
|
||||
[
|
||||
slicedict(
|
||||
item,
|
||||
[
|
||||
"caskName",
|
||||
"description",
|
||||
"folderName",
|
||||
"licenseId",
|
||||
"patchedName",
|
||||
"version",
|
||||
]
|
||||
)
|
||||
for item in fetchjson(FONTS_INFO_URL_TEMPLATE.format(tag_name))["fonts"]
|
||||
],
|
||||
)
|
||||
|
||||
storejson(
|
||||
CHECKSUMS_FILENAME,
|
||||
{
|
||||
filename: sha256
|
||||
for row in ureq.urlopen(SHA256_URL_TEMPLATE.format(tag_name))
|
||||
for sha256, filename in [row.decode('utf-8').split()]
|
||||
if filename.endswith(".tar.xz")
|
||||
},
|
||||
)
|
@ -1,72 +0,0 @@
|
||||
{ stdenv
|
||||
, fetchurl
|
||||
, lib
|
||||
# To select only certain fonts, put a list of strings to `fonts`: every key in
|
||||
# ./shas.nix is an optional font
|
||||
, fonts ? []
|
||||
# Whether to enable Windows font variants, their internal font name is limited
|
||||
# to 31 characters
|
||||
, enableWindowsFonts ? false
|
||||
}:
|
||||
|
||||
let
|
||||
# both of these files are generated via ./update.sh
|
||||
version = import ./version.nix;
|
||||
fontsShas = import ./shas.nix;
|
||||
knownFonts = builtins.attrNames fontsShas;
|
||||
selectedFonts = if (fonts == []) then
|
||||
knownFonts
|
||||
else
|
||||
let unknown = lib.subtractLists knownFonts fonts; in
|
||||
if (unknown != []) then
|
||||
throw "Unknown font(s): ${lib.concatStringsSep " " unknown}"
|
||||
else
|
||||
fonts
|
||||
;
|
||||
selectedFontsShas = lib.attrsets.genAttrs selectedFonts (
|
||||
fName:
|
||||
fontsShas."${fName}"
|
||||
);
|
||||
srcs = lib.attrsets.mapAttrsToList (
|
||||
fName:
|
||||
fSha:
|
||||
(fetchurl {
|
||||
url = "https://github.com/ryanoasis/nerd-fonts/releases/download/v${version}/${fName}.tar.xz";
|
||||
sha256 = fSha;
|
||||
})
|
||||
) selectedFontsShas;
|
||||
in
|
||||
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
inherit version;
|
||||
inherit srcs;
|
||||
pname = "nerdfonts";
|
||||
sourceRoot = ".";
|
||||
buildPhase = ''
|
||||
echo "selected fonts are ${toString selectedFonts}"
|
||||
ls *.otf *.ttf
|
||||
'';
|
||||
installPhase = ''
|
||||
find -name \*.otf -exec mkdir -p $out/share/fonts/opentype/NerdFonts \; -exec mv {} $out/share/fonts/opentype/NerdFonts \;
|
||||
find -name \*.ttf -exec mkdir -p $out/share/fonts/truetype/NerdFonts \; -exec mv {} $out/share/fonts/truetype/NerdFonts \;
|
||||
${lib.optionalString (! enableWindowsFonts) ''
|
||||
rm -rfv $out/share/fonts/opentype/NerdFonts/*Windows\ Compatible.*
|
||||
rm -rfv $out/share/fonts/truetype/NerdFonts/*Windows\ Compatible.*
|
||||
''}
|
||||
'';
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Iconic font aggregator, collection, & patcher. 3,600+ icons, 50+ patched fonts";
|
||||
longDescription = ''
|
||||
Nerd Fonts is a project that attempts to patch as many developer targeted
|
||||
and/or used fonts as possible. The patch is to specifically add a high
|
||||
number of additional glyphs from popular 'iconic fonts' such as Font
|
||||
Awesome, Devicons, Octicons, and others.
|
||||
'';
|
||||
homepage = "https://nerdfonts.com/";
|
||||
license = licenses.mit;
|
||||
maintainers = with maintainers; [ doronbehar ];
|
||||
hydraPlatforms = []; # 'Output limit exceeded' on Hydra
|
||||
};
|
||||
})
|
@ -1,69 +0,0 @@
|
||||
{
|
||||
"0xProto" = "09q4ipl3vvav3jbs0s14fqmd2wk70mc7i8mmplpj20jwcicm05ng";
|
||||
"3270" = "0zcj5xhylyqxpwn6dzp28kh8xybhh4y9lva3smcqs7iklhbf8s31";
|
||||
"Agave" = "1xxylrjb0zbq3kj14fx5d3lpb7abl0br6mkj961i391qyqlx01y3";
|
||||
"AnonymousPro" = "1lq9wkf8c153jkjmhnddih12y9xd4gabbkgac0vx9j98hmy7yjqy";
|
||||
"Arimo" = "1f7zljmljrp1dxkrhkyz8zh9ddv7l7m9br6gaygzxr26bq0vrwr0";
|
||||
"AurulentSansMono" = "0wlwwgp1w7rqvqx66dkqwhz5flw75620fj9fb795hakpkjiya6yp";
|
||||
"BigBlueTerminal" = "115cxnll1iyj75f5wi7b7pi5hgfa3b5kbx269alm9183h284lb23";
|
||||
"BitstreamVeraSansMono" = "1s6jpg0vrdwgi9qyn0mbcy8r7h1lqw8z6q39wiin61szfn642a2k";
|
||||
"CascadiaCode" = "1sg6czl3km7yi70vdcyb0ff1xkq1p4nalj0yh164gan3psp9mxss";
|
||||
"CascadiaMono" = "0rrknf86kdwyjpnryp5870nmnq2sxjda8pgs93z23lh7hw758wln";
|
||||
"CodeNewRoman" = "0p1wkmpzcrxw8qv5lf9fwsxqpjglhwim83amf7i8mmxdx1drzlj5";
|
||||
"ComicShannsMono" = "1p35nmzl51mn2mk0g9fdcawvssv4v7bklxxmdx99357ihnlka26w";
|
||||
"CommitMono" = "0jjzi98i28s3z2x8v7rakcdhgdf7jxzagj8snrylw2mvwn7mlgqp";
|
||||
"Cousine" = "1ccq3sp8fqbi0njm9w2p6cf5r7avpan5fklwzpx4mknwbdqlrwdq";
|
||||
"D2Coding" = "1c0chgbsmzlgq0vinbcz7ydkdhnram8cif8zx8kkpha31abna5n0";
|
||||
"DaddyTimeMono" = "1nz4g26a4dx7ng5nv6bc4hg474inan1c00c86mdlmvl2vgmx6zbf";
|
||||
"DejaVuSansMono" = "12x18i15723hxc1l6ng92m77wycjk0d6r15j34n1zsww5r6xwjxr";
|
||||
"DroidSansMono" = "1mqd1qqbs9dxwmi98i4xw88c68l1bww1sqlsmxmn86368rjh14fk";
|
||||
"EnvyCodeR" = "197g4jaljcb1yncn9rvh17n077p7bq0v59lvb9vqkq3lms5lzjni";
|
||||
"FantasqueSansMono" = "079mk8xrri4r1d5k1w5fv1hb0hp3w499csirkd6yriss35sbhv9d";
|
||||
"FiraCode" = "1i1vw65f00n6vjinyqr1bq5ni5r6g8cjinrfl5zhlqm0gagv5x6y";
|
||||
"FiraMono" = "1i9bfxblx568wsjq7ks1kyyfn9k36i4r2an4n45mb46swc94n8n0";
|
||||
"GeistMono" = "0wvc9hqkh7ap3ysklcin8k72706l72p2wyqv3bg5brzcmwcpy90g";
|
||||
"Go-Mono" = "0j6rr0r7418f8a5bmxbagpmcf7bas2n53f0hg835zp2ikx9cx924";
|
||||
"Gohu" = "0h8hjiqs3f6xwn7g4wg12xim65ybw2546nlf5p9ip4ymr7x17dks";
|
||||
"Hack" = "1wxmd4jr4p11cfhzs5chyh649vps6sdz4bq28204npkd7wzh5fc9";
|
||||
"Hasklig" = "1nja4r8sn67g3gn85xhb1h7p1pi96wl0hpg5b5gyd1z5llbgzc2g";
|
||||
"HeavyData" = "1a3a1pixv97wlnai24zb8dhkzxb2llcarhjkfrgd4syhn37sdf7n";
|
||||
"Hermit" = "1bh18rzwma7gzrx3ybw8g2s9k5xv7wx8ybnyas3qaxb03fpjqm93";
|
||||
"iA-Writer" = "0vsppg62l35zhzlsa0fwczv09pk1nhrag9xhcaadipd962dv7c45";
|
||||
"IBMPlexMono" = "0hd04z17l2p21hij4a0gmwnlfxs7s8qqh08zf4pzqld10557gqlp";
|
||||
"Inconsolata" = "1xy3h05zy49h91k7fqk8934p1f776w46i0bh510addg12w8mm7rc";
|
||||
"InconsolataGo" = "0hcvh3s2rnnir03pszfmmwhbdsapx1b516phhjhb4wl0dqma9q39";
|
||||
"InconsolataLGC" = "0bfwhzbz422kfdv9ppr83cc2aqqdn7g49f73zipl4yp5636gi5ks";
|
||||
"IntelOneMono" = "0388390dlcprxhxxl57gy8rllwk8wsd92b5xwnqwb5f394gbc5m0";
|
||||
"Iosevka" = "0dzkcn277jxiqrrqkyigw6jgd4lp9411r28rkpkwx6js6px27q8v";
|
||||
"IosevkaTerm" = "1xccqkydkhmhq8akk23kkypqzcc2svyicxv9gblwzwbndjrfgmdm";
|
||||
"IosevkaTermSlab" = "1svig63li8mjj2dkgiawgb82gpk8vkrkhih5cp0a6174bh4gycii";
|
||||
"JetBrainsMono" = "01j0rkgrix7mdp9fx0y8zzk1kh40yfcp932p0r5y666aq4mq5y3c";
|
||||
"Lekton" = "00cm8ni3cnmgzwj1ypvpcy8gvnlz31la51j411dpsdqsclbcp0i2";
|
||||
"LiberationMono" = "1941pgw723a6my44g6idi56a88qvsi8lj3wl7slpr5l3pmfda2lx";
|
||||
"Lilex" = "0qz23h6a77i4n8nmhb7hc56mkiwn3pj1s6dbl2v53fvypwghswm2";
|
||||
"MartianMono" = "0zfcvi150yn274i41n66zr20hqgqb0r5v75q21bbgqvaysl4wj32";
|
||||
"Meslo" = "1sjrsr7i3diz4h7wkrl8va7b40g4m1432dz6bpbm2nmp89aszg8s";
|
||||
"Monaspace" = "0il36cm37pc6ndp96j32j0fqpqvwyv2xm3jr7d3zxwax1lcfilp5";
|
||||
"Monofur" = "10gzx2r5a5f5jl192c6cwsil5k57aslmryfnilkv4g8417xmn0zb";
|
||||
"Monoid" = "1fhsb326lc093ckrq2kz4vhr3ibrgp8y0mwa3qwdbapldxazz9f7";
|
||||
"Mononoki" = "18zp94dnv6kp8l58151dybjf2w1gi99nh1rw098hkrf52gfrfdpb";
|
||||
"MPlus" = "0x7yvpkn32x50y9zpdpjrp1gvwwp4fsmjbqbnfzy14xhi03p0q2w";
|
||||
"NerdFontsSymbolsOnly" = "0y4r1rid5sjd9ihi6nkwy0sja792aghg21bpl3ri029b9pifx8xp";
|
||||
"Noto" = "0vq9lgf4j6pi7pw3bfgfzkcdixnhikf4yys8fr0qql7mkwhj3rjb";
|
||||
"OpenDyslexic" = "1yl1fm4pfjvxq411m6f8nycqjnpnhkllmlx16wjrjfqpaf63mm4n";
|
||||
"Overpass" = "1plcn2qx2b08va65zagn1ybkh850157ii7x20nnrhp0h5f4rddzw";
|
||||
"ProFont" = "11c3shv09dssjbjwa44y64dwq7dxn3gs23bfgvhkv51vshsx0fzy";
|
||||
"ProggyClean" = "1l822wqrz7xmgnw535i9vl9gwjl4h037hi3xl0g4907kcdxwan0s";
|
||||
"Recursive" = "1fngqsl1shbfbb1wcx77di42g65lm9f5fcw93m8dcvdzk5lxpxz5";
|
||||
"RobotoMono" = "0g6yvz4vpfcylnshhyhwy5llz61n8m0a0vp4jgjhiir5svcd9krw";
|
||||
"ShareTechMono" = "0mxsywg4gns31yzh1256y7pkbh0m6n3rf8gbb55mxw219ngskkyv";
|
||||
"SourceCodePro" = "088vi947kavk1pkvbl68kv7nz84yvfkj725n2zn7ypq354kkm92n";
|
||||
"SpaceMono" = "0f4kcm4i3y11mpxb9anmn8759zpv3lvril4shp3d4mfc0k3dgfdn";
|
||||
"Terminus" = "04kzc594sb5vk8fd3ww9ip7jsy4vi6wmxdf6vzsvb2fgd98ck335";
|
||||
"Tinos" = "14c31qv3ik0in44k98zjn398cffwgq8z7d5lx7sk6iv12hikrd11";
|
||||
"Ubuntu" = "1bgk4hx26qn5ylsydsy9655isz05ir7154pv8dy4x5rpr144s9ba";
|
||||
"UbuntuMono" = "15kkgx6i4f7zn6fdaw2dqqw3hcpl3pi4cy4g5jx67af8qlhqarrb";
|
||||
"UbuntuSans" = "0jj4v198zshwhns5swrh02h2np3wgnv8lacn8b7jhmcd575cgy1y";
|
||||
"VictorMono" = "03rh7rc6a934sgd1bs7h7y1swqwbv3g7zi624k6hd8v1m3f0j6xa";
|
||||
"ZedMono" = "0yhb9fp7ahw8niki1njzk8pbl0iy53pgf7gx5yfc2ass9vjwky9d";
|
||||
}
|
@ -1,26 +0,0 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#! nix-shell -i bash -p nix-prefetch jq
|
||||
|
||||
latest_release=$(curl --silent https://api.github.com/repos/ryanoasis/nerd-fonts/releases/latest)
|
||||
version=$(jq -r '.tag_name' <<<"$latest_release")
|
||||
|
||||
dirname="$(dirname "$0")"
|
||||
echo \""${version#v}"\" >"$dirname/version-new.nix"
|
||||
if diff -q "$dirname/version-new.nix" "$dirname/version.nix"; then
|
||||
echo No new version available, current: $version
|
||||
exit 0
|
||||
else
|
||||
echo Updated to version "$version"
|
||||
mv "$dirname/version-new.nix" "$dirname/version.nix"
|
||||
fi
|
||||
|
||||
printf '{\n' > "$dirname/shas.nix"
|
||||
|
||||
while
|
||||
read -r name
|
||||
read -r url
|
||||
do
|
||||
printf ' "%s" = "%s";\n' "${name%%.*}" "$(nix-prefetch-url "$url")" >>"$dirname/shas.nix"
|
||||
done < <(jq -r '.assets[] | select(.name | test("xz")) | .name, .browser_download_url' <<<"$latest_release")
|
||||
|
||||
printf '}\n' >> "$dirname/shas.nix"
|
@ -1 +0,0 @@
|
||||
"3.2.1"
|
@ -373,6 +373,7 @@ mapAliases {
|
||||
fileschanged = throw "'fileschanged' has been removed as it is unmaintained upstream"; # Added 2024-04-19
|
||||
finger_bsd = bsd-finger;
|
||||
fingerd_bsd = bsd-fingerd;
|
||||
fira-code-nerdfont = lib.warn "fira-code-nerdfont is redundant. Use nerd-fonts.fira-code instead." nerd-fonts.fira-code; # Added 2024-11-10
|
||||
firefox-esr-115 = throw "The Firefox 115 ESR series has reached its end of life. Upgrade to `firefox-esr` or `firefox-esr-128` instead.";
|
||||
firefox-esr-115-unwrapped = throw "The Firefox 115 ESR series has reached its end of life. Upgrade to `firefox-esr-unwrapped` or `firefox-esr-128-unwrapped` instead.";
|
||||
firefox-wayland = firefox; # Added 2022-11-15
|
||||
@ -536,6 +537,7 @@ mapAliases {
|
||||
imagemagick7 = throw "'imagemagick7' has been renamed to/replaced by 'imagemagick'"; # Converted to throw 2024-10-17
|
||||
imagemagick7_light = throw "'imagemagick7_light' has been renamed to/replaced by 'imagemagick_light'"; # Converted to throw 2024-10-17
|
||||
immersed-vr = lib.warn "'immersed-vr' has been renamed to 'immersed'" immersed; # Added 2024-08-11
|
||||
inconsolata-nerdfont = lib.warn "inconsolata-nerdfont is redundant. Use nerd-fonts.inconsolata instead." nerd-fonts.inconsolata; # Added 2024-11-10
|
||||
incrtcl = tclPackages.incrtcl; # Added 2024-10-02
|
||||
input-utils = throw "The input-utils package was dropped since it was unmaintained."; # Added 2024-06-21
|
||||
index-fm = libsForQt5.mauiPackages.index; # added 2022-05-17
|
||||
@ -848,6 +850,7 @@ mapAliases {
|
||||
nextcloud27Packages = throw "Nextcloud27 is EOL!"; # Added 2024-06-25
|
||||
nagiosPluginsOfficial = monitoring-plugins;
|
||||
neochat = libsForQt5.kdeGear.neochat; # added 2022-05-10
|
||||
nerdfonts = throw "nerdfonts has been separated into individual font packages under the namespace nerd-fonts"; # Added 2024-11-09
|
||||
newlibCross = newlib; # Added 2024-09-06
|
||||
newlib-nanoCross = newlib-nano; # Added 2024-09-06
|
||||
nix-direnv-flakes = nix-direnv;
|
||||
@ -1225,6 +1228,7 @@ mapAliases {
|
||||
teck-programmer = throw "teck-programmer was removed because it was broken and unmaintained"; # added 2024-08-23
|
||||
teleport_13 = throw "teleport 13 has been removed as it is EOL. Please upgrade to Teleport 14 or later"; # Added 2024-05-26
|
||||
teleport_14 = throw "teleport 14 has been removed as it is EOL. Please upgrade to Teleport 15 or later"; # Added 2024-10-18
|
||||
terminus-nerdfont = lib.warn "terminus-nerdfont is redundant. Use nerd-fonts.terminess-ttf instead." nerd-fonts.terminess-ttf; # Added 2024-11-10
|
||||
temurin-bin-20 = throw "Temurin 20 has been removed as it has reached its end of life"; # Added 2024-08-01
|
||||
temurin-jre-bin-20 = throw "Temurin 20 has been removed as it has reached its end of life"; # Added 2024-08-01
|
||||
temurin-bin-19 = throw "Temurin 19 has been removed as it has reached its end of life"; # Added 2024-08-01
|
||||
|
@ -4488,7 +4488,7 @@ with pkgs;
|
||||
|
||||
navilu-font = callPackage ../data/fonts/navilu { stdenv = stdenvNoCC; };
|
||||
|
||||
nerdfonts = callPackage ../data/fonts/nerdfonts { };
|
||||
nerd-fonts = recurseIntoAttrs (callPackage ../data/fonts/nerd-fonts { });
|
||||
|
||||
netcdf-mpi = netcdf.override {
|
||||
hdf5 = hdf5-mpi.override { usev110Api = true; };
|
||||
@ -13001,9 +13001,6 @@ with pkgs;
|
||||
|
||||
fira-code = callPackage ../data/fonts/fira-code { };
|
||||
fira-code-symbols = callPackage ../data/fonts/fira-code/symbols.nix { };
|
||||
fira-code-nerdfont = nerdfonts.override {
|
||||
fonts = [ "FiraCode" ];
|
||||
};
|
||||
|
||||
flat-remix-icon-theme = callPackage ../data/icons/flat-remix-icon-theme {
|
||||
inherit (plasma5Packages) breeze-icons;
|
||||
@ -13054,10 +13051,6 @@ with pkgs;
|
||||
|
||||
inconsolata-lgc = callPackage ../data/fonts/inconsolata/lgc.nix { };
|
||||
|
||||
inconsolata-nerdfont = nerdfonts.override {
|
||||
fonts = [ "Inconsolata" ];
|
||||
};
|
||||
|
||||
input-fonts = callPackage ../data/fonts/input-fonts { };
|
||||
|
||||
iosevka = callPackage ../data/fonts/iosevka { };
|
||||
@ -13219,10 +13212,6 @@ with pkgs;
|
||||
inherit (libsForQt5) breeze-icons;
|
||||
};
|
||||
|
||||
terminus-nerdfont = nerdfonts.override {
|
||||
fonts = [ "Terminus" ];
|
||||
};
|
||||
|
||||
tex-gyre = callPackages ../data/fonts/tex-gyre { };
|
||||
|
||||
tex-gyre-math = callPackages ../data/fonts/tex-gyre-math { };
|
||||
|
Loading…
Reference in New Issue
Block a user