From owner-freebsd-ports@FreeBSD.ORG Thu Sep 2 08:02:55 2010 Return-Path: Delivered-To: freebsd-ports@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0FAB41065767; Thu, 2 Sep 2010 08:02:55 +0000 (UTC) (envelope-from dforsythe@gmail.com) Received: from mail-iw0-f182.google.com (mail-iw0-f182.google.com [209.85.214.182]) by mx1.freebsd.org (Postfix) with ESMTP id 8A2388FC0C; Thu, 2 Sep 2010 08:02:54 +0000 (UTC) Received: by iwn34 with SMTP id 34so307121iwn.13 for ; Thu, 02 Sep 2010 01:02:53 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:mime-version:received:sender:received :in-reply-to:references:date:x-google-sender-auth:message-id:subject :from:to:cc:content-type; bh=tr8zbRaZDX1PLeL6c1OJ5fjRBmMdWyibo3csEqGG8Uk=; b=kOAy218uauRdzwYF9XTF7s0iQegHTiLz/+tiJySJ3oAfjdxuJ+ejtK5f9WfUihu9rc uwUPnGp9pYShZYyDLN6f9Wrfa+1JK8LlsMj4l6iK1MZHXrb6rPAHOTZEm0fbFmbFgZjZ WZtb6NTQuVaogjpqt5LxWppQl2Q3v8oE57GsE= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type; b=QFid+5hLjrBQMPbT/t6BoTXuX5TCfZjg0I42wMQxwA9L2jLHXcsbKldhByiDt2zEvC DZ3gyKLSnNhqbcf0T5975/KlI/XQHA5SbmVeAW+bUm0nGaboZ2ueOJ5LQ2YXL9S7B3HM o1WhTTCFHdPZoYaOrBd2TaW4fL0yJ7wc7bmQY= MIME-Version: 1.0 Received: by 10.231.19.198 with SMTP id c6mr9852022ibb.140.1283412898205; Thu, 02 Sep 2010 00:34:58 -0700 (PDT) Sender: dforsythe@gmail.com Received: by 10.231.59.143 with HTTP; Thu, 2 Sep 2010 00:34:58 -0700 (PDT) In-Reply-To: References: <20100819143830.GJ35140@azathoth.lan> <4C6DA0FA.7080203@DataIX.net> <20100820124332.GB1786@azathoth.lan> <86lj7o7e6e.fsf@gmail.com> Date: Thu, 2 Sep 2010 00:34:58 -0700 X-Google-Sender-Auth: AuYUzBbz-VxKuwGlS9KX3U7fqDM Message-ID: From: David Forsythe To: Ivan Voras Content-Type: text/plain; charset=UTF-8 Cc: Baptiste Daroussin , Florent Thoumie , Julien Laffaye , Garrett Cooper , Tim Kientzle , freebsd-ports@freebsd.org, Anonymous Subject: Re: what next for the pkg_install rewrite 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: Thu, 02 Sep 2010 08:02:55 -0000 Eh, why didn't this thread spring up before summer of code got under way (or during the many weeks it was running)? Concerning the database situation, sqlite would be cool. If we can ship the sqlite code either with libpkg or with the pkg_install tools, it's a win (I don't read licenses, someone will have to tell me if we can do that). Realistically, if this is doable, then there can be no opposition because the pkg_install tools as they are now create their own "database", so nothing is changing. Plus we'll get free concurrency, which everybody wants. If I can get an okay on this, I'll start reworking libpkg to handle it. The manifest format really does need to change. We should go with JSON and either write our own specialized parser/writer or go with something like yajl. Writing a parser and a writer that plug into my libpkg will give you conversion tools (both forwards and backwards) for free and adding properties and changing formats isn't really a big deal because I store package information in a plist(5) (from OS X) like structure. Bringing a fat library into base just for manifest parsing will meet with resistance, so if you guys can find some really small json lib (I'm talking 1 or 2 files) that's license compatible, I'll happily suck it into libpkg. The lua stuff is way too far off in dream land for my taste... The things that you guys want to drop from plists are things gcooper has been wanting to get rid of and replace for a while, and libarchive restoring group/mode/owner perms has been the plan for a while now I believe (I actually just ignore this stuff in libpkg). Separating ports and packages is silly, because they need to coexist. Like gcooper pointed out, ports should be using the pkg tools to build and install packages. The repository format is something that you guys didn't really touch on that I think could use some fixing, but I'll wait to see where this all goes and maybe throw some ideas on a wiki page later on. In the mean time, I'll keep building libpkg too work with the pkg system in its current state. Dave.