Re: debmake & dpkg
From: Ian Jackson <ian@chiark.greenend.org.uk>
> > - automatically locate packages when just a packagename is given
> > (invoke ftp or whatever means configured to get the package)
> >
> > - automatically install packages depended on by a package
>
> I think that this is the job of dselect. dselect should have a
> `noninteractive' mode where you say:
> dselect --install spong
> and it finds spong and things it depends on and installs them.
Since it's noninteractive, it might be better placed in a different
program than dselect. A front-end to dpkg to do this sort of thing
isn't absurd.
What I'd like would be an interpretive program that encompassed
all of the functionality of dselect _except_ for the GUI. GUIs would
be built on top of it. I'd suggest command-line, but the database parsing
on each command invocation would make this too slow. TCL would be
a good vehicle for this, as long as use of Tk isn't mandiatory.
> I think that this is best done with pattern-pased file exclusion. I
> don't think that conditional compression is necessary.
Agreed.
> - Checksums stored in the .deb package and a function to verify the
> integrity of installed files.
> My views on per-file checksums are well-known.
Uh, I forgot what your views are. I think per-file checksums are worthwhile,
but they should definitely be generated at package-build time unless it's a
control file. In the case of MD5 we are talking about 16 bytes per file,
not an astronomical amount.
>> - Get rid of all the single files in /var/lib/dpkg/info and use
>> a database instead to provide faster operation
> This is a very bad idea.
Well, it does preclude breaking out the functionality of dselect into
a command-line application that could be called iteratively (see above).
I suggest a compromise: cache a pre-compiled version of the database.
Output both the text and precompiled versions with each status change,
and discard the precompiled version any time /var/lib/dpkg/status is
newer than the precompiled file. This gives us fast queries without
losing the integrity and recoverability of the text version. I am assuming
that a GUI separate from the guts of dselect would make a lot more queries
than status changes.
Thanks
Bruce
--
Bruce Perens K6BP Bruce@Pixar.com 510-215-3502
Finger bruce@master.Debian.org for PGP public key.
PGP fingerprint = 88 6A 15 D0 65 D4 A3 A6 1F 89 6A 76 95 24 87 B3
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-REQUEST@lists.debian.org . Trouble? e-mail to Bruce@Pixar.com
Reply to: