Re: task packages support in debian-cd
On Tue, Mar 01, 2011 at 12:29:47PM -0400, Joey Hess wrote:
>I mailed about this before, but I can be a bit more concrete now since a
>tasksel using task packages is in BYHAND waiting to get into
>These task packages each Depend on what used to be called the "Key"
>packages of a task. And they tend to Recommend a lot of other packages.
>So, it will be important that debian-cd attempts to install the Recommends
>of task-* packages that it puts on the CD. Ideally, it should put the
>task on the CD, put all its Depends on the CD, and then attempt to put
>all its Recommends on the CD. (Whether to put transative Recommends on
>is up to you. Probably they should be considered lesser priority than
>direct Recommends.) If the Recommends don't all fit, it would still make
>sense to include the task package on the CD.
Hmmm, OK. That'll be *interesting* to code. Should we:
1. fit all tasks in order (Depends then Recommends), placing all of
each one before going on to the next (i.e. depth-first); or
2. fit all the Depends from each task, then go back and restart with
the Recommends (breadth-first) ?
>I don't know what method is used now. Maybe it currently puts all
>listed packages and Depends on the CD, and only tries to fill in
>Recommends at the end, if there is extra space. That's not the right
>approach for task packages; including a Recommends of task-gnome-desktop
>is more important than including some less important task.
Right, so you mean #1 above. My initial way would be something like
#1, basically because it's easiest to code, BUT: the normal dependency
following code will only place the task package *itself* on the CD iff
all of the Depends and Recommends have already been placed there. We'd
have to add special case code for the task packages if we want to
>BTW, I hope this will make it a lot easier to check what tasks fit on
>the CD, since we can just look to see where task-* ends up.
And this suggests that we probably *shouldn't* do that special casing,
If I understand you correctly, the main thing we have to do to achieve
what we need is to switch *on* inclusion of Recommends: for our
In terms of the transitive Recommends, again it would be much easier
to simply include them down the package chain. We don't have a concept
of priority in debian-cd per se, just some simple decision making code
to sort by dependencies from the input package list.
Now... turning on Recommends all over *is* going to hurt in terms of
fitting things on CDs. I'll turn it on now and do a test build, then
we can see by how much.
Steve McIntyre, Cambridge, UK. email@example.com
"Because heaters aren't purple!" -- Catherine Pitt