From 8a975887b274f3c16aa9d3505dc2f24f06220b6c Mon Sep 17 00:00:00 2001 From: Benedikt Fein Date: Wed, 4 Jun 2025 19:55:33 +0200 Subject: [PATCH 1/8] maintainers: add b-fein --- maintainers/maintainer-list.nix | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 5314a22833d1..1d93ed698c53 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -2645,6 +2645,11 @@ githubId = 9315; name = "Zhong Jianxin"; }; + b-fein = { + github = "b-fein"; + githubId = 64250573; + name = "Benedikt Fein"; + }; b-m-f = { email = "maximilian@sodawa.com"; github = "b-m-f"; From b3346866261b6501257c5c53a99d0c51c915923d Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 7 Jun 2025 21:59:03 +0300 Subject: [PATCH 2/8] gentium: use finalAttrs --- pkgs/by-name/ge/gentium/package.nix | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pkgs/by-name/ge/gentium/package.nix b/pkgs/by-name/ge/gentium/package.nix index 1a1260657dfd..2288d2510b9f 100644 --- a/pkgs/by-name/ge/gentium/package.nix +++ b/pkgs/by-name/ge/gentium/package.nix @@ -4,12 +4,12 @@ fetchzip, }: -stdenvNoCC.mkDerivation rec { +stdenvNoCC.mkDerivation (finalAttrs: { pname = "gentium"; version = "6.200"; src = fetchzip { - url = "http://software.sil.org/downloads/r/gentium/GentiumPlus-${version}.zip"; + url = "http://software.sil.org/downloads/r/gentium/GentiumPlus-${finalAttrs.version}.zip"; hash = "sha256-gpVOtmF4Kp3y1Rm00c4o3WQEskO7mY1Z5SVaYHI0hzg="; }; @@ -17,8 +17,8 @@ stdenvNoCC.mkDerivation rec { runHook preInstall install -Dm644 *.ttf -t $out/share/fonts/truetype - install -Dm644 FONTLOG.txt README.txt -t $out/share/doc/${pname}-${version} - cp -r documentation $out/share/doc/${pname}-${version} + install -Dm644 FONTLOG.txt README.txt -t $out/share/doc/${finalAttrs.pname}-${finalAttrs.version} + cp -r documentation $out/share/doc/${finalAttrs.pname}-${finalAttrs.version} runHook postInstall ''; @@ -49,4 +49,4 @@ stdenvNoCC.mkDerivation rec { license = licenses.ofl; platforms = platforms.all; }; -} +}) From 718db763e8f66ec9033b8aba4b212f43b0f0ab7f Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 7 Jun 2025 21:59:43 +0300 Subject: [PATCH 3/8] gentium: no with lib; in meta --- pkgs/by-name/ge/gentium/package.nix | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/pkgs/by-name/ge/gentium/package.nix b/pkgs/by-name/ge/gentium/package.nix index 2288d2510b9f..4bb7d543e222 100644 --- a/pkgs/by-name/ge/gentium/package.nix +++ b/pkgs/by-name/ge/gentium/package.nix @@ -23,7 +23,7 @@ stdenvNoCC.mkDerivation (finalAttrs: { runHook postInstall ''; - meta = with lib; { + meta = { homepage = "https://software.sil.org/gentium/"; description = "High-quality typeface family for Latin, Cyrillic, and Greek"; longDescription = '' @@ -42,11 +42,11 @@ stdenvNoCC.mkDerivation (finalAttrs: { font family, along with documentation. ''; downloadPage = "https://software.sil.org/gentium/download/"; - maintainers = with maintainers; [ + maintainers = with lib.maintainers; [ raskin rycee ]; - license = licenses.ofl; - platforms = platforms.all; + license = lib.licenses.ofl; + platforms = lib.platforms.all; }; }) From 496731bdbe110fe6b79eb68f335cf01c934bb320 Mon Sep 17 00:00:00 2001 From: Benedikt Fein Date: Wed, 4 Jun 2025 19:56:45 +0200 Subject: [PATCH 4/8] gentium-book: init at 7.000 --- pkgs/by-name/ge/gentium-book/package.nix | 53 ++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 pkgs/by-name/ge/gentium-book/package.nix diff --git a/pkgs/by-name/ge/gentium-book/package.nix b/pkgs/by-name/ge/gentium-book/package.nix new file mode 100644 index 000000000000..30080ccce838 --- /dev/null +++ b/pkgs/by-name/ge/gentium-book/package.nix @@ -0,0 +1,53 @@ +{ + lib, + stdenvNoCC, + fetchzip, +}: + +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "gentium-book"; + version = "7.000"; + + src = fetchzip { + url = "http://software.sil.org/downloads/r/gentium/GentiumBook-${finalAttrs.version}.zip"; + hash = "sha256-A/QZX8OYrifaxChC08SNOaspdnSr8PxOtYgFAwUc5WY="; + }; + + installPhase = '' + runHook preInstall + + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 FONTLOG.txt README.txt -t $out/share/doc/${finalAttrs.pname}-${finalAttrs.version} + cp -r documentation $out/share/doc/${finalAttrs.pname}-${finalAttrs.version} + + runHook postInstall + ''; + + meta = { + homepage = "https://software.sil.org/gentium/"; + description = "High-quality typeface family for Latin, Cyrillic, and Greek"; + longDescription = '' + Gentium is a typeface family designed to enable the diverse ethnic groups + around the world who use the Latin, Cyrillic and Greek scripts to produce + readable, high-quality publications. It supports a wide range of Latin and + Cyrillic-based alphabets. + + The design is intended to be highly readable, reasonably compact, and + visually attractive. The additional ‘extended’ Latin letters are designed + to naturally harmonize with the traditional 26 ones. Diacritics are + treated with careful thought and attention to their use. Gentium also + supports both polytonic and monotonic Greek. + + This package contains the regular and italic styles for the Gentium Book + font family, along with documentation. + ''; + downloadPage = "https://software.sil.org/gentium/download/"; + maintainers = with lib.maintainers; [ + b-fein + raskin + rycee + ]; + license = lib.licenses.ofl; + platforms = lib.platforms.all; + }; +}) From c93299fd4476ee36795f111759455633e611f374 Mon Sep 17 00:00:00 2001 From: Benedikt Fein Date: Wed, 4 Jun 2025 21:24:36 +0200 Subject: [PATCH 5/8] gentium-plus: rename from gentium Upstream has named this font 'GentiumPlus' all the time, and stopped releasing new versions of this font, but began to release a font named simply 'Gentium' straight at version 7.000. --- nixos/tests/fontconfig-default-fonts.nix | 2 +- pkgs/by-name/ge/{gentium => gentium-plus}/package.nix | 2 +- pkgs/by-name/ho/hottext/package.nix | 4 ++-- pkgs/by-name/si/sile/package.nix | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) rename pkgs/by-name/ge/{gentium => gentium-plus}/package.nix (98%) diff --git a/nixos/tests/fontconfig-default-fonts.nix b/nixos/tests/fontconfig-default-fonts.nix index 674192e7bba2..e3af3aa39f99 100644 --- a/nixos/tests/fontconfig-default-fonts.nix +++ b/nixos/tests/fontconfig-default-fonts.nix @@ -15,7 +15,7 @@ cantarell-fonts twitter-color-emoji source-code-pro - gentium + gentium-plus ]; fonts.fontconfig.defaultFonts = { serif = [ "Gentium Plus" ]; diff --git a/pkgs/by-name/ge/gentium/package.nix b/pkgs/by-name/ge/gentium-plus/package.nix similarity index 98% rename from pkgs/by-name/ge/gentium/package.nix rename to pkgs/by-name/ge/gentium-plus/package.nix index 4bb7d543e222..cd043d91e477 100644 --- a/pkgs/by-name/ge/gentium/package.nix +++ b/pkgs/by-name/ge/gentium-plus/package.nix @@ -5,7 +5,7 @@ }: stdenvNoCC.mkDerivation (finalAttrs: { - pname = "gentium"; + pname = "gentium-plus"; version = "6.200"; src = fetchzip { diff --git a/pkgs/by-name/ho/hottext/package.nix b/pkgs/by-name/ho/hottext/package.nix index 91e38a608a31..7bdcaa578201 100644 --- a/pkgs/by-name/ho/hottext/package.nix +++ b/pkgs/by-name/ho/hottext/package.nix @@ -2,7 +2,7 @@ lib, buildNimPackage, fetchFromSourcehut, - gentium, + gentium-plus, makeDesktopItem, }: @@ -19,7 +19,7 @@ buildNimPackage (finalAttrs: { lockFile = ./lock.json; - HOTTEXT_FONT_PATH = "${gentium}/share/fonts/truetype/GentiumPlus-Regular.ttf"; + HOTTEXT_FONT_PATH = "${gentium-plus}/share/fonts/truetype/GentiumPlus-Regular.ttf"; desktopItem = makeDesktopItem { categories = [ "Utility" ]; diff --git a/pkgs/by-name/si/sile/package.nix b/pkgs/by-name/si/sile/package.nix index 5c1e5d620656..6ea63089511b 100644 --- a/pkgs/by-name/si/sile/package.nix +++ b/pkgs/by-name/si/sile/package.nix @@ -20,7 +20,7 @@ libiconv, # FONTCONFIG_FILE makeFontsConf, - gentium, + gentium-plus, # passthru.tests runCommand, @@ -100,7 +100,7 @@ stdenv.mkDerivation (finalAttrs: { FONTCONFIG_FILE = makeFontsConf { fontDirectories = [ - gentium + gentium-plus ]; }; strictDeps = true; From 8aad240124d02c68097efa2f31afe6e28c422253 Mon Sep 17 00:00:00 2001 From: Benedikt Fein Date: Wed, 4 Jun 2025 19:48:02 +0200 Subject: [PATCH 6/8] gentium: init at 7.000 --- pkgs/by-name/ge/gentium/package.nix | 53 +++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 pkgs/by-name/ge/gentium/package.nix diff --git a/pkgs/by-name/ge/gentium/package.nix b/pkgs/by-name/ge/gentium/package.nix new file mode 100644 index 000000000000..86af847e9793 --- /dev/null +++ b/pkgs/by-name/ge/gentium/package.nix @@ -0,0 +1,53 @@ +{ + lib, + stdenvNoCC, + fetchzip, +}: + +stdenvNoCC.mkDerivation (finalAttrs: { + pname = "gentium"; + version = "7.000"; + + src = fetchzip { + url = "http://software.sil.org/downloads/r/gentium/Gentium-${finalAttrs.version}.zip"; + hash = "sha256-RBBecFdi/yyFfBk1CcQebOuAdKNUczpwOP52zVtbc2o="; + }; + + installPhase = '' + runHook preInstall + + install -Dm644 *.ttf -t $out/share/fonts/truetype + install -Dm644 FONTLOG.txt README.txt -t $out/share/doc/${finalAttrs.pname}-${finalAttrs.version} + cp -r documentation $out/share/doc/${finalAttrs.pname}-${finalAttrs.version} + + runHook postInstall + ''; + + meta = { + homepage = "https://software.sil.org/gentium/"; + description = "High-quality typeface family for Latin, Cyrillic, and Greek"; + longDescription = '' + Gentium is a typeface family designed to enable the diverse ethnic groups + around the world who use the Latin, Cyrillic and Greek scripts to produce + readable, high-quality publications. It supports a wide range of Latin and + Cyrillic-based alphabets. + + The design is intended to be highly readable, reasonably compact, and + visually attractive. The additional ‘extended’ Latin letters are designed + to naturally harmonize with the traditional 26 ones. Diacritics are + treated with careful thought and attention to their use. Gentium also + supports both polytonic and monotonic Greek. + + This package contains the regular and italic styles for the Gentium font + family, along with documentation. + ''; + downloadPage = "https://software.sil.org/gentium/download/"; + maintainers = with lib.maintainers; [ + b-fein + raskin + rycee + ]; + license = lib.licenses.ofl; + platforms = lib.platforms.all; + }; +}) From 9dd340e3083d45895097969f1f314ca361a9800b Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sat, 7 Jun 2025 22:28:21 +0300 Subject: [PATCH 7/8] nixosTests.fontconfig-default-fonts: use Gentium font As GentiumPlus will probably never be updated further by upstream. --- nixos/tests/fontconfig-default-fonts.nix | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/nixos/tests/fontconfig-default-fonts.nix b/nixos/tests/fontconfig-default-fonts.nix index e3af3aa39f99..4a46b3e17172 100644 --- a/nixos/tests/fontconfig-default-fonts.nix +++ b/nixos/tests/fontconfig-default-fonts.nix @@ -15,10 +15,10 @@ cantarell-fonts twitter-color-emoji source-code-pro - gentium-plus + gentium ]; fonts.fontconfig.defaultFonts = { - serif = [ "Gentium Plus" ]; + serif = [ "Gentium" ]; sansSerif = [ "Cantarell" ]; monospace = [ "Source Code Pro" ]; emoji = [ "Twitter Color Emoji" ]; @@ -26,7 +26,7 @@ }; testScript = '' - machine.succeed("fc-match serif | grep '\"Gentium Plus\"'") + machine.succeed("fc-match serif | grep '\"Gentium\"'") machine.succeed("fc-match sans-serif | grep '\"Cantarell\"'") machine.succeed("fc-match monospace | grep '\"Source Code Pro\"'") machine.succeed("fc-match emoji | grep '\"Twitter Color Emoji\"'") From 85794319e727ea666e0302ad177ca5448238c1d1 Mon Sep 17 00:00:00 2001 From: Doron Behar Date: Sun, 8 Jun 2025 01:31:17 +0300 Subject: [PATCH 8/8] gentium: mention rename confusion in release notes --- doc/release-notes/rl-2511.section.md | 1 + 1 file changed, 1 insertion(+) diff --git a/doc/release-notes/rl-2511.section.md b/doc/release-notes/rl-2511.section.md index f739ba9cd1f5..0b1b4a844d6c 100644 --- a/doc/release-notes/rl-2511.section.md +++ b/doc/release-notes/rl-2511.section.md @@ -16,6 +16,7 @@ - The `offrss` package was removed due to lack of upstream maintenance since 2012. It's recommended for users to migrate to another RSS reader - `base16-builder` node package has been removed due to lack of upstream maintenance. +- `gentium` package now provides `Gentium-*.ttf` files, and not `GentiumPlus-*.ttf` files like before. The font identifiers `Gentium Plus*` are available in the `gentium-plus` package, and if you want to use the more recently updated package `gentium` [by sil](https://software.sil.org/gentium/), you should update your configuration files to use the `Gentium` font identifier. ## Other Notable Changes {#sec-nixpkgs-release-25.11-notable-changes}