#859103 strip-nondeterminism: does not replace all timestamps in zip archives

#859103#5
Date:
2017-03-30 11:01:40 UTC
From:
To:
Hi,

It seems strip-nondeterminism replaces correctly replaces timestamps
in Unix-specific extra fields, however this may only happen in the
central directory and not in the individual members themselves.


reprotest - using a 0xAAAA timestamp (2004-09-10) for clarity:

$ reprotest 'mkdir test; touch test/a test/b; zip -r test.zip test; strip-nondeterminism -T 1094795585 test.zip; chmod 644 test.zip; cp test.zip /tmp; sleep 2' 'test.zip'
STARTING VIRTUAL SERVER ['/usr/lib/python3/dist-packages/reprotest/virt/null']
reprotest [12:29:15]: version @version@
reprotest [12:29:15]: host decision; command line: /usr/bin/reprotest 'mkdir test; touch test/a test/b; zip -r test.zip test; strip-nondeterminism -T 1094795585 test.zip; chmod 644 test.zip; cp test.zip /tmp; sleep 2' test.zip
reprotest [12:29:15]: testbed dpkg architecture: amd64
reprotest [12:29:15]: testbed running kernel: Linux 4.9.0-1-amd64 #1 SMP Debian 4.9.6-3 (2017-01-28)
will vary: environment
will vary: fileordering
will vary: home
will vary: kernel
will vary: locales
will vary: exec_path
will vary: time
will vary: timezone
will vary: umask
copying /home/me/workdir/test/ over to virtual server's /tmp/autopkgtest.L1evFW/control/
copying /home/me/workdir/test/ over to virtual server's /tmp/autopkgtest.L1evFW/experiment/
starting build with source directory: /tmp/autopkgtest.L1evFW/control/, artifact pattern: test.zip
executing: ( umask 0022 && cd /tmp/autopkgtest.L1evFW/control/ && linux64 --uname-2.6 sh -ec 'mkdir test; touch test/a test/b; zip -r test.zip test; strip-nondeterminism -T 1094795585 test.zip; chmod 644 test.zip; cp test.zip /tmp; sleep 2' )
  adding: test/ (stored 0%)
  adding: test/a (stored 0%)
  adding: test/b (stored 0%)
starting build with source directory: /tmp/autopkgtest.L1evFW/experiment/, artifact pattern: test.zip
executing: if ( mv /tmp/autopkgtest.L1evFW/experiment/ /tmp/autopkgtest.L1evFW/experiment-before-disorderfs/ && mkdir -p /tmp/autopkgtest.L1evFW/experiment/ && sh -ec 'disorderfs --shuffle-dirents=yes --multi-user="$(if [ $(id -u) = 0 ]; then echo yes; else echo no; fi)" "$@"' - /tmp/autopkgtest.L1evFW/experiment-before-disorderfs/ /tmp/autopkgtest.L1evFW/experiment/ && umask 0002 && cd /tmp/autopkgtest.L1evFW/experiment/ && faketime +373days+7hours+13minutes linux32 sh -ec 'mkdir test; touch test/a test/b; zip -r test.zip test; strip-nondeterminism -T 1094795585 test.zip; chmod 644 test.zip; cp test.zip /tmp; sleep 2' ); then
    ( __c=0; fusermount -u /tmp/autopkgtest.L1evFW/experiment/ || __c=$?; rmdir /tmp/autopkgtest.L1evFW/experiment/ || __c=$?; mv /tmp/autopkgtest.L1evFW/experiment-before-disorderfs/ /tmp/autopkgtest.L1evFW/experiment/ || __c=$?; exit $__c; );
else
    __x=$?;
    if ( __c=0; fusermount -u /tmp/autopkgtest.L1evFW/experiment/ || __c=$?; rmdir /tmp/autopkgtest.L1evFW/experiment/ || __c=$?; mv /tmp/autopkgtest.L1evFW/experiment-before-disorderfs/ /tmp/autopkgtest.L1evFW/experiment/ || __c=$?; exit $__c; ); then exit $__x; else
        echo >&2; "cleanup failed with exit code $?"; exit $__x;
    fi;
fi

disorderfs: shuffling dirents
disorderfs: reversing dirents
  adding: test/ (stored 0%)
  adding: test/b (stored 0%)
  adding: test/a (stored 0%)
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
      LANGUAGE = "fr_CH.UTF-8:fr",
      LC_ALL = "fr_CH.UTF-8",
      LANG = "fr_CH.UTF-8"
    are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
copying /tmp/autopkgtest.L1evFW/control-dist/ back from virtual server's /tmp/tmpnnnyuzyg/control_artifact/
copying /tmp/autopkgtest.L1evFW/experiment-dist/ back from virtual server's /tmp/tmpnnnyuzyg/experiment_artifact/
Running diffoscope: ['diffoscope', '/tmp/tmpnnnyuzyg/control_artifact/', '/tmp/tmpnnnyuzyg/experiment_artifact/']
--- /tmp/tmpnnnyuzyg/control_artifact/
+++ /tmp/tmpnnnyuzyg/experiment_artifact/
│   --- /tmp/tmpnnnyuzyg/control_artifact/test.zip
├── +++ /tmp/tmpnnnyuzyg/experiment_artifact/test.zip
│┄ No file format specific differences found inside, yet data differs (Zip archive data, at least v1.0 to extract)
│ @@ -1,18 +1,18 @@
│  00000000: 504b 0304 0a00 0000 0000 a22e 2a31 0000  PK..........*1..
│  00000010: 0000 0000 0000 0000 0000 0500 1c00 7465  ..............te
│  00000020: 7374 2f55 5409 0003 4141 4141 4141 4141  st/UT...AAAAAAAA
│  00000030: 7578 0b00 0104 0000 0000 0400 0000 0050  ux.............P
│  00000040: 4b03 040a 0000 0000 00a2 2e2a 3100 0000  K..........*1...
│  00000050: 0000 0000 0000 0000 0006 001c 0074 6573  .............tes
│ -00000060: 742f 6155 5409 0003 fbdd dc58 fbdd dc58  t/aUT......X...X
│ +00000060: 742f 6155 5409 0003 fddd dc58 fddd dc58  t/aUT......X...X
│  00000070: 7578 0b00 0104 e803 0000 04e8 0300 0050  ux.............P
│  00000080: 4b03 040a 0000 0000 00a2 2e2a 3100 0000  K..........*1...
│  00000090: 0000 0000 0000 0000 0006 001c 0074 6573  .............tes
│ -000000a0: 742f 6255 5409 0003 fbdd dc58 fbdd dc58  t/bUT......X...X
│ +000000a0: 742f 6255 5409 0003 fddd dc58 fddd dc58  t/bUT......X...X
│  000000b0: 7578 0b00 0104 e803 0000 04e8 0300 0050  ux.............P
│  000000c0: 4b01 021e 030a 0000 0000 00a2 2e2a 3100  K............*1.
│  000000d0: 0000 0000 0000 0000 0000 0005 0018 0000  ................
│  000000e0: 0000 0000 0010 00ed 4100 0000 0074 6573  ........A....tes
│  000000f0: 742f 5554 0500 0341 4141 4175 780b 0001  t/UT...AAAAux...
│  00000100: 0400 0000 0004 0000 0000 504b 0102 1e03  ..........PK....
│  00000110: 0a00 0000 0000 a22e 2a31 0000 0000 0000  ........*1......


5 ouf of 9 timestamps were replaced, 4 of them are remaining as
confirmed by bsdtar:

$ bsdtar -tvf /tmp/test.zip
drwxr-xr-x  0 0      0           0 sept. 10  2004 test/
-rw-r--r--  0 1000   1000        0 mars 30 12:29 test/a
-rw-r--r--  0 1000   1000        0 mars 30 12:29 test/b


I couldn't precisely locate where the error is in the
File/StripNondeterminism/handlers/zip.pm - maybe removing and adding
back a zip member only resets the directory extra fields.

Cheers!
Sylvain

#859103#10
Date:
2018-03-27 23:02:28 UTC
From:
To:
This is especially annoying because the "local extra field" includes
the file *access* time:

   $ rm -f foo 1.zip 2.zip
   $ touch -d 2015-01-01 foo
   $ zip 1.zip foo
   $ zip 2.zip foo
   $ strip-nondeterminism 1.zip 2.zip
   $ diffoscope 1.zip 2.zip
...
 00000010: 0000 0000 0000 0000 0000 0300 1c00 666f  ..............fo
-00000020: 6f55 5409 0003 50d4 a454 50d4 a454 7578  oUT...P..TP..Tux
+00000020: 6f55 5409 0003 50d4 a454 62a1 ba5a 7578  oUT...P..Tb..Zux
 00000030: 0b00 0104 e803 0000 04e8 0300 0050 4b01  .............PK.
...

(Which makes me think, for testing build reproducibility, it'd be
wise to try one build using noatime and another using
strictatime.  But anyway...)


The problem here is that Archive::Zip::ZipFileMember is not
designed to allow modifying the localExtraField() at all.  From
the man page:

       localExtraField( [ $newField ] )
       localExtraField( [ { field => $newField } ] )
           Gets or sets the extra field that was read from the local header.
           This is not set for a member from a zip file until after the member
           has been written out. The extra field must be in the proper format.

That is to say, before calling $zip->overwrite(),
localExtraField() returns an empty string.  Moreover, for
ZipFileMembers, manually setting the field has no effect - even
if you call overwrite(), then go back and modify the
localExtraFields, then call overwrite() again, it will re-read
the fields from the zip file.

(As far as I can tell, the *only* way to manually specify a
localExtraField using Archive::Zip is to decompress and
recompress each member.)


Here is a rather kludgy patch to make Archive::Zip behave the way
that strip-nondeterminism seems to expect:
--- /usr/share/perl5/Archive/Zip/ZipFileMember.pm
+++ Archive/Zip/ZipFileMember.pm
@@ -43,6 +43,25 @@
           and $self->uncompressedSize == 0);
 }

+sub localExtraField {
+    my $self = shift;
+
+    # If this function is called with an argument, it overrides the
+    # original field contents from the source archive.
+    if (@_) {
+        $self->{'_localExtraFieldUserDefined'} = 1;
+    }
+    # Otherwise, the value is loaded lazily, the first time it is needed.
+    elsif (!defined $self->{'_localExtraFieldUserDefined'}
+           and defined $self->{'externalFileName'}) {
+        my $origpos = $self->fh()->tell();
+        $self->rewindData();
+        $self->fh()->seek($origpos, IO::Seekable::SEEK_SET);
+    }
+
+    return $self->SUPER::localExtraField(@_);
+}
+
 # Seek to the beginning of the local header, just past the signature.
 # Verify that the local header signature is in fact correct.
 # Update the localHeaderRelativeOffset if necessary by adding the possibleEocdOffset.
@@ -156,10 +175,17 @@
     }

     if ($extraFieldLength) {
-        $bytesRead =
-          $self->fh()->read($self->{'localExtraField'}, $extraFieldLength);
-        if ($bytesRead != $extraFieldLength) {
-            return _ioError("reading local extra field");
+        if ($self->{'_localExtraFieldUserDefined'}) {
+            $self->fh()->seek($extraFieldLength, IO::Seekable::SEEK_CUR)
+              or return _ioError("skipping local extra field");
+        }
+        else {
+            $bytesRead =
+              $self->fh()->read($self->{'localExtraField'}, $extraFieldLength);
+            if ($bytesRead != $extraFieldLength) {
+                return _ioError("reading local extra field");
+            }
+            $self->{'_localExtraFieldUserDefined'} = 0;
         }
     }


Here is a different kludgy approach to work around the issue in
strip-nondeterminism, rewriting the local file headers by hand:
--- /usr/share/perl5/File/StripNondeterminism/handlers/zip.pm +++ File/StripNondeterminism/handlers/zip.pm @@ -23,6 +23,7 @@ use File::Temp; use Archive::Zip qw/:CONSTANTS :ERROR_CODES/; +use Fcntl q/SEEK_SET/; # A magic number from Archive::Zip for the earliest timestamp that # can be represented by a Zip file. From the Archive::Zip source: @@ -207,11 +208,36 @@ } $member->cdExtraField( normalize_extra_fields($member->cdExtraField(), CENTRAL_HEADER)); - $member->localExtraField( - normalize_extra_fields($member->localExtraField(), LOCAL_HEADER)); } my $old_perms = (stat($zip_filename))[2] & oct(7777); $zip->overwrite(); + + # Archive::Zip::ZipFileMembers do not allow modifying the + # local extra field, so we need to rewrite the local file + # headers by hand. This assumes that normalize_extra_fields + # does not change the length of the field(s). + + open(my $fh, '+<', $zip_filename) or die "Unable to open $zip_filename: $!"; + for my $member ($zip->members()) { + my $extra_field = normalize_extra_fields($member->localExtraField(), LOCAL_HEADER); + my $offset = $member->writeLocalHeaderRelativeOffset(); + my ($header, $signature, $namelength, $extralength); + if (seek($fh, $offset, SEEK_SET) and read($fh, $header, 30) == 30) { + $signature = unpack("V", substr($header, 0, 4)); + $namelength = unpack("v", substr($header, 26, 2)); + $extralength = unpack("v", substr($header, 28, 2)); + } + if ($signature == 0x04034b50 + and $extralength == length($extra_field) + and seek($fh, $offset + 30 + $namelength, SEEK_SET)) { + syswrite($fh, $extra_field); + } + else { + die "Cannot find local file header(s) in $zip_filename"; + } + } + close($fh) or die "Error writing $zip_filename: $!"; + chmod($old_perms, $zip_filename); return 1; }
#859103#15
Date:
2019-03-12 16:56:23 UTC
From:
To:
forwarded 859103 https://salsa.debian.org/reproducible-builds/strip-nondeterminism/issues/5
thanks

I've forwarded this upstream here:

https://salsa.debian.org/reproducible-builds/strip-nondeterminism/issues/5


Regards,

#859103#24
Date:
2026-06-02 15:14:26 UTC
From:
To:
Hi,

I think I have a symptom of this (though the "upstream" issue at salsa
is closed). Look at

I see

Testing: Excuse for libreoffice
Migration status for libreoffice (4:26.2.3.2-2 to 4:26.2.4.2-1): BLOCKED: Rejected/violates migration policy/introduces a regression
Issues preventing migration:
Reproducibility regression on armhf: libreoffice-help-common
Reproducibility regression on i386: libreoffice-help-common
[...]

where the file (/usr/share/libreoffice/share/config/images_helpimg.zip) is *not* new
and the log is https://reproduce.debian.net/all/api/v1/builds/206321/artifacts/427704/diffoscope
where all differences inside the file timestamp and the metaadata is
timestamp-related.

The LO build *does* run dh_strip_nondeterminism though

According to https://wiki.debian.org/ReproducibleBuilds/TimestampsInZip
(dh-)strip-non-determinism sould fix this, which it doesn't.

Regards,

Rene

#859103#27
Date:
2026-06-02 15:14:26 UTC
From:
To:
Hi,

I think I have a symptom of this (though the "upstream" issue at salsa
is closed). Look at

I see

Testing: Excuse for libreoffice
Migration status for libreoffice (4:26.2.3.2-2 to 4:26.2.4.2-1): BLOCKED: Rejected/violates migration policy/introduces a regression
Issues preventing migration:
Reproducibility regression on armhf: libreoffice-help-common
Reproducibility regression on i386: libreoffice-help-common
[...]

where the file (/usr/share/libreoffice/share/config/images_helpimg.zip) is *not* new
and the log is https://reproduce.debian.net/all/api/v1/builds/206321/artifacts/427704/diffoscope
where all differences inside the file timestamp and the metaadata is
timestamp-related.

The LO build *does* run dh_strip_nondeterminism though

According to https://wiki.debian.org/ReproducibleBuilds/TimestampsInZip
(dh-)strip-non-determinism sould fix this, which it doesn't.

Regards,

Rene

#859103#32
Date:
2026-06-02 16:19:57 UTC
From:
To:
Rene Engelhard wrote:

Just as v. quick experiment, I extracted images_helpimg.zip from the
libreoffice-help-common package and my local strip-nondeterminism
checkout from Git was able to normalise it:

  $ cp images_helpimg.zip  images_helpimg.orig.zip
  $ PERL5LIB=lib/ bin/strip-nondeterminism --verbose -T 503575200 images_helpimg.zip
  $ diffoscope images_helpimg.orig.zip images_helpimg.zip | grep 85-Dec | head
  │ +-rw-r--r--  2.0 unx     1810 b- stor 85-Dec-16 10:00 media/helpimg/area1.png
  │ +-rw-r--r--  2.0 unx     1759 b- stor 85-Dec-16 10:00 media/helpimg/area2.png
  │ +-rw-r--r--  2.0 unx     1654 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldalle.png
  │ +-rw-r--r--  2.0 unx      454 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldbrei.png
  │ +-rw-r--r--  2.0 unx      755 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldcolo.png
  │ +-rw-r--r--  2.0 unx     3752 b- stor 85-Dec-16 10:00 media/helpimg/bg/names_as_addressing.png
  │ +-rw-r--r--  2.0 unx     1745 b- stor 85-Dec-16 10:00 media/helpimg/bg/sheettabs.png
  │ +-rw-r--r--  2.0 unx     1151 b- stor 85-Dec-16 10:00 media/helpimg/bg/swh00117.png
  │ +-rw-r--r--  2.0 unx      734 b- stor 85-Dec-16 10:00 media/helpimg/bg/zellvor.png
  │ +-rw-r--r--  2.0 unx      937 b- stor 85-Dec-16 10:00 media/helpimg/border_ca_1.png
                                          ^^^^^^^^^

Can you confirm that? From an admittedly *very* quick glance at the packaging, I
don't actually see a call to strip-nondetermism, and none seems to be implied
via dh(1). I could very easily be missing something.


Best wishes,

#859103#37
Date:
2026-06-02 16:19:57 UTC
From:
To:
Rene Engelhard wrote:

Just as v. quick experiment, I extracted images_helpimg.zip from the
libreoffice-help-common package and my local strip-nondeterminism
checkout from Git was able to normalise it:

  $ cp images_helpimg.zip  images_helpimg.orig.zip
  $ PERL5LIB=lib/ bin/strip-nondeterminism --verbose -T 503575200 images_helpimg.zip
  $ diffoscope images_helpimg.orig.zip images_helpimg.zip | grep 85-Dec | head
  │ +-rw-r--r--  2.0 unx     1810 b- stor 85-Dec-16 10:00 media/helpimg/area1.png
  │ +-rw-r--r--  2.0 unx     1759 b- stor 85-Dec-16 10:00 media/helpimg/area2.png
  │ +-rw-r--r--  2.0 unx     1654 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldalle.png
  │ +-rw-r--r--  2.0 unx      454 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldbrei.png
  │ +-rw-r--r--  2.0 unx      755 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldcolo.png
  │ +-rw-r--r--  2.0 unx     3752 b- stor 85-Dec-16 10:00 media/helpimg/bg/names_as_addressing.png
  │ +-rw-r--r--  2.0 unx     1745 b- stor 85-Dec-16 10:00 media/helpimg/bg/sheettabs.png
  │ +-rw-r--r--  2.0 unx     1151 b- stor 85-Dec-16 10:00 media/helpimg/bg/swh00117.png
  │ +-rw-r--r--  2.0 unx      734 b- stor 85-Dec-16 10:00 media/helpimg/bg/zellvor.png
  │ +-rw-r--r--  2.0 unx      937 b- stor 85-Dec-16 10:00 media/helpimg/border_ca_1.png
                                          ^^^^^^^^^

Can you confirm that? From an admittedly *very* quick glance at the packaging, I
don't actually see a call to strip-nondetermism, and none seems to be implied
via dh(1). I could very easily be missing something.


Best wishes,

#859103#40
Date:
2026-06-02 16:19:57 UTC
From:
To:
Rene Engelhard wrote:

Just as v. quick experiment, I extracted images_helpimg.zip from the
libreoffice-help-common package and my local strip-nondeterminism
checkout from Git was able to normalise it:

  $ cp images_helpimg.zip  images_helpimg.orig.zip
  $ PERL5LIB=lib/ bin/strip-nondeterminism --verbose -T 503575200 images_helpimg.zip
  $ diffoscope images_helpimg.orig.zip images_helpimg.zip | grep 85-Dec | head
  │ +-rw-r--r--  2.0 unx     1810 b- stor 85-Dec-16 10:00 media/helpimg/area1.png
  │ +-rw-r--r--  2.0 unx     1759 b- stor 85-Dec-16 10:00 media/helpimg/area2.png
  │ +-rw-r--r--  2.0 unx     1654 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldalle.png
  │ +-rw-r--r--  2.0 unx      454 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldbrei.png
  │ +-rw-r--r--  2.0 unx      755 b- stor 85-Dec-16 10:00 media/helpimg/bg/feldcolo.png
  │ +-rw-r--r--  2.0 unx     3752 b- stor 85-Dec-16 10:00 media/helpimg/bg/names_as_addressing.png
  │ +-rw-r--r--  2.0 unx     1745 b- stor 85-Dec-16 10:00 media/helpimg/bg/sheettabs.png
  │ +-rw-r--r--  2.0 unx     1151 b- stor 85-Dec-16 10:00 media/helpimg/bg/swh00117.png
  │ +-rw-r--r--  2.0 unx      734 b- stor 85-Dec-16 10:00 media/helpimg/bg/zellvor.png
  │ +-rw-r--r--  2.0 unx      937 b- stor 85-Dec-16 10:00 media/helpimg/border_ca_1.png
                                          ^^^^^^^^^

Can you confirm that? From an admittedly *very* quick glance at the packaging, I
don't actually see a call to strip-nondetermism, and none seems to be implied
via dh(1). I could very easily be missing something.


Best wishes,

#859103#45
Date:
2026-06-02 16:35:41 UTC
From:
To:
Hi,


Am 02.06.26 um 18:19 schrieb Chris Lamb:
??

rene@frodo:~$ wget "https://buildd.debian.org/status/fetch.php?pkg=libreoffice&arch=all&ver=4%3A26.2.4.2-1&stamp=1780358607&raw=1"
--2026-06-02 18:31:07-- https://buildd.debian.org/status/fetch.php?pkg=libreoffice&arch=all&ver=4%3A26.2.4.2-1&stamp=1780358607&raw=1
Auflösen des Hostnamens buildd.debian.org (buildd.debian.org)… 2607:f8f0:614:1::1274:62, 209.87.16.62
Verbindungsaufbau zu buildd.debian.org (buildd.debian.org)|2607:f8f0:614:1::1274:62|:443 … verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK
Länge: 60481725 (58M) [text/plain]
Wird in »fetch.php?pkg=libreoffice&arch=all&ver=4:26.2.4.2-1&stamp=1780358607&raw=1« gespeichert.

fetch.php?pkg=libreoffice&arch=all&ver= 100%[=============================================================================>] 57,68M  10,6MB/s    in 6,2s

2026-06-02 18:31:14 (9,30 MB/s) - »fetch.php?pkg=libreoffice&arch=all&ver=4:26.2.4.2-1&stamp=1780358607&raw=1« gespeichert [60481725/60481725]

rene@frodo:~$ grep -A 5 dh_strip fetch.php\?pkg\=libreoffice\&arch\=all\&ver\=4\:26.2.4.2-1\&stamp\=1780358607\&raw\=1
dh_strip_nondeterminism -i
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/xsc.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/wpt.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/wiz.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/vcl.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/uui.mo


and libreoffice-help-common is arch-indep. So yes, it does. It even does stuff for .mo files :)


Regards,


Rene

#859103#50
Date:
2026-06-02 16:35:41 UTC
From:
To:
Hi,


Am 02.06.26 um 18:19 schrieb Chris Lamb:
??

rene@frodo:~$ wget "https://buildd.debian.org/status/fetch.php?pkg=libreoffice&arch=all&ver=4%3A26.2.4.2-1&stamp=1780358607&raw=1"
--2026-06-02 18:31:07-- https://buildd.debian.org/status/fetch.php?pkg=libreoffice&arch=all&ver=4%3A26.2.4.2-1&stamp=1780358607&raw=1
Auflösen des Hostnamens buildd.debian.org (buildd.debian.org)… 2607:f8f0:614:1::1274:62, 209.87.16.62
Verbindungsaufbau zu buildd.debian.org (buildd.debian.org)|2607:f8f0:614:1::1274:62|:443 … verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK
Länge: 60481725 (58M) [text/plain]
Wird in »fetch.php?pkg=libreoffice&arch=all&ver=4:26.2.4.2-1&stamp=1780358607&raw=1« gespeichert.

fetch.php?pkg=libreoffice&arch=all&ver= 100%[=============================================================================>] 57,68M  10,6MB/s    in 6,2s

2026-06-02 18:31:14 (9,30 MB/s) - »fetch.php?pkg=libreoffice&arch=all&ver=4:26.2.4.2-1&stamp=1780358607&raw=1« gespeichert [60481725/60481725]

rene@frodo:~$ grep -A 5 dh_strip fetch.php\?pkg\=libreoffice\&arch\=all\&ver\=4\:26.2.4.2-1\&stamp\=1780358607\&raw\=1
dh_strip_nondeterminism -i
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/xsc.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/wpt.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/wiz.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/vcl.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/uui.mo


and libreoffice-help-common is arch-indep. So yes, it does. It even does stuff for .mo files :)


Regards,


Rene

#859103#53
Date:
2026-06-02 16:35:41 UTC
From:
To:
Hi,


Am 02.06.26 um 18:19 schrieb Chris Lamb:
??

rene@frodo:~$ wget "https://buildd.debian.org/status/fetch.php?pkg=libreoffice&arch=all&ver=4%3A26.2.4.2-1&stamp=1780358607&raw=1"
--2026-06-02 18:31:07-- https://buildd.debian.org/status/fetch.php?pkg=libreoffice&arch=all&ver=4%3A26.2.4.2-1&stamp=1780358607&raw=1
Auflösen des Hostnamens buildd.debian.org (buildd.debian.org)… 2607:f8f0:614:1::1274:62, 209.87.16.62
Verbindungsaufbau zu buildd.debian.org (buildd.debian.org)|2607:f8f0:614:1::1274:62|:443 … verbunden.
HTTP-Anforderung gesendet, auf Antwort wird gewartet … 200 OK
Länge: 60481725 (58M) [text/plain]
Wird in »fetch.php?pkg=libreoffice&arch=all&ver=4:26.2.4.2-1&stamp=1780358607&raw=1« gespeichert.

fetch.php?pkg=libreoffice&arch=all&ver= 100%[=============================================================================>] 57,68M  10,6MB/s    in 6,2s

2026-06-02 18:31:14 (9,30 MB/s) - »fetch.php?pkg=libreoffice&arch=all&ver=4:26.2.4.2-1&stamp=1780358607&raw=1« gespeichert [60481725/60481725]

rene@frodo:~$ grep -A 5 dh_strip fetch.php\?pkg\=libreoffice\&arch\=all\&ver\=4\:26.2.4.2-1\&stamp\=1780358607\&raw\=1
dh_strip_nondeterminism -i
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/xsc.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/wpt.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/wiz.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/vcl.mo
     Normalized debian/libreoffice-l10n-af/usr/lib/libreoffice/program/resource/af/LC_MESSAGES/uui.mo


and libreoffice-help-common is arch-indep. So yes, it does. It even does stuff for .mo files :)


Regards,


Rene

#859103#58
Date:
2026-06-02 16:55:34 UTC
From:
To:
Rene Engelhard wrote:
[..]

Hah, I was searching debian/rules for "strip-nondeterminism" — no wondering I
couldn't find it! Thanks for the pointer. :)

Okay, this is an interesting puzzle, especially as the log you link confirms
that the .zip file is in place before dh_strip_nondeterminism is called.

Can you easily do a build passing DH_VERBOSE=1 to dh_strip_nondeterminism?


Best wishes,

#859103#63
Date:
2026-06-02 16:55:34 UTC
From:
To:
Rene Engelhard wrote:
[..]

Hah, I was searching debian/rules for "strip-nondeterminism" — no wondering I
couldn't find it! Thanks for the pointer. :)

Okay, this is an interesting puzzle, especially as the log you link confirms
that the .zip file is in place before dh_strip_nondeterminism is called.

Can you easily do a build passing DH_VERBOSE=1 to dh_strip_nondeterminism?


Best wishes,

#859103#66
Date:
2026-06-02 16:55:34 UTC
From:
To:
Rene Engelhard wrote:
[..]

Hah, I was searching debian/rules for "strip-nondeterminism" — no wondering I
couldn't find it! Thanks for the pointer. :)

Okay, this is an interesting puzzle, especially as the log you link confirms
that the .zip file is in place before dh_strip_nondeterminism is called.

Can you easily do a build passing DH_VERBOSE=1 to dh_strip_nondeterminism?


Best wishes,

#859103#71
Date:
2026-06-02 16:57:51 UTC
From:
To:
clone 859103 -1
reassign 859103 -1 dh-strip-nondeterminism
found -1 1.15.0-1
retitle 859103 dh-strip-nondeterminism: does not replace all timestamps in zip archives (since file 5.47?)
thanks

Hi,

Am 02.06.26 um 18:35 schrieb Rene Engelhard:

root@frodo:/usr/share/libreoffice/share/config# file *.zip
images_colibre.zip:          Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 412, method=store
images_colibre_dark.zip:     Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 372, method=store
images_colibre_dark_svg.zip: Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 802, method=deflate
images_colibre_svg.zip:      Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 884, method=deflate
images_helpimg.zip:          Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 21:34:46, uncompressed size 1810, method=store
root@frodo:/usr/share/libreoffice/share/config# apt upgrade
The following packages were automatically installed and are no longer required:
   libpoppler-cpp2  libpoppler147  libxmlsec1-gnutls10310  libxmlsec1-openssl10310
Use 'sudo apt autoremove' to remove them.

Upgrading:
   adduser     ca-certificates  file              libcmis-dev  libmagic-mgc    libraptor2-0    python3-numpy      r-cran-tidyselect
   apparmor    dh-apparmor      libapparmor1      libgif7      libmagic1t64    libraptor2-dev  python3-numpy-dev  xserver-common
   base-files  dh-cargo         libcmis-0.6-6t64  libgit2-1.9  libopenmpt0t64  python3-build   python3-packaging  xvfb

Summary:
   Upgrading: 24, Installing: 0, Removing: 0, Not Upgrading: 0
   Download size: 18.3 MB
   Space needed: 5276 kB / 74.7 GB available

Continue? [Y/n]
Get:1 http://deb.debian.org/debian unstable/main amd64 base-files amd64 14.2 [88.0 kB]
Get:2 http://deb.debian.org/debian unstable/main amd64 python3-numpy amd64 1:2.4.6+ds-1 [7333 kB]
Get:3 http://deb.debian.org/debian unstable/main amd64 python3-numpy-dev amd64 1:2.4.6+ds-1 [136 kB]
Get:4 http://deb.debian.org/debian unstable/main amd64 adduser all 3.156 [212 kB]
Get:5 http://deb.debian.org/debian unstable/main amd64 ca-certificates all 20260601 [134 kB]
Get:6 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.47-3 [42.9 kB]
Get:7 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.47-3 [111 kB]
Get:8 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.47-3 [346 kB]
Get:9 http://deb.debian.org/debian unstable/main amd64 apparmor amd64 4.1.7-4 [709 kB]
Get:10 http://deb.debian.org/debian unstable/main amd64 dh-apparmor all 4.1.7-4 [9780 B]
Get:11 http://deb.debian.org/debian unstable/main amd64 dh-cargo all 34 [9864 B]
Get:12 http://deb.debian.org/debian unstable/main amd64 libapparmor1 amd64 4.1.7-4 [36.2 kB]
Get:13 http://deb.debian.org/debian unstable/main amd64 libcmis-dev amd64 0.6.3-1 [635 kB]
Get:14 http://deb.debian.org/debian unstable/main amd64 libcmis-0.6-6t64 amd64 0.6.3-1 [469 kB]
Get:15 http://deb.debian.org/debian unstable/main amd64 libgif7 amd64 6.1.3-1 [46.1 kB]
Get:16 http://deb.debian.org/debian unstable/main amd64 libgit2-1.9 amd64 1.9.4+ds-1 [561 kB]
Get:17 http://deb.debian.org/debian unstable/main amd64 libopenmpt0t64 amd64 0.8.7-1 [932 kB]
Get:18 http://deb.debian.org/debian unstable/main amd64 libraptor2-dev amd64 2.0.16-7 [212 kB]
Get:19 http://deb.debian.org/debian unstable/main amd64 libraptor2-0 amd64 2.0.16-7 [178 kB]
Get:20 http://deb.debian.org/debian unstable/main amd64 python3-packaging all 26.2-1 [84.1 kB]
Get:21 http://deb.debian.org/debian unstable/main amd64 python3-build all 1.5.0-1 [71.2 kB]
Get:22 http://deb.debian.org/debian unstable/main amd64 r-cran-tidyselect amd64 1.2.1+dfsg-3 [224 kB]
Get:23 http://deb.debian.org/debian unstable/main amd64 xserver-common all 2:21.1.23-1 [2451 kB]
Get:24 http://deb.debian.org/debian unstable/main amd64 xvfb amd64 2:21.1.23-1 [3260 kB]
Fetched 18.3 MB in 2s (11.0 MB/s)
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "de_DE.UTF-8"
     are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Preconfiguring packages ...
Error: Can not write log (Is /dev/pts mounted?) - posix_openpt (2: No such file or directory)
(Reading database ... 128425 files and directories currently installed.)
Preparing to unpack .../base-files_14.2_amd64.deb ...
Unpacking base-files (14.2) over (14.1) ...
Setting up base-files (14.2) ...
(Reading database ... 128425 files and directories currently installed.)
Preparing to unpack .../python3-numpy_1%3a2.4.6+ds-1_amd64.deb ...
Unpacking python3-numpy (1:2.4.6+ds-1) over (1:2.4.4+ds-2) ...
Preparing to unpack .../python3-numpy-dev_1%3a2.4.6+ds-1_amd64.deb ...
Unpacking python3-numpy-dev:amd64 (1:2.4.6+ds-1) over (1:2.4.4+ds-2) ...
Preparing to unpack .../archives/adduser_3.156_all.deb ...
Unpacking adduser (3.156) over (3.155) ...
Setting up adduser (3.156) ...
Installing new version of config file /etc/adduser.conf ...
(Reading database ... 128426 files and directories currently installed.)
Preparing to unpack .../00-ca-certificates_20260601_all.deb ...
Unpacking ca-certificates (20260601) over (20260223) ...
Preparing to unpack .../01-file_1%3a5.47-3_amd64.deb ...
Unpacking file (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../02-libmagic1t64_1%3a5.47-3_amd64.deb ...
Unpacking libmagic1t64:amd64 (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../03-libmagic-mgc_1%3a5.47-3_amd64.deb ...
Unpacking libmagic-mgc (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../04-apparmor_4.1.7-4_amd64.deb ...
Unpacking apparmor (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../05-dh-apparmor_4.1.7-4_all.deb ...
Unpacking dh-apparmor (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../06-dh-cargo_34_all.deb ...
Unpacking dh-cargo (34) over (33) ...
Preparing to unpack .../07-libapparmor1_4.1.7-4_amd64.deb ...
Unpacking libapparmor1:amd64 (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../08-libcmis-dev_0.6.3-1_amd64.deb ...
Unpacking libcmis-dev (0.6.3-1) over (0.6.2-4) ...
Preparing to unpack .../09-libcmis-0.6-6t64_0.6.3-1_amd64.deb ...
Unpacking libcmis-0.6-6t64 (0.6.3-1) over (0.6.2-4) ...
Preparing to unpack .../10-libgif7_6.1.3-1_amd64.deb ...
Unpacking libgif7:amd64 (6.1.3-1) over (5.2.2-1+b2) ...
Preparing to unpack .../11-libgit2-1.9_1.9.4+ds-1_amd64.deb ...
Unpacking libgit2-1.9:amd64 (1.9.4+ds-1) over (1.9.3+ds-1+b1) ...
Preparing to unpack .../12-libopenmpt0t64_0.8.7-1_amd64.deb ...
Unpacking libopenmpt0t64:amd64 (0.8.7-1) over (0.8.6-1) ...
Preparing to unpack .../13-libraptor2-dev_2.0.16-7_amd64.deb ...
Unpacking libraptor2-dev:amd64 (2.0.16-7) over (2.0.16-6+b3) ...
Preparing to unpack .../14-libraptor2-0_2.0.16-7_amd64.deb ...
Unpacking libraptor2-0:amd64 (2.0.16-7) over (2.0.16-6+b3) ...
Preparing to unpack .../15-python3-packaging_26.2-1_all.deb ...
Unpacking python3-packaging (26.2-1) over (26.0-1) ...
Preparing to unpack .../16-python3-build_1.5.0-1_all.deb ...
Unpacking python3-build (1.5.0-1) over (1.4.0-1) ...
Preparing to unpack .../17-r-cran-tidyselect_1.2.1+dfsg-3_amd64.deb ...
Unpacking r-cran-tidyselect (1.2.1+dfsg-3) over (1.2.1+dfsg-2) ...
Preparing to unpack .../18-xserver-common_2%3a21.1.23-1_all.deb ...
Unpacking xserver-common (2:21.1.23-1) over (2:21.1.22-1) ...
Preparing to unpack .../19-xvfb_2%3a21.1.23-1_amd64.deb ...
Unpacking xvfb (2:21.1.23-1) over (2:21.1.22-1) ...
Setting up libapparmor1:amd64 (4.1.7-4) ...
Setting up libmagic-mgc (1:5.47-3) ...
Setting up libmagic1t64:amd64 (1:5.47-3) ...
Setting up libraptor2-0:amd64 (2.0.16-7) ...
Setting up file (1:5.47-3) ...
Setting up r-cran-tidyselect (1.2.1+dfsg-3) ...
Setting up apparmor (4.1.7-4) ...
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up ca-certificates (20260601) ...
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Updating certificates in /etc/ssl/certs...
rehash: warning: skipping ca-certificates.crt, it does not contain exactly one certificate or CRL
2 added, 25 removed; done.
Setting up dh-cargo (34) ...
Setting up python3-packaging (26.2-1) ...
Setting up libcmis-0.6-6t64 (0.6.3-1) ...
Setting up python3-numpy-dev:amd64 (1:2.4.6+ds-1) ...
Setting up libgit2-1.9:amd64 (1.9.4+ds-1) ...
Setting up python3-numpy (1:2.4.6+ds-1) ...
Setting up libgif7:amd64 (6.1.3-1) ...
Setting up libcmis-dev (0.6.3-1) ...
Setting up libraptor2-dev:amd64 (2.0.16-7) ...
Setting up xserver-common (2:21.1.23-1) ...
Setting up python3-build (1.5.0-1) ...
Setting up dh-apparmor (4.1.7-4) ...
Setting up libopenmpt0t64:amd64 (0.8.7-1) ...
Setting up xvfb (2:21.1.23-1) ...
Processing triggers for man-db (2.13.1-1) ...
Processing triggers for libc-bin (2.42-16) ...
Processing triggers for ca-certificates (20260601) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
Processing triggers for ca-certificates-java (20260311) ...
done.
root@frodo:/usr/share/libreoffice/share/config# file *.zip
images_colibre.zip:          Microsoft OOXML
images_colibre_dark.zip:     Microsoft OOXML
images_colibre_dark_svg.zip: Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 802, method=deflate
images_colibre_svg.zip:      Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 884, method=deflate
images_helpimg.zip:          Microsoft OOXML
root@frodo:/usr/share/libreoffice/share/config#

I agree that for files which might be .zips that can be a problem (see #1136323) but these are .zip files.

Regards,


Rene

#859103#80
Date:
2026-06-02 16:57:51 UTC
From:
To:
clone 859103 -1
reassign 859103 -1 dh-strip-nondeterminism
found -1 1.15.0-1
retitle 859103 dh-strip-nondeterminism: does not replace all timestamps in zip archives (since file 5.47?)
thanks

Hi,

Am 02.06.26 um 18:35 schrieb Rene Engelhard:

root@frodo:/usr/share/libreoffice/share/config# file *.zip
images_colibre.zip:          Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 412, method=store
images_colibre_dark.zip:     Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 372, method=store
images_colibre_dark_svg.zip: Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 802, method=deflate
images_colibre_svg.zip:      Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 884, method=deflate
images_helpimg.zip:          Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 21:34:46, uncompressed size 1810, method=store
root@frodo:/usr/share/libreoffice/share/config# apt upgrade
The following packages were automatically installed and are no longer required:
   libpoppler-cpp2  libpoppler147  libxmlsec1-gnutls10310  libxmlsec1-openssl10310
Use 'sudo apt autoremove' to remove them.

Upgrading:
   adduser     ca-certificates  file              libcmis-dev  libmagic-mgc    libraptor2-0    python3-numpy      r-cran-tidyselect
   apparmor    dh-apparmor      libapparmor1      libgif7      libmagic1t64    libraptor2-dev  python3-numpy-dev  xserver-common
   base-files  dh-cargo         libcmis-0.6-6t64  libgit2-1.9  libopenmpt0t64  python3-build   python3-packaging  xvfb

Summary:
   Upgrading: 24, Installing: 0, Removing: 0, Not Upgrading: 0
   Download size: 18.3 MB
   Space needed: 5276 kB / 74.7 GB available

Continue? [Y/n]
Get:1 http://deb.debian.org/debian unstable/main amd64 base-files amd64 14.2 [88.0 kB]
Get:2 http://deb.debian.org/debian unstable/main amd64 python3-numpy amd64 1:2.4.6+ds-1 [7333 kB]
Get:3 http://deb.debian.org/debian unstable/main amd64 python3-numpy-dev amd64 1:2.4.6+ds-1 [136 kB]
Get:4 http://deb.debian.org/debian unstable/main amd64 adduser all 3.156 [212 kB]
Get:5 http://deb.debian.org/debian unstable/main amd64 ca-certificates all 20260601 [134 kB]
Get:6 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.47-3 [42.9 kB]
Get:7 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.47-3 [111 kB]
Get:8 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.47-3 [346 kB]
Get:9 http://deb.debian.org/debian unstable/main amd64 apparmor amd64 4.1.7-4 [709 kB]
Get:10 http://deb.debian.org/debian unstable/main amd64 dh-apparmor all 4.1.7-4 [9780 B]
Get:11 http://deb.debian.org/debian unstable/main amd64 dh-cargo all 34 [9864 B]
Get:12 http://deb.debian.org/debian unstable/main amd64 libapparmor1 amd64 4.1.7-4 [36.2 kB]
Get:13 http://deb.debian.org/debian unstable/main amd64 libcmis-dev amd64 0.6.3-1 [635 kB]
Get:14 http://deb.debian.org/debian unstable/main amd64 libcmis-0.6-6t64 amd64 0.6.3-1 [469 kB]
Get:15 http://deb.debian.org/debian unstable/main amd64 libgif7 amd64 6.1.3-1 [46.1 kB]
Get:16 http://deb.debian.org/debian unstable/main amd64 libgit2-1.9 amd64 1.9.4+ds-1 [561 kB]
Get:17 http://deb.debian.org/debian unstable/main amd64 libopenmpt0t64 amd64 0.8.7-1 [932 kB]
Get:18 http://deb.debian.org/debian unstable/main amd64 libraptor2-dev amd64 2.0.16-7 [212 kB]
Get:19 http://deb.debian.org/debian unstable/main amd64 libraptor2-0 amd64 2.0.16-7 [178 kB]
Get:20 http://deb.debian.org/debian unstable/main amd64 python3-packaging all 26.2-1 [84.1 kB]
Get:21 http://deb.debian.org/debian unstable/main amd64 python3-build all 1.5.0-1 [71.2 kB]
Get:22 http://deb.debian.org/debian unstable/main amd64 r-cran-tidyselect amd64 1.2.1+dfsg-3 [224 kB]
Get:23 http://deb.debian.org/debian unstable/main amd64 xserver-common all 2:21.1.23-1 [2451 kB]
Get:24 http://deb.debian.org/debian unstable/main amd64 xvfb amd64 2:21.1.23-1 [3260 kB]
Fetched 18.3 MB in 2s (11.0 MB/s)
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "de_DE.UTF-8"
     are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Preconfiguring packages ...
Error: Can not write log (Is /dev/pts mounted?) - posix_openpt (2: No such file or directory)
(Reading database ... 128425 files and directories currently installed.)
Preparing to unpack .../base-files_14.2_amd64.deb ...
Unpacking base-files (14.2) over (14.1) ...
Setting up base-files (14.2) ...
(Reading database ... 128425 files and directories currently installed.)
Preparing to unpack .../python3-numpy_1%3a2.4.6+ds-1_amd64.deb ...
Unpacking python3-numpy (1:2.4.6+ds-1) over (1:2.4.4+ds-2) ...
Preparing to unpack .../python3-numpy-dev_1%3a2.4.6+ds-1_amd64.deb ...
Unpacking python3-numpy-dev:amd64 (1:2.4.6+ds-1) over (1:2.4.4+ds-2) ...
Preparing to unpack .../archives/adduser_3.156_all.deb ...
Unpacking adduser (3.156) over (3.155) ...
Setting up adduser (3.156) ...
Installing new version of config file /etc/adduser.conf ...
(Reading database ... 128426 files and directories currently installed.)
Preparing to unpack .../00-ca-certificates_20260601_all.deb ...
Unpacking ca-certificates (20260601) over (20260223) ...
Preparing to unpack .../01-file_1%3a5.47-3_amd64.deb ...
Unpacking file (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../02-libmagic1t64_1%3a5.47-3_amd64.deb ...
Unpacking libmagic1t64:amd64 (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../03-libmagic-mgc_1%3a5.47-3_amd64.deb ...
Unpacking libmagic-mgc (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../04-apparmor_4.1.7-4_amd64.deb ...
Unpacking apparmor (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../05-dh-apparmor_4.1.7-4_all.deb ...
Unpacking dh-apparmor (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../06-dh-cargo_34_all.deb ...
Unpacking dh-cargo (34) over (33) ...
Preparing to unpack .../07-libapparmor1_4.1.7-4_amd64.deb ...
Unpacking libapparmor1:amd64 (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../08-libcmis-dev_0.6.3-1_amd64.deb ...
Unpacking libcmis-dev (0.6.3-1) over (0.6.2-4) ...
Preparing to unpack .../09-libcmis-0.6-6t64_0.6.3-1_amd64.deb ...
Unpacking libcmis-0.6-6t64 (0.6.3-1) over (0.6.2-4) ...
Preparing to unpack .../10-libgif7_6.1.3-1_amd64.deb ...
Unpacking libgif7:amd64 (6.1.3-1) over (5.2.2-1+b2) ...
Preparing to unpack .../11-libgit2-1.9_1.9.4+ds-1_amd64.deb ...
Unpacking libgit2-1.9:amd64 (1.9.4+ds-1) over (1.9.3+ds-1+b1) ...
Preparing to unpack .../12-libopenmpt0t64_0.8.7-1_amd64.deb ...
Unpacking libopenmpt0t64:amd64 (0.8.7-1) over (0.8.6-1) ...
Preparing to unpack .../13-libraptor2-dev_2.0.16-7_amd64.deb ...
Unpacking libraptor2-dev:amd64 (2.0.16-7) over (2.0.16-6+b3) ...
Preparing to unpack .../14-libraptor2-0_2.0.16-7_amd64.deb ...
Unpacking libraptor2-0:amd64 (2.0.16-7) over (2.0.16-6+b3) ...
Preparing to unpack .../15-python3-packaging_26.2-1_all.deb ...
Unpacking python3-packaging (26.2-1) over (26.0-1) ...
Preparing to unpack .../16-python3-build_1.5.0-1_all.deb ...
Unpacking python3-build (1.5.0-1) over (1.4.0-1) ...
Preparing to unpack .../17-r-cran-tidyselect_1.2.1+dfsg-3_amd64.deb ...
Unpacking r-cran-tidyselect (1.2.1+dfsg-3) over (1.2.1+dfsg-2) ...
Preparing to unpack .../18-xserver-common_2%3a21.1.23-1_all.deb ...
Unpacking xserver-common (2:21.1.23-1) over (2:21.1.22-1) ...
Preparing to unpack .../19-xvfb_2%3a21.1.23-1_amd64.deb ...
Unpacking xvfb (2:21.1.23-1) over (2:21.1.22-1) ...
Setting up libapparmor1:amd64 (4.1.7-4) ...
Setting up libmagic-mgc (1:5.47-3) ...
Setting up libmagic1t64:amd64 (1:5.47-3) ...
Setting up libraptor2-0:amd64 (2.0.16-7) ...
Setting up file (1:5.47-3) ...
Setting up r-cran-tidyselect (1.2.1+dfsg-3) ...
Setting up apparmor (4.1.7-4) ...
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up ca-certificates (20260601) ...
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Updating certificates in /etc/ssl/certs...
rehash: warning: skipping ca-certificates.crt, it does not contain exactly one certificate or CRL
2 added, 25 removed; done.
Setting up dh-cargo (34) ...
Setting up python3-packaging (26.2-1) ...
Setting up libcmis-0.6-6t64 (0.6.3-1) ...
Setting up python3-numpy-dev:amd64 (1:2.4.6+ds-1) ...
Setting up libgit2-1.9:amd64 (1.9.4+ds-1) ...
Setting up python3-numpy (1:2.4.6+ds-1) ...
Setting up libgif7:amd64 (6.1.3-1) ...
Setting up libcmis-dev (0.6.3-1) ...
Setting up libraptor2-dev:amd64 (2.0.16-7) ...
Setting up xserver-common (2:21.1.23-1) ...
Setting up python3-build (1.5.0-1) ...
Setting up dh-apparmor (4.1.7-4) ...
Setting up libopenmpt0t64:amd64 (0.8.7-1) ...
Setting up xvfb (2:21.1.23-1) ...
Processing triggers for man-db (2.13.1-1) ...
Processing triggers for libc-bin (2.42-16) ...
Processing triggers for ca-certificates (20260601) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
Processing triggers for ca-certificates-java (20260311) ...
done.
root@frodo:/usr/share/libreoffice/share/config# file *.zip
images_colibre.zip:          Microsoft OOXML
images_colibre_dark.zip:     Microsoft OOXML
images_colibre_dark_svg.zip: Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 802, method=deflate
images_colibre_svg.zip:      Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 884, method=deflate
images_helpimg.zip:          Microsoft OOXML
root@frodo:/usr/share/libreoffice/share/config#

I agree that for files which might be .zips that can be a problem (see #1136323) but these are .zip files.

Regards,


Rene

#859103#83
Date:
2026-06-02 16:57:51 UTC
From:
To:
clone 859103 -1
reassign 859103 -1 dh-strip-nondeterminism
found -1 1.15.0-1
retitle 859103 dh-strip-nondeterminism: does not replace all timestamps in zip archives (since file 5.47?)
thanks

Hi,

Am 02.06.26 um 18:35 schrieb Rene Engelhard:

root@frodo:/usr/share/libreoffice/share/config# file *.zip
images_colibre.zip:          Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 412, method=store
images_colibre_dark.zip:     Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 372, method=store
images_colibre_dark_svg.zip: Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 802, method=deflate
images_colibre_svg.zip:      Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 884, method=deflate
images_helpimg.zip:          Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 21:34:46, uncompressed size 1810, method=store
root@frodo:/usr/share/libreoffice/share/config# apt upgrade
The following packages were automatically installed and are no longer required:
   libpoppler-cpp2  libpoppler147  libxmlsec1-gnutls10310  libxmlsec1-openssl10310
Use 'sudo apt autoremove' to remove them.

Upgrading:
   adduser     ca-certificates  file              libcmis-dev  libmagic-mgc    libraptor2-0    python3-numpy      r-cran-tidyselect
   apparmor    dh-apparmor      libapparmor1      libgif7      libmagic1t64    libraptor2-dev  python3-numpy-dev  xserver-common
   base-files  dh-cargo         libcmis-0.6-6t64  libgit2-1.9  libopenmpt0t64  python3-build   python3-packaging  xvfb

Summary:
   Upgrading: 24, Installing: 0, Removing: 0, Not Upgrading: 0
   Download size: 18.3 MB
   Space needed: 5276 kB / 74.7 GB available

Continue? [Y/n]
Get:1 http://deb.debian.org/debian unstable/main amd64 base-files amd64 14.2 [88.0 kB]
Get:2 http://deb.debian.org/debian unstable/main amd64 python3-numpy amd64 1:2.4.6+ds-1 [7333 kB]
Get:3 http://deb.debian.org/debian unstable/main amd64 python3-numpy-dev amd64 1:2.4.6+ds-1 [136 kB]
Get:4 http://deb.debian.org/debian unstable/main amd64 adduser all 3.156 [212 kB]
Get:5 http://deb.debian.org/debian unstable/main amd64 ca-certificates all 20260601 [134 kB]
Get:6 http://deb.debian.org/debian unstable/main amd64 file amd64 1:5.47-3 [42.9 kB]
Get:7 http://deb.debian.org/debian unstable/main amd64 libmagic1t64 amd64 1:5.47-3 [111 kB]
Get:8 http://deb.debian.org/debian unstable/main amd64 libmagic-mgc amd64 1:5.47-3 [346 kB]
Get:9 http://deb.debian.org/debian unstable/main amd64 apparmor amd64 4.1.7-4 [709 kB]
Get:10 http://deb.debian.org/debian unstable/main amd64 dh-apparmor all 4.1.7-4 [9780 B]
Get:11 http://deb.debian.org/debian unstable/main amd64 dh-cargo all 34 [9864 B]
Get:12 http://deb.debian.org/debian unstable/main amd64 libapparmor1 amd64 4.1.7-4 [36.2 kB]
Get:13 http://deb.debian.org/debian unstable/main amd64 libcmis-dev amd64 0.6.3-1 [635 kB]
Get:14 http://deb.debian.org/debian unstable/main amd64 libcmis-0.6-6t64 amd64 0.6.3-1 [469 kB]
Get:15 http://deb.debian.org/debian unstable/main amd64 libgif7 amd64 6.1.3-1 [46.1 kB]
Get:16 http://deb.debian.org/debian unstable/main amd64 libgit2-1.9 amd64 1.9.4+ds-1 [561 kB]
Get:17 http://deb.debian.org/debian unstable/main amd64 libopenmpt0t64 amd64 0.8.7-1 [932 kB]
Get:18 http://deb.debian.org/debian unstable/main amd64 libraptor2-dev amd64 2.0.16-7 [212 kB]
Get:19 http://deb.debian.org/debian unstable/main amd64 libraptor2-0 amd64 2.0.16-7 [178 kB]
Get:20 http://deb.debian.org/debian unstable/main amd64 python3-packaging all 26.2-1 [84.1 kB]
Get:21 http://deb.debian.org/debian unstable/main amd64 python3-build all 1.5.0-1 [71.2 kB]
Get:22 http://deb.debian.org/debian unstable/main amd64 r-cran-tidyselect amd64 1.2.1+dfsg-3 [224 kB]
Get:23 http://deb.debian.org/debian unstable/main amd64 xserver-common all 2:21.1.23-1 [2451 kB]
Get:24 http://deb.debian.org/debian unstable/main amd64 xvfb amd64 2:21.1.23-1 [3260 kB]
Fetched 18.3 MB in 2s (11.0 MB/s)
perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
	LANGUAGE = (unset),
	LC_ALL = (unset),
	LC_CTYPE = (unset),
	LC_NUMERIC = (unset),
	LC_COLLATE = (unset),
	LC_TIME = (unset),
	LC_MESSAGES = (unset),
	LC_MONETARY = (unset),
	LC_ADDRESS = (unset),
	LC_IDENTIFICATION = (unset),
	LC_MEASUREMENT = (unset),
	LC_PAPER = (unset),
	LC_TELEPHONE = (unset),
	LC_NAME = (unset),
	LANG = "de_DE.UTF-8"
     are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Preconfiguring packages ...
Error: Can not write log (Is /dev/pts mounted?) - posix_openpt (2: No such file or directory)
(Reading database ... 128425 files and directories currently installed.)
Preparing to unpack .../base-files_14.2_amd64.deb ...
Unpacking base-files (14.2) over (14.1) ...
Setting up base-files (14.2) ...
(Reading database ... 128425 files and directories currently installed.)
Preparing to unpack .../python3-numpy_1%3a2.4.6+ds-1_amd64.deb ...
Unpacking python3-numpy (1:2.4.6+ds-1) over (1:2.4.4+ds-2) ...
Preparing to unpack .../python3-numpy-dev_1%3a2.4.6+ds-1_amd64.deb ...
Unpacking python3-numpy-dev:amd64 (1:2.4.6+ds-1) over (1:2.4.4+ds-2) ...
Preparing to unpack .../archives/adduser_3.156_all.deb ...
Unpacking adduser (3.156) over (3.155) ...
Setting up adduser (3.156) ...
Installing new version of config file /etc/adduser.conf ...
(Reading database ... 128426 files and directories currently installed.)
Preparing to unpack .../00-ca-certificates_20260601_all.deb ...
Unpacking ca-certificates (20260601) over (20260223) ...
Preparing to unpack .../01-file_1%3a5.47-3_amd64.deb ...
Unpacking file (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../02-libmagic1t64_1%3a5.47-3_amd64.deb ...
Unpacking libmagic1t64:amd64 (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../03-libmagic-mgc_1%3a5.47-3_amd64.deb ...
Unpacking libmagic-mgc (1:5.47-3) over (1:5.46-5+b2) ...
Preparing to unpack .../04-apparmor_4.1.7-4_amd64.deb ...
Unpacking apparmor (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../05-dh-apparmor_4.1.7-4_all.deb ...
Unpacking dh-apparmor (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../06-dh-cargo_34_all.deb ...
Unpacking dh-cargo (34) over (33) ...
Preparing to unpack .../07-libapparmor1_4.1.7-4_amd64.deb ...
Unpacking libapparmor1:amd64 (4.1.7-4) over (4.1.7-2) ...
Preparing to unpack .../08-libcmis-dev_0.6.3-1_amd64.deb ...
Unpacking libcmis-dev (0.6.3-1) over (0.6.2-4) ...
Preparing to unpack .../09-libcmis-0.6-6t64_0.6.3-1_amd64.deb ...
Unpacking libcmis-0.6-6t64 (0.6.3-1) over (0.6.2-4) ...
Preparing to unpack .../10-libgif7_6.1.3-1_amd64.deb ...
Unpacking libgif7:amd64 (6.1.3-1) over (5.2.2-1+b2) ...
Preparing to unpack .../11-libgit2-1.9_1.9.4+ds-1_amd64.deb ...
Unpacking libgit2-1.9:amd64 (1.9.4+ds-1) over (1.9.3+ds-1+b1) ...
Preparing to unpack .../12-libopenmpt0t64_0.8.7-1_amd64.deb ...
Unpacking libopenmpt0t64:amd64 (0.8.7-1) over (0.8.6-1) ...
Preparing to unpack .../13-libraptor2-dev_2.0.16-7_amd64.deb ...
Unpacking libraptor2-dev:amd64 (2.0.16-7) over (2.0.16-6+b3) ...
Preparing to unpack .../14-libraptor2-0_2.0.16-7_amd64.deb ...
Unpacking libraptor2-0:amd64 (2.0.16-7) over (2.0.16-6+b3) ...
Preparing to unpack .../15-python3-packaging_26.2-1_all.deb ...
Unpacking python3-packaging (26.2-1) over (26.0-1) ...
Preparing to unpack .../16-python3-build_1.5.0-1_all.deb ...
Unpacking python3-build (1.5.0-1) over (1.4.0-1) ...
Preparing to unpack .../17-r-cran-tidyselect_1.2.1+dfsg-3_amd64.deb ...
Unpacking r-cran-tidyselect (1.2.1+dfsg-3) over (1.2.1+dfsg-2) ...
Preparing to unpack .../18-xserver-common_2%3a21.1.23-1_all.deb ...
Unpacking xserver-common (2:21.1.23-1) over (2:21.1.22-1) ...
Preparing to unpack .../19-xvfb_2%3a21.1.23-1_amd64.deb ...
Unpacking xvfb (2:21.1.23-1) over (2:21.1.22-1) ...
Setting up libapparmor1:amd64 (4.1.7-4) ...
Setting up libmagic-mgc (1:5.47-3) ...
Setting up libmagic1t64:amd64 (1:5.47-3) ...
Setting up libraptor2-0:amd64 (2.0.16-7) ...
Setting up file (1:5.47-3) ...
Setting up r-cran-tidyselect (1.2.1+dfsg-3) ...
Setting up apparmor (4.1.7-4) ...
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Setting up ca-certificates (20260601) ...
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
Updating certificates in /etc/ssl/certs...
rehash: warning: skipping ca-certificates.crt, it does not contain exactly one certificate or CRL
2 added, 25 removed; done.
Setting up dh-cargo (34) ...
Setting up python3-packaging (26.2-1) ...
Setting up libcmis-0.6-6t64 (0.6.3-1) ...
Setting up python3-numpy-dev:amd64 (1:2.4.6+ds-1) ...
Setting up libgit2-1.9:amd64 (1.9.4+ds-1) ...
Setting up python3-numpy (1:2.4.6+ds-1) ...
Setting up libgif7:amd64 (6.1.3-1) ...
Setting up libcmis-dev (0.6.3-1) ...
Setting up libraptor2-dev:amd64 (2.0.16-7) ...
Setting up xserver-common (2:21.1.23-1) ...
Setting up python3-build (1.5.0-1) ...
Setting up dh-apparmor (4.1.7-4) ...
Setting up libopenmpt0t64:amd64 (0.8.7-1) ...
Setting up xvfb (2:21.1.23-1) ...
Processing triggers for man-db (2.13.1-1) ...
Processing triggers for libc-bin (2.42-16) ...
Processing triggers for ca-certificates (20260601) ...
Updating certificates in /etc/ssl/certs...
0 added, 0 removed; done.
Running hooks in /etc/ca-certificates/update.d...
done.
Processing triggers for ca-certificates-java (20260311) ...
done.
root@frodo:/usr/share/libreoffice/share/config# file *.zip
images_colibre.zip:          Microsoft OOXML
images_colibre_dark.zip:     Microsoft OOXML
images_colibre_dark_svg.zip: Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 802, method=deflate
images_colibre_svg.zip:      Zip archive data, made by v2.0 UNIX, extract using at least v2.0, last modified Jun 01 2026 20:32:26, uncompressed size 884, method=deflate
images_helpimg.zip:          Microsoft OOXML
root@frodo:/usr/share/libreoffice/share/config#

I agree that for files which might be .zips that can be a problem (see #1136323) but these are .zip files.

Regards,


Rene

#859103#90
Date:
2026-06-02 17:22:56 UTC
From:
To:
Hey Rene,

Thanks for your patience.
[..]

Good spot. :)  Upgrading my system to the latest file, I can reproduce
this and can confirm this causes strip-nondeterminism to skip over this
file. No need to do the DH_VERBOSE=1 run.

Ultimately, this means this is something to fix in the file package,
however, not strip-determinism. They are usually fast to fix these issues,
thankfully.


Best wishes,

#859103#95
Date:
2026-06-02 17:22:56 UTC
From:
To:
Hey Rene,

Thanks for your patience.
[..]

Good spot. :)  Upgrading my system to the latest file, I can reproduce
this and can confirm this causes strip-nondeterminism to skip over this
file. No need to do the DH_VERBOSE=1 run.

Ultimately, this means this is something to fix in the file package,
however, not strip-determinism. They are usually fast to fix these issues,
thankfully.


Best wishes,

#859103#98
Date:
2026-06-02 17:22:56 UTC
From:
To:
Hey Rene,

Thanks for your patience.
[..]

Good spot. :)  Upgrading my system to the latest file, I can reproduce
this and can confirm this causes strip-nondeterminism to skip over this
file. No need to do the DH_VERBOSE=1 run.

Ultimately, this means this is something to fix in the file package,
however, not strip-determinism. They are usually fast to fix these issues,
thankfully.


Best wishes,

#859103#103
Date:
2026-06-02 17:26:45 UTC
From:
To:
Hi,

Am 02.06.26 um 19:22 schrieb Chris Lamb:

I disagree.


These files are named .zip.

No need to guess the type.

For some zip files not names zip you'd be right I guess, but..


Regards,


Rene