makeself icon indicating copy to clipboard operation
makeself copied to clipboard

Multiple compatibility issues

Open dominikr opened this issue 13 years ago • 3 comments

With the busybox tools on Linux: -the ibs, obs and sync options to dd are optional, and must be enabled at compile time. They aren't enabled on OpenWRT 8.09 for example, so makeself won't work on my router -df command does not support the '-P' option

On Solaris 10: -the 'df' command in /usr/bin does not support the '-P' option. Makeself also checks for binaries in /usr/xpg4/bin, but those are only available if the SUNWxcu4 package is installed. Script fails with a syntax error -id/chgrp/chmod also fail because of unsupported options, but the script keeps going on

I'm trying to fix the df bug at the moment. The dd bug would require to rely on if/of/bs/count/skip/seek only, or by removing dd altogether.

dominikr avatar May 14 '11 13:05 dominikr

OK, I don't have busybox handy but if you come up with a fix I'll merge it.

megastep avatar May 14 '11 19:05 megastep

As said, one fix would be to remove dd, but that would break --append. But what is the use case for append anyway? Repackaging doesn't cost so much time, and compression ratio will be much higher (append could also be reimplemented by first unpacking the tarball, adding the new files and then repacking it as the new tarball)

The basic concept of dd-less makeself would be this:

#!/bin/sh
sed 1,2d<$0|gunzip|sh;exit

(That's a minimal gzexe-style uncompression header for shellscripts I wrote. Just append a gzipped shellscript to it) This would also get rid of a lot of fiddling with offsets.

dominikr avatar May 15 '11 13:05 dominikr

One of the uses I have had for makeself is to append customer-specific files (say a license file and other small things) to a bigger archive for the rest of the software. Doing it this way allows to reduce the time it takes to provide the customer with a customized download. So there is a need for this, at least as far as I am concerned.

megastep avatar May 15 '11 20:05 megastep