[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#932644: reconfigure writes to /usr/lib/locale/locale-archive



On Mon, Jul 22, 2019 at 07:20:42PM +0200, Aurelien Jarno wrote:
> On 2019-07-21 17:11, Marc Haber wrote:
> > Package: locales
> > Version: 2.28-10
> > Severity: minor
> > 
> > Hi,
> > 
> > reconfiguring the locales package updates the file
> > /usr/lib/locale/locale-archive.
> 
> This is indeed where the libc looks for the compiled locales.

And it wouldn't follow a symlink to /var/lib/locale/locale-archive,
where variable data would belong?

> > I am not sure whether this is allowed by policy, hence severity: minor.
> 
> I do not find anything that prevents that in the policy. In addition
> many other packages are also writing files to /usr when they are
> configured (for example __pycache__ files or the various kernel
> modules.* files used by depmod, udev hwdb.bin, etc.).

But they only do that on package installation. And: "look, how bad the
neighbor is" is hardly an excuse. I happened to stumble upon that in
locales, and it's the first time that I actually noticed that.

> > Maybe this file would better be in /var.
> 
> /var is for files whose content is expected to continually change during
> normal operation of the system. This is not the case of the
> locale-archive file which doesn't change until the next reconfiguration
> of the package. As such it doesn't prevent for example mounting the / or
> /usr partition read-only once apt or dpkg have finished their work.

You're of course entitled to your opinion and I respect the decision.

Just assume:

- ansible/puppet/salt etc has a /etc/locale.gen which for some reason
  doesn't have the current set of comments
- a handler calls dpkg-reconfigure locales to handle the change in
  /etc/locale.gen
- locales rewrites /etc/locale.gen with the current set of comments
- ansible/puppet/salt runs again, notices that /etc/locale.gen is not as
  it should be according to its opinion
- repeat starting with step 1

locales' current behavior forces people to have the /etc/locale.gen file
with current comments in the configuraiton management code, and possible
to have this "current" differently according to whether we have
oldoldstable, oldstable, stable, testing od unstable. This is
unnecessary work and might cause unnecessary issues.

Please reconsider.

Greetings
Marc

-- 
-----------------------------------------------------------------------------
Marc Haber         | "I don't trust Computers. They | Mailadresse im Header
Leimen, Germany    |  lose things."    Winona Ryder | Fon: *49 6224 1600402
Nordisch by Nature |  How to make an American Quilt | Fax: *49 6224 1600421


Reply to: