Marcus Meissner wrote:
One question we have is how the new tools rug, zen-updater and zmd compare to what we had before with YaST Online Update and suseWatcher. We are interested in every feedback ranging from architecture, design or used standards and their enhancements.
It should be possible to disable and remove the whole ZMD stuff and still be able to work from commandline.
Indeed.
rug is hardwired to ZMD though, AFAIK.
What's the added value of ZMD on 10.1, given that the resolver engine
is in zypp anyway ?
The only advantage of having ZMD is to be able to manage SL 10.1
instances from Zenworks (for which you have to buy licenses from
Novell). Or is there anything else ?
If that's the only real advantage, I consider it a pretty high price
to pay, because it's a rather useless daemon running on the system.
At the very least, it should be optional (and turned off on every SL
installation when you didn't buy Zenworks).
Though another point is that rug mandates ZMD.
Unfortunately rug is the only CLI tool to install packages on 10.1
(well, there's y2pmsh, which works but... it's the old engine ;)).
Other question: is there any particular reason for yast2 to use zypp
directly instead of talking to ZMD [1] ?
[1]http://files.opensuse.org/opensuse/en/7/78/Package-management-in-code10.png
IMHO, it looks like either
a) it's a hack
b) it's necessary because there's no way to have yast2 talk to ZMD
because ZMD is implemented with Mono
c) both ;)
Basically, without much background information on ZMD nor YaST2, nor
the reasons for implementing it that way as of 10.1, I would say that
there are 2 alternatives:
1) make yast2's software management module "simply" a frontend to ZMD,
as rug does
2) make yast2 use zypp directly, port y2pmsh to zypp and disable
ZMD/rug/parse-metadata/... alltogether
What are the reasons against those two options ?
Though as of now, the culprits seem to be
1) a buggy and/or unoptimized libzypp
2) C++ helpers like parse-metadata that eat up huge amounts of resources
3) a very problematic repository syncing implementation, between
yast2<->zypp<->ZMD (which will always be a hack as long as yast2
bypasses ZMD and/or repository management isn't done by zypp)
Am I missing something ?
cheers
--
-o) Pascal Bleser http://linux01.gwdg.de/~pbleser/
/\\