From owner-freebsd-ports@FreeBSD.ORG Wed Aug 24 07:34:37 2011 Return-Path: Delivered-To: ports@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 58F52106566C for ; Wed, 24 Aug 2011 07:34:37 +0000 (UTC) (envelope-from l.pizzamiglio@bally-wulff.de) Received: from mail2.bally-wulff-berlin.de (mail2.bally-wulff-berlin.de [212.144.118.9]) by mx1.freebsd.org (Postfix) with ESMTP id E6A158FC12 for ; Wed, 24 Aug 2011 07:34:36 +0000 (UTC) Received: from bwex.bally-wulff.de (unknown [192.9.204.106]) by mail2.bally-wulff-berlin.de (Postfix) with ESMTP id 8C22A99052; Wed, 24 Aug 2011 09:02:15 +0200 (CEST) Received: from pizzamig.bally.de ([192.9.205.30]) by bwex.bally-wulff.de with Microsoft SMTPSVC(6.0.3790.4675); Wed, 24 Aug 2011 09:02:15 +0200 Message-ID: <4E54A1F4.50200@bally-wulff.de> Date: Wed, 24 Aug 2011 09:02:12 +0200 From: Luca Pizzamiglio User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:6.0) Gecko/20110817 Thunderbird/6.0 MIME-Version: 1.0 To: FreeBSD Ports References: <4E53BB67.1040805@bally-wulff.de> In-Reply-To: <4E53BB67.1040805@bally-wulff.de> X-Forwarded-Message-Id: <4E53BB67.1040805@bally-wulff.de> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 8bit X-OriginalArrivalTime: 24 Aug 2011 07:02:15.0845 (UTC) FILETIME=[C19F2550:01CC622B] Cc: "Conrad J. Sabatier" Subject: [Request for Comments] Add a "AFFECT" relationship between ports X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Aug 2011 07:34:37 -0000 Hi people, I would like to propose a new "feature"/"ports relationship"/"variable" on ports management. We could call this feature "AFFECT" and it exports a kind of dependency. I'd explain the behavior with an example: nvidia-driver port. During the installation process, this port moves the official Xorg openGL installing the NVidia ones. Removing nvidia-driver port, the old official libraries are restored. libGL port & C. ignore this kind of stuff and if you update them with the nvidia-driver port installed, you overwrite the Nvidia libraries and the restore procedure (of the nvidia-driver) restores the not-updated official Xorg libraries. This kind of relationship is not a CONFLICT or a DEPEND, it's something different. nvidia-driver AFFECT graphics/libGL, but graphics/libGL must ignore the presence of nvidia-driver. The AFFECT should state: libGL is affected by nvidia-driver, then the update procedure is: * deinstall nvidia-driver * update libGL * reinstall nvidia-driver Comments & ideas are really welcome! If you agree, we could start implementation&test of this feature. Best regards, Luca Conrad On 08/23/11 11:38, Conrad J. Sabatier wrote: > On Tue, 23 Aug 2011 10:53:48 +0200 > Luca Pizzamiglio wrote: > >> On 08/23/11 10:35, Conrad J. Sabatier wrote: >>> On Tue, 23 Aug 2011 10:08:22 +0200 >>> Luca Pizzamiglio wrote: >>>> >>>> There is no conflict: >>>> you need to install openGL before and then nvidia Driver. >>>> the nvidia driver install procedure renames the original library >>>> and install the nvidia version one (look at /usr/local/lib and >>>> /usr/local/lib/xorg/modules/extensions, there are XXX-lib* old >>>> library) both libraries has the same API, but the nvidia one uses >>>> some legacy stuffs on the nvidia kernel driver. >>> >>> Yes, of course, it works fine *if* you make sure to install libGL >>> first. The thing that concerns me is if at some point, say, during >>> a forced portupgrade, the libGL port may overwrite the nvidia >>> library once again. >>> >>> It just seems that there should be something in place to prevent >>> this from happening. >>> >>> Tschüß! :-) >>> >> >> Yes, you're right. If you update openGL library later, NVidia driver >> installation is brocken. > > Yes, I've already been bitten by this at least once. > >> The right procedure should be: >> deinstall nvidia driver >> upgrade openGL libraries >> reinstall nvidia driver >> >> This is a kind of "half-conflict": openGL library "conflicts" with >> nvidia driver, but nvidia driver doesn't. >> Or: nvidia-driver installation should block openGL library upgrade. >> Or: nvidia-driver should be deinstalled before and reinstalled after. >> >> This is a more general problem, ports infrastructure doesn't model >> this kind of dependencies/conflicts. >> >> I don't think openGL library maintainer wanna manage others ports >> that breaks its libraries... >> >> We should propose to add to the ports infrastructure this kind of >> relationship (AFFECTS could be a name) and its management... > > That would be an interesting proposal to put forth. Not sure how warm > of a reception it will be met with, though. :-) > > Do we need to map out some sort of formal proposal, including a > possible implementation, or just toss the idea out for discussion? > What do you think? > >> Ciao! (I live in Germany, but I'm still Italian :-) > > Ah, OK. :-) Well, in that case...Ciao to you, too! :-) >