Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

nixos/fontconfig-penultimate: disable by default #67529

Merged
merged 1 commit into from Aug 30, 2019

Conversation

@worldofpeace
Copy link
Member

commented Aug 26, 2019

It currently lacks an emoji font-family which means it has to be
disabled for them to function 0. Additionally it's fallen out of
necessity to ship custom font rendering settings (as far as I'm aware
of).

Motivation for this change

cc @ttuegel, I'd very much appreciate your take on this.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nix-review --run "nix-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.
@worldofpeace worldofpeace requested a review from ttuegel Aug 26, 2019
@worldofpeace worldofpeace referenced this pull request Aug 26, 2019
0 of 10 tasks complete
@worldofpeace

This comment has been minimized.

Copy link
Member Author

commented Aug 26, 2019

I'm also curious if we should remove fontconfig-ultimate.

@worldofpeace

This comment has been minimized.

Copy link
Member Author

commented Aug 26, 2019

Oop, I should document this.

@matthewbauer

This comment has been minimized.

Copy link
Member

commented Aug 27, 2019

I'm not too familiar with fonts in Linux, but I suspect we want either fontconfig-penultimate or fontconfig-ultimate enabled to get things working correctly. Some feedback from @ttuegel or anyone else who knows how fonts are supposed to work would be helpful. My understanding is that fontconfig-penultimate is probably a good thing to have, it's just gotten out of date in the few years since its last release. This is a little bit too close to a release for my liking, but I suppose we can always revert it in the release-19.09 branch if it causes issues.

@worldofpeace

This comment has been minimized.

Copy link
Member Author

commented Aug 27, 2019

I'm not too familiar with fonts in Linux, but I suspect we want either fontconfig-penultimate or fontconfig-ultimate enabled to get things working correctly. Some feedback from @ttuegel or anyone else who knows how fonts are supposed to work would be helpful. My understanding is that fontconfig-penultimate is probably a good thing to have, it's just gotten out of date in the few years since its last release. This is a little bit too close to a release for my liking, but I suppose we can always revert it in the release-19.09 branch if it causes issues.

Sure, I totally understand if it's cutting it close. My issue currently with penultimate is that it appears to be out of date, causing issues in Gnome3, and it's a default configuration that has to be maintained outside of nixpkgs.

It would be helpful if someone who's familiar with the current state of fontconfig offered some insights.

@peterhoeg

This comment has been minimized.

Copy link
Member

commented Aug 27, 2019

Cc @volth as resident font guru.

@volth

This comment has been minimized.

Copy link
Contributor

commented Aug 27, 2019

Cc @volth as resident font guru.

I prefer to disable antialiasing the hard way, with freetype patches, to get Win95-like fonts (which are better suited 1366x768 laptop screens belonging to that era, and there is no difference on 4K).

So the patches which improve antialiasing is out of my scope.
I have heard that the modern freetype adopted many of those *ultimate patches so I am not sure if they are still helpful

@worldofpeace worldofpeace force-pushed the worldofpeace:disable-penultimate branch from 92cbf30 to 11bd3b6 Aug 29, 2019
@jtojnar jtojnar referenced this pull request Aug 29, 2019
2 of 2 tasks complete
@worldofpeace worldofpeace requested a review from vcunat Aug 29, 2019
@jtojnar

This comment has been minimized.

Copy link
Contributor

commented Aug 29, 2019

I have been running with penultimate disabled for last week or so and did not encounter any issues. The current default is much worse for me as it lacks support for both emoji and math font classes.

I though we no longer patch freetype, as the main contention (ClearType hinting) was incorporated into upstream freetype when patents expired.

fontconfig-penultimate.nix offers exactly the same customization options as fontconfig.nix, so the only benefit that it could offer is assigning some font families to family classes. But lot of them have been added to upstream fontconfig in the meanwhile as well, in addition to a lot of new fonts that are not in penultimate (especially emoji). With this in mind, I am doubtful it is of any use at all.

If someone still wants it they can always enable it. But since vanilla fontconfig is perfectly usable, as evidenced by other distros running vanilla fontconfig, I say there is no place for penultimate to be enabled by default.

nixos/doc/manual/release-notes/rl-1909.xml Outdated Show resolved Hide resolved
It currently lacks an emoji font-family which means it has to be
disabled for them to function [0].  Additionally it's fallen out of
necessity to ship custom font rendering settings (as far as I'm aware
of).

[0]: #67215
@worldofpeace worldofpeace force-pushed the worldofpeace:disable-penultimate branch from 2d2f761 to 0d220e4 Aug 30, 2019
@worldofpeace

This comment has been minimized.

Copy link
Member Author

commented Aug 30, 2019

It seems we came to a good agreement during nixos office-hours, I'm going to merge as is.

@worldofpeace worldofpeace merged commit f0dce64 into NixOS:master Aug 30, 2019
1 check was pending
1 check was pending
grahamcofborg-eval Checking original out paths
Details
@worldofpeace worldofpeace deleted the worldofpeace:disable-penultimate branch Aug 30, 2019
@worldofpeace

This comment has been minimized.

Copy link
Member Author

commented on nixos/doc/manual/release-notes/rl-1909.xml in 0d220e4 Aug 31, 2019

Huh, realized this was in

The following changes apply if the <literal>stateVersion</literal> is
     changed to 19.09 or higher. For <literal>stateVersion = "19.03"</literal>
     or lower the old behavior is preserved.

will fix that.

This comment has been minimized.

Copy link
Member Author

replied Aug 31, 2019

Oh wait it's fine
Screenshot from 2019-08-30 20 13 11

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.