On 10/28/2015 07:23 AM, Ryan Hill wrote:
> 
> Agreed.  If there's one choice then "ssl" should be used.  
> openssl/libressl/etc
> should really be considered sub-flags of ssl.
> 
> I really wish we had some way of specifying this to make things clearer to the
> user, so they could see exactly how these flags interact with each other.
> Something like (emerge -pv):
> 

The problem here is that we introduced REQUIRED_USE foo for these cases
which is again highly ambigous instead of making the PM aware that this
is an actual sub-USE flag.

This is outside of the scope of this thread, but there are already
distros that have fixed this:
1. NixOS [0] with truly declarative configuration format, e.g. something
like:
packages.ssl.provider = openssl;

or somesuch (just an example)

2. Exherbo partly [1] with providers syntax:
*/* providers: -openssl libressl

and the exheres would then do something like:
DEPENDENCIES="
    build+run:
        providers:openssl?  ( dev-libs/openssl:0 )
        providers:libressl? ( dev-libs/libressl )
"

which is a lot cleaner than USE_EXPAND + REQUIRED_USE, which still can
have arbitrary meanings.

But NIH will prevent us from learning here I guess.


[0] https://nixos.org/nixos/manual/
[1] http://exherbo.org/docs/eapi/providers-and-virtuals.html

Reply via email to