Sun, 20 Jan 2008 01:59:42 -0500
[svn] Fix various bugs in the recursive extraction.
First, 5.0 introduced a regression where it wouldn't find archives hidden
in subdirectories. So fix that.
Then recursive extraction would get confused if the archive was a ONE_ENTRY
and we decided to wrap it or just extract it here. Fix that too: the
extractor keeps track of where it thinks it's extracting to, and then the
handler will change that if necessary.
There are unit tests for all this.
I twiddled some other small thing while I was at it but now I forget what.
42 | 1 | dtrx Installation Documentation |
2 | =============================== | |
18
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
3 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
4 | Requirements |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
5 | ------------ |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
6 | |
42 | 7 | dtrx will work out of the box with Python_ 2.4 or greater. You can also |
8 | use Python 2.3 if you separately install the `subprocess module`_. | |
18
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
9 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
10 | .. _Python: http://www.python.org/ |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
11 | .. _`subprocess module`: http://www.lysator.liu.se/~astrand/popen5/ |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
12 | |
42 | 13 | dtrx calls out to different external tools to support different archive |
14 | types. Most of these are already installed on most GNU/Linux systems, so | |
15 | you probably won't have to worry about these too much, but just for | |
18
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
16 | completeness, the exact requirements for each format are as follows: |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
17 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
18 | tar archives |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
19 | tar |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
20 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
21 | zip archives |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
22 | unzip, zipinfo |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
23 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
24 | cpio archives |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
25 | cpio |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
26 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
27 | rpm archives |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
28 | rpm2cpio, cpio |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
29 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
30 | deb archives |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
31 | ar, tar, zcat |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
32 | |
42 | 33 | gem archives |
34 | tar, zcat | |
35 | ||
36 | 7z archives | |
37 | 7z | |
38 | ||
39 | Microsoft Cabinet archives | |
40 | cabextract | |
41 | ||
18
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
42 | Files compressed with gzip or compress |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
43 | zcat |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
44 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
45 | Files compressed with bzip2 |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
46 | bzcat |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
47 | |
42 | 48 | Files compressed with lzma |
49 | lzcat | |
50 | ||
18
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
51 | Installation |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
52 | ------------ |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
53 | |
42 | 54 | dtrx is just a simple script, making it easy to stash wherever you need it. |
55 | Just copy ``scripts/dtrx`` to a location that's convenient for you. If | |
56 | you'd like to install the program system-wide, you can run the following as | |
57 | root or equivalent:: | |
18
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
58 | |
1600807a32bd
[svn] Add basic documentation, and make this version 3.0.
brett
parents:
diff
changeset
|
59 | python setup.py install |