Software Portal
From openSUSE
| Software Portal: Ideas - Look - Meetings - Setup - Tasks |
Contents |
[edit]
openSUSE Software Portal / Application Manager
[edit]
Goals
The goals are to provide the best possible end-user experience with regards to package installation/upgrading at large.
The idea is to provide several software components and services:
- a server backend that aggregates various kinds of information,
- package repositories: available repositories, available RPM packages, new versions, new packages, ...
- application metadata sources: e.g. freshmeat.net XML package records, releases, ...
- display security patch information/updates from the online update repository
- additional information that is not contained in the RPM metadata nor in the package repositories:
- screenshots
- logo
- comments
- ratings
- links to reviews, tips&tricks, themes, ...
- links to openSUSE web forum threads about the application or individual releases
- Novell Bugzilla entries related to the application or individual releases
- (...)
- a web client
- easily search for packages (package names, package descriptions, files provided by packages, possibly comments, etc..)
- easily browse "applications" by category and/or tags, with a logo, screenshots, "related" links, ...
- active user interaction: post comments, ratings, ...
- one-click installation/upgrade through
yast2-mpp
- a desktop client (GTK/Qt/YaST)
- browse applications
- review and apply new releases (updates and upgrades), new packages, ...
- use data provided by the server backend (through Web Services)
Read the transcript of the first online meeting for further details.
[edit]
Related Links
- very rough and basic mockup of the web client, just to give an idea
- Justin has written a few slides about his current plans for the desktop client
- a first shot at the domain model (using UML)
- Benjamin's one-click installer module for YaST2 (
yast2-mpp) - Web-based package search (
webpin) - One-click Compiz Fusion installer
- Proposed enhancements
[edit]
Technical Aspects
- the server backend and the web client will be developed using
- Java (6, the GPL'd version 7 later),
- Spring Framework for Dependency Injection, declarative transactions, ...
- the awesome Apache Wicket web component framework
- Maven 2 for build and dependency management
- currently, the plan is to develop the desktop client using Python (still to be discussed though, there are currently no YaST2 bindings for Python)
- the server backend will expose information to other clients (desktop client, other websites, ...) through Web Services (SOAP)
[edit]
Current Development
See Software_Portal/Setup for information about the current development and how to run/test.
[edit]
Current Short-Term Roadmap
- set up the project infrastructure (SVN repository, mailing list, ...)
- make noise about the project to gather interested developers, web designers, artwork designers, domain experts, people with ideas, ...
- create an initial domain model for the server backend
(*) requires ICS account
[edit]
Status
[edit]
Partially Functional
- rpm-md repository import/refresh
- Application: list, add, remove, edit, search, screenshots, rating, tagging (partial, no list per tags yet)
- Repository: add, remove
- Application Packages
- Package Filelists
- Application Search
- Package Search
- File Search
- User: list, add, remove
- login and user role based access restriction
- YMP generation
- Debian repository format importing
[edit]
Demo
[edit]
Current Tasks
- .desktop file indexing.
- Files-in-package display
[edit]
Screenshots
[edit]
Brainstorming
- use Software_Portal/Ideas to track ideas, suggestions, brainstorming
- Brainstorm ideas on the Software_Portal/Look
[edit]
Meetings
No meetings are currently scheduled.
[edit]
Archive/logs
- #opensuse-project, Saturday May 12, 2007 19:00 GMT: Transcript

