On Tuesday 11 January 2005 21:15, Francesco Riosa wrote: > Trying to keep all toghether, there is still one my.cnf file and one > /etc/init.d/mysql script (plus simlink, like net.eth*)
Hrm ... SLOT'ed packages aren't allowed to overwrite files installed by other packages (including versions of itself in other SLOTs). This would need fixing. > The only drawback I can see is having a lot of mysql*-X.Y and symlink > files instead of mysql* but it seem reasonable o me. There are a number of packages which have optional support for mysql. How many of them install if you only have MySQL 4.1 installed on a box using your ebuild? We do already have the 'mysqli' global USE flag, so that ebuilds can differentiate between depending on MySQL 4.0 and 4.1. Personally, after the experience of supporting PHP and a SLOT'ed Apache, I'm not sure it's such a good idea to SLOT major packages like MySQL. SLOTing major packages works, but the user experience is ... kludgy I guess is the word. We end up using USE flags and global calls to has_version() (which is a QA violation) to make the best of it. The improvement needed in Portage seems very straight-forward. Heck, maybe Portage already works this way and I haven't realised it ;-) Assume B depends on A, and that A is a SLOTed package. If A is already installed, only attempt to install versions of B which depend atoms match against the version of A already installed. When upgrading B, don't upgrade A if the upgrade will install A into a different SLOT. If the user wants to upgrade A to a version that goes into a different SLOT, require the user to explicitly upgrade package A. USE flags can be used by the user to choose which version of A he gets to start off with. I don't think we could ever drop those USE flags, because they'll still be needed by B's DEPEND statement in some cases. The global has_versions() are no longer required (they can be moved into src_compile(), where they'll still be needed for passing the right options to configure). There's probably a corner case or two that I've overlooked, but if that was ever added to Portage, that'd make a world of difference to the Apache and PHP packages. Best regards, Stu -- Stuart Herbert [EMAIL PROTECTED] Gentoo Developer http://www.gentoo.org/ http://stu.gnqs.org/diary/ GnuPG key id# F9AFC57C available from http://pgp.mit.edu Key fingerprint = 31FB 50D4 1F88 E227 F319 C549 0C2F 80BA F9AF C57C -- -- [email protected] mailing list
