From owner-freebsd-ports@FreeBSD.ORG Thu Mar 14 08:31:48 2013 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by hub.freebsd.org (Postfix) with ESMTP id 4FF74D53; Thu, 14 Mar 2013 08:31:48 +0000 (UTC) (envelope-from utisoft@gmail.com) Received: from mail-ie0-x232.google.com (mail-ie0-x232.google.com [IPv6:2607:f8b0:4001:c03::232]) by mx1.freebsd.org (Postfix) with ESMTP id 00EF4B46; Thu, 14 Mar 2013 08:31:47 +0000 (UTC) Received: by mail-ie0-f178.google.com with SMTP id c13so2632328ieb.37 for ; Thu, 14 Mar 2013 01:31:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=YYHH8y1goJ1whobcO7l4l4/R1xYu2XlyC5KDRzC6W4U=; b=CaeI+j0n8o5BA50f/rtbODxT3VO5pWct/R6MOchxOOaCqQzrNueGoBu2khmBYjHk+h 91Go4BWG01JYjAlXpybPVTxG82KRLPh0DP1MQNBk4/ZFA9QtMGOalSOFgfhdzW2h8f40 Y3x/+FnM/QJbjy/34t7TRKABUXAHHs7DMf/MwtcuMlkCMZ0DA372H7meok8vTbuc+BB0 lYNsQTwr0hIbKxDXIBT+e3+bq/4hnaV7lxn869OVQLaL3uoVlOSVMtq9CAfSGVPfB6lF cf9P6ohXErQEnebfTmZ9JqdsCyWqjAthxVSzA0uzOYTRVST91B6z+4kmugqZEHrhjmfr EKdg== MIME-Version: 1.0 X-Received: by 10.50.42.165 with SMTP id p5mr19845815igl.75.1363249907733; Thu, 14 Mar 2013 01:31:47 -0700 (PDT) Received: by 10.64.63.12 with HTTP; Thu, 14 Mar 2013 01:31:47 -0700 (PDT) Received: by 10.64.63.12 with HTTP; Thu, 14 Mar 2013 01:31:47 -0700 (PDT) In-Reply-To: <51418671.9030001@ish.com.au> References: <51417D87.8030901@ish.com.au> <20130314075009.GE53963@ithaqua.etoilebsd.net> <51418671.9030001@ish.com.au> Date: Thu, 14 Mar 2013 08:31:47 +0000 Message-ID: Subject: Re: pkg MANIFEST documentation From: Chris Rees To: Aristedes Maniatis Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.14 Cc: Baptiste Daroussin , FreeBSD Mailing List X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Mar 2013 08:31:48 -0000 On 14 Mar 2013 08:12, "Aristedes Maniatis" wrote: > > On 14/03/13 6:50pm, Baptiste Daroussin wrote: >> >> On Thu, Mar 14, 2013 at 06:34:31PM +1100, Aristedes Maniatis wrote: > > >>> 1. What is the syntax of "deps" when I want to depend on Java, but not specify the version? I've tried this: >>> >>> deps: >>> javavmwrapper: {origin: java/javavmwrapper} >> >> >> Here name and version are mandatory, this is to allow pkg add (used by the ports >> tree, tinderbox and pointyhat) to be able to look at a package around the >> package you want to install when doing pkg add ./yourpkg.txz it will try to get >> ./javawrapper-version.txz if exists. >> >> Compatibility needed. > > > > So effectively it is impossible to build a package outside of the machine on which you are targeting? (or a controlled build farm like poudriere where everything is always the most recent version). I want the package to require only "Java" but instead I have to specify exactly the version of every dependency. Which of course I cannot know. > > I don't see how this relates to "pkg -o :". In that case you only need to use -o if the dependency name changes, not the version. > > If I just use the oldest compatible version of javavmwrapper, I assume pkg will happy cope with a newer version of javavmwrapper installed? > > > > > >>> Secondly, I am confused by the tar packaging itself. It appears that my package only works if I build it using >>> >>> tar Pf packge.tar / >> >> >> >> Why are you trying to pack using tar and not pkg create directly? > > > > In this case because I am performing the build on a server which isn't FreeBSD. And I figured "How hard would it be to just write out the MANIFEST file and tar/xz up the result." The answer is "Very hard." > > For what it is worth, I didn't need to do this when I assembled the old pkg_ format by hand. It worked happily with relative paths. > > Is this change in requiring absolute paths a bug or a new feature? > > > >>> >>> Is the correct way to chroot to a folder, assemble all the files relative to root and then tar in this way? Again, why doesn't pkg cope with relative tar pathing? Isn't that the whole point of 'prefix'? >> >> >> Not at all package without prefix is broken by design because 90% of the >> binaries will have hardcoded prefix. To install respecting chroot just pkg -c >> /mychroot/ install mypkg > > > This confuses me. The FreeBSD ports system does not respect 'prefix'? I thought that was a critical feature (although I don't personally use it). If this is broken by design, why do you have "prefix" as an option in the MANIFEST? Why is pkg making the breakage mandatory? > > When the binary package repository is brought back on line (I understand it is still dead after the hacking problem) will it not support prefix at all? Packages never supported PREFIX. You can change PREFIX in ports, at compile time, but once the compilation is done, changing PREFIX will break many compiled binaries. Chris