From 384ff0eee97555be6b8d945624a1d13533f364f1 Mon Sep 17 00:00:00 2001 From: Thomas Schmitt Date: Tue, 16 Aug 2016 13:18:31 +0000 Subject: [PATCH] New environment variable SOURCE_DATE_EPOCH --- xorriso/parse_exec.c | 60 +++++++++ xorriso/xorriso.1 | 32 ++++- xorriso/xorriso.info | 245 ++++++++++++++++++++---------------- xorriso/xorriso.texi | 41 +++++- xorriso/xorriso_timestamp.h | 2 +- xorriso/xorrisofs.1 | 24 +++- xorriso/xorrisofs.info | 194 +++++++++++++++------------- xorriso/xorrisofs.texi | 32 +++-- 8 files changed, 412 insertions(+), 218 deletions(-) diff --git a/xorriso/parse_exec.c b/xorriso/parse_exec.c index 56bc3e22..c80a697f 100644 --- a/xorriso/parse_exec.c +++ b/xorriso/parse_exec.c @@ -2549,10 +2549,70 @@ ex:; } +/* https://reproducible-builds.org/specs/source-date-epoch/ + and reproducible-builds@lists.alioth.debian.org in august 2016 +*/ +int Xorriso_source_date_epoch(struct XorrisO *xorriso, int flag) +{ + char *sec_text, double_text[40]; + double dsec= -1.0; + time_t tsec; + struct tm *gmt; + + sec_text= getenv("SOURCE_DATE_EPOCH"); + if(sec_text == NULL) + return(2); + + sscanf(sec_text, "%lf", &dsec); + sprintf(double_text, "%.f", dsec); + tsec= dsec; + if(dsec < 0 || ((double) tsec) != dsec || + strcmp(sec_text, double_text) != 0) { +malformed:; + Xorriso_msgs_submit(xorriso, 0, + "Malformed environment variable SOURCE_DATE_EPOCH encountered", + 0, "SORRY", 0); + Xorriso_msgs_submit(xorriso, 0, + "Unset SOURCE_DATE_EPOCH before starting xorriso or see https://reproducible-builds.org/specs/source-date-epoch/", + 0, "HINT", 0); + return(0); + } + gmt= gmtime(&tsec); + if(gmt == NULL) + goto malformed; + sprintf(xorriso->vol_uuid, "%4.4d%2.2d%2.2d%2.2d%2.2d%2.2d00", + 1900 + gmt->tm_year, gmt->tm_mon + 1, gmt->tm_mday, + gmt->tm_hour, gmt->tm_min, gmt->tm_sec); + xorriso->gpt_guid_mode= 2; /* Disk GUID from vol_uuid */ + strcpy(xorriso->all_file_dates, xorriso->vol_uuid); + sprintf(xorriso->info_text, + "Environment variable SOURCE_DATE_EPOCH encountered with value %s", + sec_text); + Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "NOTE", 0); + sprintf(xorriso->info_text, "SOURCE_DATE_EPOCH : -volume_date uuid %s", + xorriso->vol_uuid); + Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "DEBUG", 0); + sprintf(xorriso->info_text, + "SOURCE_DATE_EPOCH : -volume_date all_file_dates %s", + xorriso->all_file_dates); + Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "DEBUG", 0); + sprintf(xorriso->info_text, + "SOURCE_DATE_EPOCH : -boot_image any volume_date_uuid"); + Xorriso_msgs_submit(xorriso, 0, xorriso->info_text, 0, "DEBUG", 0); + return(1); +} + + int Xorriso_read_rc(struct XorrisO *xorriso, int flag) { int ret,i,was_failure= 0,fret; + /* Interpret environment variable SOURCE_DATE_EPOCH */ + ret= Xorriso_source_date_epoch(xorriso, 0); + ret= Xorriso_eval_problem_status(xorriso, ret, 0); + if(ret < 0) + return(0); + if(xorriso->no_rc) return(1); i= xorriso->rc_filename_count-1; diff --git a/xorriso/xorriso.1 b/xorriso/xorriso.1 index faf69fae..9caf6c44 100644 --- a/xorriso/xorriso.1 +++ b/xorriso/xorriso.1 @@ -9,7 +9,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH XORRISO 1 "Version 1.4.5, Aug 14, 2016" +.TH XORRISO 1 "Version 1.4.5, Aug 15, 2016" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -2822,7 +2822,16 @@ Available types are: .br "f" time since when the volume is effectively valid. .br -"uuid" sets a timestring that overrides "c" and "m" times literally. +"all_file_dates" sets mtime, atime, and ctime of all files and +directories to the given time. +This action stays delayed until actual ISO production begins. +Up to then it can be revoked by "all_file_dates" with empty timestring. +.br +The timestamps of the El Torito boot catalog file get refreshed when the ISO +is produced. They can be influenced by "uuid". +.br +"uuid" sets a timestring that overrides "c" and "m" times literally and sets +the time of the El Torito boot catalog. It must consist of 16 decimal digits which form YYYYMMDDhhmmsscc, with YYYY between 1970 and 2999. Time zone is GMT. It is supposed to match this GRUB line: @@ -4156,6 +4165,10 @@ mentioned boot facilities. Modes \fBcmd\fR and \fBas_mkisofs\fR work like with command \-report_el_torito. See above. .br +With mode \fBgpt_disk_guid\fR print the GPT disk GUID of the loaded ISO +in RFC 4122 text format to result channel. It is not considered an error if +no GPT is present. In this case nothing is printed to result channel. +.br With mode \fBgpt_crc_of:\fRdisk_path read up to 32 KiB from the disk file with the path given after the colon. Compute the GPT compliant CRC number and print it to the result channel. The number is shown like "0x690fd979". @@ -5978,6 +5991,21 @@ The default setting of \-check_media abort_file= is: .br /var/opt/xorriso/do_abort_check_media .br +.SS +.SH ENVIRONMENT +The following environment variables influence the program behavior: +.br +HOME is used to find xorriso and mkisofs startup files. +.br +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 +\-volume date "uuid", \-volume_date "all_file_dates", +and it sets \-boot_image "any" "gpt_disk_guid=" to "volume_date_uuid". +Startup files and program options can override the effect of SOURCE_DATE_EPOCH. +.br +.SS .SH SEE ALSO .TP For the mkisofs emulation of xorriso diff --git a/xorriso/xorriso.info b/xorriso/xorriso.info index 60f95175..fb3ed21b 100644 --- a/xorriso/xorriso.info +++ b/xorriso/xorriso.info @@ -33,6 +33,7 @@ images with Rock Ridge extensions. * Commands:: Reference of commands * Examples:: Examples * Files:: Files +* Environ:: Environment * Seealso:: See also * Bugreport:: Reporting bugs * Legal:: Author, Copyright, Credits @@ -2399,10 +2400,17 @@ according to the setting of command -acl. "m" time when volume was last modified. "x" time when the information in the volume expires. "f" time since when the volume is effectively valid. - "uuid" sets a timestring that overrides "c" and "m" times - literally. It must consist of 16 decimal digits which form - YYYYMMDDhhmmsscc, with YYYY between 1970 and 2999. Time zone is - GMT. It is supposed to match this GRUB line: + "all_file_dates" sets mtime, atime, and ctime of all files and + directories to the given time. This action stays delayed until + actual ISO production begins. Up to then it can be revoked by + "all_file_dates" with empty timestring. + The timestamps of the El Torito boot catalog file get refreshed + when the ISO is produced. They can be influenced by "uuid". + "uuid" sets a timestring that overrides "c" and "m" times literally + and sets the time of the El Torito boot catalog. It must consist + of 16 decimal digits which form YYYYMMDDhhmmsscc, with YYYY between + 1970 and 2999. Time zone is GMT. It is supposed to match this GRUB + line: search --fs-uuid --set YYYY-MM-DD-hh-mm-ss-cc E.g. 2010040711405800 is 7 Apr 2010 11:40:58 (+0 centiseconds). Timestrings for the other types may be given as with command @@ -3486,6 +3494,10 @@ File: xorriso.info, Node: Inquiry, Next: Navigate, Prev: DialogCtl, Up: Comm boot facilities. Modes *cmd* and *as_mkisofs* work like with command -report_el_torito. See above. + With mode *gpt_disk_guid* print the GPT disk GUID of the loaded ISO + in RFC 4122 text format to result channel. It is not considered an + error if no GPT is present. In this case nothing is printed to + result channel. With mode *gpt_crc_of:*disk_path read up to 32 KiB from the disk file with the path given after the colon. Compute the GPT compliant CRC number and print it to the result channel. The @@ -4997,7 +5009,7 @@ other -indev drives. See the human readable part of with mount option -o sbsector= or -s.  -File: xorriso.info, Node: Files, Next: Seealso, Prev: Examples, Up: Top +File: xorriso.info, Node: Files, Next: Environ, Prev: Examples, Up: Top 11 Files ******** @@ -5043,9 +5055,25 @@ The default setting of -check_media abort_file= is: /var/opt/xorriso/do_abort_check_media  -File: xorriso.info, Node: Seealso, Next: Bugreport, Prev: Files, Up: Top +File: xorriso.info, Node: Environ, Next: Seealso, Prev: Files, Up: Top -12 See also +12 Environ +********** + +The following environment variables influence the program behavior: +HOME is used to find xorriso and mkisofs startup files. +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 -volume date "uuid", +-volume_date "all_file_dates", and it sets -boot_image "any" +"gpt_disk_guid=" to "volume_date_uuid". Startup files and program +options can override the effect of SOURCE_DATE_EPOCH. + + +File: xorriso.info, Node: Seealso, Next: Bugreport, Prev: Environ, Up: Top + +13 See also *********** For the mkisofs emulation of 'xorriso' @@ -5070,7 +5098,7 @@ On FreeBSD some commands differ:  File: xorriso.info, Node: Bugreport, Next: Legal, Prev: Seealso, Up: Top -13 Reporting bugs +14 Reporting bugs ***************** To report bugs, request help, or suggest enhancements for 'xorriso', @@ -5086,16 +5114,16 @@ messages of 'xorriso', and the undesirable outcome of your program run.  File: xorriso.info, Node: Legal, Next: CommandIdx, Prev: Bugreport, Up: Top -14 Author, Copyright, Credits +15 Author, Copyright, Credits ***************************** -14.1 Author +15.1 Author =========== Thomas Schmitt for libburnia-project.org -14.2 Copyright +15.2 Copyright ============== Copyright (c) 2007 - 2016 Thomas Schmitt @@ -5104,7 +5132,7 @@ modified in sync with the technical properties of 'xorriso'. If you make use of the license to derive modified versions of 'xorriso' then you are entitled to modify this text under that same license. -14.3 Credits +15.3 Credits ============ 'xorriso' is in part based on work by Vreixo Formoso who provides @@ -5118,7 +5146,7 @@ years.  File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top -15 Alphabetic Command List +16 Alphabetic Command List ************************** [index] @@ -5126,7 +5154,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * # starts a comment line: Scripting. (line 156) * -abort_on controls abort on error: Exception. (line 27) -* -abstract_file sets abstract file name: SetWrite. (line 234) +* -abstract_file sets abstract file name: SetWrite. (line 241) * -acl controls handling of ACLs: Loading. (line 171) * -add inserts one or more paths: Insert. (line 44) * -add_plainly inserts one or more paths: Insert. (line 68) @@ -5135,13 +5163,13 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -append_partition adds arbitrary file after image end: Bootable. (line 391) * -application_id sets application id: SetWrite. (line 191) -* -application_use sets application use field: SetWrite. (line 256) +* -application_use sets application use field: SetWrite. (line 263) * -as emulates mkisofs or cdrecord: Emulation. (line 13) * -assert_volid rejects undesired images: Loading. (line 111) * -auto_charset learns character set from image: Loading. (line 123) * -backslash_codes enables backslash conversion: Scripting. (line 71) * -ban_stdio_write demands real drive: Loading. (line 316) -* -biblio_file sets biblio file name: SetWrite. (line 240) +* -biblio_file sets biblio file name: SetWrite. (line 247) * -blank erases media: Writing. (line 57) * -boot_image controls bootability: Bootable. (line 65) * -calm_drive reduces drive activity: Loading. (line 306) @@ -5160,7 +5188,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -chown sets ownership in ISO image: Manip. (line 43) * -chown_r sets ownership in ISO image: Manip. (line 47) * -clone copies ISO directory tree: Insert. (line 170) -* -close controls media closing: SetWrite. (line 391) +* -close controls media closing: SetWrite. (line 398) * -close_damaged closes damaged track and session: Writing. (line 164) * -close_filter_list bans filter registration: Filter. (line 50) * -commit writes pending ISO image: Writing. (line 27) @@ -5170,7 +5198,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -compare_r reports ISO/disk differences: Navigate. (line 140) * -compliance controls standard compliance: SetWrite. (line 56) * -concat copies ISO file content: Restore. (line 118) -* -copyright_file sets copyright file name: SetWrite. (line 229) +* -copyright_file sets copyright file name: SetWrite. (line 236) * -cpax copies files to disk: Restore. (line 100) * -cpr inserts like with cp -r: Insert. (line 149) * -cpx copies files to disk: Restore. (line 89) @@ -5189,11 +5217,11 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top (line 57) * -drive_class controls drive accessability: Loading. (line 73) * -du show directory size in ISO image: Navigate. (line 75) -* -dummy controls write simulation: SetWrite. (line 383) +* -dummy controls write simulation: SetWrite. (line 390) * -dus show directory size in ISO image: Navigate. (line 78) * -dusx show directory size on disk: Navigate. (line 85) * -dux show directory size on disk: Navigate. (line 81) -* -dvd_obs set write block size: SetWrite. (line 320) +* -dvd_obs set write block size: SetWrite. (line 327) * -early_stdio_test classifies stdio drives: Loading. (line 320) * -ecma119_map names w/o Rock Ridge, Joliet: Loading. (line 214) * -eject ejects drive tray: Writing. (line 50) @@ -5213,12 +5241,12 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -follow softlinks and mount points: SetInsert. (line 69) * -format formats media: Writing. (line 87) * -for_backup -acl,-xattr,-hardlinks,-md5: Loading. (line 210) -* -fs sets size of fifo: SetWrite. (line 386) +* -fs sets size of fifo: SetWrite. (line 393) * -getfacl shows ACL in ISO image: Navigate. (line 60) * -getfacl_r shows ACL in ISO image: Navigate. (line 66) * -getfattr shows xattr in ISO image: Navigate. (line 69) * -getfattr_r shows xattr in ISO image: Navigate. (line 72) -* -gid sets global ownership: SetWrite. (line 277) +* -gid sets global ownership: SetWrite. (line 284) * -grow_blindly overides next writeable address: AqDrive. (line 60) * -hardlinks controls handling of hard links: Loading. (line 134) * -help prints help text: Scripting. (line 19) @@ -5256,7 +5284,7 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -mark sets synchronizing message: Frontend. (line 23) * -md5 controls handling of MD5 sums: Loading. (line 182) * -mkdir creates ISO directory: Insert. (line 162) -* -modesty_on_drive keep drive buffer hungry: SetWrite. (line 326) +* -modesty_on_drive keep drive buffer hungry: SetWrite. (line 333) * -mount issues mount command for ISO session: Restore. (line 146) * -mount_cmd composes mount command line: Inquiry. (line 49) * -mount_cmd controls mount command: Inquiry. (line 64) @@ -5272,16 +5300,16 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -options_from_file reads commands from file: Scripting. (line 12) * -osirrox enables ISO-to-disk copying: Restore. (line 18) * -outdev acquires a drive for output: AqDrive. (line 29) -* -out_charset sets output character set: SetWrite. (line 269) +* -out_charset sets output character set: SetWrite. (line 276) * -overwrite enables overwriting in ISO: SetInsert. (line 131) * -pacifier controls pacifier text form: Emulation. (line 166) -* -padding sets amount or mode of image padding: SetWrite. (line 414) +* -padding sets amount or mode of image padding: SetWrite. (line 421) * -page set terminal geometry: DialogCtl. (line 18) * -paste_in copies file into disk file: Restore. (line 114) * -pathspecs sets meaning of = with -add: SetInsert. (line 115) * -path_list inserts paths from disk file: Insert. (line 81) * -pkt_output consolidates text output: Frontend. (line 7) -* -preparer_id sets preparer id: SetWrite. (line 245) +* -preparer_id sets preparer id: SetWrite. (line 252) * -print prints result text line: Scripting. (line 102) * -print_info prints message text line: Scripting. (line 104) * -print_mark prints synchronizing text line: Scripting. (line 106) @@ -5333,36 +5361,36 @@ File: xorriso.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top * -signal_handling controls handling of system signals: Exception. (line 66) * -sleep waits for a given time span: Scripting. (line 113) -* -speed set write speed: SetWrite. (line 291) +* -speed set write speed: SetWrite. (line 298) * -split_size enables large file splitting: SetInsert. (line 143) * -status shows current settings: Scripting. (line 44) * -status_history_max curbs -status history: Scripting. (line 52) -* -stdio_sync controls stdio buffer: SetWrite. (line 376) -* -stream_recording controls defect management: SetWrite. (line 309) +* -stdio_sync controls stdio buffer: SetWrite. (line 383) +* -stream_recording controls defect management: SetWrite. (line 316) * -system_id sets system id: SetWrite. (line 199) * -tell_media_space reports free space: Inquiry. (line 97) * -temp_mem_limit curbs memory consumption: Scripting. (line 96) * -toc shows list of sessions: Inquiry. (line 27) * -toc_of shows list of sessions: Inquiry. (line 41) -* -uid sets global ownership: SetWrite. (line 274) +* -uid sets global ownership: SetWrite. (line 281) * -update inserts path if different: Insert. (line 100) * -update_l inserts paths if different: Insert. (line 120) * -update_r inserts paths if different: Insert. (line 110) -* -use_immed_bit controls use of Immed bit: SetWrite. (line 364) +* -use_immed_bit controls use of Immed bit: SetWrite. (line 371) * -use_readline enables readline for dialog: DialogCtl. (line 26) * -version prints help text: Scripting. (line 22) * -volid sets volume id: SetWrite. (line 162) * -volset_id sets volume set id: SetWrite. (line 182) * -volume_date sets volume timestamp: SetWrite. (line 205) -* -write_type chooses TAO or SAO/DAO: SetWrite. (line 407) +* -write_type chooses TAO or SAO/DAO: SetWrite. (line 414) * -x enables automatic execution order of arguments: ArgSort. (line 16) * -xattr controls handling of xattr (EA): Loading. (line 178) -* -zisofs controls zisofs production: SetWrite. (line 280) +* -zisofs controls zisofs production: SetWrite. (line 287)  File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top -16 Alphabetic List of Concepts and Objects +17 Alphabetic List of Concepts and Objects ****************************************** [index] @@ -5387,14 +5415,14 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Backup, enable features, -for_backup: Loading. (line 210) * Backup, scdbackup checksum tag, -scdbackup: Emulation. (line 179) * Blank media, _definition: Media. (line 29) -* Blank, format, Immed bit, -use_immed_bit: SetWrite. (line 364) +* Blank, format, Immed bit, -use_immed_bit: SetWrite. (line 371) * Blind growing, _definition: Methods. (line 41) * Bootability, control, -boot_image: Bootable. (line 65) * Bugs, reporting: Bugreport. (line 6) * cdrecord, Emulation: Emulation. (line 120) * Character Set, for input, -in_charset: Loading. (line 118) * Character Set, for input/output, -charset: Charset. (line 54) -* Character Set, for output, -out_charset: SetWrite. (line 269) +* Character Set, for output, -out_charset: SetWrite. (line 276) * Character set, learn from image, -auto_charset: Loading. (line 123) * Character Set, of terminal, -local_charset: Charset. (line 57) * Character Set, _definition: Charset. (line 6) @@ -5456,13 +5484,13 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Filter, show chain, -show_stream: Navigate. (line 148) * Filter, show chains of tree, -show_stream_r: Navigate. (line 161) * Filter, unregister, -unregister_filter: Filter. (line 47) -* Filter, zisofs parameters, -zisofs: SetWrite. (line 280) +* Filter, zisofs parameters, -zisofs: SetWrite. (line 287) * Filter, _definition: Filter. (line 6) * Frontend program, start at pipes, -launch_frontend: Frontend. (line 141) * GPT, control GUID, -boot_image gpt_disk_guid=: Bootable. (line 210) * GPT, _definition: Extras. (line 39) -* Group, global in ISO image, -gid: SetWrite. (line 277) +* Group, global in ISO image, -gid: SetWrite. (line 284) * Group, in ISO image, -chgrp: Manip. (line 49) * Group, in ISO image, -chgrp_r: Manip. (line 53) * Growing, _definition: Methods. (line 20) @@ -5476,13 +5504,13 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Image, discard pending changes, -rollback: Writing. (line 9) * Image, filesystem to load, -read_fs: Loading. (line 102) * Image, override change status, -changes_pending: Writing. (line 12) -* Image, set abstract file name, -abstract_file: SetWrite. (line 234) +* Image, set abstract file name, -abstract_file: SetWrite. (line 241) * Image, set application id, -application_id: SetWrite. (line 191) * Image, set application iuse field, -application_use: SetWrite. - (line 256) -* Image, set biblio file name, -biblio_file: SetWrite. (line 240) -* Image, set copyright file name, -copyright_file: SetWrite. (line 229) -* Image, set preparer id, -preparer_id: SetWrite. (line 245) + (line 263) +* Image, set biblio file name, -biblio_file: SetWrite. (line 247) +* Image, set copyright file name, -copyright_file: SetWrite. (line 236) +* Image, set preparer id, -preparer_id: SetWrite. (line 252) * Image, set publisher id, -publisher: SetWrite. (line 186) * Image, set system id, -system_id: SetWrite. (line 199) * Image, set volume id, -volid: SetWrite. (line 162) @@ -5556,7 +5584,7 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Next writeable address, -grow_blindly: AqDrive. (line 60) * Output Character Set, _definition: Charset. (line 26) * Overwriteable media, _definition: Media. (line 14) -* Ownership, global in ISO image, -uid: SetWrite. (line 274) +* Ownership, global in ISO image, -uid: SetWrite. (line 281) * Ownership, in ISO image, -chown: Manip. (line 43) * Ownership, in ISO image, -chown_r: Manip. (line 47) * Partition offset, _definition: Bootable. (line 286) @@ -5645,26 +5673,26 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Verify, file checksum, -check_md5: Verify. (line 164) * Verify, file tree checksums, -check_md5_r: Verify. (line 178) * Verify, preset -check_media, -check_media_defaults: Verify. (line 40) -* Write, block size, -dvd_obs: SetWrite. (line 320) +* Write, block size, -dvd_obs: SetWrite. (line 327) * Write, bootability, -boot_image: Bootable. (line 65) -* Write, buffer syncing, -stdio_sync: SetWrite. (line 376) -* Write, close media, -close: SetWrite. (line 391) +* Write, buffer syncing, -stdio_sync: SetWrite. (line 383) +* Write, close media, -close: SetWrite. (line 398) * Write, compliance to specs, -compliance: SetWrite. (line 56) -* Write, defect management, -stream_recording: SetWrite. (line 309) +* Write, defect management, -stream_recording: SetWrite. (line 316) * Write, disable Rock Ridge, -rockridge: SetWrite. (line 51) -* Write, drive buffer, -modesty_on_drive: SetWrite. (line 326) +* Write, drive buffer, -modesty_on_drive: SetWrite. (line 333) * Write, enable HFS+, -hfsplus: SetWrite. (line 14) * Write, enable Joliet, -joliet: SetWrite. (line 10) -* Write, fifo size, -fs: SetWrite. (line 386) +* Write, fifo size, -fs: SetWrite. (line 393) * Write, free space, -tell_media_space: Inquiry. (line 97) * Write, log problematic disk files, -errfile_log: Scripting. (line 116) * Write, log written sessions, -session_log: Scripting. (line 134) -* Write, padding image, -padding: SetWrite. (line 414) +* Write, padding image, -padding: SetWrite. (line 421) * Write, pending ISO image, -commit: Writing. (line 27) * Write, predict image size, -print_size: Inquiry. (line 85) -* Write, set speed, -speed: SetWrite. (line 291) -* Write, simulation, -dummy: SetWrite. (line 383) -* Write, TAO or SAO/DAO, -write_type: SetWrite. (line 407) +* Write, set speed, -speed: SetWrite. (line 298) +* Write, simulation, -dummy: SetWrite. (line 390) +* Write, TAO or SAO/DAO, -write_type: SetWrite. (line 414) * xattr, control handling, -xattr: Loading. (line 178) * xattr, set in ISO image, -setfattr: Manip. (line 103) * xattr, set in ISO image, -setfattr_list: Manip. (line 117) @@ -5677,59 +5705,60 @@ File: xorriso.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top  Tag Table: Node: Top415 -Node: Overview1369 -Node: Model3406 -Node: Media6310 -Node: Methods8997 -Node: Drives11583 -Node: Extras15525 -Node: Processing19993 -Node: Dialog23628 -Node: Commands25317 -Node: ArgSort26994 -Node: AqDrive28488 -Node: Loading32602 -Node: Insert52709 -Node: SetInsert63293 -Node: Manip72612 -Node: CmdFind82571 -Node: Filter100874 -Node: Writing105496 -Node: SetWrite115652 -Node: Bootable139799 -Node: Jigdo164535 -Node: Charset168794 -Node: Exception172123 -Node: DialogCtl178252 -Node: Inquiry180854 -Node: Navigate189406 -Node: Verify197701 -Node: Restore207579 -Node: Emulation216192 -Node: Scripting226651 -Node: Frontend234434 -Node: Examples244060 -Node: ExDevices245238 -Node: ExCreate245899 -Node: ExDialog247199 -Node: ExGrowing248470 -Node: ExModifying249279 -Node: ExBootable249789 -Node: ExCharset250344 -Node: ExPseudo251240 -Node: ExCdrecord252167 -Node: ExMkisofs252487 -Node: ExGrowisofs253844 -Node: ExException254998 -Node: ExTime255456 -Node: ExIncBackup255914 -Node: ExRestore259940 -Node: ExRecovery260886 -Node: Files261458 -Node: Seealso262792 -Node: Bugreport263507 -Node: Legal264098 -Node: CommandIdx265110 -Node: ConceptIdx282298 +Node: Overview1405 +Node: Model3442 +Node: Media6346 +Node: Methods9033 +Node: Drives11619 +Node: Extras15561 +Node: Processing20029 +Node: Dialog23664 +Node: Commands25353 +Node: ArgSort27030 +Node: AqDrive28524 +Node: Loading32638 +Node: Insert52745 +Node: SetInsert63329 +Node: Manip72648 +Node: CmdFind82607 +Node: Filter100910 +Node: Writing105532 +Node: SetWrite115688 +Node: Bootable140273 +Node: Jigdo165009 +Node: Charset169268 +Node: Exception172597 +Node: DialogCtl178726 +Node: Inquiry181328 +Node: Navigate190116 +Node: Verify198411 +Node: Restore208289 +Node: Emulation216902 +Node: Scripting227361 +Node: Frontend235144 +Node: Examples244770 +Node: ExDevices245948 +Node: ExCreate246609 +Node: ExDialog247909 +Node: ExGrowing249180 +Node: ExModifying249989 +Node: ExBootable250499 +Node: ExCharset251054 +Node: ExPseudo251950 +Node: ExCdrecord252877 +Node: ExMkisofs253197 +Node: ExGrowisofs254554 +Node: ExException255708 +Node: ExTime256166 +Node: ExIncBackup256624 +Node: ExRestore260650 +Node: ExRecovery261596 +Node: Files262168 +Node: Environ263502 +Node: Seealso264194 +Node: Bugreport264911 +Node: Legal265502 +Node: CommandIdx266514 +Node: ConceptIdx283702  End Tag Table diff --git a/xorriso/xorriso.texi b/xorriso/xorriso.texi index 0179159e..91b93995 100644 --- a/xorriso/xorriso.texi +++ b/xorriso/xorriso.texi @@ -50,7 +50,7 @@ @c man .\" First parameter, NAME, should be all caps @c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection @c man .\" other parameters are allowed: see man(7), man(1) -@c man .TH XORRISO 1 "Version 1.4.5, Aug 14, 2016" +@c man .TH XORRISO 1 "Version 1.4.5, Aug 15, 2016" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -105,6 +105,7 @@ with Rock Ridge extensions. * Commands:: Reference of commands * Examples:: Examples * Files:: Files +* Environ:: Environment * Seealso:: See also * Bugreport:: Reporting bugs * Legal:: Author, Copyright, Credits @@ -3304,7 +3305,16 @@ Available types are: @* "f" time since when the volume is effectively valid. @* -"uuid" sets a timestring that overrides "c" and "m" times literally. +"all_file_dates" sets mtime, atime, and ctime of all files and +directories to the given time. +This action stays delayed until actual ISO production begins. +Up to then it can be revoked by "all_file_dates" with empty timestring. +@* +The timestamps of the El Torito boot catalog file get refreshed when the ISO +is produced. They can be influenced by "uuid". +@* +"uuid" sets a timestring that overrides "c" and "m" times literally and sets +the time of the El Torito boot catalog. It must consist of 16 decimal digits which form YYYYMMDDhhmmsscc, with YYYY between 1970 and 2999. Time zone is GMT. It is supposed to match this GRUB line: @@ -4794,6 +4804,10 @@ mentioned boot facilities. Modes @strong{cmd} and @strong{as_mkisofs} work like with command -report_el_torito. See above. @* +With mode @strong{gpt_disk_guid} print the GPT disk GUID of the loaded ISO +in RFC 4122 text format to result channel. It is not considered an error if +no GPT is present. In this case nothing is printed to result channel. +@* With mode @strong{gpt_crc_of:}disk_path read up to 32 KiB from the disk file with the path given after the colon. Compute the GPT compliant CRC number and print it to the result channel. The number is shown like "0x690fd979". @@ -6929,7 +6943,7 @@ This can be repeated several times, if necessary with -eject or with other addresses which can be used on "$HOME"/dvd_copy with mount option -o sbsector= or -s. @c man .SH FILES -@node Files, Seealso, Examples, Top +@node Files, Environ, Examples, Top @chapter Files @c man .SS @c man .B Program alias names: @@ -6978,6 +6992,25 @@ The default setting of -check_media abort_file= is: @sp 1 /var/opt/xorriso/do_abort_check_media @* +@sp 1 +@c man .SS +@c man .SH ENVIRONMENT +@node Environ, Seealso, Files, Top +@chapter Environ +The following environment variables influence the program behavior: +@* +HOME is used to find xorriso and mkisofs startup files. +@* +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 +-volume date "uuid", -volume_date "all_file_dates", +and it sets -boot_image "any" "gpt_disk_guid=" to "volume_date_uuid". +Startup files and program options can override the effect of SOURCE_DATE_EPOCH. +@* +@sp 1 +@c man .SS @c man .SH SEE ALSO @c man .TP @c man For the mkisofs emulation of xorriso @@ -7016,7 +7049,7 @@ The default setting of -check_media abort_file= is: @c man .BR setextattr(8), @c man .BR md5(1) @c man-ignore-lines begin -@node Seealso, Bugreport, Files, Top +@node Seealso, Bugreport, Environ, Top @chapter See also @table @asis @item For the mkisofs emulation of @command{xorriso} diff --git a/xorriso/xorriso_timestamp.h b/xorriso/xorriso_timestamp.h index 5bcb9003..8a1b15a6 100644 --- a/xorriso/xorriso_timestamp.h +++ b/xorriso/xorriso_timestamp.h @@ -1 +1 @@ -#define Xorriso_timestamP "2016.08.16.131434" +#define Xorriso_timestamP "2016.08.16.131907" diff --git a/xorriso/xorrisofs.1 b/xorriso/xorrisofs.1 index 1703d37a..3ebc4a75 100644 --- a/xorriso/xorrisofs.1 +++ b/xorriso/xorrisofs.1 @@ -9,7 +9,7 @@ .\" First parameter, NAME, should be all caps .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection .\" other parameters are allowed: see man(7), man(1) -.TH XORRISOFS 1 "Version 1.4.5, Aug 14, 2016" +.TH XORRISOFS 1 "Version 1.4.5, Aug 15, 2016" .\" Please adjust this date whenever revising the manpage. .\" .\" Some roff macros, for reference: @@ -565,11 +565,9 @@ Valid timestring formats are: 'Nov 8 14:51:13 CET 2007', 110814512007.13, 2007110814511300. See also \-\-modification\-date= and man xorriso, Examples of input timestrings. .br -This action stays delayed until mkisofs emulation ends. Up to then it can be -revoked by \-\-set_all_file_dates with empty timestring. -In any case files which get into the ISO after mkisofs emulation ended -will not be affected, unless another mkisofs emulation -applies \-\-set_all_file_date again. +This action stays delayed until actual ISO production begins. +Up to then it can be revoked by \-\-set_all_file_dates +with empty timestring. .br The timestamps of the El Torito boot catalog file get refreshed when the ISO is produced. They can be influenced by \-\-modification\-date=. @@ -2024,6 +2022,20 @@ The reader currently interprets the following NAME=VALUE pairs: .br Any other lines will be silently ignored. .br +.SH ENVIRONMENT +The following environment variables influence the program behavior: +.br +HOME is used to find xorriso and mkisofs startup files. +.br +MKISOFSRC may be used to point the program to a mkisofs startup file. +.br +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. +.SS .SH SEE ALSO .TP For generic xorriso command mode diff --git a/xorriso/xorrisofs.info b/xorriso/xorrisofs.info index 50c0058e..c908b909 100644 --- a/xorriso/xorrisofs.info +++ b/xorriso/xorrisofs.info @@ -27,6 +27,7 @@ xorrisofs - Emulation of ISO 9660 program mkisofs by program xorriso * Options:: Options * Examples:: Examples * Files:: Files +* Environ:: Environment * Seealso:: See also * Bugreport:: Reporting bugs * Legal:: Author, Copyright, Credits @@ -527,11 +528,9 @@ File: xorrisofs.info, Node: SetExtras, Next: SetHide, Prev: SetCompl, Up: Op Valid timestring formats are: 'Nov 8 14:51:13 CET 2007', 110814512007.13, 2007110814511300. See also --modification-date= and man xorriso, Examples of input timestrings. - This action stays delayed until mkisofs emulation ends. Up to then - it can be revoked by --set_all_file_dates with empty timestring. - In any case files which get into the ISO after mkisofs emulation - ended will not be affected, unless another mkisofs emulation - applies --set_all_file_date again. + This action stays delayed until actual ISO production begins. Up + to then it can be revoked by --set_all_file_dates with empty + timestring. The timestamps of the El Torito boot catalog file get refreshed when the ISO is produced. They can be influenced by --modification-date=. @@ -1734,7 +1733,7 @@ xorrisofs options:" \ -report_el_torito as_mkisofs  -File: xorrisofs.info, Node: Files, Next: Seealso, Prev: Examples, Up: Top +File: xorrisofs.info, Node: Files, Next: Environ, Prev: Examples, Up: Top 7 Files ******* @@ -1775,9 +1774,25 @@ VOLS default for -volset Any other lines will be silently ignored.  -File: xorrisofs.info, Node: Seealso, Next: Bugreport, Prev: Files, Up: Top +File: xorrisofs.info, Node: Environ, Next: Seealso, Prev: Files, Up: Top -8 See also +8 Environ +********* + +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, and -set_all_file_dates. Startup files and program +options can override the effect of SOURCE_DATE_EPOCH. + + +File: xorrisofs.info, Node: Seealso, Next: Bugreport, Prev: Environ, Up: Top + +9 See also ********** For generic 'xorriso' command mode @@ -1800,8 +1815,8 @@ On FreeBSD some commands differ:  File: xorrisofs.info, Node: Bugreport, Next: Legal, Prev: Seealso, Up: Top -9 Reporting bugs -**************** +10 Reporting bugs +***************** To report bugs, request help, or suggest enhancements for 'xorriso', please send electronic mail to the public list . @@ -1816,16 +1831,16 @@ messages of 'xorriso', and the undesirable outcome of your program run.  File: xorrisofs.info, Node: Legal, Next: CommandIdx, Prev: Bugreport, Up: Top -10 Author, Copyright, Credits +11 Author, Copyright, Credits ***************************** -10.1 Author +11.1 Author =========== Thomas Schmitt for libburnia-project.org -10.2 Copyright +11.2 Copyright ============== Copyright (c) 2011 - 2016 Thomas Schmitt @@ -1834,7 +1849,7 @@ modified in sync with the technical properties of xorriso. If you make use of the license to derive modified versions of xorriso then you are entitled to modify this text under that same license. -10.3 Credits +11.3 Credits ============ 'xorrisofs' is in part based on work by Vreixo Formoso who provides @@ -1847,27 +1862,27 @@ years.  File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: Top -11 Alphabetic Command List +12 Alphabetic Command List ************************** [index] * Menu: -* --acl Recording of ACLs: SetExtras. (line 95) +* --acl Recording of ACLs: SetExtras. (line 93) * --application_use set Application Use field: ImageId. (line 79) * --boot-catalog-hide Hide El Torito boot catalog: Bootable. (line 101) * --efi-boot El Torito EFI boot image: Bootable. (line 53) * --embedded-boot Fill System Area e.g. by MBR: SystemArea. (line 75) * --emul-toc enable table-of-content emulation: SetProduct. (line 33) -* --for_backup Enable backup fidelity: SetExtras. (line 92) +* --for_backup Enable backup fidelity: SetExtras. (line 90) * --gpt_disk_guid GPT GUID: SystemArea. (line 216) * --grub2-boot-info Patch El Torito boot image: Bootable. (line 89) * --grub2-mbr Install modern GRUB2 MBR: SystemArea. (line 77) * --grub2-sparc-core SUN SPARC core file: SystemArea. (line 271) -* --hardlinks Recording of hardlink relations: SetExtras. (line 116) +* --hardlinks Recording of hardlink relations: SetExtras. (line 114) * --mbr-force-bootable Enforce MBR bootable/active flag: SystemArea. (line 127) -* --md5 Recording of MD5 checksums: SetExtras. (line 108) +* --md5 Recording of MD5 checksums: SetExtras. (line 106) * --modification-date set ISO image timestamps: ImageId. (line 70) * --no-emul-toc no table-of-content emulation: SetProduct. (line 41) * --norock disable Rock Ridge production: SetExtras. (line 28) @@ -1883,7 +1898,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 123) * --quoted_path_list read pathspecs from disk file: SetInsert. (line 12) -* --scdbackup_tag Recording of MD5 checksum: SetExtras. (line 124) +* --scdbackup_tag Recording of MD5 checksum: SetExtras. (line 122) * --set_all_file_dates set all file timestamps: SetExtras. (line 35) * --sort-weight set block address sorting weight: SetProduct. (line 45) * --sort-weight-list set block address sorting weight: SetProduct. @@ -1892,7 +1907,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 76) * --stdio_sync control forced output to disk files: SetProduct. (line 23) -* --xattr Recording of xattr: SetExtras. (line 101) +* --xattr Recording of xattr: SetExtras. (line 99) * -A set Application Id: ImageId. (line 34) * -abstract set Abstract File path: ImageId. (line 57) * -allow-lowercase lowercase in ISO file names: SetCompl. (line 42) @@ -1919,12 +1934,12 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -chrp-boot CHRP partition: SystemArea. (line 238) * -chrp-boot-part CHRP partition: SystemArea. (line 229) * -copyright set Copyright File path: ImageId. (line 66) -* -D allow deep directory hierachies: SetExtras. (line 60) +* -D allow deep directory hierachies: SetExtras. (line 58) * -d omit trailing dot in ISO file names: SetCompl. (line 50) * -dev set path for loading existing ISO image: Loading. (line 23) * -dir-mode permissions for all directories: SetProduct. (line 79) * -disable-deep-relocation allow deep directory hierachies: SetExtras. - (line 72) + (line 70) * -disallow_dir_id_ext enforce ISO level 1 directory names: SetCompl. (line 23) * -e El Torito EFI boot image: Bootable. (line 47) @@ -1939,7 +1954,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -exclude-list exclude disk files from inserting: SetInsert. (line 44) * -f follow symbolic links on disk: SetInsert. (line 22) * -file-mode permissions for all data files: SetProduct. (line 84) -* -file_name_limit curbs length of file names: SetExtras. (line 49) +* -file_name_limit curbs length of file names: SetExtras. (line 47) * -follow-links follow symbolic links on disk: SetInsert. (line 26) * -full-iso9660-filenames allow 31 characters in ISO file names: SetCompl. (line 59) @@ -1950,15 +1965,15 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T (line 29) * -hard-disk-boot El Torito boot image emulation: Bootable. (line 63) * -help list supported options: Miscellaneous. (line 21) -* -hfs-bless HFS+ blessing ppc_bootdir: SetExtras. (line 201) -* -hfs-bless-by HFS+ blessing: SetExtras. (line 191) -* -hfsplus enable production of HFS+ partition: SetExtras. (line 150) -* -hfsplus-block-size set APM block size: SetExtras. (line 181) +* -hfs-bless HFS+ blessing ppc_bootdir: SetExtras. (line 199) +* -hfs-bless-by HFS+ blessing: SetExtras. (line 189) +* -hfsplus enable production of HFS+ partition: SetExtras. (line 148) +* -hfsplus-block-size set APM block size: SetExtras. (line 179) * -hfsplus-block-size set HFS+ allocation block size: SetExtras. - (line 177) + (line 175) * -hfsplus-file-creator-type HFS+ creator-type attribute: SetExtras. - (line 188) -* -hfsplus-serial-no set HFS+ serial number: SetExtras. (line 173) + (line 186) +* -hfsplus-serial-no set HFS+ serial number: SetExtras. (line 171) * -hide keep matching files invisible in ISO tree: SetHide. (line 8) * -hide-hfsplus keep matching files invisible in HFS+ tree: SetHide. (line 25) @@ -1971,7 +1986,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -hide-list keep matching files invisible in ISO tree: SetHide. (line 15) * -hide-rr-moved set deep directory relocation target: SetExtras. - (line 90) + (line 88) * -hppa-bootloader HP-PA bootloader file: SystemArea. (line 283) * -hppa-cmdline HP-PA PALO command line: SystemArea. (line 277) * -hppa-hdrversion HP-PA PALO header version: SystemArea. (line 291) @@ -1986,7 +2001,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -isohybrid-gpt-basdat Mark boot image in GPT: SystemArea. (line 94) * -isohybrid-gpt-hfsplus Mark boot image in GPT: SystemArea. (line 104) * -isohybrid-mbr Install ISOLINUX isohybrid MBR: SystemArea. (line 83) -* -J enable production of Joliet directory tree: SetExtras. (line 133) +* -J enable production of Joliet directory tree: SetExtras. (line 131) * -jigdo-exclude add exclusion pattern for .md5: Jigdo. (line 55) * -jigdo-force-md5 add check pattern for .md5: Jigdo. (line 49) * -jigdo-jigdo set name of .jigdo file: Jigdo. (line 38) @@ -1996,9 +2011,9 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -jigdo-template-compress choose compression algorithm: Jigdo. (line 69) * -joliet enable production of Joliet directory tree: SetExtras. - (line 137) -* -joliet-long allow longer Joliet names: SetExtras. (line 139) -* -joliet-utf16 use UTF-16 with Joliet names: SetExtras. (line 145) + (line 135) +* -joliet-long allow longer Joliet names: SetExtras. (line 137) +* -joliet-utf16 use UTF-16 with Joliet names: SetExtras. (line 143) * -l allow 31 characters in ISO file names: SetCompl. (line 56) * -log-file redirect stderr messages: Miscellaneous. (line 33) * -m exclude disk files from inserting: SetInsert. (line 31) @@ -2047,7 +2062,7 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T * -rock Rock Ridge (is enabled by default): SetExtras. (line 13) * -root redirect ISO root directory: SetInsert. (line 55) * -rr_reloc_dir set deep directory relocation target: SetExtras. - (line 74) + (line 72) * -sparc-boot SUN SPARC boot images: SystemArea. (line 267) * -sparc-label SUN Disk Label text: SystemArea. (line 269) * -sysid set System Id: ImageId. (line 43) @@ -2069,19 +2084,19 @@ File: xorrisofs.info, Node: CommandIdx, Next: ConceptIdx, Prev: Legal, Up: T  File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top -12 Alphabetic List of Concepts and Objects +13 Alphabetic List of Concepts and Objects ****************************************** [index] * Menu: * Abstract File, set path, -abstract: ImageId. (line 57) -* ACL, record and load, --acl: SetExtras. (line 95) +* ACL, record and load, --acl: SetExtras. (line 93) * APM, mark appended partitions, -appended_part_as_apm: SystemArea. (line 200) * APM, _definition: SystemArea. (line 16) * Application Id, set, -A, -appid: ImageId. (line 34) -* Backup, enable fidelity, --for_backup: SetExtras. (line 92) +* Backup, enable fidelity, --for_backup: SetExtras. (line 90) * Biblio File, set path, -biblio: ImageId. (line 62) * Block address, set sorting weight, --sort-weight: SetProduct. (line 45) @@ -2152,11 +2167,11 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Character sets, _definition: Charset. (line 6) * Copyright File, set path, -copyright: ImageId. (line 66) * Deep directories, allow, -D, -disable-deep-relocation: SetExtras. - (line 60) + (line 58) * Deep directories, relocation target, -hide-rr-moved: SetExtras. - (line 90) + (line 88) * Deep directories, relocation target, -rr_reloc_dir: SetExtras. - (line 74) + (line 72) * Disk files, exclude, -hide-list: SetInsert. (line 44) * Disk files, exclude, -m, -exclude, -x, -old-exclude: SetInsert. (line 31) @@ -2165,20 +2180,20 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * ECMA-119, _definition: Standards. (line 6) * El Torito, _definition: Bootable. (line 13) * Examples: Examples. (line 6) -* File names, curb length, -file_name_limit: SetExtras. (line 49) +* File names, curb length, -file_name_limit: SetExtras. (line 47) * File timestamps, set all, --set_all_file_dates: SetExtras. (line 35) * Forced output, control, --stdio_sync: SetProduct. (line 23) * GPT, mark appended partitions, -appended_part_as_gpt: SystemArea. (line 194) * GPT, _definition: SystemArea. (line 13) -* HFS+, enables production: SetExtras. (line 150) -* HFS+, issue blessing ppc_bootdir, -hfs-bless: SetExtras. (line 201) -* HFS+, issue blessing, -hfs-bless-by: SetExtras. (line 191) -* HFS+, set allocation block size: SetExtras. (line 177) -* HFS+, set APM block size: SetExtras. (line 181) +* HFS+, enables production: SetExtras. (line 148) +* HFS+, issue blessing ppc_bootdir, -hfs-bless: SetExtras. (line 199) +* HFS+, issue blessing, -hfs-bless-by: SetExtras. (line 189) +* HFS+, set allocation block size: SetExtras. (line 175) +* HFS+, set APM block size: SetExtras. (line 179) * HFS+, set creator and type of file, -hfsplus-file-creator-type: SetExtras. - (line 188) -* HFS+, set serial number: SetExtras. (line 173) + (line 186) +* HFS+, set serial number: SetExtras. (line 171) * HFS+, _definition: Standards. (line 32) * Hiding, from HFS+, -hide-hfsplus: SetHide. (line 25) * Hiding, from HFS+, -hide-hfsplus-list: SetHide. (line 28) @@ -2235,16 +2250,16 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * Jigdo Template Extraction, -jigdo-template-compress: Jigdo. (line 69) * Jigdo Template Extraction, -md5-list: Jigdo. (line 67) * Jigdo Template Extraction, _definition: Jigdo. (line 6) -* Joliet, allows longer names, -joliet-long: SetExtras. (line 139) -* Joliet, enable, -J, -joliet: SetExtras. (line 133) +* Joliet, allows longer names, -joliet-long: SetExtras. (line 137) +* Joliet, enable, -J, -joliet: SetExtras. (line 131) * Joliet, _definition: Standards. (line 21) * Links, follow on disk, -f, -follow-links: SetInsert. (line 22) -* Links, record and load hard links, --hardlinks: SetExtras. (line 116) +* Links, record and load hard links, --hardlinks: SetExtras. (line 114) * MBR, GPT, append partition, -append_partition: SystemArea. (line 174) * MBR, sectors per head, -partition_sec_hd: SystemArea. (line 146) * MBR, sectors per head, -partition_sec_hd <1>: SystemArea. (line 149) * MBR, _definition: SystemArea. (line 9) -* MD5, record and load, --md5: SetExtras. (line 108) +* MD5, record and load, --md5: SetExtras. (line 106) * Message output, increase frequency, -gui: Miscellaneous. (line 29) * Message output, redirect stderr, -log-file: Miscellaneous. (line 33) * Message output, suppress, -quiet: Miscellaneous. (line 25) @@ -2270,7 +2285,7 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top (line 16) * Rock Ridge, disable production, --norock: SetExtras. (line 28) * Rock Ridge, _definition: Standards. (line 14) -* scdbackup, record checksum tag, --scdbackup_tag: SetExtras. (line 124) +* scdbackup, record checksum tag, --scdbackup_tag: SetExtras. (line 122) * Session, select path, -M, -prev-session, -dev: Loading. (line 11) * Session, set load and write address, -C, -cdrecord-params: Loading. (line 25) @@ -2279,11 +2294,11 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top * System Id, set, -sysid: ImageId. (line 43) * Table-of-content, emulation off, --no-emul-toc: SetProduct. (line 41) * Table-of-content, emulation, --emul-toc: SetProduct. (line 33) -* UTF-16, for Joliet paths, -joliet-utf16: SetExtras. (line 145) +* UTF-16, for Joliet paths, -joliet-utf16: SetExtras. (line 143) * Verbosity, high, -v, -verbose: Miscellaneous. (line 38) * Volume Id, set, -V, -volid: ImageId. (line 13) * Volume Set Id, set, -volset: ImageId. (line 25) -* xattr, record and load, --xattr: SetExtras. (line 101) +* xattr, record and load, --xattr: SetExtras. (line 99) * xorriso, mkisofs emulation: Xorriso. (line 6) * xorriso, options: Options. (line 6) * zisofs file, enable recognition, -z, -transparent-compression: SetInsert. @@ -2293,36 +2308,37 @@ File: xorrisofs.info, Node: ConceptIdx, Prev: CommandIdx, Up: Top  Tag Table: Node: Top391 -Node: Overview1095 -Node: Standards1537 -Node: Insert3734 -Node: Xorriso5580 -Node: Options6726 -Node: Loading7453 -Node: SetInsert9753 -Node: SetProduct14162 -Node: SetCompl19338 -Node: SetExtras21930 -Node: SetHide32499 -Node: ImageId33803 -Node: Bootable38085 -Node: SystemArea43253 -Node: Charset59702 -Node: Jigdo60727 -Node: Miscellaneous65004 -Node: Examples66649 -Node: ExSimple67143 -Node: ExGraft67626 -Node: ExMkisofs68926 -Node: ExGrowisofs70192 -Node: ExIncBackup71382 -Node: ExIncBckAcc74543 -Node: ExBootable76232 -Node: Files80414 -Node: Seealso81509 -Node: Bugreport82158 -Node: Legal82749 -Node: CommandIdx83646 -Node: ConceptIdx99084 +Node: Overview1131 +Node: Standards1573 +Node: Insert3770 +Node: Xorriso5616 +Node: Options6762 +Node: Loading7489 +Node: SetInsert9789 +Node: SetProduct14198 +Node: SetCompl19374 +Node: SetExtras21966 +Node: SetHide32370 +Node: ImageId33674 +Node: Bootable37956 +Node: SystemArea43124 +Node: Charset59573 +Node: Jigdo60598 +Node: Miscellaneous64875 +Node: Examples66520 +Node: ExSimple67014 +Node: ExGraft67497 +Node: ExMkisofs68797 +Node: ExGrowisofs70063 +Node: ExIncBackup71253 +Node: ExIncBckAcc74414 +Node: ExBootable76103 +Node: Files80285 +Node: Environ81380 +Node: Seealso82082 +Node: Bugreport82733 +Node: Legal83326 +Node: CommandIdx84223 +Node: ConceptIdx99661  End Tag Table diff --git a/xorriso/xorrisofs.texi b/xorriso/xorrisofs.texi index 159c7dd4..7848e6cc 100644 --- a/xorriso/xorrisofs.texi +++ b/xorriso/xorrisofs.texi @@ -50,7 +50,7 @@ @c man .\" First parameter, NAME, should be all caps @c man .\" Second parameter, SECTION, should be 1-8, maybe w/ subsection @c man .\" other parameters are allowed: see man(7), man(1) -@c man .TH XORRISOFS 1 "Version 1.4.5, Aug 14, 2016" +@c man .TH XORRISOFS 1 "Version 1.4.5, Aug 15, 2016" @c man .\" Please adjust this date whenever revising the manpage. @c man .\" @c man .\" Some roff macros, for reference: @@ -99,6 +99,7 @@ xorrisofs - Emulation of ISO 9660 program mkisofs by program xorriso * Options:: Options * Examples:: Examples * Files:: Files +* Environ:: Environment * Seealso:: See also * Bugreport:: Reporting bugs * Legal:: Author, Copyright, Credits @@ -808,11 +809,9 @@ Valid timestring formats are: 'Nov 8 14:51:13 CET 2007', 110814512007.13, 2007110814511300. See also @minus{}@minus{}modification-date= and man xorriso, Examples of input timestrings. @* -This action stays delayed until mkisofs emulation ends. Up to then it can be -revoked by @minus{}@minus{}set_all_file_dates with empty timestring. -In any case files which get into the ISO after mkisofs emulation ended -will not be affected, unless another mkisofs emulation -applies @minus{}@minus{}set_all_file_date again. +This action stays delayed until actual ISO production begins. +Up to then it can be revoked by @minus{}@minus{}set_all_file_dates +with empty timestring. @* The timestamps of the El Torito boot catalog file get refreshed when the ISO is produced. They can be influenced by @minus{}@minus{}modification-date=. @@ -2577,7 +2576,7 @@ a proposal how to reproduce it, try: @* @sp 1 @c man .SH FILES -@node Files, Seealso, Examples, Top +@node Files, Environ, Examples, Top @chapter Files @c man .SS @c man .B Startup files: @@ -2632,6 +2631,23 @@ The reader currently interprets the following NAME=VALUE pairs: @sp 1 Any other lines will be silently ignored. @* +@sp 1 +@c man .SH ENVIRONMENT +@node Environ, Seealso, Files, Top +@chapter Environ +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, and --set_all_file_dates. +Startup files and program options can override the effect of SOURCE_DATE_EPOCH. +@c man .SS @c man .SH SEE ALSO @c man .TP @c man For generic xorriso command mode @@ -2668,7 +2684,7 @@ Any other lines will be silently ignored. @c man .BR setextattr(8), @c man .BR md5(1) @c man-ignore-lines begin -@node Seealso, Bugreport, Files, Top +@node Seealso, Bugreport, Environ, Top @chapter See also @table @asis @item For generic @command{xorriso} command mode