From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ricardo Wurmus Subject: installing python 2 and python 3 in the same profile Date: Wed, 7 Mar 2018 08:50:48 +0100 Message-ID: <87y3j4l3xj.fsf@mdc-berlin.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:41931) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1etTqr-000371-UA for guix-devel@gnu.org; Wed, 07 Mar 2018 02:51:06 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1etTqo-00007u-R1 for guix-devel@gnu.org; Wed, 07 Mar 2018 02:51:05 -0500 Received: from venus.bbbm.mdc-berlin.de ([141.80.25.30]:50744) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1etTqo-0008UX-Fv for guix-devel@gnu.org; Wed, 07 Mar 2018 02:51:02 -0500 Received: from localhost (localhost [127.0.0.1]) by venus.bbbm.mdc-berlin.de (Postfix) with ESMTP id 3CCCC3804B9 for ; Wed, 7 Mar 2018 08:51:00 +0100 (CET) Received: from venus.bbbm.mdc-berlin.de ([127.0.0.1]) by localhost (venus.bbbm.mdc-berlin.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id iurZd_PNhLyl for ; Wed, 7 Mar 2018 08:50:59 +0100 (CET) Received: from HTCATWO.mdc-berlin.net (puck.citx.mdc-berlin.de [141.80.36.101]) (using TLSv1 with cipher ECDHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by venus.bbbm.mdc-berlin.de (Postfix) with ESMTPS for ; Wed, 7 Mar 2018 08:50:59 +0100 (CET) List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Guix-devel Hi Guix, with the introduction of the collision avoidance feature that prevents you from installing different variants of the same package into a profile we made it impossible to install =E2=80=9Cpython=E2=80=9D and =E2= =80=9Cpython@2=E2=80=9D into the same profile. It still works with ad-hoc environments, but manifests containing both Python versions cannot be instantiated any more. This is too strict, because we know that these two variants don=E2=80=99t cause conflicts. What can we do to make this feature a little smarter? How about a package property that defines a =E2=80=9Cconflicts?=E2=80=9D = predicate that takes two packages of the same name and determines (e.g. by checking the major version) if these two packages are conflicting? If no such predicate is provided we assume that packages with the same name cause a conflict and prevent installation. -- Ricardo