3.x versus 4.x SFS files

We have a problem coming up, as Linux kernels 2.6.29 and greater require .sfs files built with version 4.0 of 'mksquashfs', whereas older kernels use Squashfs version 3.x (3.3 in our kernel).

If someone downloads a SFS file and it doesn't work, the person needs to know why. There needs to be a message informing them that it is the wrong version. I have put in some basic support for this:

The 'init' script now rejects SFS files of the wrong version. Previously, if you downloaded an SFS file to /mnt/home and selected it in the BootManager then rebooted, it would get mounted as a Unionfs layer, or would fail to mount -- but the user would still see it selected in the BootManager but it hasn't "loaded" -- and they would be mystified.
At this early boot stage, the wrong version is now detected and will not even be attempted to load.

Now, wrong versions are screened out, so they aren't offered as candidates in the left pane. So, the user can't even choose a wrong SFS file to be loaded.

When you click on a SFS file, it gets mounted and you can view it's contents. Now, the wrong version is detected and an information notice is displayed.

mksquashfs, unsquashfs
Pup 4.3 has both mksquashfs 3.3 and 4.0, named 'mksquashfs3' and 'mksquashfs4'. There is a symlink 'mksquashfs' to the correct one for the current kernel. The same thing has been done for 'unsquashfs'.
So, 4.3 has the tools to expand and create either type, so it will be easy to create an app to convert a SFS from one type to the other.

Posted on 11 Aug 2009, 19:44


Posted on 11 Aug 2009, 21:27 by lobster
Good news
As you swap between kernels in the alpha 4.3
I sometimes am able to use the xaraLX and openoffice
sfs I rely on.

another solution (which I think is being done or planned) is to have more SFS and pets in the package manager or directly accessible.

Which reminds me of this connected software option

Posted on 11 Aug 2009, 21:37 by PaulBx1
invisible sfs
"Now, wrong versions are screened out, so they aren't offered as candidates in the left pane."

Users may wonder why an sfs they know is there, is not visible. Perhaps better to make it visible, but mark it somehow as being unloadable, and why?

Posted on 11 Aug 2009, 22:17 by dogone
invisible sfs
I agree with RaulBx1, making things disappear/not appear without explanation is not appropriate. Better to flag incompatible sfs files in some way.

A better solution is to offer to copy and convert an incompatible sfs file when it's selected.

Given the popularity of older Puppies, this problem is not going away. Yes it's a bother, but better to deal with it effectively.

Posted on 12 Aug 2009, 15:18 by BarryK
Rejected SFSs
PaulBx1, dogone,
Yes, it's not very friendly just rejecting an SFS if it's the wrong version, so I have added a dialog box that pops up and lists the rejected SFSs and explains why.

Posted on 17 Aug 2009, 9:18 by trio
SFS Converter

I made a little app, SFS Converter, auto detect sfs file, if v 3 it will be converted to 4, vice versa


Posted on 17 Aug 2009, 21:02 by trio
no mksquashfs3 and unsquashfs3

There are no symlink named mksquashfs3 and unsquashfs3 in 4.3 Beta1 kernel 6.25.16

Is this a bug or you did it on purpose?..the SFS Converter I made works only in kernel 6.29.6 because of this