Re: [debian-installer] microdpkg
Randolph Chung wrote:
> not quite sure what you mean by "whole dependency tree checking" ...
More along the lines of what apt does, or what dpkg does; including
conflicts and so on.
> right now i am playing with this, and have it load the status file into
> memory, storing the package name and status info of each record (no
> other meta data is stored). if a package provides a virtual package, the
> virtual package is added as another package in the list with the "real"
> package's status. 
Um, what happens if a package providing a virtual package is removed?
Especially if some other package providing it is still installed..
> when you install a list of packages, these packages will have their
> status set to "install ok installed"  in the above list. then, for each
> package, it will look up the status in the list and make sure all the
> dependent packages are in the "install ok installed" state. if not it
> will die.  otherwise the data.tar.gz component will be unpacked in /,
> and the postinst script run if it exists. finally the appropriate
> control files are moved into /var/lib/dpkg/info/
> once packages are installed, the status file is updated by passing in
> all the control info from the recently-installed packages. a merge between
> status and the new control data is done, with status info updated from the
> in-memory list.
> does that sound about right?
Except for the virtual packages, yes.
> unlike dpkg, dpkg-deb can quite easily be written as a shell script.
I wrote most of it as a shell script, but I cannot find a way to parse
control file entries w/o using external shell commands, which is
something of a no-no here.
> may be a better home for it then busybox, which is really a
> non-debian-specific tool.
Up to Erik though.
see shy jo