Fordi
Group: Members
Posts: 90
Joined: April 2004 |
|
Posted: Jan. 03 2005,14:53 |
|
Ok, here's the news:
squashfs.o works with an unmodified liveCD system.
I'm in the midst of debugging a pair of scripts that will be packaged with "squashfs.dsl" (along with mksquashfs and squashfs.o) that will automatically load converted .dsl packages as "sdm" packages (Squashfs DSL module).
dsl->sdm conversion occurs as follows: -the dsl is extracted to a temp dir. -home, opt, var and tmp are bound within user.tar (.gz isn't necessary; the filesystem gets compressed anyway) these folders are then removed -an empty "sdmrc" is created. (for later package-scripting support) the temp dir is made into a squashfs.
sdm installation is performed as follows: -if squashfs.o isn't loaded, load it -if /etc/init.d/mkwriteable hasn't been run, run it -the sdm is mounted in /opt/packname -the user.tar is extracted into the filesystem ( tar -mUkxvf user.tar -C / ) -the mounted sdm is symlinked, file-by-file, into the filesystem -sdmrc is executed (If you think this is a security issue, think what would happen if you had a dsl file that replaced your .xinitrc. Trust me, you can root any machine with a well-designed package.) -code grabbed from mydsl-load does the work in putting together the MyDSL menu and refreshing xtdesktop. (this is what's being debugged)
If you have the squashfs.dsl module on a liveCD, it inserts a script into the init-process that scans the CD for sdm packages much like the way DSL does for its original packages. This is currently being debugged, as is the MyDSL menu code. The rest appears to be working fine (it's all being tested with three dsl-converts: gift, gaim and the Gimp 2.0.)
|