Bug#888707: Make sure exim4-* are updated before, after, but not during, locales.

2018-01-31 Thread 積丹尼 Dan Jacobson
Here is a program to find the possible culprits. Use
$ perl m /tmp/log #where log is attached to the bug report above.
#!/usr/bin/perl
use strict;
use warnings FATAL => 'all';
my %p;
while (<>) {
if (/Unpacking (\S+)/)  { $p{$1}++; next; }
if (/Setting up (\S+)/) { $p{$1}--; next; }
last if /locale: Cannot set LC_ALL to default locale/;
}
for ( sort keys %p ) { print "$_\n" if $p{$_}; }

-- System Information:
Locale: LANG=zh_TW.UTF-8, LC_CTYPE=zh_TW.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_US:en (charmap=UTF-8)

$ strace env 2>&1|grep \"/
execve("/usr/bin/env", ["env"], 0x7fff1e590110 /* 62 vars */) = 0
access("/etc/ld.so.nohwcap", F_OK)  = -1 ENOENT (No such file or directory)
access("/etc/ld.so.preload", R_OK)  = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/etc/ld.so.cache", O_RDONLY|O_CLOEXEC) = 3
access("/etc/ld.so.nohwcap", F_OK)  = -1 ENOENT (No such file or directory)
openat(AT_FDCWD, "/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3
openat(AT_FDCWD, "/usr/lib/locale/locale-archive", O_RDONLY|O_CLOEXEC) = 3
$ dlocate /usr/lib/locale/locale-archive
$ ls -l /usr/lib/locale/locale-archive
-rw-r--r-- 1 root root 4953856 01-30 10:29 /usr/lib/locale/locale-archive



Bug#888707: Make sure exim4-* are updated before, after, but not during, locales.

2018-01-31 Thread Andreas Metzler
On 2018-01-31 積丹尼 Dan Jacobson  wrote:
> On 2018-01-30 Andreas Metzler  wrote:
>> On 2018-01-30 積丹尼 Dan Jacobson  wrote:
>>> reopen 888707
>>> retitle Make sure exim4-* are updated before, after, but not during, 
>>> locales.
>>> thanks

>>> There turns out to be a race condition.

>>> Please adjust the Dependencies to be sure exim4-* is updated before, after,
>>> but not during, locales.
>> [...]

>> Afaik that is not possible.

> https://askubuntu.com/questions/83553/what-is-the-difference-between-dependencies-and-pre-depends


Let me rephrase this:
exim4 does not require the locales package at all and therefore a
dependency or pre-dependency on locale does not help for preventing
co-installation with unconfigured locale.

Also locale in sid does not show the problem:
(sid)ametzler@argenau:~$ dpkg -l locales | tail -n1 ; env -u LC_ALL LC_CTYPE=C 
/bin/echo blah
un  locales(no description available)
blah
(sid)ametzler@argenau:~$ dpkg -l locales | tail -n1 ; env -u LC_ALL LC_CTYPE=C 
/bin/echo blah
iU  locales  2.26-6 all   GNU C Library: National Language (locale) 
data [support]
blah
(sid)ametzler@argenau:~$ dpkg -l locales | tail -n1 ; env -u LC_ALL LC_CTYPE=C 
/bin/echo blah
ii  locales  2.26-6 all   GNU C Library: National Language (locale) 
data [support]
blah

cu Andreas

-- 
`What a good friend you are to him, Dr. Maturin. His other friends are
so grateful to you.'
`I sew his ears on from time to time, sure'



Bug#888707: Make sure exim4-* are updated before, after, but not during, locales.

2018-01-30 Thread 積丹尼 Dan Jacobson
https://askubuntu.com/questions/83553/what-is-the-difference-between-dependencies-and-pre-depends



Bug#888707: Make sure exim4-* are updated before, after, but not during, locales.

2018-01-30 Thread Andreas Metzler
On 2018-01-30 積丹尼 Dan Jacobson  wrote:
> reopen 888707
> retitle Make sure exim4-* are updated before, after, but not during, locales.
> thanks

> There turns out to be a race condition.

> Please adjust the Dependencies to be sure exim4-* is updated before, after,
> but not during, locales.
[...]

Afaik that is not possible.



Bug#888707: Make sure exim4-* are updated before, after, but not during, locales.

2018-01-29 Thread 積丹尼 Dan Jacobson
reopen 888707
retitle Make sure exim4-* are updated before, after, but not during, locales.
thanks

There turns out to be a race condition.

Please adjust the Dependencies to be sure exim4-* is updated before, after,
but not during, locales.


$ grep locale term.log
Preparing to unpack 
.../25-locales_2.26.9000+20180127.7e23a7dd-0experimental0_all.deb ...
Unpacking locales (2.26.9000+20180127.7e23a7dd-0experimental0) over 
(2.26.9000+20180108.401311cf-0experimental0) ...
locale: Cannot set LC_ALL to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up locales (2.26.9000+20180127.7e23a7dd-0experimental0) ...
Generating locales (this might take a while)...
$ egrep exim\|locale term.log
Preparing to unpack 
.../25-locales_2.26.9000+20180127.7e23a7dd-0experimental0_all.deb ...
Unpacking locales (2.26.9000+20180127.7e23a7dd-0experimental0) over 
(2.26.9000+20180108.401311cf-0experimental0) ...
Preparing to unpack .../45-exim4-config_4.90-5_all.deb ...
Unpacking exim4-config (4.90-5) over (4.90-4) ...
Preparing to unpack .../46-exim4_4.90-5_all.deb ...
Unpacking exim4 (4.90-5) over (4.90-4) ...
Preparing to unpack .../47-exim4-base_4.90-5_amd64.deb ...
Unpacking exim4-base (4.90-5) over (4.90-4) ...
locale: Cannot set LC_ALL to default locale: No such file or directory
Preparing to unpack .../48-exim4-daemon-light_4.90-5_amd64.deb ...
Unpacking exim4-daemon-light (4.90-5) over (4.90-4) ...
Setting up exim4-config (4.90-5) ...
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up exim4-base (4.90-5) ...
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up exim4-daemon-light (4.90-5) ...
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up locales (2.26.9000+20180127.7e23a7dd-0experimental0) ...
Generating locales (this might take a while)...
Setting up exim4 (4.90-5) ...

Log started: 2018-01-30  10:26:20
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 197661 files and directories currently installed.)
Preparing to unpack .../dash_0.5.8-2.10_amd64.deb ...
Unpacking dash (0.5.8-2.10) over (0.5.8-2.9) ...
Setting up dash (0.5.8-2.10) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 197661 files and directories currently installed.)
Preparing to unpack 
.../libc6-dev_2.26.9000+20180127.7e23a7dd-0experimental0_amd64.deb ...
Unpacking libc6-dev:amd64 (2.26.9000+20180127.7e23a7dd-0experimental0) over 
(2.26.9000+20180108.401311cf-0experimental0) ...
Preparing to unpack 
.../libc-dev-bin_2.26.9000+20180127.7e23a7dd-0experimental0_amd64.deb ...
Unpacking libc-dev-bin (2.26.9000+20180127.7e23a7dd-0experimental0) over 
(2.26.9000+20180108.401311cf-0experimental0) ...
Preparing to unpack 
.../libc6_2.26.9000+20180127.7e23a7dd-0experimental0_amd64.deb ...
Unpacking libc6:amd64 (2.26.9000+20180127.7e23a7dd-0experimental0) over 
(2.26.9000+20180108.401311cf-0experimental0) ...
Setting up libc6:amd64 (2.26.9000+20180127.7e23a7dd-0experimental0) ...
(Reading database ... 
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 197660 files and directories currently installed.)
Preparing to unpack 
.../libc-bin_2.26.9000+20180127.7e23a7dd-0experimental0_amd64.deb ...
Unpacking libc-bin (2.26.9000+20180127.7e23a7dd-0experimental0) over