Home
dpkg enhancements that could be useful
The basic idea here is to narrow the gap between dpkg and the
minimal iPKG
system used by some ARM-PDA Linux distributions. The guiding
principles are space and processor (battery) efficiency.
- Exclude arbitrary filesets from being
unpacked
- This is already planned for a future dpkg release.
Ideally, it would be possible for binary packages themselves
to specify some information about what can be safely excluded.
- Strip down status file
- Exclusion of Description, Priority, Section, and possibly
others, would save a significant amount of space in the package
database. Adam Heath:
There are plans to do this. If you look at status, there
are empty package paragraphs. dselect uses these, and they
polute the dpkg runtime memory. We have plans to remove
these entries.
- Optionally disable or compress available-old and status-old
backups
- Disk space savings
- Optionally unpack files in-place
- Dangerous, but would provide significant space savings for
upgrades. busybox dpkg does this, and can be used if
necessary. Might it be better to remove (but not purge) and
then install the new version? Doing this frequently could
provoke lurking bugs in maintainer scripts.
- Exclusion of certain control files (?)
- md5sums and shlibs could be excluded in most environments.
templates also tends to be quite large, but I don't know what
can be done about that. Exclude certain translations? It
might be more effective to use a filesystem which can
effectively store many small files, as most of the cost seems
to be from large block sizes. Probably done most effectively
with a separate tool.
- Automated slicing of packages across different filesystems
- For example, allow the user to say "for package X, place
hierarchy Y at location Z instead, and symlink Y -> Z". This
would allow larger packages, which might not even be able to
be unpacked in internal storage, to gracefully flow onto
removable media. This probably belongs in a separate tool.
Matt Zimmerman
Last modified: Sun Aug 4 00:10:33 EDT 2002