site  contact  subhomenews

4.1.2: .deb expansion bugfix

November 17, 2008 — BarryK
We have been discussing this recently on the forum. The utilities 'undeb' and 'dpkg-deb' are unable to expand some .deb files (Debian and Ubuntu packages). Note that 'undeb' is a script that calls 'dpkg-deb', and I personally prefer to use the latter directly.

I found the reason is that some recent .deb packages use LZMA compression. A more recent 'dpkg-deb' is required, but it internally calls the 'lzma' utility -- but once again the one available as a Puppy .pet package is inadequate -- 'dpkg-deb' calls 'lzma' with commandline options that the latter does not understand.

I have upgraded dpkg-deb from version 1.10.18 to 1.14.20, and got the binary executable from a Ubuntu Intrepid repository.

The Puppy4 repo has 'lzma-458', but I got version 4.32.0beta3 from the Ubuntu Intrepid repository and upgraded the Puppy package.

How to manually upgrade Unleashed 4.1.1:
1. Download the new 'dpkg-deb' and 'lzma' from here: http://puppylinux.com/test/4.1.2/
2. Update the packages: puppy-unleashed/packages/dpkg-deb-1.14.20 and lzma
3. Update the entries in puppy-unleashed/packages.txt -- change the version numbers and the lzma entry to "on".

Of course, if you are running Puppy right now, any recent version, just grab those utilities from the above URL and substitute them in place of the originals. Then you'll be immediately ok to handle all .debs.

Tags: puppy