From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by finch.gentoo.org (Postfix) with ESMTPS id 35CDE138334 for ; Thu, 19 Dec 2019 19:40:38 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 9B7CFE0920; Thu, 19 Dec 2019 19:40:33 +0000 (UTC) Received: from smtp.gentoo.org (dev.gentoo.org [IPv6:2001:470:ea4a:1:5054:ff:fec7:86e4]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 4050EE08A4 for ; Thu, 19 Dec 2019 19:40:33 +0000 (UTC) Received: from pomiot (c142-245.icpnet.pl [85.221.142.245]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) (Authenticated sender: mgorny) by smtp.gentoo.org (Postfix) with ESMTPSA id 19C3034D7A3; Thu, 19 Dec 2019 19:40:30 +0000 (UTC) Message-ID: Subject: [gentoo-dev] [EAPI 8 RFC] Install-time dependencies From: =?UTF-8?Q?Micha=C5=82_G=C3=B3rny?= To: gentoo-dev@lists.gentoo.org Date: Thu, 19 Dec 2019 20:40:26 +0100 Organization: Gentoo Content-Type: multipart/signed; micalg="pgp-sha512"; protocol="application/pgp-signature"; boundary="=-g87W9QE6g+RKu9dKhQDd" User-Agent: Evolution 3.32.5 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 X-Auto-Response-Suppress: DR, RN, NRN, OOF, AutoReply MIME-Version: 1.0 X-Archives-Salt: bbf12e5d-af55-42bc-906e-12622120aa4c X-Archives-Hash: 1c7bac5217a42068b6c020057c145e34 --=-g87W9QE6g+RKu9dKhQDd Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Hello, Here's another potential EAPI 8 feature I'd like to discuss. Please note that this is about *new dependency type*, so please don't hijack it into the big 'let's steal Exherbo syntax' debate. Bug: https://bugs.gentoo.org/660306 The problem =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D Right now we don't really have a clean way of specifying dependencies that are used during pkg_*inst (and pkg_*rm?) phases. So far RDEPEND was used as a 'close enough' alternative (except for a few developers who rejected it as 'invalid' and used DEPEND which is even more wrong).=20 However, this is no longer sufficient with EAPI 7 cross support. By design, pkg_*inst phases are run in build host's environment when cross is used (because obviously you can't run target host executables). Therefore, the relevant dependencies need to be installed into CBUILD root, while RDEPEND is installed into CHOST root. The proposed solution =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D The proposal is to add a new dependency type (codename: IDEPEND) which indicates dependencies used for pkg_*inst (and pkg_*rm?) phases. Those dependencies would be installed into CBUILD root (like BDEPEND), and therefore would be runnable from build host. Similarly to RDEPEND, they would be installed for binary package installs but not for pure binpkg builds (without install). Example: inherit xdg-utils IDEPEND=3D"dev-util/desktop-file-utils" pkg_postinst() { xdg_desktop_database_update } WDYT? --=20 Best regards, Micha=C5=82 G=C3=B3rny --=-g87W9QE6g+RKu9dKhQDd Content-Type: application/pgp-signature; name="signature.asc" Content-Description: This is a digitally signed message part Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- iQGTBAABCgB9FiEEx2qEUJQJjSjMiybFY5ra4jKeJA4FAl370ipfFIAAAAAALgAo aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldEM3 NkE4NDUwOTQwOThEMjhDQzhCMjZDNTYzOUFEQUUyMzI5RTI0MEUACgkQY5ra4jKe JA6KhAgA00vUOltlydZAC+fIrb9zpDBVWyyEunvxHHqWlW6xNdW6hyk0ReMF9cy3 UPJbHpwVbqlkxdyRx868HGddSpms2vKr7GPcXKYwbBTNL3FZISL6zhJC0V+1ukfW Cx53C0CmT/OtEyaVVaoo0FKPD7Yj9NGPzHvVMg4hLmcPDbykxnxHhSgNjySNDT+R fzRGLaeIe4zlMMvJ/7TikkOlU9L+4YD2gVnvStTyn/7itW2dlDBJlUZUMjeIdF5I 72YcXx9Sul2A9a0lKKBzM/S46lOc+E6U4ND4JC6V8SZqVvkEsAR0I5w9Is3hAAna 59XfI5NIk+td9C5HbwFFuCc+lTLNtw== =M9LP -----END PGP SIGNATURE----- --=-g87W9QE6g+RKu9dKhQDd--