Spup: tar error

How's this for a strange bug...

I'm running Spup. Do this in a terminal:

# tar --list -f gzip-1.4-i486-1.tgz | head -n 1

tar: write error

If I don't have '| head -n 1' on the end, no error. The first line of output is "./" so that is correct.

Try something else:
# tar --list -f gzip-1.4-i486-1.tgz | tail -n 1


...no error.

I'm using 'head' from 'coreutils' 6.9 that is a PET compiled back in Puppy4.
'tail' is a Busybox 1.16.2 compiled in Quirky 1.2.

I tested with piping to '| busybox head -n 1', still get the error.

Posted on 28 Jun 2010, 10:05


Posted on 28 Jun 2010, 11:06 by technosaurus
sed vs. head
Is it all tgz & does the same thing happen with tar -tf

It works fine with busybox-1.16.1 tar and head
busybox tar -tf gzip-1.4-i486-1.tgz |busybox head -n 1
from here:
and gzip package from ftp://ftp.slackware.com/pub/slackware/slackware-current/slackware/a/gzip-1.4-i486-1.tgz
You can try using sed in place of tail and head (also grep, cat and others)
... but maybe -O or --to-stdout is required for that version of gnu tar

Posted on 28 Jun 2010, 11:32 by BarryK
Busybox tar works
This works ok:

# busybox tar -z --list -f gzip-1.4-i486-1.tgz | head -n 1

...note, Busybox tar needs an explicit '-z', whereas the full tar automatically determines correct compresion mode. (Actually, there was an option to turn that auto-detection on in Busybox config)

Ok, I compiled tar 1.23 (same as used in Slackware 13.1), still get that error.

I compiled tar 1.22, same that I have in Quirky (built from T2). No error message!

So, I am going to roll back tar in Spup.

Posted on 28 Jun 2010, 14:14 by BarryK
Bug already reported
This bug has been encountered by many people, for example:


Posted on 28 Jun 2010, 14:23 by BarryK
tar 1.23 patch
This looks like the fix for tar 1.23:


But I have already rolled Spup back to 1.22.