[Pkg-libburnia-devel] Reproducible patches for libisoburn and libisofs
Thomas Schmitt
scdbackup at gmx.net
Tue Aug 16 14:29:09 UTC 2016
Hi,
uploaded is
http://www.gnu.org/software/xorriso/xorriso-1.4.5.tar.gz
MD5 2e64a46b50c5192a0797e63dd3182b6a
Version timestamp : 2016.08.16.131907
which obeys SOURCE_DATE_EPOCH by stating in its man pages
ENVIRONMENT
...
SOURCE_DATE_EPOCH belongs to the specs of reproducible-builds.org. It
is supposed to be either undefined or to contain a decimal number which
tells the seconds since january 1st 1970. If it contains a number, then
it is used as time value to set the default of --modification-date=,
--gpt_disk_guid, and --set_all_file_dates. Startup files and program
options can override the effect of SOURCE_DATE_EPOCH.
Changeset:
http://libburnia-project.org/changeset/5747
If you start xorriso in an environment with SOURCE_DATE_EPOCH it will react
as follows.
Issue a NOTE message about acceptable values and DEBUG messages about
the consequences:
$ export SOURCE_DATE_EPOCH=1471290111
$ xorriso -report_about all -as mkisofs ...
...
xorriso : NOTE : Environment variable SOURCE_DATE_EPOCH encountered with value 1471290111
xorriso : DEBUG : SOURCE_DATE_EPOCH : -volume_date uuid 2016081519415100
xorriso : DEBUG : SOURCE_DATE_EPOCH : -volume_date all_file_dates 2016081519415100
xorriso : DEBUG : SOURCE_DATE_EPOCH : -boot_image any volume_date_uuid
...
The DEBUG messages will not be visible by default.
Issue a SORRY message (mild error severity) on unacceptable values, go on
with ISO production, and end with non-zero exit value:
$ export SOURCE_DATE_EPOCH=xyz1471290111
$ xorriso -as mkisofs ...
...
xorriso : SORRY : Malformed environment variable SOURCE_DATE_EPOCH encountered
xorriso : HINT : Unset SOURCE_DATE_EPOCH before starting xorriso or see https://reproducible-builds.org/specs/source-date-epoch/
...
$ echo $?
32
The continued work and the exit value are consequences of default settings
-abort_on FAILURE
-return_with SORRY 32
It can be influenced by the user of xorriso in startup files or program
arguments:
$ xorriso -abort_on sorry -as mkisofs ...
...
xorriso : SORRY : Malformed environment variable SOURCE_DATE_EPOCH encountered
xorriso : HINT : Unset SOURCE_DATE_EPOCH before starting xorriso or see https://reproducible-builds.org/specs/source-date-epoch/
xorriso : aborting : -abort_on 'SORRY' encountered 'SORRY'
$ echo $?
5
I compared again the MD5s of two rebuild runs of my ISO collection.
All identical. All disk GUIDs the same. (Shudder.)
In another comparison the modification date of SOURCE_DATE_EPOCH was
overridden by program arguments. All identical. At least slight differences
between disk GUIDs. So this mixing is reproducible as expected.
Have a nice day :)
Thomas
More information about the Pkg-libburnia-devel
mailing list