Hello Carl;
You have been busy. I have looked at some of the following and added some
comments. I have implemented some of your suggestions in tree v0.15 as 2-41
with PPP and noatime. I will try to look at remainder of the list tomorrow.
I will get more aggressive if there are not to many objections.
Thank you for your hard work.
Best Regards,
--George
George France, france@crl.dec.com
Cambridge Research Laboratory, Compaq Computer Corporation
One Cambridgecenter MS: CRL
Cambridge, MA 02142 USA
> -----Original Message-----
> From: Carl Worth [mailto:cworth@east.isi.edu]
> Sent: Tuesday, September 19, 2000 12:12 PM
> To: ipaq@handhelds.org
> Subject: [iPAQ] Trimming the fat...
>
>
> #!/bin/sh
> #
> # at least it looked like fat to me, but what do I know?
> #
> # I've been picking through the v0.15 release with a fine-toothed comb
> # looking for cruft that we can delete to save some space. This email
> # captures the results of my searching so far. I've formatted this
> # posting as a shell script that you can execute in the v0.15
> # directory after untarring usr-src-2-40.tar.gz and
> # root-src-2-40.tar.gz. As is, the script will allow the following
> # savings, (you can uncomment a couple of sections to make it smaller
> # with less functionality):
> #
> # root-2-40.cramfs usr-2-40.cramfs Total
> # Before 2686976 7098368 9785344
> # After 2584576 5435392
> 8019968
> # ------- ------- -------
> # Savings 102400 1662976 1765376
> #
> # So I've trimmed >1.5MB off of the installation images, and I don't
> # think that I have affected any significant functionality, (but
> # that's still open to interpretation -- at least I have successfully
> # booted and played around a bit). Beware though, that this script
> # deletes all libraries which are not directly needed by binaries in
> # the release, (gtk for example) -- you may want to install other
> # programs that depend on these libraries. And is it really safe for
> # me to be deleting those libc6 shared libraries? (See comment
> # regarding libnss* below). Also, I could have missed a lot of things
> # that could still be deleted -- feel free to have a closer look.
> #
> # There are still two big things that could be done, (I mentioned
> # these in an earlier message):
> #
> # 1) Replace all possible utilities with busybox.
> # This saves about 500kB uncompressed.
> #
> # 2) Remove all "user-level" binaries from images.
> # Without gdb, xanim, mpg123, and gqmpeg.static, usr-2-40
> # shrinks down to 3317760 bytes! (3121152 without all of
> # /usr/share/locale/*) Plus there are many small programs
> # that could be considered user-level/optional and moved
> # out of the release. This would allow for a much larger,
> # writable /usr/local partition. The default install could
> # be tiny and it would be up to each user how to eat up the
> # rest of flash.
> #
> # Then again, a lot of this gets rather subjective, so configurable
> # partition sizes and/or a package maintenance system would be good
> # long-term solutions for all of this. (If only every Debian
> # maintainer were required to provide an "install-tiny" script...)
We have thought about configurable partition sizes and it is on the to-do
list. Do we have any volenteers??? We hope to have sourceforge up on
handhelds.org by next week, so that we can have easy to maintain public
project list.
> #
> # Anyway, I'm posting this for comments. The things that I am least
> # sure of I have placed at the top of the file. Also, I was too burned
> # out by the time I got to /usr/sbin so I haven't looked at it yet,
> # (although I did notice /usr/sbin/dump and /usr/bin/dump both exist
> # although they do differ).
> #
> # -Carl
>
> # Let the fat-trimming script begin!
> # The script is organized into major sections where files are being
> # removed for different reasons. Each section begins with a comment
> # explaining my justification for removing the files. Feel free to
> # comment. (I'm risking exposing my ignorance here...)
>
> #!/bin/sh
> # What are these? Do we need them?
> #
> # (Please pardon my ignorance, but the names of these binaries don't
> # mean anything to me and I did not see equivalent programs
> installed on my
> # Debian system. I haven't poked around beyond that.)
> #-------------------------------------------------------------
> --------------
> # /sbin/iwconfig
> # /sbin/iwpriv
> # /sbin/iwspy
The iw* programs are wireless configuration utilities. I have forgotten
which brand of wireless card needs them. Does any body use them??
> # /sbin/kdstat
> # /sbin/pcinitrd
I do not know the function of the above two programs. Any body???
> # /sbin/update
/sbin/update is part of the bdflush package. Bdflush is a basic system
process that must run for your system to operate properly.
> #
> # /usr/bin/callbootd
removed.
> # /usr/bin/fromport
> # /usr/bin/gpio # Note, has no execute
> permission by default
> # /usr/bin/toport
> # /usr/bin/X11/led
> #
Does anybody know what fromport, toport, gpio and led do???
> # /usr/libexec/pt_chown
Pt_chown is needed by glibc-2.1.2-0.
> #
> # /usr/sbin/dongle_attach
> # /usr/sbin/findchip
Does anybody know what dongel_attach and findchip do???
>
> # I'm unqualified to comment on these.
> # Could this be trimmed down at all?
> #-------------------------------------
> # du -s /usr/lib/terminfo
> # 460
We should probably keep the xterm stuff and the vt100 stuff. The rest can go
unless somebody out there needs them ?????
> # du -s /dev
> # 32 # Yes, this would be getting pretty picky about
> the space
There are two (2) dev's init/dev and root/dev. root/dev is need for booting
before RAMFS is setup. init/dev is the whole ball of wax used at run time. I
have cleaned up root/dev a little bit but it could use some more work.
>
> # Redundant functionality (replace with symlinks/tiny scripts?)
> #--------------------------------------------------------------
> # /usr/bin/logname # /usr/bin/whoami
> # /usr/bin/whoami # /usr/bin/id -un
> # /usr/bin/printenv # /usr/bin/env -- or switched, env is
> ~400B bigger ;)
whoami, logname, id, env and printenv are part all of the GNU sh-utils
package. I believe if we port the newest version to armv4l architechure that
some this problem goes away.
>
> # Some large user-level binaries
> #-------------------------------
> # (These aren't good for much if your mixer isn't working)
> #rm usr/bin/mpg123
> #rm usr/bin/X11/gqmpeg.static # Ouch, where's a shared version?
shared version in place.
Best Regards,
--George
George France, france@crl.dec.com
Cambridge Research Laboratory, Compaq Computer Corporation
One Cambridgecenter MS: CRL
Cambridge, MA 02142 USA
Phone: (617) 551-7665
FAX: (617) 551-7650
Received on Tue Sep 19 15:30:34 2000
This archive was generated by hypermail 2.1.8 : Tue May 04 2004 - 09:43:42 EDT