diff --git a/pkgs/data/fonts/andagii/default.nix b/pkgs/data/fonts/andagii/default.nix index 2995f85f93e8..22b686684f98 100644 --- a/pkgs/data/fonts/andagii/default.nix +++ b/pkgs/data/fonts/andagii/default.nix @@ -1,14 +1,23 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "andagii"; version = "1.0.2"; -in (fetchzip { - name = "andagii-${version}"; - url = "http://www.i18nguy.com/unicode/andagii.zip"; - curlOpts = "--user-agent 'Mozilla/5.0'"; - sha256 = "0j5kf2fmyqgnf5ji6h0h79lq9n9d85hkfrr4ya8hqj4gwvc0smb2"; + src = fetchzip { + url = "http://www.i18nguy.com/unicode/andagii.zip"; + curlOpts = "--user-agent 'Mozilla/5.0'"; + hash = "sha256-U7wC55G8jIvMMyPcEiJQ700A7nkWdgWK1LM0F/wgDCg="; + }; + + installPhase = '' + runHook preInstall + + mkdir -p $out/share/fonts/truetype + cp -v ANDAGII_.TTF $out/share/fonts/truetype/andagii.ttf + + runHook postInstall + ''; # There are multiple claims that the font is GPL, so I include the # package; but I cannot find the original source, so use it on your @@ -20,10 +29,4 @@ in (fetchzip { license = "unknown"; platforms = platforms.all; }; -}).overrideAttrs (_: { - postFetch = '' - unzip $downloadedFile - mkdir -p $out/share/fonts/truetype - cp -v ANDAGII_.TTF $out/share/fonts/truetype/andagii.ttf - ''; -}) +} diff --git a/pkgs/data/fonts/andika/default.nix b/pkgs/data/fonts/andika/default.nix index 5f2e6640d261..e31bc74bac2a 100644 --- a/pkgs/data/fonts/andika/default.nix +++ b/pkgs/data/fonts/andika/default.nix @@ -1,33 +1,33 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "andika"; version = "6.101"; - name = "andika-${version}"; -in - (fetchzip rec { - inherit name; + src = fetchzip { url = "https://software.sil.org/downloads/r/andika/Andika-${version}.zip"; + hash = "sha256-LghkGd/cjuXghzsU9X/YneNIdBeDEnu0ARszipANm8w="; + }; - sha256 = "sha256-J/Ad+fmCMOxLoo+691LE6Bgi/l3ovIfWScwwVWtqACI="; + installPhase = '' + runHook preInstall - meta = with lib; { - homepage = "https://software.sil.org/andika"; - description = "A family designed especially for literacy use taking into account the needs of beginning readers"; - longDescription = '' + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 *OFL.txt *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} + + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://software.sil.org/andika"; + description = "A family designed especially for literacy use taking into account the needs of beginning readers"; + longDescription = '' Andika is a sans serif, Unicode-compliant font designed especially for literacy use, taking into account the needs of beginning readers. The focus is on clear, easy-to-perceive letterforms that will not be readily confused with one another. A sans serif font is preferred by some literacy personnel for teaching people to read. Its forms are simpler and less cluttered than those of most serif fonts. For years, literacy workers have had to make do with fonts that were not really suitable for beginning readers and writers. In some cases, literacy specialists have had to tediously assemble letters from a variety of fonts in order to get all of the characters they need for their particular language project, resulting in confusing and unattractive publications. Andika addresses those issues. - ''; - license = licenses.ofl; - platforms = platforms.all; - maintainers = [ maintainers.f--t ]; - }; - }).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/{doc,fonts} - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile \*OFL.txt \*OFL-FAQ.txt \*README.txt \*FONTLOG.txt -d "$out/share/doc/${name}" ''; - }) + license = licenses.ofl; + platforms = platforms.all; + maintainers = [ maintainers.f--t ]; + }; +} diff --git a/pkgs/data/fonts/ankacoder/default.nix b/pkgs/data/fonts/ankacoder/default.nix index afbd80674c66..c363f025bfd2 100644 --- a/pkgs/data/fonts/ankacoder/default.nix +++ b/pkgs/data/fonts/ankacoder/default.nix @@ -1,12 +1,23 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let version = "1.100"; in -(fetchzip { - name = "ankacoder-${version}"; - url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/anka-coder-fonts/AnkaCoder.${version}.zip"; +stdenvNoCC.mkDerivation rec { + pname = "ankacoder"; + version = "1.100"; - sha256 = "1jqx9micfmiarqh9xp330gl96v3vxbwzz9cmg2vi845n9md4im85"; + src = fetchzip { + url = "https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/anka-coder-fonts/AnkaCoder.${version}.zip"; + stripRoot = false; + hash = "sha256-14ItaSQ/fO/WDq0O4SXGWnZgiM0kayJrWQgsKb7bsyY="; + }; + + installPhase = '' + runHook preInstall + + mkdir -p $out/share/fonts/truetype + cp *.ttf $out/share/fonts/truetype + + runHook postInstall + ''; meta = with lib; { description = "Anka/Coder fonts"; @@ -15,10 +26,4 @@ let version = "1.100"; in maintainers = with maintainers; [ dtzWill ]; platforms = platforms.all; }; -}).overrideAttrs (_: { - postFetch = '' - unzip $downloadedFile - mkdir -p $out/share/fonts/truetype - cp *.ttf $out/share/fonts/truetype - ''; -}) +} diff --git a/pkgs/data/fonts/annapurna-sil/default.nix b/pkgs/data/fonts/annapurna-sil/default.nix index 6eff39cf1ac1..fd4d33a4aebc 100644 --- a/pkgs/data/fonts/annapurna-sil/default.nix +++ b/pkgs/data/fonts/annapurna-sil/default.nix @@ -1,31 +1,31 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "annapurna-sil"; version = "1.204"; - name = "annapurna-sil-${version}"; -in - (fetchzip rec { - inherit name; + src = fetchzip { url = "https://software.sil.org/downloads/r/annapurna/AnnapurnaSIL-${version}.zip"; + hash = "sha256-4ya3Iydrz5Pvol9sTDIe9ZW5k3+XQp8GB2LAnRpeiXs="; + }; - sha256 = "sha256-kVeP9ZX8H+Wn6jzmH1UQvUKY6vJjadMTdEusS7LodFM="; + installPhase = '' + runHook preInstall - meta = with lib; { - homepage = "https://software.sil.org/annapurna"; - description = "Unicode-based font family with broad support for writing systems that use the Devanagari script"; - longDescription = '' - Annapurna SIL is a Unicode-based font family with broad support for writing systems that use the Devanagari script. Inspired by traditional calligraphic forms, the design is intended to be highly readable, reasonably compact, and visually attractive. - ''; - license = licenses.ofl; - platforms = platforms.all; - maintainers = [ maintainers.kmein ]; - }; - }).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/{doc,fonts} - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile \*OFL.txt \*OFL-FAQ.txt \*README.txt \*FONTLOG.txt -d "$out/share/doc/${name}" + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 *OFL.txt *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} + + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://software.sil.org/annapurna"; + description = "Unicode-based font family with broad support for writing systems that use the Devanagari script"; + longDescription = '' + Annapurna SIL is a Unicode-based font family with broad support for writing systems that use the Devanagari script. Inspired by traditional calligraphic forms, the design is intended to be highly readable, reasonably compact, and visually attractive. ''; - }) + license = licenses.ofl; + platforms = platforms.all; + maintainers = [ maintainers.kmein ]; + }; +} diff --git a/pkgs/data/fonts/babelstone-han/default.nix b/pkgs/data/fonts/babelstone-han/default.nix index 7ec429036bce..9839295653d1 100644 --- a/pkgs/data/fonts/babelstone-han/default.nix +++ b/pkgs/data/fonts/babelstone-han/default.nix @@ -1,14 +1,23 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation { + pname = "babelstone-han"; version = "13.0.3"; -in (fetchzip { - name = "babelstone-han-${version}"; - # upstream download links are unversioned, so hash changes - url = "https://web.archive.org/web/20200210125314/https://www.babelstone.co.uk/Fonts/Download/BabelStoneHan.zip"; - sha256 = "018isk3hbzsihzrxavgjbn485ngzvlm96npqx9y7zpkxsssslc4w"; + src = fetchzip { + # upstream download links are unversioned, so hash changes + url = "https://web.archive.org/web/20200210125314/https://www.babelstone.co.uk/Fonts/Download/BabelStoneHan.zip"; + hash = "sha256-LLhNtHu2hh5DY2XVSrLuVzzR6OtMdSSHetyA0k1IFs0="; + }; + + installPhase = '' + runHook preInstall + + mkdir -p $out/share/fonts/truetype + cp *.ttf $out/share/fonts/truetype + + runHook postInstall + ''; meta = with lib; { description = "Unicode CJK font with over 36000 Han characters"; @@ -18,9 +27,4 @@ in (fetchzip { platforms = platforms.all; maintainers = with maintainers; [ emily ]; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts/truetype - unzip $downloadedFile '*.ttf' -d $out/share/fonts/truetype - ''; -}) +} diff --git a/pkgs/data/fonts/barlow/default.nix b/pkgs/data/fonts/barlow/default.nix index aa618140b1b4..e9bfa4dee375 100644 --- a/pkgs/data/fonts/barlow/default.nix +++ b/pkgs/data/fonts/barlow/default.nix @@ -1,14 +1,26 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: -let +{ lib, stdenvNoCC, fetchzip }: + +stdenvNoCC.mkDerivation rec { + pname = "barlow"; version = "1.422"; -in -(fetchzip rec { - name = "barlow-${version}"; - url = "https://tribby.com/fonts/barlow/download/barlow-${version}.zip"; + src = fetchzip { + url = "https://tribby.com/fonts/barlow/download/barlow-${version}.zip"; + stripRoot = false; + hash = "sha256-aHAGPEgBkH41r7HR0D74OGCa7ta7Uo8Mgq4YVtYOwU8="; + }; - sha256 = "08ld4c3zq4d1px07lc64i7l8848zsc61ddy3654w2sh0hx5sm5ld"; + installPhase = '' + runHook preInstall + + install -Dm644 fonts/otf/*.otf -t $out/share/fonts/opentype + install -Dm644 fonts/ttf/*.ttf fonts/gx/*.ttf -t $out/share/fonts/truetype + install -Dm644 fonts/eot/*.eot -t $out/share/fonts/eot + install -Dm644 fonts/woff/*.woff -t $out/share/fonts/woff + install -Dm644 fonts/woff2/*.woff2 -t $out/share/fonts/woff2 + + runHook postInstall + ''; meta = with lib; { description = "A grotesk variable font superfamily"; @@ -17,13 +29,4 @@ in maintainers = [ maintainers.marsam ]; platforms = platforms.all; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts/ - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile \*.eot -d $out/share/fonts/eot - unzip -j $downloadedFile \*.woff -d $out/share/fonts/woff - unzip -j $downloadedFile \*.woff2 -d $out/share/fonts/woff2 - ''; -}) +} diff --git a/pkgs/data/fonts/borg-sans-mono/default.nix b/pkgs/data/fonts/borg-sans-mono/default.nix index 0f5de931b845..8037e5dc645f 100644 --- a/pkgs/data/fonts/borg-sans-mono/default.nix +++ b/pkgs/data/fonts/borg-sans-mono/default.nix @@ -1,16 +1,22 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation { pname = "borg-sans-mono"; version = "0.2.0"; -in -(fetchzip { - name = "${pname}-${version}"; - # https://github.com/marnen/borg-sans-mono/issues/19 - url = "https://github.com/marnen/borg-sans-mono/files/107663/BorgSansMono.ttf.zip"; - sha256 = "1gz4ab0smw76ih5cs2l3n92c77nv7ld5zghq42avjsfhxrc2n5ri"; + src = fetchzip { + # https://github.com/marnen/borg-sans-mono/issues/19 + url = "https://github.com/marnen/borg-sans-mono/files/107663/BorgSansMono.ttf.zip"; + hash = "sha256-nn7TGeVm45t7QI8+eEREBTFg9aShYYKtdEYEwQwO2fQ="; + }; + + installPhase = '' + runHook preInstall + + install -Dm644 *.ttf -t $out/share/fonts/truetype + + runHook postInstall + ''; meta = with lib; { description = "Droid Sans Mono Slashed + Hasklig-style ligatures"; @@ -19,9 +25,4 @@ in platforms = platforms.all; maintainers = with maintainers; [ atila ]; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - ''; -}) +} diff --git a/pkgs/data/fonts/cascadia-code/default.nix b/pkgs/data/fonts/cascadia-code/default.nix index 112f7c8d7d10..df1af86d5ce0 100644 --- a/pkgs/data/fonts/cascadia-code/default.nix +++ b/pkgs/data/fonts/cascadia-code/default.nix @@ -1,14 +1,23 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: -let +{ lib, stdenvNoCC, fetchzip }: + +stdenvNoCC.mkDerivation rec { + pname = "cascadia-code"; version = "2111.01"; -in -(fetchzip { - name = "cascadia-code-${version}"; - url = "https://github.com/microsoft/cascadia-code/releases/download/v${version}/CascadiaCode-${version}.zip"; + src = fetchzip { + url = "https://github.com/microsoft/cascadia-code/releases/download/v${version}/CascadiaCode-${version}.zip"; + stripRoot = false; + hash = "sha256-v9Vm5X80wEvorMhIlRw3MnyuSOdBpTl9ibBPpmm1vig="; + }; - sha256 = "sha256-kUVTQ/oMZztNf22sDbQBpQW0luSc5nr5sxWU5etLDec="; + installPhase = '' + runHook preInstall + + install -Dm644 otf/static/*.otf -t $out/share/fonts/opentype + install -Dm644 ttf/static/*.ttf -t $out/share/fonts/truetype + + runHook postInstall + ''; meta = with lib; { description = "Monospaced font that includes programming ligatures and is designed to enhance the modern look and feel of the Windows Terminal"; @@ -18,10 +27,4 @@ in maintainers = [ maintainers.marsam ]; platforms = platforms.all; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts/ - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - ''; -}) +} diff --git a/pkgs/data/fonts/charis-sil/default.nix b/pkgs/data/fonts/charis-sil/default.nix index 533f40a9a00a..1df7d794f652 100644 --- a/pkgs/data/fonts/charis-sil/default.nix +++ b/pkgs/data/fonts/charis-sil/default.nix @@ -1,33 +1,33 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "charis-sil"; version = "6.101"; - name = "charis-sil-${version}"; -in - (fetchzip rec { - inherit name; + src = fetchzip { url = "https://software.sil.org/downloads/r/charis/CharisSIL-${version}.zip"; + hash = "sha256-Rf5eKQVZw7zgTv6KkJUdNdd4sSJPdvjy/GDLusvlgzE="; + }; - sha256 = "sha256-b1ms9hJ6IPe7W6O9KgzHZvwT4/nAoLOhdydcUrwNfnU="; + installPhase = '' + runHook preInstall - meta = with lib; { - homepage = "https://software.sil.org/charis"; - description = "A family of highly readable fonts for broad multilingual use"; - longDescription = '' + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 *OFL.txt *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} + + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://software.sil.org/charis"; + description = "A family of highly readable fonts for broad multilingual use"; + longDescription = '' This Charis SIL font is essentially the same design as the SIL Charis font first released by SIL in 1997. Charis is similar to Bitstream Charter, one of the first fonts designed specifically for laser printers. It is highly readable and holds up well in less-than-ideal reproduction environments. It also has a full set of styles – regular, italic, bold, bold italic. Charis is a serif, proportionally-spaced font optimized for readability in long printed documents. The goal for this product was to provide a single Unicode-based font family that would contain a comprehensive inventory of glyphs needed for almost any Roman- or Cyrillic-based writing system, whether used for phonetic or orthographic needs. In addition, there is provision for other characters and symbols useful to linguists. This font makes use of state-of-the-art font technologies to support complex typographic issues, such as the need to position arbitrary combinations of base glyphs and diacritics optimally. - ''; - license = licenses.ofl; - platforms = platforms.all; - maintainers = [ maintainers.f--t ]; - }; - }).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/{doc,fonts} - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile \*OFL.txt \*OFL-FAQ.txt \*README.txt \*FONTLOG.txt -d "$out/share/doc/${name}" ''; - }) + license = licenses.ofl; + platforms = platforms.all; + maintainers = [ maintainers.f--t ]; + }; +} diff --git a/pkgs/data/fonts/comic-relief/default.nix b/pkgs/data/fonts/comic-relief/default.nix index a5eafeae89ca..c4c7648acd29 100644 --- a/pkgs/data/fonts/comic-relief/default.nix +++ b/pkgs/data/fonts/comic-relief/default.nix @@ -1,15 +1,27 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "comic-relief"; version = "1.1"; - name = "comic-relief-${version}"; -in (fetchzip rec { - inherit name; - url = "https://fontlibrary.org/assets/downloads/comic-relief/45c456b6db2aaf2f7f69ac66b5ac7239/comic-relief.zip"; + src = fetchzip { + url = "https://fontlibrary.org/assets/downloads/comic-relief/45c456b6db2aaf2f7f69ac66b5ac7239/comic-relief.zip"; + stripRoot = false; + hash = "sha256-lvkMfaQvLMZ8F0Q5JnpmMsIAkR+XfihoHIoS4z5QEvA="; + }; - sha256 = "0dz0y7w6mq4hcmmxv6fn4mp6jkln9mzr4s96vsg68wrl5b7k9yff"; + installPhase = '' + runHook preInstall + + mkdir -p $out/etc/fonts/conf.d + mkdir -p $out/share/doc/${pname}-${version} + mkdir -p $out/share/fonts/truetype + cp -v ${./comic-sans-ms-alias.conf} $out/etc/fonts/conf.d/30-comic-sans-ms.conf + cp *.ttf -d $out/share/fonts/truetype + cp FONTLOG.txt -d $out/share/doc/${pname}-${version} + + runHook postInstall + ''; meta = with lib; { homepage = "https://fontlibrary.org/en/font/comic-relief"; @@ -23,20 +35,11 @@ in (fetchzip rec { ''; license = licenses.ofl; platforms = platforms.all; - maintainers = [maintainers.rycee]; + maintainers = [ maintainers.rycee ]; # Reduce the priority of this package. The intent is that if you # also install the `corefonts` package, then you probably will not # want to install the font alias of this package. priority = 10; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/etc/fonts/conf.d - mkdir -p $out/share/doc/${name} - mkdir -p $out/share/fonts/truetype - cp -v ${./comic-sans-ms-alias.conf} $out/etc/fonts/conf.d/30-comic-sans-ms.conf - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile FONTLOG.txt -d $out/share/doc/${name} - ''; -}) +} diff --git a/pkgs/data/fonts/courier-prime/default.nix b/pkgs/data/fonts/courier-prime/default.nix index 59a823727b8f..1226966d5e6c 100644 --- a/pkgs/data/fonts/courier-prime/default.nix +++ b/pkgs/data/fonts/courier-prime/default.nix @@ -1,14 +1,21 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "courier-prime"; version = "unstable-2019-12-05"; - repo = "CourierPrime"; - rev = "7f6d46a766acd9391d899090de467c53fd9c9cb0"; -in (fetchzip rec { - name = "courier-prime-${version}"; - url = "https://github.com/quoteunquoteapps/${repo}/archive/${rev}/${name}.zip"; - sha256 = "1xh4pkksm6zrafhb69q4lq093q6pl245zi9qhqw3x6c1ab718704"; + + src = fetchzip { + url = "https://github.com/quoteunquoteapps/CourierPrime/archive/7f6d46a766acd9391d899090de467c53fd9c9cb0/${pname}-${version}.zip"; + hash = "sha256-pMFZpytNtgoZrBj2Gj8SgJ0Lab8uVY5aQtcO2lFbHj4="; + }; + + installPhase = '' + runHook preInstall + + install -m444 -Dt $out/share/fonts/truetype fonts/ttf/*.ttf + + runHook postInstall + ''; meta = with lib; { description = "Monospaced font designed specifically for screenplays"; @@ -17,9 +24,4 @@ in (fetchzip rec { maintainers = [ maintainers.austinbutler ]; platforms = platforms.all; }; -}).overrideAttrs (_: { - postFetch = '' - unzip $downloadedFile - install -m444 -Dt $out/share/fonts/truetype ${repo}-${rev}/fonts/ttf/*.ttf - ''; -}) +} diff --git a/pkgs/data/fonts/cozette/default.nix b/pkgs/data/fonts/cozette/default.nix index 6402cf5be594..03670a1c917d 100644 --- a/pkgs/data/fonts/cozette/default.nix +++ b/pkgs/data/fonts/cozette/default.nix @@ -1,15 +1,25 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "cozette"; version = "1.13.0"; -in -(fetchzip rec { - name = "Cozette-${version}"; - url = "https://github.com/slavfox/Cozette/releases/download/v.${version}/CozetteFonts.zip"; + src = fetchzip { + url = "https://github.com/slavfox/Cozette/releases/download/v.${version}/CozetteFonts.zip"; + hash = "sha256-bMgjNnm84vk7jT2UvgCeQwmjZ+9X1GzGLXIEukhaWGw="; + }; - sha256 = "sha256-xp3BCYfNUxCNewg4FfzmJnKp0PARvvnViMVwT25nWdM="; + installPhase = '' + runHook preInstall + + mkdir -p $out/share/fonts + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 *.otf -t $out/share/fonts/opentype + install -Dm644 *.bdf -t $out/share/fonts/misc + install -Dm644 *.otb -t $out/share/fonts/misc + + runHook postInstall + ''; meta = with lib; { description = "A bitmap programming font optimized for coziness"; @@ -18,12 +28,4 @@ in platforms = platforms.all; maintainers = with maintainers; [ brettlyons marsam ]; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype - unzip -j $downloadedFile \*.bdf -d $out/share/fonts/misc - unzip -j $downloadedFile \*.otb -d $out/share/fonts/misc - ''; -}) +} diff --git a/pkgs/data/fonts/d2coding/default.nix b/pkgs/data/fonts/d2coding/default.nix index 0df5dd51df69..9742e5c241fa 100644 --- a/pkgs/data/fonts/d2coding/default.nix +++ b/pkgs/data/fonts/d2coding/default.nix @@ -1,15 +1,23 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let - version = "1.3.2"; +stdenvNoCC.mkDerivation rec { pname = "d2codingfont"; + version = "1.3.2"; -in (fetchzip { - name = "${pname}-${version}"; - url = "https://github.com/naver/${pname}/releases/download/VER${version}/D2Coding-Ver${version}-20180524.zip"; + src = fetchzip { + url = "https://github.com/naver/${pname}/releases/download/VER${version}/D2Coding-Ver${version}-20180524.zip"; + stripRoot = false; + hash = "sha256-iC6iaUSVg4zt3wVFJUU4HEeswuKDOTFsAxq/0gRiOCA="; + }; - sha256 = "1812r82530wzfki7k9cm35fy6k2lvis7j6w0w8svc784949m1wwj"; + installPhase = '' + runHook preInstall + + mkdir -p $out/share/fonts + install -Dm644 */*-all.ttc -t $out/share/fonts/truetype/ + + runHook postInstall + ''; meta = with lib; { description = "Monospace font with support for Korean and latin characters"; @@ -25,9 +33,4 @@ in (fetchzip { platforms = platforms.all; maintainers = with maintainers; [ dtzWill ]; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts - unzip -j $downloadedFile \*-all.ttc -d $out/share/fonts/truetype/ - ''; -}) +} diff --git a/pkgs/data/fonts/doulos-sil/default.nix b/pkgs/data/fonts/doulos-sil/default.nix index 83e2a9ac8e71..0d7be48d103b 100644 --- a/pkgs/data/fonts/doulos-sil/default.nix +++ b/pkgs/data/fonts/doulos-sil/default.nix @@ -1,33 +1,33 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "doulos-sil"; version = "6.101"; - name = "doulos-sil-${version}"; -in - (fetchzip rec { - inherit name; + src = fetchzip { url = "https://software.sil.org/downloads/r/doulos/DoulosSIL-${version}.zip"; + hash = "sha256-CPjk6SLgsDYjachZZ1hanp6Q+cxTxfHOkoeU59Om5b8="; + }; - sha256 = "sha256-vYdnudMkkWz6r8pwq98fyO0zcfFBRPmrqlmWxHCOIcc="; + installPhase = '' + runHook preInstall - meta = with lib; { - homepage = "https://software.sil.org/doulos"; - description = "A font that provides complete support for the International Phonetic Alphabet"; - longDescription = '' + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 *OFL.txt *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} + + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://software.sil.org/doulos"; + description = "A font that provides complete support for the International Phonetic Alphabet"; + longDescription = '' This Doulos SIL font is essentially the same design as the SIL Doulos font first released by SIL in 1992. The design has been changed from the original in that it has been scaled down to be a better match with contemporary digital fonts, such as Times New Roman®. This current release is a regular typeface, with no bold or italic version available or planned. It is intended for use alongside other Times-like fonts where a range of styles (italic, bold) are not needed. Therefore, just one font is included in the Doulos SIL release: Doulos SIL Regular. The goal for this product was to provide a single Unicode-based font family that would contain a comprehensive inventory of glyphs needed for almost any Roman- or Cyrillic-based writing system, whether used for phonetic or orthographic needs. In addition, there is provision for other characters and symbols useful to linguists. This font makes use of state-of-the-art font technologies to support complex typographic issues, such as the need to position arbitrary combinations of base glyphs and diacritics optimally. - ''; - license = licenses.ofl; - platforms = platforms.all; - maintainers = [ maintainers.f--t ]; - }; - }).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/{doc,fonts} - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile \*OFL.txt \*OFL-FAQ.txt \*README.txt \*FONTLOG.txt -d "$out/share/doc/${name}" ''; - }) + license = licenses.ofl; + platforms = platforms.all; + maintainers = [ maintainers.f--t ]; + }; +} diff --git a/pkgs/data/fonts/eb-garamond/default.nix b/pkgs/data/fonts/eb-garamond/default.nix index 4240e853f296..ad78327b8b67 100644 --- a/pkgs/data/fonts/eb-garamond/default.nix +++ b/pkgs/data/fonts/eb-garamond/default.nix @@ -1,15 +1,23 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "eb-garamond"; version = "0.016"; - name = "eb-garamond-${version}"; -in (fetchzip rec { - inherit name; - url = "https://bitbucket.org/georgd/eb-garamond/downloads/EBGaramond-${version}.zip"; + src = fetchzip { + url = "https://bitbucket.org/georgd/eb-garamond/downloads/EBGaramond-${version}.zip"; + hash = "sha256-P2VCLcqcMBBoTDJyRLP9vlHI+jE0EqPjPziN2MJbgEg="; + }; - sha256 = "04jq4mpln85zzbla8ybsjw7vn9qr3r0snmk5zykrm24imq7ripv3"; + installPhase = '' + runHook preInstall + + mkdir -p $out/share/{doc,fonts} + install -Dm644 otf/*.otf -t $out/share/fonts/opentype + install -Dm644 *Changes *README.markdown *README.xelualatex -t $out/share/doc/${pname}-${version} + + runHook postInstall + ''; meta = with lib; { homepage = "http://www.georgduffner.at/ebgaramond/"; @@ -18,10 +26,4 @@ in (fetchzip rec { license = licenses.ofl; platforms = platforms.all; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/{doc,fonts} - unzip -j $downloadedFile \*.otf -d $out/share/fonts/opentype - unzip -j $downloadedFile \*Changes \*README.markdown \*README.xelualatex -d "$out/share/doc/${name}" - ''; -}) +} diff --git a/pkgs/data/fonts/emacs-all-the-icons-fonts/default.nix b/pkgs/data/fonts/emacs-all-the-icons-fonts/default.nix index 5a31358b72ae..256084a320fc 100644 --- a/pkgs/data/fonts/emacs-all-the-icons-fonts/default.nix +++ b/pkgs/data/fonts/emacs-all-the-icons-fonts/default.nix @@ -1,14 +1,21 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "emacs-all-the-icons-fonts"; version = "5.0.0"; -in (fetchzip { - name = "emacs-all-the-icons-fonts-${version}"; - url = "https://github.com/domtronn/all-the-icons.el/archive/${version}.zip"; + src = fetchzip { + url = "https://github.com/domtronn/all-the-icons.el/archive/${version}.zip"; + hash = "sha256-70ysVxOey6NLlCwhEYhxpxO6uuarMFDpg3Efh+3bj1M="; + }; - sha256 = "0vc9bkm4pcc05llcd2c9zr3d88h3zmci0izla5wnw8hg1n0rsrii"; + installPhase = '' + runHook preInstall + + install -Dm644 fonts/*.ttf -t $out/share/fonts/all-the-icons + + runHook postInstall + ''; meta = with lib; { description = "Icon fonts for emacs all-the-icons"; @@ -20,17 +27,12 @@ in (fetchzip { homepage = "https://github.com/domtronn/all-the-icons.el"; /* - The fonts come under a mixture of licenses - the MIT license, - SIL OFL license, and Apache license v2.0. See the GitHub page - for further information. + The fonts come under a mixture of licenses - the MIT license, + SIL OFL license, and Apache license v2.0. See the GitHub page + for further information. */ license = licenses.free; platforms = platforms.all; maintainers = with maintainers; [ rlupton20 ]; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/all-the-icons - ''; -}) +} diff --git a/pkgs/data/fonts/encode-sans/default.nix b/pkgs/data/fonts/encode-sans/default.nix index a6836afbc871..e86963005767 100644 --- a/pkgs/data/fonts/encode-sans/default.nix +++ b/pkgs/data/fonts/encode-sans/default.nix @@ -1,12 +1,22 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: -let name = "encode-sans-1.002"; -in (fetchzip rec { - inherit name; +{ lib, stdenvNoCC, fetchzip }: - url = "https://github.com/impallari/Encode-Sans/archive/11162b46892d20f55bd42a00b48cbf06b5871f75.zip"; +stdenvNoCC.mkDerivation rec { + pname = "encode-sans"; + version = "1.002"; - sha256 = "16mx894zqlwrhnp4rflgayxhxppmsj6k7haxdngajhb30rlwf08p"; + src = fetchzip { + url = "https://github.com/impallari/Encode-Sans/archive/11162b46892d20f55bd42a00b48cbf06b5871f75.zip"; + hash = "sha256-TPAUc5msAUgJZHibjgYaS2TOuzKFy0rje9ZQTXE6s+w="; + }; + + installPhase = '' + runHook preInstall + + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 *README.md *FONTLOG.txt -t $out/share/doc/${pname}-${version} + + runHook postInstall + ''; meta = with lib; { description = "A versatile sans serif font family"; @@ -23,10 +33,4 @@ in (fetchzip rec { maintainers = with maintainers; [ cmfwyp ]; platforms = platforms.all; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/{doc,fonts} - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile \*README.md \*FONTLOG.txt -d "$out/share/doc/${name}" - ''; -}) +} diff --git a/pkgs/data/fonts/ezra-sil/default.nix b/pkgs/data/fonts/ezra-sil/default.nix index 2d970fbc38c0..4ebebc4da553 100644 --- a/pkgs/data/fonts/ezra-sil/default.nix +++ b/pkgs/data/fonts/ezra-sil/default.nix @@ -1,28 +1,28 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "ezra-sil"; version = "2.51"; - name = "ezra-sil-${version}"; -in - (fetchzip rec { - inherit name; + src = fetchzip { url = "https://software.sil.org/downloads/r/ezra/EzraSIL-${version}.zip"; + hash = "sha256-hGOHjvFVFLwyVkcoUz+7rQekCdn4oEOB+L16XRpthJM="; + }; - sha256 = "sha256-1LGw/RPFeNtEvcBWFWZf8+dABvWye2RfZ/jt8rwQewM="; + installPhase = '' + runHook preInstall - meta = with lib; { - homepage = "https://software.sil.org/ezra"; - description = "Typeface fashioned after the square letter forms of the typography of the Biblia Hebraica Stuttgartensia (BHS)"; - license = licenses.ofl; - platforms = platforms.all; - maintainers = [ maintainers.kmein ]; - }; - }).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/{doc,fonts} - unzip -j $downloadedFile \*.ttf -d $out/share/fonts/truetype - unzip -j $downloadedFile \*OFL-FAQ.txt \*README.txt \*FONTLOG.txt -d "$out/share/doc/${name}" - ''; - }) + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 *OFL-FAQ.txt *README.txt *FONTLOG.txt -t $out/share/doc/${pname}-${version} + + runHook postInstall + ''; + + meta = with lib; { + homepage = "https://software.sil.org/ezra"; + description = "Typeface fashioned after the square letter forms of the typography of the Biblia Hebraica Stuttgartensia (BHS)"; + license = licenses.ofl; + platforms = platforms.all; + maintainers = [ maintainers.kmein ]; + }; +} diff --git a/pkgs/data/fonts/fira-code/default.nix b/pkgs/data/fonts/fira-code/default.nix index f1eb2184266f..1ba15dadb112 100644 --- a/pkgs/data/fonts/fira-code/default.nix +++ b/pkgs/data/fonts/fira-code/default.nix @@ -1,14 +1,24 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let +stdenvNoCC.mkDerivation rec { + pname = "fira-code"; version = "6.2"; -in (fetchzip { - name = "fira-code-${version}"; - url = "https://github.com/tonsky/FiraCode/releases/download/${version}/Fira_Code_v${version}.zip"; + src = fetchzip { + url = "https://github.com/tonsky/FiraCode/releases/download/${version}/Fira_Code_v${version}.zip"; + stripRoot = false; + hash = "sha256-UHOwZL9WpCHk6vZaqI/XfkZogKgycs5lWg1p0XdQt0A="; + }; - sha256 = "0l02ivxz3jbk0rhgaq83cqarqxr07xgp7n27l0fh8fbgxwi52djl"; + # only extract the variable font because everything else is a duplicate + installPhase = '' + runHook preInstall + + mkdir -p $out/share/fonts + cp variable_ttf/*-VF.ttf $out/share/fonts/truetype + + runHook postInstall + ''; meta = with lib; { homepage = "https://github.com/tonsky/FiraCode"; @@ -22,10 +32,4 @@ in (fetchzip { maintainers = [ maintainers.rycee ]; platforms = platforms.all; }; -}).overrideAttrs (_: { - # only extract the variable font because everything else is a duplicate - postFetch = '' - mkdir -p $out/share/fonts - unzip -j $downloadedFile '*-VF.ttf' -d $out/share/fonts/truetype - ''; -}) +} diff --git a/pkgs/data/fonts/fira-code/symbols.nix b/pkgs/data/fonts/fira-code/symbols.nix index 3d8c5bf3428f..35d51bb340c9 100644 --- a/pkgs/data/fonts/fira-code/symbols.nix +++ b/pkgs/data/fonts/fira-code/symbols.nix @@ -1,12 +1,21 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -(fetchzip { - name = "fira-code-symbols-20160811"; +stdenvNoCC.mkDerivation { + pname = "fira-code-symbols"; + version = "20160811"; - url = "https://github.com/tonsky/FiraCode/files/412440/FiraCode-Regular-Symbol.zip"; + src = fetchzip { + url = "https://github.com/tonsky/FiraCode/files/412440/FiraCode-Regular-Symbol.zip"; + hash = "sha256-7y51blEn0Osf8azytK08zJgtfVX/CIWQkiOoRzYKIa4="; + }; - sha256 = "19krsp22rin74ix0i19v4bh1c965g18xkmz1n55h6n6qimisnbkm"; + installPhase = '' + runHook preInstall + + install -Dm644 *.otf -t $out/share/fonts/opentype + + runHook postInstall + ''; meta = with lib; { description = "FiraCode unicode ligature glyphs in private use area"; @@ -19,9 +28,4 @@ maintainers = [ maintainers.Profpatsch ]; homepage = "https://github.com/tonsky/FiraCode/issues/211#issuecomment-239058632"; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts - unzip -j $downloadedFile -d $out/share/fonts/opentype - ''; -}) +} diff --git a/pkgs/data/fonts/fira-mono/default.nix b/pkgs/data/fonts/fira-mono/default.nix index 763f54bb7679..5d059dbf88e0 100644 --- a/pkgs/data/fonts/fira-mono/default.nix +++ b/pkgs/data/fonts/fira-mono/default.nix @@ -1,13 +1,21 @@ -# when changing this expression convert it from 'fetchzip' to 'stdenvNoCC.mkDerivation' -{ lib, fetchzip }: +{ lib, stdenvNoCC, fetchzip }: -let version = "4.202"; -in (fetchzip { - name = "fira-mono-${version}"; +stdenvNoCC.mkDerivation rec { + pname = "fira-mono"; + version = "4.202"; - url = "https://github.com/mozilla/Fira/archive/${version}.zip"; + src = fetchzip { + url = "https://github.com/mozilla/Fira/archive/${version}.zip"; + hash = "sha256-HLReqgL0PXF5vOpwLN0GiRwnzkjGkEVEyOEV2Z4R0oQ="; + }; - sha256 = "1ci3fxhdwabvfj4nl16pwcgqnh7s2slp8vblribk8zkpx8cbp1dj"; + installPhase = '' + runHook preInstall + + install -Dm644 otf/FiraMono*.otf -t $out/share/fonts/opentype + + runHook postInstall + ''; meta = with lib; { homepage = "https://mozilla.github.io/Fira/"; @@ -22,9 +30,4 @@ in (fetchzip { maintainers = [ maintainers.rycee ]; platforms = platforms.all; }; -}).overrideAttrs (_: { - postFetch = '' - mkdir -p $out/share/fonts - unzip -j $downloadedFile Fira-${version}/otf/FiraMono\*.otf -d $out/share/fonts/opentype - ''; -}) +}