Apps :: removing apps



Remastering:

DSL normally comes as 'dsl-4.x.iso'. Within the cdrom image is a second image file called '/KNOPPIX/KNOPPIX'. This is the cloop (compressed loop) image containing the root filesystem of DSL. (A cloop image is basically a normal ISO image with the sectors compressed using gzip-compression.)

The remastering procedure (Note: This is NOT authoritative! Just personal experience):
(1) Mount the DSL ISO at <DIR_1>:
Code Sample
mount -o loop dsl-4.x.iso <DIR_1>
(2) Copy <DIR_1> to <DIR_2>:
Code Sample
cp -a <DIR_1> <DIR_2>
We will copy our new 'KNOPPIX' file into <DIR_2> later.
We can't copy anything into <DIR_1> since the ISO is not writeable.
(3) Extract 'KNOPPIX' to a normal ISO file; for example, you could call it 'KNOPPIX.iso', if you like:
Code Sample
extract_compressed_fs <DIR_1>/KNOPPIX/KNOPPIX  >  KNOPPIX.iso
Mount 'KNOPPIX.iso' at <DIR_3>:
Code Sample
mount -o loop KNOPPIX.iso <DIR_3>
(4) Copy <DIR_3> to <DIR_4>:
Code Sample
cp -a <DIR_3> <DIR_4>
(We can't use <DIR_3> because 'KNOPPIX.iso' is read-only.)
(4) Make all desired modifications to <DIR_4>.
(5) Generate a new 'KNOPPIX' file from <DIR_4>:
Code Sample
mkisofs -R -hide-rr-moved -cache-inodes -pad <DIR_4> | create_compressed_fs - 65536 > KNOPPIX
(6) Copy the new 'KNOPPIX' file into <DIR_2>:
Code Sample
cp KNOPPIX <DIR_2>/KNOPPIX/KNOPPIX
(7) Generate the remastered DSL ISO from <DIR_2> (Very long command -- you might want to put it in a script, or a bash alias):
Code Sample
mkisofs -R -hide-rr-moved -cache-inodes -pad -b boot/isolinux/isolinux.bin -c boot/isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table <DIR_2>  >  <NEW_NAME>.iso
The various options that come after '-pad' are necessary for loading the isolinux bootloader. Otherwise, we will get a non-booting coaster.

please accept my belated thanks.  been in/out hospital with pneumonia.  1st opportunity to say thanks.
I will try this out and let you know how it works.

Thanks for the quick guide S_I.

But since alot of the system ""bloat"" is libraries, I see alot of work with LDD in my future. I actually started working on a small script that will find every "standard" executable (only gnu-tools installed) and run it through ldd, then sort the output and print out any library that is only used once and by what program.

But if I do "ldd `find / | grep -v "/somefolders/to/skip/"`" bash freaks out on the size of the returning argument list. So I need a way to split it up into usable batches. At the very least, I will post an up-to-date library to program listing for 3.4.x :D

I would recommend using a better ldd. Maybe gnu-utils has it? Anyway, GNU and uClibc ldd have a new option -u, aka unused. When used with -r (relocate = check for deps of deps) it can be checked if an app has been compiled with a lib it doesn't use, thus increasing start time.

Would be interesting to have that included in your list :)


How about: (needs GNU find)

for dir in `find / -name "*bin" -type d`; do
find $dir -type f -exec ldd '{}' \; >> mylist
echo -e "\nNext\n" >> mylist
done


original here.