Push repository Status to Users
One of the major complaints from users of the OBS is that it is too hard to identify which package out of multiple available ones is the correct, "safe", one to install. Also repository changes have no way of being noticed except with zypp refreshes suddenly start failing. The OBS provides an amazing, amazing service but still little complications arise; repositories disappear, change content, etc.
Three parts would need to be implemented:
A "status" or "stability" attribute for all repositories on the OBS. It could have values like
- UNSTABLE - This repository contains unreleased software / alpha-quality, possibly direct from source control. Bugs are to be expected. (e.g. KDE:Unstable:Distro )
- FACTORY (or LATEST?) - This repository contains the latest released software from this upstream project, to be submitted to openSUSE Factory. Bugs are possible, please report them. (e.g. KDE:Distro:Factory)
- STABLE - This repository contains software as it was in the last stable release of openSUSE, possibly with some additional bugfixes. Bugs should be infrequent. (e.g. KDE:Distro:Stable)
- HOME(?) - This repository is someone's Home project. Packages may be added and removed at any time. (maybe not necessary)
- VERSION(?) - This repository contains a snapshot of a specific released version of this software. (maybe not necessary) (e.g. KDE:SC:45)
- integration with software.opensuse.org and webpin - so repository state is clearly visible in search results, with the explanations of each state also visible on the same page.
- integration with Yast2/zypper - in the repository configuration, the repository state should be shown (does it need to be updated every so often? will repositories ever change their state?)
A NEWS/ChangeLog file/attribute for every repository on the OBS. This allows the repository owner/maintainer to communicate with the users letting them know of important changes that affect them. This would be downloaded with the repository metadata. This would need to be integrated into:
- OBS - easy way to edit this file should be possible (maybe it can be based on the repository description?)
- Yast2/zypper/updateapplet - when refreshing a repository, if a changed NEWS is detected, inform the user. something like > zypper ref Repository "foobar" has updated its NEWS file. [Read/Ignore/Skip]: where you can choose to read the changes now, leave it till next time, or ignore it completely.
- Significant changes to the purpose or content of the repository (e.g. KDE:Distro:Factory switching from KDE SC 4.5 to 4.6)
- Repository renames, obsoletions, deletions (e.g. KDE:KDE4:Community -> KDE:Extra)
Improved software search - software.opensuse.org and webpin could become a lot more new-user friendly. Some of my suggestions
- Exclude HOME and UNSTABLE projects
- Exclude debuginfo and debugsource packages by default
- Exclude devel packages by default
- Default to only searching for the current, released version of openSUSE.
- Display repository status as detailed above
I think this could make an absolutely huge difference to how users use the OBS, and most of all, make it a lot more safe - reducing complaints. I know that repository stability attributes have been mentioned by many people many times - but now the infrastructure is there - lets take it one step further... (BTW Forgive my KDE examples, it's just what I am familiar with)
Using the OBS becomes safer for new users, because they can
- Easily identify if it is safe to use packages from a repo
- Are notified when the repo changes
Therefore users will realise the huge number of packages available for openSUSE outside the distro.
Set user benefit
You can add different relations here, for example duplicate features, obs projects, urls...
To embedd an image you can simply upload it to paste.opensuse.org and add a relation to its raw url.
Set release notes
Last change: 23 months ago