Re: dogtail-devel PROPOSAL: new options in config module for customized environments.



-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA512

Zack Cerza wrote:
> Alexander Todorov wrote:
>> -----BEGIN PGP SIGNED MESSAGE-----
>> Hash: SHA512
>>
>> Hi all,
>> I'm proposing two new options in the config module and I have already
>> written
>> some of the code. Both options will help script development (or dogtail
>> integration) in customized environments.
> 
> Hi Alexander,
> 
>> 1) checkForA11y (boolean), default True. If False don't use GConf to
>> check if
>> a11y is enabled or not.
> 
> This looks fine.
>

I've looked at the updated sources today and this one looks good.


... skip ...

> The only time dogtail currently needs to know which distro it's running
> on is when it needs to locate translation files. So with the patch I've
> just committed that's the only time it checks. If Anaconda needs to load
> translation files, we'll have to figure out how to do that.
> 

You're right. It doesn't have the rpm database in stage2 of the installer. Once
I had to load translations just went trough all dirs/files and checked for .mo
ones. It might be a good idea to wrap up that as a PackageDB class.

> As for the detection mechanism not being robust, I respectfully
> disagree. If a distribution is "odd" enough that we don't detect it
> currently, then we need to add support for it. Any distribution really
> should have some way for applications identify it, and we can use what
> it provides.
> 

A few notes here:
IMO Dogtail should use the output of lsb_release in first place and then check
for /etc/$DISTRO-release.
On the other hand there might not be lsb_release or a file under /etc.
I believe that's the case with Anaconda (it doesn't have /etc/redhat-release).
That also may be the case with some customized distributions that were derived
from Fedora, Ubuntu or Debian. In any case we don't know for sure if files used
to detect the system will be there.

A DistroClass config option will give the possibility to explicitly use some of
the classes. In the case with Anaconda one can just

config.DistroClass = distro.AnacondaInstaller

and then load translations.

On the other hand: If we use the distro info only to load translations then we
might want to consider another approach. First try to detect what package
manager is used: rpm, deb, emerge, etc. Then try to detect what is the actual
distribution. This one has it's pros and cons as well.

Zack what are your thoughts?

Thanks,
Alexander.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.5 (GNU/Linux)
Comment: Using GnuPG with Red Hat - http://enigmail.mozdev.org

iD8DBQFHu/Xfhmd3WOiFct4RCmMmAJ9TTWuh/y6GCoIiVv0T7dylK13tsQCgkkh4
7xdDZBrUwcOFGNQf+KXF2Gw=
=TLjG
-----END PGP SIGNATURE-----


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]