removing apps

Forum: Apps
Topic: removing apps
started by: lmart

Posted by lmart on Dec. 19 2007,14:03
1] how do i remove apps, like games?
2] how do i remaster the cd with those apps removed?

Posted by lucky13 on Dec. 19 2007,16:24
1. Find them and delete them.
2. Read one of the many available remastering guides.
You're welcome.

Posted by stupid_idiot on Dec. 19 2007,17:11
Err, I'll try to answer question (1) in this post and question (2) in the next post.

Presently there are 2 types of MyDSL extensions: The mounted type and the tarball type.
'Mountable' extensions:
  • .uci and
  • .unc
    'tarball'-type extensions:
  • .dsl and
  • .tar.gz

    For .uci and .unc extensions, we load the extension by mounting the extension file as a < loop device > and access its content directly. Thus no extra RAM space is needed beyond what is taken up by the extension file itself.

    For the .dsl and .tar.gz extensions:
    Both .dsl and .tar.gz extensions are really just gzip-compressed tar archives. (Background info: < Tar (file format) > []) When we load them, we are extracting the uncompressed contents into DSL's main filesystem, which resides on RAM.
    .dsl extensions can/will put files anywhere in the filesystem.
    .tar.gz extensions use only these directories: '/home/', '/opt/' and '/tmp/'.
    To keep a long story short, 'tar.gz' extensions are at least more predictable if not more self-contained than '.dsl' extensions.

    For .uci and .unc extensions, locate the relevant .uci or .unc extension file, and do:
    Code Sample
    mydsl-load <FILENAME>.uci
    In your case, if the relevant extension is already loaded, this command will unload it. If you run the command again, the extension will be loaded again. (Ad infinitum.)

    For .dsl and .tar.gz extension, we can use Tar to list the files in the extension file, and then remove those files from our system.
    Since .dsl/.tar.gz extensions are gzip-compressed tar archives, we should run Tar with the following one-letter options:
    Code Sample
    tar ftz
    f = tells Tar to expect a filename
    t = list archive contents
    z = specify that contents must be passed through gzip to be uncompressed first before passing through Tar
    Thus, the actual command will go like this:
    Code Sample
    tar ftz <FILENAME>.dsl
    If there are too many files to fit on the screen buffer, you could pipe the output to 'less' so that you can read it:
    Code Sample
    tar ftz <FILENAME>.dsl | less
    The one-letter options can be specified in any order you want. Also, note that every one-letter option may have an equivalent 'long option'.
    For example: 't' is equivalent to the long option '--list'.
    However, note that long options must be placed last in the command.
    The following is wrong:
    Code Sample
    tar fz --list <FILENAME>.tar.gz
    The following is correct:
    Code Sample
    tar fz <FILENAME>.tar.gz --list

    Once you have listed the file contents, you can start removing them with the 'rm' command.

    Posted by lmart on Dec. 19 2007,17:36
    Thank you stupid_idiot.
    I appreciate the detailed explanation.  I will try your suggestions this evening.

    lucky_13; you're further ahead in the game than me.  If you have a preferred remastering guide, would appreciate the benefit of your wisdom.  Thank you.

    Posted by curaga on Dec. 19 2007,18:03
    He referred to the 70-page thread started by meo that has a guide on about every page, the latest being on the last.
    Posted by stupid_idiot on Dec. 19 2007,18:54

    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
    (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/ -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.

    Posted by lmart on Jan. 22 2008,19:31
    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.

    Posted by chaostic on Jan. 25 2008,07:17
    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

    Posted by curaga on Jan. 25 2008,22:24
    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

  • Powered by Ikonboard 3.1.2a
    Ikonboard © 2001 Jarvis Entertainment Group, Inc.