New paragraph "Reproducibility considerations" moved out of ENVIRONMENT

This commit is contained in:
2025-06-10 12:58:41 +02:00
parent bc0c639ec8
commit 83ec7bf9dc
6 changed files with 385 additions and 212 deletions

View File

@ -173,6 +173,7 @@ File: xorrisofs.info, Node: Options, Next: Examples, Prev: Xorriso, Up: Top
* Charset:: Character sets
* Jigdo:: Jigdo Template Extraction
* Miscellaneous:: Miscellaneous options
* Reproducible:: Reproducibility considerations

File: xorrisofs.info, Node: Loading, Next: SetInsert, Prev: Options, Up: Options
@ -1530,7 +1531,7 @@ counted as part of the ISO image.
-checksum_algorithm_iso.

File: xorrisofs.info, Node: Miscellaneous, Next: ExSimple, Prev: Jigdo, Up: Options
File: xorrisofs.info, Node: Miscellaneous, Next: Reproducible, Prev: Jigdo, Up: Options
5.12 Miscellaneous options
==========================
@ -1591,6 +1592,52 @@ File: xorrisofs.info, Node: Miscellaneous, Next: ExSimple, Prev: Jigdo, Up:
"mkisofs 2.01-Emulation Copyright (C)"
and to standard error the version information of xorriso.

File: xorrisofs.info, Node: Reproducible, Next: Examples, Prev: Miscellaneous, Up: Options
5.13 Reproducibility considerations
===================================
Stable versions of xorriso are prepared to produce in repeated runs from
the same input files with the same file metadata and the same xorrisofs
options the same ISO 9660 filesystem bytes. The only exception are
bytes which depend on the current time of the xorriso run.
These time dependent values can be set to fixed values by the options
--modification-date=, --gpt_disk_guid, and --set_all_file_dates.
Instead of setting each of them, it is possible to influence them all by
the environment variable SOURCE_DATE_EPOCH.
SOURCE_DATE_EPOCH belongs to the specification 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 defaults to
"modification-date". The default of --set_all_file_dates is then
"set_to_mtime". Further the "now" time for ISO nodes without disk
source is set to the SOURCE_DATE_EPOCH value.
Startup files and xorrisofs options can override the effect of
SOURCE_DATE_EPOCH.
Different versions of xorriso may or may not produce the same result
from the same input and options. Reproducibility may be prevented by
bug fixes or feature enhancements between versions.
xorriso puts its version information into the Preparer Id field of the
ISO 9660 Primary Volume Descriptor by default. This may be desired in
order to clearly define which xorriso version has to be used for
reproduction. But it may also be undesired because a wider range of
xorriso versions shall not be excluded from an attempt of reproduction.
Use option -p with a text other than "@xorriso@" if you want to override
the default at first production time. This option may also be used to
explicitly set the preparer id as found in an ISO 9660 filesystem which
shall be reproduced by a different version of xorriso. The preparer id
can be inquired by xorriso command -pvd_info.
If reproducibility of xorrisofs results is desired, then the
precautions - like setting SOURCE_DATE_EPOCH - should be done already
with the original xorrisofs run. All input files, the used xorrisofs
options in exact sequence, the version of xorriso, and the possibly set
SOURCE_DATE_EPOCH value should then be kept or recorded for later
re-use.

File: xorrisofs.info, Node: Examples, Next: Files, Prev: Options, Up: Top
@ -2010,28 +2057,8 @@ File: xorrisofs.info, Node: Environ, Next: Seealso, Prev: Files, Up: Top
The following environment variables influence the program behavior:
HOME is used to find xorriso and mkisofs startup files.
MKISOFSRC may be used to point the program to a mkisofs startup file.
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 defaults to "modification-date".
The default of --set_all_file_dates is then "set_to_mtime". Further the
"now" time for ISO nodes without disk source is then set to the
SOURCE_DATE_EPOCH value.
Startup files and program options can override the effect of
SOURCE_DATE_EPOCH.
Be aware that by default xorriso puts its version information into the
Preparer Id field of the ISO 9660 Primary Volume Descriptor. This may
be desired in order to clearly define which xorriso version has to be
used for reproduction. But it may also be undesired because a wider
range of xorriso versions shall not be excluded from an attempt of
reproduction.
Use option -p with a text other than "@xorriso@" if you want to override
the default at first production time. This option may also be used to
explicitly set the preparer id as found in an ISO 9660 filesystem which
shall be reproduced by a different version of xorriso. The id can be
inquired by the generic xorriso command -pvd_info.
SOURCE_DATE_EPOCH belongs to the specs of reproducible-builds.org. See
above paragraph "Reproducibility considerations".

File: xorrisofs.info, Node: Seealso, Next: Bugreport, Prev: Environ, Up: Top
@ -2617,32 +2644,33 @@ Node: Standards1573
Node: Insert3878
Node: Xorriso5724
Node: Options6870
Node: Loading7597
Node: SetInsert9638
Node: SetProduct15573
Node: SetCompl21145
Node: SetExtras23818
Node: SetHide36210
Node: ImageId38209
Node: Bootable42491
Node: SystemArea48924
Node: Charset70235
Node: Jigdo71260
Node: Miscellaneous76230
Node: Examples78826
Node: ExSimple79320
Node: ExGraft79803
Node: ExMkisofs81103
Node: ExGrowisofs82911
Node: ExIncBackup84101
Node: ExIncBckAcc87277
Node: ExBootable88982
Node: Files93164
Node: Environ94259
Node: Seealso95834
Node: Bugreport96535
Node: Legal97128
Node: CommandIdx98025
Node: ConceptIdx115531
Node: Loading7652
Node: SetInsert9693
Node: SetProduct15628
Node: SetCompl21200
Node: SetExtras23873
Node: SetHide36265
Node: ImageId38264
Node: Bootable42546
Node: SystemArea48979
Node: Charset70290
Node: Jigdo71315
Node: Miscellaneous76285
Node: Reproducible78885
Node: Examples81391
Node: ExSimple81885
Node: ExGraft82368
Node: ExMkisofs83668
Node: ExGrowisofs85476
Node: ExIncBackup86666
Node: ExIncBckAcc89842
Node: ExBootable91547
Node: Files95729
Node: Environ96824
Node: Seealso97242
Node: Bugreport97943
Node: Legal98536
Node: CommandIdx99433
Node: ConceptIdx116939

End Tag Table