Skip to content

Commit

Permalink
source-{sans,serif}-pro: reintroduce older font versions
Browse files Browse the repository at this point in the history
Recently, Source Sans/Serif Pro fonts got renamed. The "Pro" suffix
was replaced with the major version of the font name.

In the case of Source Serif, the change was announced in
adobe-fonts/source-serif#77 and besides the
name font metric have been changed too. Therefore, documents using the
old "Pro" version might look differently when the font is changed to
the new "4" version.

In the case of Source Sans, the metrics seem not to have been
changed (adobe-fonts/source-sans#192), but
this comment (adobe-fonts/source-sans#192 (comment))
suggests that it might happen in the future.

Due to the above, it makes sense to keep both old "Pro" and
new (numbered) fonts as separate packages. This commit reintroduced
the old "Pro" versions.

It seems that Arch Linux is also distributing both versions:
https://github.com/archlinux/svntogit-packages/blob/0d70461e5a26cde02cadfda64078eb93192c6caa/trunk/PKGBUILD

Closes NixOS#157972
  • Loading branch information
wentasah committed Mar 10, 2022
1 parent 062a0c5 commit 5ed8193
Show file tree
Hide file tree
Showing 4 changed files with 62 additions and 2 deletions.
30 changes: 30 additions & 0 deletions pkgs/data/fonts/source-sans-pro/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{ lib, fetchzip }:

# Source Sans Pro got renamed to Source Sans 3 (see
# https://github.com/adobe-fonts/source-sans/issues/192). This is the
# last version named "Pro". It is useful for backward compatibility
# with older documents/templates/etc.
let
version = "3.006";
in fetchzip {
name = "source-sans-pro-${version}";

url = "https://github.com/adobe-fonts/source-sans/archive/${version}R.zip";

postFetch = ''
mkdir -p $out/share/fonts/{opentype,truetype,variable}
unzip -j $downloadedFile "*/OTF/*.otf" -d $out/share/fonts/opentype
unzip -j $downloadedFile "*/TTF/*.ttf" -d $out/share/fonts/truetype
unzip -j $downloadedFile "*/VAR/*.otf" -d $out/share/fonts/variable
'';

sha256 = "sha256-uWr/dFyLF65v0o6+oN/3RQoe4ziPspzGB1rgiBkoTYY=";

meta = with lib; {
homepage = "https://adobe-fonts.github.io/source-sans/";
description = "Sans serif font family for user interface environments";
license = licenses.ofl;
platforms = platforms.all;
maintainers = with maintainers; [ ttuegel ];
};
}
30 changes: 30 additions & 0 deletions pkgs/data/fonts/source-serif-pro/default.nix
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{ lib, fetchzip }:

# Source Serif Pro got renamed to Source Serif 4 (see
# https://github.com/adobe-fonts/source-serif/issues/77). This is the
# last version named "Pro". It is useful for backward compatibility
# with older documents/templates/etc.
let
version = "3.001";
in fetchzip {
name = "source-serif-pro-${version}";

url = "https://github.com/adobe-fonts/source-serif/releases/download/${version}R/source-serif-pro-${version}R.zip";

postFetch = ''
mkdir -p $out/share/fonts/{opentype,truetype,variable}
unzip -j $downloadedFile "*/OTF/*.otf" -d $out/share/fonts/opentype
unzip -j $downloadedFile "*/TTF/*.ttf" -d $out/share/fonts/truetype
unzip -j $downloadedFile "*/VAR/*.otf" -d $out/share/fonts/variable
'';

sha256 = "sha256-rYWk8D41QMuuSP+cQMk8ttT7uX3a7gBk4OqjA7K9udk=";

meta = with lib; {
homepage = "https://adobe-fonts.github.io/source-serif/";
description = "Typeface for setting text in many sizes, weights, and languages. Designed to complement Source Sans";
license = licenses.ofl;
platforms = platforms.all;
maintainers = with maintainers; [ ttuegel ];
};
}
2 changes: 0 additions & 2 deletions pkgs/top-level/aliases.nix
Original file line number Diff line number Diff line change
Expand Up @@ -1123,8 +1123,6 @@ mapAliases ({
source-han-serif-korean = source-han-serif;
source-han-serif-simplified-chinese = source-han-serif;
source-han-serif-traditional-chinese = source-han-serif;
source-sans-pro = source-sans; # Added 2021-10-20
source-serif-pro = source-serif; # Added 2021-10-20

spaceOrbit = throw "'spaceOrbit' has been renamed to/replaced by 'space-orbit'"; # Converted to throw 2022-02-22
spectral = neochat; # Added 2020-12-27
Expand Down
2 changes: 2 additions & 0 deletions pkgs/top-level/all-packages.nix
Original file line number Diff line number Diff line change
Expand Up @@ -24239,8 +24239,10 @@ with pkgs;
source-code-pro = callPackage ../data/fonts/source-code-pro {};

source-sans = callPackage ../data/fonts/source-sans { };
source-sans-pro = callPackage ../data/fonts/source-sans-pro { };

source-serif = callPackage ../data/fonts/source-serif { };
source-serif-pro = callPackage ../data/fonts/source-serif-pro { };

source-han-code-jp = callPackage ../data/fonts/source-han-code-jp { };

Expand Down

0 comments on commit 5ed8193

Please sign in to comment.