*** Important note about this port ***
The Amiga fileflags are not supported in this port, so for example,
if you pack an exe file, you have to set the 'e' flag when you depack
it - like this "protect my.exe +e". The sources are included so if you
want to add support for Amiga file flags - be my guest. /spot
*** Important note about this port ***
DACT(1) DACT(1)
NAME
dact - compress or expand a file or stream
SYNOPSIS
dact [ -dsfcvlniCHOShVNa ] [-b size] [-e algo] [-m file] [-o file]
[-u url] [-p url] [-M command] [-D desc] [-I algo] [-U file]
[-E cipher] [file ...]
DESCRIPTION
DACT reduces input files by attempting to compress each
block of the file with several different algorithms and
selects the best one for each block.
OPTIONS
-d Decompress the file (or stdin, if no file is
given), removing the extension if it has a valid
one.
-s Display statistics about the file, such as: Magic
number of file, DACT version file was compressed
with, Block size used to compress file, Compressed
file size, Original file's size, Compression ratio
(uncompressed to compressed), File's original name,
CRCs (if available).
-f Force bad and unsafe things to happen. Can be com-
bined to make even worse things happen. One `-f'
allows overwriting of existing files, two `-f'
allows you to ignore bad magic and CRC check fails.
-c Send output to stdout, this will allow you to force
DACT to send compressed output to a terminal or
result of compressing a file to a pipe.
-v Increase verbosity, can be combined to increase
verbosity a lot. Currently, only up to 3 makes
sense. One `-v' displays a bar graph. Two `-v'
displays a bar graph and block information. Three
`-v' displays a bar graph and detailed compression
statistics per block.
-l List compression algorithms available.
-n Toggle use of CRCs. This option is especially use-
ful when combined with the network capabilities of
DACT. It allows you to create a compressed file
with only the header pointing to a web page that
contains the real DACT file (which normally has its
CRCs checked against the compressed header to
ensure they're the same file), with this option the
files do not have to be from the same source (i.e.,
you can have an updated copy automatically extend
itself.)
-i Read input from standard input instead of /dev/tty.
This is used to read user supplied information like
encryption keys and passwords from standard input
instead of the more appropriate method of opening
"/dev/tty."
-C Complain when compression errors occur. When a
block is selected, it is tested to ensure that it
decompresses back to the original source. If it
fails, the algorithm is not used, with this option
you are informed of the failure.
-H Write only header (no data). This option is useful
for distributing archives that need only reside on
the internet someplace.
-O Toggle writing original file name in the DACT
header. This has no real use that I know of.
-S Use speed-size as a metric rather than size. This
is not implemented yet. This will make DACT create
an optimized compressed file, balancing speed of
decompression with size.
-h Give usage synopsis.
-V Display DACT version.
-N Upgrade DACT. This option will fetch the latest
binary from the internet and place it in
$HOME/.dact/ as dact.bin. If you have
`binary_check on' in your dact.conf file, DACT will
check for this file and use it. If you have Debian
and run `dact -N' as root the Debian upgrade pro-
cedure will upgrade your entire system.
-a DACT modules. This option will fetch the latest
modules from the internet and place them in
$HOME/.dact/ in a subdirectory corresponding to
your Operating System and CPU Architecture.
-b size
Use the specified block size to compress the file.
The size parameters is in bytes.
-e num Exclude an algorithm from being used. This option
is useful if you know your target will not be able
to decompress a certain algorithm (you can get
their numbers from the `-l' option.)
-m file
Load another config file. This option will attempt
to load the specified file in addition to the nor-
mal files, the options in this file will supersede
other options.
-o file
Alternate output. This option sends output to a
file instead of INFILE.dct. The file can also be a
URL or '-' for standard out.
-u url This option will encode an URL in the compressed
file's header, this URL will be tried (and CRCs
checked) before attempting to decompress the data
in the actual file.
-p url URLs in DACT can have variables in them that will
be expanded when network access is required, this
allows you to test the results of that extrapola-
tion easily. Variables and their values are:
()()OSNM()() OS Name (linux, freebsd, sunos,
etc)
()()OSVR()() OS version (2.2.x, 4.2, 5.8,
etc)
()()OSVS()() OS version (short) (2.2, 4.2,
5.8, etc)
()()ARCH()() Arch (i386, sparc64, sun4u,
sun4m, etc)
()()DIST()() If OSNM=Linux, distribution of
Linux.
()()FILE()() Name of compressed file.
()()DTVR()() Version of DACT (maj.min.rev)
()()DTVS()() Version of DACT (short)
(maj.min)
()()PASS()() Prompt for Password
()()USER()() Prompt for Username
()()ATSN()() Put an `()'
example:
dact -p http://www.rkeene.org/devel/dact/pre-
compiled/dact-()()OSNM()()-()()OSVS()()-()()ARCH()().bin
dact: http://www.rkeene.org/devel/dact/precom-
piled/dact-linux-2.4-i586.bin
-M command
This option executes a command from the command
line as if it appeared in "dact.conf".
-D desc
Encode the description specified into the header of
the compressed file.
-I num Use only 1 algorithm (and uncompressed as a fall-
back), useful if you want to limit yourself to a
certain type of compression.
-U file
Encode the specified file into the header of the
compressed file. This file will be searched (line-
by-line) for a working URL to download compressed
content from. See also `-u.'
-E cipher
Enable encryption using the specified algorithm,
different algorithms use different authentication
methods.
FILES
$HOME/.dact/
$HOME/.dact/dact.conf
/usr/etc/dact.conf
SEE ALSO
gzip(1), bzip2(1), mcrypt(3)
AUTHOR
Roy Keene <dact()rkeene.org>
DACT(1)
| |