Proposal
I'd like to see the dialog interface for options replaced. It can not currently handle user defined values or mutually exclusive options easily.
Reasons
Replacing dialog is beneficial for a number of reasons some of which are listed below
- Many times some options are mutually exclusive and ports can't indicate as such using the current system
- It might be useful to eliminate dialog from the base system (although this isn't a requirement)
- User defined values could be handled by the options system - instead of only be allowed in make.conf
- Handles default values from the environment - so default values from /etc/make.conf could be marked.
Solved Concerns
- This is not vaporwhere - a prototype exists with some positive feedback so far
Unsolved Concerns
- How to implement the binary into bsd.mk.ports
- How the binary could/should be added to older BSD versions
Things the system should do (AKA a spec)
- Provide a system for the ports system to specify different types of options
- Figure out the default options from the environment
- Provide the ability to change the values via a menu interface
- Output the final values in the ports db options format
- Provide a method to cancel the changes
- Provide the ability to have some a long helptext
- Provide the ability to accept or reject the port's license from the same menu
Implementations and patches
Ports affected
All ports are effected by this change - even if they don't use options