[RFC] SRS Section 2
zhouhui at wam.umd.edu
Tue Feb 1 20:08:48 PST 2005
On Tue, Feb 01, 2005 at 03:51:08PM -0700, Gerard Beekmans wrote:
>On Tue, 2005-02-01 at 14:37, Hui Zhou wrote:
>> > * Validation of profiles before any other actions take place.
>> What's the point of validation? The only matter is whether the
>> tool can understand the profile or not. Is there any way to validate
>> whether a profile is sane or insane?
>Run xmllint or something similar agains the DTD to make sure it's a
>valid ALFS profile. You can't just feed it a random XML file and hope
>that something will happen.
If it is a random XML file, one should hope it gets rejected because
the server shouldn't understand it. On the other hand, if the server
understands it, more than not it is a correct valid profile even
though the profile may not be dtd compliant. An example is HTML. Most
web browser accepts non-standard compliant html, does the user really
care? No, as long as it looks all right.
And the validataion won't help much on ensure a correct profile. Most
deadly mistakes are typos in commands such as "rm -r /", not those
unmatching tags. Validation just won't help in most situations.
>> > * A package uninstallation feature.
>> That's tough. That may bring the tool close to a full fledged
>> package manager. It can be a huge task.
>I wouldn't complain if that becomes the case. Right now we don't have
>anything of that nature so if it slowly gets added, the alfs tool only
>becomes more valuable.
Agreed. But I would suggest don't put this as necessary requirement at
the first place. It is quite a burden. Just make sure all the
data/info are logged.
>> Is there any possible profiles that builds a system need
>> uninstallation of some other package? If not, make it a function of a
>> complete seperate program. As all the installation data is logged and
>> hopefully is analysed into a data base, it is not difficult to make a
>> program to do uninstallation if dependecy is just ignored.
>It could be a separate tool yes. But, alfs installs it. It would make
>sense that alfs can also remove the components it installs.
One can come up with a wrapper do it all. For install, invoke alfs,
for uninstall, invoke un-alfs. If the function is seperate, it is easy
to maintain. If all the function albeit totaly un-inter-related, were
in a same big program, it can be a tough job to figure out which part
is essential for which function.
More information about the alfs-discuss