Followup-For: Bug #694888

reassign 694888 ca-certificates-java 20121112+nmu1
forcemerge 694888 694889
retitle 694888 ca-certificates-java: early triggered jks-keystore may fail and 
leave the temporary /etc/java-7-openjdk/jvm-$arch.cfg
affects 694888 + openjdk-7-jre-headless openjdk-7-source
thanks

easy to reproduce: in a minimal pbuilder sid environment run

  apt-get install openjdk-7-source

Problem summary:
/etc/ca-certificates/update.d/jks-keystore fails because
/etc/java-7-openjdk/security/nss.cfg does not (yet) exist
(sed exits with 2 on the missing file)
As a result the temporary /etc/java-7-openjdk/jvm-amd64.cfg does not
get removed causing the following setup of
openjdk-7-jre-headless:amd64 to fail (by asking a useless question).

>From am installation in sid with jks-keystore patched to have set -x:

[...]
Processing triggers for ca-certificates ...
Updating certificates in /etc/ssl/certs... 159 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d....+ set -e
+ unset LC_ALL
+ LC_CTYPE=C.UTF-8
+ export LC_CTYPE
+ storepass=changeit
+ '[' -f /etc/default/cacerts ']'
+ . /etc/default/cacerts
++ cacerts_updates=yes
++ dpkg --print-architecture
+ arch=amd64
+ JAR=/usr/share/ca-certificates-java/ca-certificates-java.jar
+ echo ''

+ '[' yes '!=' yes ']'
+ '[' '' = disabled ']'
+ '[' '!' -e /usr/share/ca-certificates-java/ca-certificates-java.jar ']'
+ mountpoint -q /proc
+ for jvm in 'java-6-openjdk-$arch' java-6-openjdk 'java-7-openjdk-$arch' 
java-7-openjdk java-6-sun
+ '[' -x /usr/lib/jvm/java-6-openjdk-amd64/bin/java ']'
+ for jvm in 'java-6-openjdk-$arch' java-6-openjdk 'java-7-openjdk-$arch' 
java-7-openjdk java-6-sun
+ '[' -x /usr/lib/jvm/java-6-openjdk/bin/java ']'
+ for jvm in 'java-6-openjdk-$arch' java-6-openjdk 'java-7-openjdk-$arch' 
java-7-openjdk java-6-sun
+ '[' -x /usr/lib/jvm/java-7-openjdk-amd64/bin/java ']'
+ break
+ export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
+ JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64
+ 
PATH=/usr/lib/jvm/java-7-openjdk-amd64/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
+ temp_jvm_cfg=
+ '[' '!' -f /etc/java-7-openjdk/jvm-amd64.cfg ']'
+ temp_jvm_cfg=/etc/java-7-openjdk/jvm-amd64.cfg
+ mkdir -p /etc/java-7-openjdk
+ printf -- '-server KNOWN\n'
+ dpkg-query --version
++ sed -n 's,\(.*\)/libnss3\.so$,\1,p'
++ head -n 1
+++ nsslib_name
+++ dpkg --assert-multi-arch
+++ echo libnss3:amd64
++ dpkg-query -L libnss3:amd64
+ nsspkg=/usr/lib/x86_64-linux-gnu
++ sed -n '/nssLibraryDirectory/s/.*= *\(.*\)/\1/p' 
/etc/java-7-openjdk/security/nss.cfg
sed: can't read /etc/java-7-openjdk/security/nss.cfg: No such file or directory
+ nssjdk=
E: /etc/ca-certificates/update.d/jks-keystore exited with code 2.
done.
Setting up openjdk-7-jre-headless:amd64 (7u3-2.1.3-1) ...

Configuration file `/etc/java-7-openjdk/jvm-amd64.cfg'
 ==> File on system created by you or by a script.
 ==> File also in package provided by package maintainer.
   What would you like to do about it ?  Your options are:
    Y or I  : install the package maintainer's version
    N or O  : keep your currently-installed version
      D     : show the differences between the versions
      Z     : start a shell to examine the situation
 The default action is to keep your current version.

A full piuparts log from installing openjdk-7-source in sid is attached,
this uses the unpatched ca-certificates-java 20121112+nmu1 (so no debug
output from set -x)

Andreas

Attachment: openjdk-7-source_7u3-2.1.3-1.log.gz
Description: GNU Zip compressed data

Reply via email to