Dependencies, their tracking and what we need to improve.

Dennis Veatch dennisveatch at bellsouth.net
Wed Jul 13 18:10:18 CEST 2011


There are still some open questions that need additional discussion or 
clarification about Lunar's dependency system. In the past there has been some 
talk about switching the dependency tracking to a database and Jean has done 
some work using sqlite.

With the help of Ratler it is now in a usable shape as for its speed. There 
are a few things left such as tying it into lin, lvu, etc and what should be 
done as a fall back should the database become completely hosed.

Before that happens (if it does) there has been mixed opinions about 
dependencies. Specifically;

1. those of the optional variety
2. how explicit the DEPENDS should be
3. and how far down the tree should a `lrm -p $MODULE` should go
4. do we really need to switch to a database or provide a user with a choice 
of database or current method

Point 1 - Auke has stated he does not like seeing an optional_depends without 
an accompanying on/off switch. I can understand that because the 
optional_depends without it could cause the module to fail requiring the user 
to lrm the offender and then later on reinstall it. 

But the problem is this; there are many modules with their configure and cmake 
scripts that have no corresponding on/off switch. For example; kdelibs4 has no 
way to enable/disable grantlee even though it can be used during its build. So 
what is an acceptable method of handling these types of optional_depends?

Point 2 - This has some bearing on Point 1 in that to make a modules DEPENDS 
more explicit we run into those that have no corresponding on/off switch. The 
second part to this point is; how far down the tree should we go to have a 
comprehensive dependency tracking system?

Point 3 - As it stands now and I have not tried this in a very long time 
because it broke my box; at what point do we halt a `lrm -p $MODULE`? Even 
with a ultra-mega super-duper tracking system this would still be of concern.

Point 4 - I am amiable to the idea if only from the point that it could/would 
speed up the sorting which right now is not so great. Just so that we have it 
documented, please itemize what a database dependency tracking system would 
provide and potentially change how a DEPENDS is currently constructed.

If we are going to move forward to improve the dependency tracking I feel 
there needs to be additional inputs. If the work Jean has done is the 
direction to head it will need testing on multiple boxes by multiple users 
(devs). I have no problem being part of that but given the scope the more the 
merrier.

Side note; Would it be preferable to setup an IRC meeting to discuss this or 
is everyone fine with the mail list?

-- 
Dennis `stumbles` Veatch
Lunar Linux Developer
http://www.lunar-linux.org/


More information about the Lunar-dev mailing list