* Fix#48 --append functionality
* Fix#48 --append functionality
Also adds some additional testing to the appendtest to catch
previously uncaught failure modes.
* Use size of uncompressed tar for USIZE
Change covers the corner case where files are updated in the archive
during an --append. Removes the necessity for the OLDUSIZE variable.
* Added option chown and made nochown default. This can also be specified at creation of the file
* Added test. makeself default invocation shouldn't destroy suid bits
* Typo. Corrected description of --nochown and --chown
* Corrected datetest not working on computers with different locale
* Small change to directory name and remove duplicated line
* stable order inputs: find, sort, tar -T
After `cd`-ing to `$archdir`, use `find` and `sort` to generate a stable order
of inputs[0] (in the form of a newline-delimited list of paths) from which
`tar` reads via `-T-`.
This feature depends on `tar` support for the `-T` option as well as the
presence of the commands `find` and `sort`.
[0]:https://reproducible-builds.org/docs/stable-inputs/
* sort archdir contents and append to temporary archive
* change `TMPDIR:=` to `TMPDIR:-`
* add append unit test before changes to fix append. Note the assert change, since it always passed before
* fix the unit tests so they fail when appropriate, at least on osx
On NixOS (a Linux distribution), there is no `/bin/rm`, but an `rm`
command will generally be available in one's path when running shell
scripts. Here, I change a couple of invocations of `/bin/rm` into
invocations of `rm` to deal with this issue.
Since `rm` is already called elsewhere in the script without an
absolute path, I assume this change will not cause any
regressions. Still, I've tested this on a CentOS machine and a NixOS
machine, though not other platforms.
When the user ran the downloaded archive using spaces in the archive
pathname (as in ~/Downloads/some\ files/archive.run) and noprogress was
set to "y", MS_dd_Progress() did not properly quote the arguments to
MS_dd(), which then had a wrong file name and failed:
gzip: stdin: unexpected end of file
Add missing quotes to MS_dd_Progress() to fix this.
* Support OpenSSL encryption with compression (not instead of)
* More consistent value interpolation in conditionals
* Output decryption errors to stderr instead of /dev/tty
* Return to tar args that work for Solaris
This should still work with the added UNTAR_EXTRA feature, but returns
to the known-working tar invocation for rickety old Solaris.
I took the liberty of dropping an extra empty line and the quotes around
UNTAR_EXTRA so as to preempt any multi-arg problems.
* Make --target documentation more clear
This clarifies the runtime --target documentation so users may clearly
understand that this is to be a temporary directory (e.g., don't use
--target=/home). In doing so, we also allude to what's probably the
right answer for most users, setting TMPDIR instead.
* Further attempt at clarifying