User:Ffesti/NewModel

This is a try to come up with a new view an packages. Thanks to Phil for pointing out some of the ideas. This is completely blue sky and there are right now no efforts to implement it in Fedora.

Layering

 * Solution collection
 * Solutions and Options
 * Products/Repos
 * Applications
 * Building blocks
 * Packages

Solution
A solution is a set of packages for a given purpose.


 * Name
 * Description
 * Version?
 * Requires: other solutions
 * Requires: building blocks
 * Requires: packages


 * May cross repositories/products
 * Easy to create
 * Easy to share
 * Easy to understand and verify

Option
A solutions that


 * Another Solution
 * Is required by
 * declares as Option

Basically a UI thing to sort things. Not all requirements between solutions create options.

Building block

 * name
 * version?
 * set of packages
 * not useful on its own
 * hidden in the UI (normally)
 * used by solutions
 * within one repository?

Application

 * atomically piece of useful software
 * includes requirements on package level

Product

 * yum repository
 * from one vendor
 * contains packages
 * get, buy or enable in one piece

Solution collection

 * Repository containing solutions
 * may be not a yum repo
 * should not contain harmful content
 * no software
 * no scripts