Needs : there are many many packages.
Simple plan : applications vs other packages¶
An application is just a special kind of package. A package is either an application or isn't.
In this simple view, desktop environments, CLI packages, GUI packages, are all seen as applications.Here is what we do for now : applications are packages which :
- do not begin with "lib"
- do not begin with "locales-"
- do not end with "-devel"
- do not end with "-debug"
- use dependencies (no package depends on an application, except for some meta-packages)
- see how rpmdrake differentiates GUI applications from other packages
- use a blacklist and a white list to override from the above rules, and let some contributors manage the lists.
Other ideas ?
Other (complementary plan) : use package popularity to sort results¶
Even when a request gives many packages which all got the "application" flag, sorting by package popularity (provided we have a way to measure it) can help to show the most sensible results first. It's a bit like Google's pagerank system.
Prospective studies :¶
Group similar packages together¶See :
Separate into more categories¶
- GUI applications
- CLI applications
- server packages
- desktop environments / window managers
- kernels and drivers
- core system components
This can a bit redundant with package groups, but not totally.
It's really hard to categorize easily