Overview

Request 586106 superseded

- Remove special handling for openSUSE 12.2 and earlier.
- Mark fonts.{dir,scale} and encodings.dir as %ghost files instead
of %config. These files are created by the %posttrans scriptlets
so no need to ship these, also avoids creation of .rpmsave files.
Also track these files consistently for all subdirs.
- add .fonts-config-timestamp as %ghost, ignore if it is missing.
- remove encodings.dir from encodings directories


Stefan Dirsch's avatar

Ok. Not sure why you removed fontpackages-devel BuildRequires. Are you sure it is not required during build time? Also please read abstract about "creates fonts.scale and fonts.dir files" in fonts-config manual page. fonts-config is being run in %post and we save a lot of time during installation (or image build) if we use pregenerated fonts.dir/fonts.scale/encodings.dir files.


Stefan Brüns's avatar
  • To use a pregenerated fonts.scale (fonts.dir and encodings.dir are always regenerated), the directory has to be "private" for the package. misc and truetype are used by several packages, 75dpi is used by both xorg-x11-fonts and xorg-x11-fonts-core. If the directory is shared, the contents of fonts.scale has to change.

  • fonts-config is now run in %posttrans

  • to skip the mkfontscale, we also had to ship a matching .fonts-config-timestamp.


Stefan Brüns's avatar
  • I only removed the (obsolete) conditional around the Buildrequires, fontpackages-devel is now always required

  • fonts-config unconditionally deletes any fonts.{dir,scale} in the directories which have been touched (fonts added/removed). See subroutine "make_fonts_scale_and_fonts_dir": "# Touch and delete fonts.scale and fonts.dir just to make sure we are starting from scratch and the directory is writeable"

  • only fonts.scale.<foo> files are preserved

  • pregenerating fonts.{dir,scale} only works if a font directory is "private" to a package. This rules out "misc", "truetype" (many packages) and 75dpi (both xorg-x11-fonts-core and xorg-x11-fonts).

  • fonts-config is no longer run in %post, but %posttrans


Stefan Brüns's avatar

This sucks - the comment field just dropped half of my comment ...


Stefan Brüns's avatar

It apparently drops anything after <xxx> literals


Stefan Dirsch's avatar

Sorry, you're right about fontpackages-devel. Discussion is not really possible via buildservice submitrequest. :-(


Stefan Dirsch's avatar

I would prefer discussing every proposed change in bugzilla. I really would like to avoid introducing any regression with such a change. Hope you can understand this. And even if this happens in the end it's at least properly tracked in bugzilla referenced in the changelog. This turned out to be very helpful in the past.


Request History
Stefan Brüns's avatar

StefanBruens created request

- Remove special handling for openSUSE 12.2 and earlier.
- Mark fonts.{dir,scale} and encodings.dir as %ghost files instead
of %config. These files are created by the %posttrans scriptlets
so no need to ship these, also avoids creation of .rpmsave files.
Also track these files consistently for all subdirs.
- add .fonts-config-timestamp as %ghost, ignore if it is missing.
- remove encodings.dir from encodings directories


openSUSE Build Service is sponsored by