It looks like ipkg does not work on the kindle 4 because it uses parameters not supported by the busybox wget.
As long as the kindle busybox is the parent of the current process, busybox handles all commands built into busybox (including wget) as intrinsics. It does not use PATH for intrinsics. In fact, I even tried "mv /usr/bin/wget /usr/bin/wget-old" and a "find / | grep wget" only finds "/usr/bin/wget-old". Even though no wget file or symlinks exists, the wget command still executes the busybox version.
Before that, I tried bind mounts, and even replacing the root symlink with a physical wget file, before renaming the root symlink from wget to wget-old. That is how I finally discovered the busybox intrinsic problem.
This also means that all those symlinks to busybox in the main partition are obsolete because they are not used for busybox intrinsic commands. the bin directories would be a lot cleaner with all those busybox symlinks deleted.
The ONLY way to execute a non-intrinsic wget is with a fully-qualified path to the replacement wget. Unfortunately ipkg uses the intrinsic version.
Because the Kindle 4 is missing bash from its busybox, it would be possible to run an non-intrinsic bash shell, and then put a non-intrinsic wget earlier in the search path.
This is a huge FAIL for bind mounts UNLESS used from a non-intrinsic shell.
Last edited by geekmaster; 01-02-2012 at 07:49 AM.