Mailinglist Archive: opensuse (4054 mails)

< Previous Next >
Re: [opensuse] The goodness of Smart (was: Upgrade from 10.0 to 10.1 using apt?)
  • From: Pascal Bleser <pascal.bleser@xxxxxxxxx>
  • Date: Sat, 07 Jan 2006 15:47:49 +0100
  • Message-id: <43BFD495.20804@xxxxxxxxx>
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Richard Bos wrote:
> I'll follow. Let me start with saying that I want to see smart and yum
> succeed. I look forward to the day that there is one format package repo
> format for suse operational.
>
> Op zaterdag 7 januari 2006 01:54, schreef Pascal Bleser:
>> So about the question what can smart do that yast2's package manager
>> doesn't.
>
>> There is still much room for improvements, no question about that, but what
>> Christoph meant and what I'd also like to ask: please test it and file bug
>> reports. And if you'd like to contribute in other ways: coding on the
>> project, translating locale messages, writing documentation.
>
> What does not work: are urls with login and passwords, like:
> ftp://login:password@xxxxxxxxxxxxxxx/dir
> This works with yum

Ok, good point to check.
If it doesn't work, it should be added (not very difficult though, it's a central component that
handles all file retrieval in smart).

> Why does smart not read the /etc/yum.repos.d directory? I now have to define
> the repositories twice :(

Because smart doesn't use yum.
That's one of the nice things about smart: repository metadata support for apt-rpm, rpm-md/yum,
yast2, urpmi, ... ... has been implemented in pure Python code, independently of whether you have
yum, apt-rpm, yast2, urpmi, etc.. installed or not.
Also, it has a very minimal set of dependencies (python >= 2.3, python-rpm).

Note that the code to import yum.repos.d/* could be added.
The question is whether one really wants that :)

I use rpm-md repositories without having configured any repository in yum.

How do you want to sync between the smart channels and yum yum.repos.d/* ?
- - at installation of smart, once
- - every time smart starts up, but only add channels for yum repos that are missing (as channels)
don't remove anything
- - same as above but with prompting the user for every channel
- - explicitely, with a "reposync" (just an example ;)) command in smart
... ?

What could be done very easily is a set of scripts that import
- - yum (/etc/yum.repos.d/*)
- - apt-rpm (/etc/apt/sources.list + /etc/apt/sources.list.d/*)
- - yast2 (installation_sources -s)
repositories into smart.

I already hacked one (not much tested though) for apt-rpm:
http://linux01.gwdg.de/~pbleser/files/smart/apt-sources-to-smart.sh
And there's another one written by oc2pus: http://www30.websamba.com/texpert/

Same could be done for yum and yast2.

Quickly hacked a prototype for importing yast2 sources:
http://linux01.gwdg.de/~pbleser/files/smart/yast2-sources-to-smart.sh
It even imports the "autorefresh" and "enabled" information.
Run with -n for a dry run.
Disclaimer: early alpha version, untested, use at your own risk ;)

> Smart is not integrated with suse... I mean the "OK" button is at the right
> side while suse (kde) has it left... (nothing will be done about it, I
> know).

Hm. File a bug ? ;)
Maybe a SUSE-specific patch into the smart.rpm, but I'm not sure it's a good idea to have a
different UI on SUSE than on other distros ;)

> There is a field labelled alias and another one name (when adding a channel).
> I think the name field should be labelled "description". If that would
> happen the alias field could be labelled "name"...

Yes, might be easier to understand.

>> So, what's so nice about Smart.
>> * mirrors
>> - mirrors are managed globally, for every single operation, because you
>> just define URL mappings (e.g.
>> "http://ftp.gwdg.de/pub/opensuse/distribution/SL-10.0-OSS"; ->
>> "http://ftp.belnet.be/packages/opensuse/distribution/SL-10.0-OSS";), that's
>> it, it will apply for every file retrieval because it's managed by a
>> central component
>
> Is there a central directory that shows which repositories are available?

No. Remember that smart is not SUSE-specific in any way and already used since some time by people
on other distros.

> Something like the /etc/yum.repos.d directory but than on a central server.
> (Perhaps start on wiki page)? packman has a mirrorlist file, I have a just
> created a repodata file, there is one for kolab, but where can these be
> registered? How do we know what is available, without searching the whole
> internet? Perhaps Eberhard can make a directory that hold links to all the
> repodata directories on his server?

Similar to the list of repositories on http://opensuse.org

Note that smart has the nice ability to retrieve a list of repositories from a text file, e.g.:
smart channel --add http://linux01.gwdg.de/~pbleser/files/smart/my-smart-channels.txt

>> But it has already proven to be very solid and consistent in terms of
>> package management and dependency handling (especially 0.41 that sorts out
>> a lot of bugs that happened on SUSE Linux < 10.1 because of an older RPM
>> version).
>
> command line tool yummie :)
> Heh, why is the /etc/yum.repos.d so empty when it is installed?? Why does it
> not come preconfigured with information for base, security, and all the other
> goodies (of course they could all be disabled).

Smart does, because in my smart.rpm I add those channels (as well as my repo and packman).

>> http://linux01.gwdg.de/~pbleser/rpm-navigation.php?cat=/System/smart
> It was very easy to install with apt :)
> Do you have a yum repodata directory?

Yes, not much tested/used but should work:
http://ftp.gwdg.de/pub/linux/misc/suser-guru/rpm/10.0/RPMS
(as well as for 9.3, 9.2, etc...)

...

> What about the rpmkey rpms? Will they be supported? I saw that each rpmkey
> file has to be configured in the /etc/yum.repos.d/* files? Why is it that
> way, why should they be configured in those repository files?

That's a yum thing, not smart ;)

Smart has no rpmkey support AFAIK. Again, could be done as well.

> Sofar my ramblings. it nice to see that smart works now (this was not the
> case when a I tested version 0.2 (or something like that) some years ago)

;)

- --
-o) Pascal Bleser http://linux01.gwdg.de/~pbleser/
/\\ <pascal.bleser@xxxxxxxxx> <guru@xxxxxxxxxxx>
_\_v The more things change, the more they stay insane.
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (GNU/Linux)

iD8DBQFDv9SVr3NMWliFcXcRAp2RAJ489ZdWHVNORYrkYJx6RJuG0EBPXgCgmUNa
xqSxevDI5SZDoAVsQpFGjbw=
=URTw
-----END PGP SIGNATURE-----

< Previous Next >
Follow Ups