1 |
Noticed on ChromeOS when installing a large number of font packages in |
2 |
parallel: |
3 |
|
4 |
/usr/share/fonts/noto/NotoSerifThai-Regular.ttf#new' from 0004 (------r--) to 2440 (r--r-S---) |
5 |
* ERROR: media-fonts/ipaex-004.01-r1::chromiumos failed (postinst phase): |
6 |
* failed to fix font files perms |
7 |
|
8 |
The "#new" filename is the hint. Portage uses "#new" suffixes when |
9 |
copying files to the system, and then renames them to their final |
10 |
filenames. |
11 |
|
12 |
This code was executing while another font was in the process of being |
13 |
copied to the system. Font packages should just ensure that they install |
14 |
files with correct permissions to begin with, and all except |
15 |
media-fonts/x11fonts-jmk already use 0644 permissions. |
16 |
media-fonts/x11fonts-jmk used 0444 (which was probably fine) until the |
17 |
previous commit which changes its installed files to 0644. |
18 |
|
19 |
Bug: https://bugs.gentoo.org/187774 |
20 |
Signed-off-by: Matt Turner <mattst88@g.o> |
21 |
--- |
22 |
eclass/font.eclass | 6 ------ |
23 |
1 file changed, 6 deletions(-) |
24 |
|
25 |
diff --git a/eclass/font.eclass b/eclass/font.eclass |
26 |
index 4970c959f7c..0196755ce3e 100644 |
27 |
--- a/eclass/font.eclass |
28 |
+++ b/eclass/font.eclass |
29 |
@@ -186,12 +186,6 @@ font_src_install() { |
30 |
# @DESCRIPTION: |
31 |
# Updates fontcache if !prefix and media-libs/fontconfig installed |
32 |
_update_fontcache() { |
33 |
- if [[ -d "${EROOT}"/usr/share/fonts ]] ; then |
34 |
- # unreadable font files = fontconfig segfaults |
35 |
- find "${EROOT}"/usr/share/fonts/ -type f '!' -perm 0644 \ |
36 |
- -exec chmod -v 0644 2>/dev/null {} + || die "failed to fix font files perms" |
37 |
- fi |
38 |
- |
39 |
if [[ -z ${ROOT} ]] ; then |
40 |
if has_version media-libs/fontconfig ; then |
41 |
ebegin "Updating global fontcache" |
42 |
-- |
43 |
2.37.4 |