README.uzip 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136
  1. Overview
  2. ========
  3. uzip is a module for the extfs Virtual File System (VFS) in
  4. Midnight Commander. It allows browsing, extraction and
  5. modification of zip archives.
  6. uzip was written by Oskar Liljeblad. If you find a bug, or know
  7. of an improvement, please email me at osk@hem.passagen.se.
  8. License and Copyright
  9. =====================
  10. uzip is released under the terms of the GNU General Public License.
  11. uzip is copyright (C) 2000-2001 by Oskar Liljeblad.
  12. Requirements
  13. ============
  14. Info-Zip mode:
  15. Info-ZIP unzip 5.41 (for listing and extracting files)
  16. Info-ZIP zip 2.30 (for adding and deleting files)
  17. otherwise:
  18. any unzip
  19. any zip
  20. History
  21. =======
  22. 2001-08-07 Oskar Liljeblad <osk@hem.passagen.se>
  23. * Release 1.4.0.
  24. * Fixed so that files with filenames containing *, ?, [, ]
  25. and \\ can be extracted or added to zip archives etc. These
  26. characters has to be escaped once more, because Info-ZIP zip
  27. and unzip interprets them as wildcards (despite the fact that
  28. the shell already expands wildcards).
  29. 2001-03-01 Oskar Liljeblad <osk@hem.passagen.se>
  30. * Release 1.3.0.
  31. * Caching of files when listing archives has been fixed. (MC
  32. would list a directory twice in some cases.)
  33. * 'strict' is now used. (This is why global variables
  34. are now initialized using 'my'.)
  35. * Some code simplifications thanks to more understanding
  36. of perl :)
  37. * Minor documentation clarifications.
  38. 2001-02-21 Oskar Liljeblad <osk@hem.passagen.se>
  39. * Release 1.2.0.
  40. * The 'rmdir' extfs command of uzip was modified not to fail
  41. when deleting directories that doesn't exist. (A different/
  42. better solution would be to recreate the automaticly deleted
  43. directories, but that's slower and harder to implement.)
  44. Strangely, the zip man page does not mention this delete-
  45. empty-directories behavior.
  46. 2000-10-31 Oskar Liljeblad <osk@hem.passagen.se>
  47. * Release 1.1.0.
  48. * mczipfs_copyin: Fixed order of arguments.
  49. * safesystem, safeticks: Improved error handling.
  50. * mczipfs_copyout: Now allows error code 11, and redirects
  51. stderr to /dev/null.
  52. 2000-10-29 Oskar Liljeblad <osk@hem.passagen.se>
  53. * Release 1.0.1.
  54. * Fixed bug causing files with special permission not to
  55. be listed.
  56. 2000-10-29 Oskar Liljeblad <osk@hem.passagen.se>
  57. * Release 1.0.0: First version.
  58. Differencies between new (Perl) and old (sh/AWK) uzip
  59. =====================================================
  60. The script is written purely in Perl, which (hopefully) means
  61. faster execution and cleaner code.
  62. Listing is done only with either zipinfo or unzip,
  63. not both at the same time. Previously unzip would be used
  64. if the archive contained non-unix file listings (after
  65. zipinfo was run). Now there is an option to choose which
  66. one to use (zipinfo is the default and preferred). This
  67. should make listing of non-unix archives faster.
  68. Files appearing before their parent directories in the listings
  69. are now cached and printed later. This fixes a bug that would
  70. cause some directories to be listed twice.
  71. Temporary filenames are choosen better. That is, they are
  72. generated using tmpnam(3). Previously, hardcoded filenames
  73. (in the current directory) would be used.
  74. The error messages are much better. Errors are checked for
  75. (hopefully) all functions that can fail.
  76. The copyin command no longer makes a copy of the file before
  77. adding it. Instead it makes a temporary directory in which
  78. a symlink to the original file is placed. This should speed
  79. up addition considerably.
  80. The run command is supported.
  81. The theoretic commands "mklink" and "linkout" are supported.
  82. However, MC extfs doesn't support these so they are rather
  83. useless at the moment.
  84. Known problems and Unsupported features
  85. =======================================
  86. Files added to the archive get listed with a+x permissions in MC.
  87. This appears to be a problem with the MC extfs, and (probably) not uzip.
  88. (It is only temporary though. When restarting MC and reading the
  89. archive, the files will no longer be listed as executable.)
  90. Extracted files do not have the same modification/access date as
  91. in the archive. The same applies for permissions and ownership.
  92. Fortunately MC extfs will set these attributes based on the file
  93. listings.
  94. Interpretation of special information ("central-directory extra field")
  95. in zip archives. This is used to store information such as universal
  96. time and unix UID/GID on files.
  97. It would be nice if listing archives with symbolic links was faster.
  98. Unzip has to be executed once for each link. This is because the
  99. symbolic link file must be extracted in order to get the link
  100. destination.
  101. -