smart should correct incorrect repository type

Bug #406504 reported by Chelmite
12
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Smart Package Manager
New
Wishlist
Unassigned

Bug Description

I manually entered a new channel with url ftp://ftp5.gwdg.de/pub/opensuse/repositories/KDE:/KDE4:/Factory:/Desktop/openSUSE_11.0/ as type "yast". It turns out that this repository is type yast-md. How's a normal user to know? Is it documented somewhere? Is every user expected to know (or use Google to bone up on what the different types are) the difference between the different repository types and know what files to look for to identify the repository type?

It would be really helpful if "smart" could be a bit smarter and check to see if the repository is what the user thinks it is, and offer to correct the type if the user guessed wrong.

Thanks. I hope this improves "smart".

I'm running Smart 1.2 on OpenSuSE 11.0, i586.

Revision history for this message
Anders F Björklund (afb) wrote :

It's hard to figure out the type of remote channels from just the URL. The makers of the repository can support a .channel (or .repo) file for use with Smart, otherwise you'll need to know the type of the repository. For local channels (i.e. paths such as directories or CD/DVD media), it can usually figure the channel type out.

Revision history for this message
Chelmite (steve-kelem) wrote :

Can't you open the url, see what files are there, and look for the files that define the different kinds of repositories? If there's more than one type, give the user a choice. I'll bet that will work in many cases. That would be easier than teaching every potential Smart user how to identify the different repository types.

Revision history for this message
Anders F Björklund (afb) wrote :

The error reporting could be better, if you give it something that isn't a channel description, such as a FTP listing or a HTML index. Currently it just looks at the "text" provided by it, and not at the URL itself.

-rw-r--r-- 1 ftp ftp 10140 Aug 04 11:55 KDE4-BASIS.ymp
-rw-r--r-- 1 ftp ftp 22852 Aug 04 11:55 KDE4-DEFAULT.ymp
-rw-r--r-- 1 ftp ftp 7691 Aug 04 11:55 KDE4-DEVEL.ymp
-rw-r--r-- 1 ftp ftp 11918 Aug 04 11:55 KDE4-GAMES.ymp
-rw-r--r-- 1 ftp ftp 313 Aug 04 11:55 KDE:KDE4:Factory:Desktop.repo
drwxr-xr-x 2 ftp ftp 73728 Aug 04 11:52 i586
drwxr-xr-x 2 ftp ftp 4096 Aug 04 11:52 ia64
drwxr-xr-x 2 ftp ftp 20480 Aug 04 11:52 noarch
drwxr-xr-x 2 ftp ftp 150 Aug 04 11:55 repodata
drwxr-xr-x 2 ftp ftp 16384 Aug 04 11:52 src
drwxr-xr-x 2 ftp ftp 81920 Aug 04 11:52 x86_64

Revision history for this message
Anders F Björklund (afb) wrote :

There is a function to detect local (disk) channels, there _could_ be one for remote (net) channels too.

def detectRemoteChannels(url):

Then again even the local channel detection is missing for lots of channel types (patches are available).

def detectLocalChannels(path, media):

Changed in smart:
importance: Undecided → Wishlist
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.