From owner-freebsd-pkg@FreeBSD.ORG Thu Mar 6 12:42:56 2014 Return-Path: Delivered-To: freebsd-pkg@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id 1D54B712 for ; Thu, 6 Mar 2014 12:42:56 +0000 (UTC) Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id CC743D01 for ; Thu, 6 Mar 2014 12:42:55 +0000 (UTC) Received: from compute1.internal (compute1.nyi.mail.srv.osa [10.202.2.41]) by gateway1.nyi.mail.srv.osa (Postfix) with ESMTP id 5694B20E9E; Thu, 6 Mar 2014 07:42:54 -0500 (EST) Received: from web3 ([10.202.2.213]) by compute1.internal (MEProxy); Thu, 06 Mar 2014 07:42:54 -0500 DKIM-Signature: v=1; a=rsa-sha1; c=relaxed/relaxed; d= messagingengine.com; h=message-id:from:to:cc:mime-version :content-transfer-encoding:content-type:subject:date:in-reply-to :references; s=smtpout; bh=aIQSAikm/zCXGtIlWymGoGaJWnk=; b=luzWb sW6Y+RQhMTMEAE0A1xuB3X+uNk2iflSJLCvJXye2sD1zN2uJ0xixiN5w6+xnkG+/ u+ZMcEIHDm7C9ULUdwZHy86UGbxxznJD7JZLkHQrzxRWT/WJU5lCkY49055ZBBH3 0FZZBk2GqDhhD9hj7q8Of1WzKyhfPe05ZYWlA8= Received: by web3.nyi.mail.srv.osa (Postfix, from userid 99) id 3254D11740E; Thu, 6 Mar 2014 07:42:54 -0500 (EST) Message-Id: <1394109774.16193.91292069.5503DEE2@webmail.messagingengine.com> X-Sasl-Enc: Z1jCYoEqVfNX0Tc4v3zY2gKl9/J3Mo28wjfysVp8UIsL 1394109774 From: Mark Felder To: endzed@gmail.com (=?utf-8?Q?=E3=83=84?=) MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" X-Mailer: MessagingEngine.com Webmail Interface - ajax-4527a23f Subject: Re: pkg upgrade conflict Date: Thu, 06 Mar 2014 06:42:54 -0600 In-Reply-To: <2D9C227C-7C23-4199-A1FE-114EFAF59C04@gmail.com> References: <5943C298-6620-433E-A14D-9D1A5BB03B44@gmail.com> <1394039996.26987.90950985.3D7B5FE0@webmail.messagingengine.com> <2D9C227C-7C23-4199-A1FE-114EFAF59C04@gmail.com> Cc: freebsd-pkg@freebsd.org X-BeenThere: freebsd-pkg@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list List-Id: Binary package management and package tools discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 06 Mar 2014 12:42:56 -0000 On Thu, Mar 6, 2014, at 2:20, (=E3=83=84) wrote: >=20 > Le 5 mars 2014 =C3=A0 18:19, Mark Felder a =C3=A9crit : >=20 > > On Tue, Mar 4, 2014, at 7:37, (=E3=83=84) wrote: > >> I'm facing this : > >>=20 > >> Conflict found on path /usr/local/bin/php between php5-5.4.25(lang/php= 5) > >> and php53-5.3.28(lang/php53) > >>=20 > >>=20 > >=20 > > Are you trying to make php 5.3 the default version for everything in > > your repository? If so, you need to override PHP in your poudriere > > make.conf > >=20 > > DEFAULT_VERSIONS=3D php=3D5.3 >=20 > I have 40+ boxes, some are still running 5.3 and other are running 5.4, > thus I was looking for a way to use a single repository.=20 >=20 > Unfortunately and as far as I understand - I'm just beginning with pkgng > - it seem not possible because pkg set only affect installed pkg and not > new pkg, right ? As a consequence new pkg installation is trying to > install dependencies as well, in my case pecl-memcache want php5 and not > php53... > I can't understand why such an annoying limitation already - it was not > the case when using ports directly - but anyway the fast fix seem to > build 2 separate repositories. I'm welcome to any other idea of course... >=20 You're right, you used to be able to trick pkg_tools into doing what you want. But then you'd have an inconsistent set of packages with broken dependencies and all sorts of fun things which eventually leads to endless mailing list posts when things really go pear shaped. Consistency and correctness are among the goals of pkgng. There is no option for you at this time but to run multiple repositories. I feel your pain -- I have to run about 8 repositories at work... But there is a light at the end of the tunnel! Bapt & co have plans to introduce a PROVIDES framework so either php 5.3 *or* php 5.4 could _PROVIDE_ "php". This would allow you to run one repository. The ports framework and pkg_tools were stagnant for a very long time. The core ports team are doing their best to introduce modern package management practices as quickly as possible. It's very difficult when we have 20,000+ ports to herd into order. The ride may be a bit bumpy for now, but the payoff will be big. :-) > Beside this and since I need to build a repository for each box > specifics, i guess I'll soon need to build a repository per box... so I > wonder if it is possible to use a generic repository pkg definition that > include the hostname, i mean : >=20 > today my repository definition contains=20 >=20 > poudriere: {=20 > url : > "pkg+http://xyz.invalid/poudriere/${ABI}", > enabled : yes, > mirror_type : "SRV" > } >=20 > is there a way to have something like this (already tried it, doesn't > work because ${HOST} env var is not expanded) >=20 > poudriere: {=20 > url : > "pkg+http://xyz.invalid/poudriere/${ABI}/${HOST}", > enabled : yes, > mirror_type : "SRV" > } >=20 Well, the way I do it is have my main poudriere.d/make.conf and then poudriere.d/php53-make.conf. In this config file: # override php version from regular make.conf .undef DEFAULT_VERSIONS DEFAULT_VERSIONS=3Dmysql=3D55 pgsql=3D92 apache=3D2.2 php=3D5.3 Now I can build a php53 flavor: pouriere bulk -j 92amd64 -z php53 -f /path/to/ports.txt On my clients using the php53 repository: "pkg+http://xyz.invalid/poudriere/${ABI}-php53", Hope that helps!