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

fontconfig: 2.12.6 -> 2.13.1 #53759

Closed
wants to merge 1 commit into from

Conversation

Synthetica9
Copy link
Member

@Synthetica9 Synthetica9 commented Jan 10, 2019

Motivation for this change
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 nox --run "nox-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)
  • Assured whether relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@dtzWill
Copy link
Member

dtzWill commented Jan 11, 2019

Be careful updating fontconfig, has impact on font caches and the configurations generated, esp re:backwards compatibility.

@wedens
Copy link

wedens commented Jan 11, 2019

Yeah. I've had some problems trying to use Nix app that depends on fontconfig 2.12.6 on Arch host with fontconfig 2.13.1

errors from strace:

3651   │ access("/etc/fonts/fonts.conf", R_OK)   = 0
3652   │ stat("/etc/fonts/fonts.conf", {st_mode=S_IFREG|0644, st_size=2565, ...}) = 0
3653   │ openat(AT_FDCWD, "/etc/fonts/fonts.conf", O_RDONLY|O_CLOEXEC) = 7
3654   │ read(7, "<?xml version=\"1.0\"?>\n<!DOCTYPE "..., 8192) = 2565
3655   │ read(7, "", 8192)                       = 0
3656   │ close(7)                                = 0
3657   │ getrandom("\xec\x48\xb3\x7c\x90\x24\x2a\x51", 8, GRND_NONBLOCK) = 8
3658   │ write(2, "Fontconfig warning: \"/etc/fonts/"..., 53Fontconfig warning: "/etc/fonts/fonts.conf", line 5: ) = 53
3659   │ write(2, "unknown element \"its:rules\"", 27unknown element "its:rules") = 27
3660   │ write(2, "\n", 1
3661   │ )                       = 1
3662   │ write(2, "Fontconfig warning: \"/etc/fonts/"..., 53Fontconfig warning: "/etc/fonts/fonts.conf", line 6: ) = 53
3663   │ write(2, "unknown element \"its:translateRu"..., 35unknown element "its:translateRule") = 35
3664   │ write(2, "\n", 1
3665   │ )                       = 1
3666   │ write(2, "Fontconfig error: \"/etc/fonts/fo"..., 51Fontconfig error: "/etc/fonts/fonts.conf", line 6: ) = 51
3667   │ write(2, "invalid attribute 'translate'", 29invalid attribute 'translate') = 29
3668   │ write(2, "\n", 1
3669   │ )                       = 1
3670   │ write(2, "Fontconfig error: \"/etc/fonts/fo"..., 51Fontconfig error: "/etc/fonts/fonts.conf", line 6: ) = 51
3671   │ write(2, "invalid attribute 'selector'", 28invalid attribute 'selector') = 28
3672   │ write(2, "\n", 1
3673   │ )                       = 1
3674   │ write(2, "Fontconfig error: \"/etc/fonts/fo"..., 51Fontconfig error: "/etc/fonts/fonts.conf", line 7: ) = 51
3675   │ write(2, "invalid attribute 'xmlns:its'", 29invalid attribute 'xmlns:its') = 29
3676   │ write(2, "\n", 1
3677   │ )                       = 1
3678   │ write(2, "Fontconfig error: \"/etc/fonts/fo"..., 51Fontconfig error: "/etc/fonts/fonts.conf", line 7: ) = 51
3679   │ write(2, "invalid attribute 'version'", 27invalid attribute 'version') = 27
3680   │ write(2, "\n", 1
3681   │ )                       = 1
3682   │ write(2, "Fontconfig warning: \"/etc/fonts/"..., 53Fontconfig warning: "/etc/fonts/fonts.conf", line 9: ) = 53
3683   │ write(2, "unknown element \"description\"", 29unknown element "description") = 29
3684   │ write(2, "\n", 1
3685   │ ) 

I'm not sure what kind of incompatibility it is, but perhaps upgrading is not just a version bump.

@sauyon
Copy link
Member

sauyon commented Jul 15, 2019

Slightly cleaner errors, since most of those syscalls are writes:

Fontconfig warning: "/etc/fonts/fonts.conf", line 5: unknown element "its:rules"
Fontconfig warning: "/etc/fonts/fonts.conf", line 6: unknown element "its:translateRule"
Fontconfig error: "/etc/fonts/fonts.conf", line 6: invalid attribute 'translate'
Fontconfig error: "/etc/fonts/fonts.conf", line 6: invalid attribute 'selector'
Fontconfig error: "/etc/fonts/fonts.conf", line 7: invalid attribute 'xmlns:its'
Fontconfig error: "/etc/fonts/fonts.conf", line 7: invalid attribute 'version'
Fontconfig warning: "/etc/fonts/fonts.conf", line 9: unknown element "description"
Fontconfig error: Cannot load config file from /etc/fonts/fonts.conf

https://cgit.freedesktop.org/fontconfig/commit/?id=9a0fcb948fe7346f6c68028b2e54ab600a2a2a6f

I believe this is just Arch shipping an updated configuration for fontconfig which isn't supported by the old 2.12.x, which can be fixed by using an older config.

@worldofpeace
Copy link
Contributor

out of date #73795

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

7 participants