Re: [csswg-drafts] [css-fonts-4] Privacy and I18n issues around user-installed fonts, and user selection of them (#5421)

The CSS Working Group just discussed `[css-fonts-4] Privacy and I18n issues around user-installed fonts, and user selection of them`.

<details><summary>The full IRC log of that discussion</summary>
&lt;ChrisL> q+<br>
&lt;ChrisL> https://github.com/w3c/csswg-drafts/issues/4055#issuecomment-536169515<br>
&lt;astearns> ack ChrisL<br>
&lt;emilio> ChrisL: 7 types of users if you follow that line<br>
&lt;emilio> s/line/link<br>
&lt;emilio> [rephrases from linked comment]<br>
&lt;emilio> r12a: do you have that ??? example? Can't find it r/n<br>
&lt;emilio> s/r12a:/ChrisL: r12a<br>
&lt;ChrisL> s/???/Adlam example<br>
&lt;r12a> chris https://typo.social/@webi18n@w3c.social/112530275400316307<br>
&lt;emilio> ChrisL: was talking about Adlam, so ~45 million speakers, and the system font is just completely unreadable<br>
&lt;emilio> ... the correct version<br>
&lt;r12a> oh, no, not that one<br>
&lt;emilio> ... the screenshot is taken on firefox which prefers system fonts<br>
&lt;r12a> this one: https://typo.social/@webi18n@w3c.social/111489082833818738<br>
&lt;emilio> ... we don't want user fonts to be shadowed by system fonts, just wanted to be aware of that category<br>
&lt;emilio> ... at tpac we had some discussion that it became more apparent that in general we don't want to expose every font the user has by default to the web<br>
&lt;emilio> ... as non-technical users are not aware of how much data they're leaking<br>
&lt;r12a> s|chris https://typo.social/@webi18n@w3c.social/112530275400316307||<br>
&lt;r12a> q+<br>
&lt;weinig> q+<br>
&lt;emilio> ... but we don't want to do it at the expense of users that need local fonts to browse the web<br>
&lt;florian> q?<br>
&lt;r12a> s/oh, no, not that one/<br>
&lt;florian> q+<br>
&lt;emilio> ChrisL: so talked about one language family that "only" has 45m users, but let's talk about mandarin<br>
&lt;emilio> ... there are a lot of new characters<br>
&lt;emilio> ... where users need to install fonts because 2yo fonts don't have them<br>
&lt;emilio> ... font-face doesn't work for that<br>
&lt;emilio> ... the font for these characters is like 3 families with 30mb<br>
&lt;emilio> ... so we need to figure out a solution for the privacy issue without breaking the experience of minority (and non-minority) languages<br>
&lt;emilio> ... various existing proposals<br>
&lt;weinig> q-<br>
&lt;emilio> ... lea did some<br>
&lt;emilio> ack r12a<br>
&lt;astearns> ack r12a<br>
&lt;emilio> r12a: I'm aware of the ???, but I'm concerned about... Is peter here?<br>
&lt;emilio> no<br>
&lt;emilio> r12a: so in the recent formal objection says they want users to control what happens<br>
&lt;emilio> ... the spec says roughly that<br>
&lt;emilio> ... so it's unclear what's being objected to<br>
&lt;emilio> ... so I don't know if the spec is not clear enough or what's needed is for implementors to agree on a solution<br>
&lt;emilio> astearns: don't want to speak for peter but my read is that the objection is that the spec only allows browsers to do this, doesn't require it<br>
&lt;emilio> r12a: do you also agree that the intention is that the user should be able to modify the behavior of the browser<br>
&lt;emilio> astearns: not sure about<br>
&lt;ChrisL> this is the correctly rendered Adlam example (with user installed font) https://w3csocial.files.fedi.monster/media_attachments/files/112/530/273/895/812/226/original/9d7c24263466c1d3.png<br>
&lt;emilio> r12a: it's a bit hidden<br>
&lt;emilio> ... would be good to know what the beef is about exactly<br>
&lt;emilio> astearns: I think the objection is asking us to take this seriously, which I think we've been doing, and unfortunately he hasn't been part of the latest discussions<br>
&lt;ChrisL> Couple more links on Adlam that I was trying to find erlier<br>
&lt;ChrisL> https://www.unicodeconference.org/presentations-41/S7T1-Barry-Barry.pdf<br>
&lt;ChrisL> https://unlocked.microsoft.com/adlam-can-an-alphabet-save-a-culture/<br>
&lt;emilio> r12a: I do have a list of issues which rely on pre-installed fonts<br>
&lt;emilio> ... can paste on IRC<br>
&lt;emilio> ... lmk if you want me to expand on any<br>
&lt;emilio> ... one of my worries is that e.g. I don't use safari for my work, but most of the work I do is from my localhost or my local harddrive<br>
&lt;emilio> ... in those situations there's no issue about fingerprinting<br>
&lt;emilio> ... those measures shouldn't be applied to file:// or localhost<br>
&lt;emilio> ... I've said it many times but hasn't be picked up<br>
&lt;ChrisL> Agree that fingerprinting needs to be partitioned by domain<br>
&lt;r12a> Reasons pre-installed fonts don't always work, or why fallback to system fonts may not work:<br>
&lt;r12a> - Fonts are not kept up to date in a timely fashion (many examples of this!)<br>
&lt;r12a> - Many non-supported scripts, even though they are in Unicode (see https://github.com/w3c/csswg-drafts/issues/4497#issuecomment-594521142), eg. all of Unicode 16 scripts<br>
&lt;r12a> - Characters that are not in Unicode yet (eg. Klingon)<br>
&lt;emilio> ... shouldn't be fingerprinting protection for local stuff<br>
&lt;r12a> - No support for fonts during development<br>
&lt;r12a> - No support for scripts being added to Unicode (eg. Tolong Siki, Beria Erfe, etc.)<br>
&lt;r12a> - Not even support for scripts already added to Unicode (eg. Todhri, Garay, Gurung Khema, Kirat Rai, Ol Onal, etc.) and recent additions to existing Unicode blocks (numerous examples)<br>
&lt;r12a> - No support for bleeding edge script work, such as new Unicode submissions<br>
&lt;r12a> - Insufficient support for preferred font styles — eg. Javanese, no ruq'a or kano font styles for Arabic, no Mool fonts for Khmer<br>
&lt;r12a> - Insufficient support for opentype options — eg. Kashmiri<br>
&lt;r12a> - Inability to mediate between or fall back to appropriate font styles for certain scripts — eg. Syriac, Tai Tham, etc.<br>
&lt;astearns> ack florian<br>
&lt;emilio> r12a: You also can't rely on web fonts in many situations either<br>
&lt;emilio> florian: it seems that the dilemma is that we have optional measures that need to be optional because they disrupt stuff too much<br>
&lt;emilio> ... the categorization breaks a bit, depending on the OS, whether a font is system installed or user installed isn't super clear<br>
&lt;emilio> ... this distinction is not always clear<br>
&lt;emilio> ... e.g. on windows the japanese package install fonts... are those user or system fonts<br>
&lt;emilio> ... many linux distros have the same issues<br>
&lt;emilio> ... the way users install packages is the same way the os is built<br>
&lt;emilio> ... e.g. debian<br>
&lt;lea> q?<br>
&lt;emilio> ... the entirety of the OS is made of packages you can or can not install<br>
&lt;ChrisL> qq+<br>
&lt;emilio> ... all or none of the fonts might be user installed<br>
&lt;emilio> ... the more our solution depends on user or system fonts the more we hit this<br>
&lt;astearns> ack ChrisL<br>
&lt;Zakim> ChrisL, you wanted to react to florian<br>
&lt;emilio> ChrisL: we had this discussion and we went to try to collect that information and quickly became intractable to maintain<br>
&lt;weinig> q+<br>
&lt;astearns> ack weinig<br>
&lt;emilio> ... so if we can avoid relying on it it'd be nice<br>
&lt;emilio> weinig: you can easily work around that problem by instead considering the browser a closed unit<br>
&lt;emilio> ... the "system fonts" might be bundled with the browser or not<br>
&lt;florian> q?<br>
&lt;emilio> ... you don't need to define the environment in which a browser runs<br>
&lt;emilio> florian: it's a bit more than a terminology problem<br>
&lt;emilio> ... e.g. on macOS all users have helvetica, all users have helvetica<br>
&lt;emilio> ... there's no font that all users of debian have<br>
&lt;emilio> weinig: that sounds like a browser problem<br>
&lt;emilio> ... a browser on debian could come with a bunch of preinstalled fonts<br>
&lt;emilio> ... the dependence on OS is mostly historical<br>
&lt;emilio> florian: to the extent browser rely on the builtin fonts<br>
&lt;r12a> q+<br>
&lt;emilio> weinig: yeah I'm just saying there's a way to describe this in terms of an immutable and a mutable set of fonts<br>
&lt;emilio> ... and not getting into what they come from<br>
&lt;kbabbitt> q+<br>
&lt;emilio> ... and then you don't have that problem<br>
&lt;kbabbitt> q-<br>
&lt;emilio> astearns: suggest we don't spend too much time on this terminology issue of what a system font is<br>
&lt;astearns> ack fantasai<br>
&lt;ChrisL> q?<br>
&lt;emilio> fantasai: wanted to focus back on the main issue<br>
&lt;astearns> ack r12a<br>
&lt;emilio> r12a: great to see the same thing, the issue is not so much what is a system font but the fact that system fonts don't provide a practical solution right now<br>
&lt;ChrisL> s/practical/complete<br>
&lt;r12a> s/system fonts don't provide a practical solution right now/system fonts don't always provide a practical solution right now<br>
&lt;emilio> astearns: ok, let's try to discuss concrete solutions now<br>
</details>


-- 
GitHub Notification of comment by css-meeting-bot
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/5421#issuecomment-2625066002 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Thursday, 30 January 2025 17:02:06 UTC