The Problem is applications in repositories provide a different UI for different input:
Regular X11 / desktop
If a user is searching in Application Manager they only find based on one category: what the application does.
For UI-wise, best modularity is if applications use existing libraries allowing multiple UI backends based on what user prefers. This'd make porting to/from easier. On Maemo 5 and N900, most end users will prefer finger UI.
Because we assume the user is by default interested in finger UI applications only we do not show the other, but allow the user to find the other, preferably in a not-too-cumbersome manner. If we provide the other ways of interaction we want to inform the user what type of interaction is used.
The Question is how to provide this?
Suggestion #1: Invalid / WONTFIX because [...].
Suggestion #2: Should it be combined with usage of tags? Yes, ...
Suggestion #3: Answer Yes to Suggestion #2 with following implementation:
Several tags are used and shown as described hereunder
Input methods. Examples above. Another type is 'remotely used' in case of daemon such as OpenSSH server.
Hardware used. Examples: GPRS, Bluetooth, GPS.
Show purpose. Examples: Navigation, multimedia player.
Show frameworks and libraries used. Examples: GStreamer, UPnP, Qt.
Show programming language (in extended version). C, Python, Java.
Show protocols used (in extended version). TCP/IP, NMEA 0183
Suggestion #4: Using Suggestion #3, but allowing the user to search through Catalog in different ways. User selects this (FIXME: WHERE?) and then uses this method to find applications, or filter applications. IOW provides a way to use Tags or Capabilities.
Suggestion #5: Either with or without Suggestion #2 and/or #3 and/or #4 integrate with capability-based design or ACL of Harmattan.