From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from pigeon.gentoo.org ([69.77.167.62] helo=lists.gentoo.org) by finch.gentoo.org with esmtp (Exim 4.60) (envelope-from ) id 1JnG89-0002Ye-Bn for garchives@archives.gentoo.org; Sat, 19 Apr 2008 16:41:37 +0000 Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 9206BE03DC; Sat, 19 Apr 2008 16:41:35 +0000 (UTC) Received: from pollux.sshunet.nl (pollux.sshunet.nl [145.97.192.42]) by pigeon.gentoo.org (Postfix) with ESMTP id 4F78AE03DC for ; Sat, 19 Apr 2008 16:41:35 +0000 (UTC) Received: from localhost (localhost.localdomain [127.0.0.1]) by pollux.sshunet.nl (Postfix) with ESMTP id 95709580020 for ; Sat, 19 Apr 2008 18:41:34 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at pollux.warande.net Received: from pollux.sshunet.nl ([127.0.0.1]) by localhost (pollux.sshunet.nl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id L5OPyu-9kq4m for ; Sat, 19 Apr 2008 18:41:34 +0200 (CEST) Received: from [145.97.222.15] (15pc222.sshunet.nl [145.97.222.15]) by pollux.sshunet.nl (Postfix) with ESMTP for ; Sat, 19 Apr 2008 18:41:34 +0200 (CEST) Message-ID: <480A1FEE.4020604@gentoo.org> Date: Sat, 19 Apr 2008 18:38:06 +0200 From: "Marijn Schouten (hkBst)" User-Agent: Thunderbird 2.0.0.12 (X11/20080228) Precedence: bulk List-Post: List-Help: List-Unsubscribe: List-Subscribe: List-Id: Gentoo Linux mail X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org MIME-Version: 1.0 To: gentoo-dev@lists.gentoo.org Subject: Re: [gentoo-dev] Dependencies that're available at pkg_*inst References: <20080419053116.50e0ffe6@snowcone> In-Reply-To: <20080419053116.50e0ffe6@snowcone> X-Enigmail-Version: 0.95.6 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Archives-Salt: 4a7168ac-e0a5-410f-ac56-de14a28f3137 X-Archives-Hash: 429ff6eca5df29a7e6806d2b6b418bc8 -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Ciaran McCreesh wrote: | I'm rewording the PMS sections on dependencies to avoid permitting | overly lax circular dependency resolution. Which of these wordings is | accurate, given that usable means "has its RDEPENDs installed and | usable"? | | 1. During pkg_preinst and pkg_postinst, any package dependency that is | in both DEPEND and RDEPEND must be installed and usable. | | 2. During pkg_preinst and pkg_postinst, at least one of the following | conditions must be met: | a. every package dependency in DEPEND must be installed and usable | b. every package dependency in RDEPEND must be installed and usable | | Do not attempt to write on both sides of the paper at once. Every package dependency in DEPEND is installed and usable before src_unpack starts, right? So is the question here whether or not they can be uninstalled right before pkg_{pre,post}inst starts? I don't know what the general use of pkg_preinst is, but in pkg_postinst the package itself should be runnable, so its RDEPENDS should be installed and usable at this point. So perhaps we should define that "usable" means "each of its RDEPENDs is installed and has had its pkg_postinst function run". The recursion of that definition then comes from the requirement that RDEPENDs should be usable before pkg_postinst starts running. | For why this matters: | | cat/a-1: RDEPEND cat/b | cat/b-1: RDEPEND cat/a | | This is solvable. If package managers can't solve this, they can't | install Gnome off a stage 3... If only one of those packages has a pkg_postinst then it is still solvable. If they both have a pkg_postinst then one of those is probably not essential for the actual usability of the package and should be removed. A final possibility is that the pkg_postinsts are both necessary for a fully functional package but not for the functionality used in the other pkg_postinst. If this is the case, then perhaps we should specify deps according to which ebuild phase they are necessary for? cat/a: SRC_UNPACK_DEP="app-arch/unzip" SRC_COMPILE_DEP="dev-scheme/bigloo" SRC_INSTALL_DEP="" PKG_PREINST_DEP="" PKG_POSTINST_DEP="cat/b" RDEPEND="cat/b" and then cat/b would say: PKG_PREINST_DEP="" PKG_POSTINST_DEP="" RDEPEND="cat/a" Marijn - -- Marijn Schouten (hkBst), Gentoo Lisp project, Gentoo ML , #gentoo-{lisp,ml} on FreeNode -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.9 (GNU/Linux) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org iEYEARECAAYFAkgKH+4ACgkQp/VmCx0OL2xJOwCfdEO5IhWbjPvFRidzgdyFanEd 0v4An26a2XJ9Y4hwDz/bpqeUWeDMXAuk =v/UL -----END PGP SIGNATURE----- -- gentoo-dev@lists.gentoo.org mailing list