Red Hat Bugzilla – Bug 439210
multiple problems with repository viewer
Last modified: 2014-03-16 23:13:17 EDT
Description of problem:
1) It allows users to enable debuginfo repos, which likely won't help them much
other than increasing all update times
2) It allows users to enable source repos, which doesn't really make sense at all
3) If you try to enable a repo, you get an error:
Backends should send status <value> signals for repo-enable!
If you are:
* Calling out to external tools, the compiled backend should call
* Using a scripted backend with dumb commands then this should be set at the
start of the runtime call
- see helpers/yumBackend.py:self.status()
Version-Release number of selected component (if applicable):
Steps to Reproduce:
TBH, why is packagekit complaining to *me* that one of its backends is broken?
We've already fixed the pk_backend_set_status thing in git (the messages are
just for developers, I'll turn them off for the release).
Do you think that we should hide the debuginfo and source repos completely or
make this configurable?
Not sure. TBH, ignoring them would be encoding some sort of Fedora-specific
repository layout information in the backend, which is kinda gross.
CC'ing other people for opinions.
Would it help if there was some sort of descriptive comment about each repo?
That way we can (hopefully) make it clear to the user what the repo is there for
and prevent them from shooting themselves in the foot?
Where would this come from? From the repo files themselves?
(Hey, I know. Let's move them to XML and intltool-ize them!)
Well, we can do the filtering in a fedora specific way (using the abstract
FILTER_DEVELOPMENT) which is very easy to do.
What about just having a ticky box in pk-repo with "[ ] Show development
repositories" and classing -debuginfo and -source as DEVELOPMENT?
That will catch the people confusing 'rawhide' with 'Fedora development'.
(In reply to comment #5)
> Where would this come from? From the repo files themselves?
> (Hey, I know. Let's move them to XML and intltool-ize them!)
Well, we can try to put in more descriptive text in the name= line. Save the
terseness for the [foo] part. But yeah, English only for the lose.
Really, you can't rely on a name or a [foo] section to be sure that "these are
source packages" or "these are debug packages" because really, one can put any
URL there they want, and some have all of those types of packages mixed in together.
Jesse, is there a way we could have a type= parameter?
Where type is:
That should be pretty easy to add, no?
The only problem is that there's no logical limitation on what can be in a repo.
you can have source, binary, debug, etc rpms in one repo w/o any sort of logical
so, we can put a type on it but it would just be an arbitrary label.
Sure, I don't think type would have to be mutually exclusive. What about:
The problem is that you're trying to define what will be in a remote repository,
that you have no control over. I could /say/ that the development URL I'm
pointing at will be 'normal', but I can't prevent the person who runs that repo
from dropping debuginfo packages into it, or source packages.
Well, the ultimate use case is a repo viewer with three entries:
[X] Fedora 9
[X] Livna 9
[ ] DAG 8.92
[ ] Show detailed repository information
And if the last checkbox is enabled, then the -source, -debuginfo and such are
Created attachment 302057 [details]
what PackageKit git looks like
This is what the UI looks like when we filter out all the ~devel repos - this
isn't typical for rawhide users but cuts the list down to a few entries on F8
and F9. The average user doesn't care about -source repos much at all.
FWIW, I used this metric:
def _is_development_repo(self, repo):
When the repos can give us more information, then we can use that.
I've merged this into 0.2.0 - which will be put into rawhide when it re-opens.
F9 still has the long list of repos as is based on the 0.1.x codebase.