Ian Zimmerman <itz@???> writes:
> On 2016-02-02 12:58 +0000, Rainer Weikusat wrote:
>> > If you have the dedication to GUI and the resources of a global
>> > mega-corporation it is possible to make a similar GUI actually respect
>> > the under-lying settings ... but it is incredibly hard work, way
>> > beyond almost any organisation. OSX did achieve this
>>
>> Not at all, actually. It just means the front-end code has to work
>> directly with the backend config files
>
> But then the GUI code has to grok all the bazillions of config file
> formats out there, and perhaps worse, hardcode the knowledge which
> packages use which formats.
Only the ones it needs to work with. For the example I mentioned, this
involved (I wouldn't usually talk that much about it but will do it here
because of the "everyone did this a 100,000 times statement)
- refactor the racoon code such that the config parser could be
put into a shared library racoon and other program could link
to
- wrote a Perl extension module making the library available to
Perl code (eg, the program supposed to translate between the
database tables used by the frontend and the backend system)
- modified bind and squid to link with this library in order to
implement a predefined ACL type 'VPN client network' as
defined by the racoon mode_cfg configuration
- modified the network setup scripts to get the pool network
from there as well
That was a fair bit of legwork but the resulting system offers a
simplified GUI interface while retaining the flexibilty to deal with
'uncommon' setups by customization.