From owner-freebsd-ports-announce@FreeBSD.ORG Thu Jul 12 10:01:14 2012 Return-Path: Delivered-To: ports-announce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 7D2D6106566C; Thu, 12 Jul 2012 10:01:14 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 637F38FC15; Thu, 12 Jul 2012 10:01:14 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q6CA1EFs094741; Thu, 12 Jul 2012 10:01:14 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q6CA1EpA094740; Thu, 12 Jul 2012 10:01:14 GMT (envelope-from bapt@FreeBSD.org) X-Authentication-Warning: freefall.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f Date: Thu, 12 Jul 2012 10:01:10 +0000 From: Baptiste Daroussin To: ports-announce@FreeBSD.org, ports@FreeBSD.org, current@FreeBSD.org Message-ID: <20120712100110.GA34228@ithaqua.etoilebsd.net> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="OgqxwSJOaUobr8KG" Content-Disposition: inline User-Agent: Mutt/1.5.21 (2010-09-15) X-Mailman-Approved-At: Thu, 12 Jul 2012 10:07:01 +0000 Cc: Subject: [FreeBSD-Ports-Announce] [HEADSUP & CFT] pkg 1.0rc1 and schedule X-BeenThere: freebsd-ports-announce@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Important news and instructions about the FreeBSD " ports collection" \[moderated\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Jul 2012 10:01:14 -0000 --OgqxwSJOaUobr8KG Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Hi, On behalf of the pkgng team I'm really pleased to announce pkg 1.0 RC1 (aka pkgng) Only bug fixes will be accepted in the RC phase. What is pkg ----------- pkg is a new package manager for FreeBSD. It is designed as a replacement for the pkg_* tools, and as a full featured binary package manager. It provides a library that does all the work, and a frontend to be used by users The ports tree is already able to transparently switch to pkgng by default by adding WITH_PKGNG=yes to your make.conf It provides a pkg2ng tool to help converting from an old installation to a new one. Test repositories are available on http://pkgbeta.freebsd.org/ (I try to update them as fast as I can) It will live forever in the ports tree (with a binary bootstrap in 9 and 10) Why pkg? -------- pkg_* tools have become hardly maintainable over the time, it lacks lots of features most of people are expecting from a package manager: - binary upgrade - ability to search information about remote packages - real reverse dependency tracking - tracking leaves - many more. Third party tools ----------------- Tools supporting natively pkgng - ports-mgmt/portupgrade-devel (soon the main portupgrade will support) - ports-mgmt/pkg_cutleaves - ports-mgmt/poudriere - ports-mgmt/portdowngrade - ports-mgmt/tinderbox-devel (support can be improved) Tools supporting pkgng via a patch (I hope it will be reviewed/integrated soon) - ports-mgmt/portmaster (https://github.com/pkgng/pkgng/blob/master/ports/patch-portmaster-pkgng) Tools being worked on (or I heard people are interested) : - salt support (in version 0.10) http://salt.readthedocs.org/en/v0.10.0/ref/modules/all/salt.modules.freebsdpkg.html - cfengine support - puppet support: (https://github.com/xaque208/puppet-pkgng) - ruby bindings: (https://github.com/baloo/libpkg-ruby/) - PackageKit Links ----- - http://wiki.freebsd.org/PkgPrimer - http://wiki.freebsd.org/pkgng Please report bugs in the github issue tracker: - http://github.com/pkgng/pkgng Schedule -------- The plan is to switch the ports tree to pkgng on CURRENT by default on July 25th No dates are planned yet for other branches. Note that there will be a NO_PKGNG knob for some time (undefined yet) for people not will to switch on July 25th Please also note that some ports won't work with pkgng right now, because pkgng is more strict than pkg_install on purpose. The major one is: nvidia drivers, because pkgng does not allow to overwrite a file owned by another package, and we will not accept any hacks for that in pkgng. Road to next version -------------------- The road to the next version is already open and lots of work will happen, list of ideas: - remote repositories will be able to display update messages - optionnal remote files repository to be able to search which packages to install if you want a known binary - real solver, - better support for multi repository - provides/requires support - stabilisation of the library API - reduce as much as possible scripting in packages to allow cross installation - many more :D regards, Bapt --OgqxwSJOaUobr8KG Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAk/+oGYACgkQ8kTtMUmk6EyZ0QCfep1QFS5xZsBizeWQ7tj0jdxW +7IAnRfF0bv/W3+A6387XCxKrRBvDiky =TO0o -----END PGP SIGNATURE----- --OgqxwSJOaUobr8KG-- From owner-freebsd-ports-announce@FreeBSD.ORG Thu Jul 12 10:12:19 2012 Return-Path: Delivered-To: ports-announce@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id C8BF8106566C; Thu, 12 Jul 2012 10:12:19 +0000 (UTC) (envelope-from villa.alberto@gmail.com) Received: from mail-bk0-f54.google.com (mail-bk0-f54.google.com [209.85.214.54]) by mx1.freebsd.org (Postfix) with ESMTP id AB2218FC17; Thu, 12 Jul 2012 10:12:15 +0000 (UTC) Received: by bkcje9 with SMTP id je9so2057444bkc.13 for ; Thu, 12 Jul 2012 03:12:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date :x-google-sender-auth:message-id:subject:to:cc:content-type; bh=DOoZ8o2vVAETP1Iw9aq9iRkgLm+RP0HGodyB46t+1Ek=; b=TOl/tdWvNoS/y0peG0mF62q9dd0Z5sK0l1CGixlIybeNOSfm7tTA/SOdgit7P7/MYz lDzEyemP+OrBF1nduYx0jo2OLMX1qViKeg9fioemKL/uqg89a5TUFcwKn5hcixRlXLbd qo1o5yG/IeS+BJgC/HGJQOCm70fR6e+45933Jjq+COqxX3JT0eDIj0eCIsdVKntVOGUv RQUGSyW9zZy9dwm3izewAIjU7zw0sMNluoj1LjWXvbph6XFCSU3Ng3A4wM+eijjlvcdc KnHbbadCJ7TlyyPA7RfL6c+y+GUCNw8Xs+iimSKIa2VudofA0hedqJtnC27ourN5z4Lp hOaw== Received: by 10.204.156.17 with SMTP id u17mr6213804bkw.52.1342087934730; Thu, 12 Jul 2012 03:12:14 -0700 (PDT) MIME-Version: 1.0 Sender: villa.alberto@gmail.com Received: by 10.204.200.209 with HTTP; Thu, 12 Jul 2012 03:11:53 -0700 (PDT) In-Reply-To: <20120712100110.GA34228@ithaqua.etoilebsd.net> References: <20120712100110.GA34228@ithaqua.etoilebsd.net> From: Alberto Villa Date: Thu, 12 Jul 2012 12:11:53 +0200 X-Google-Sender-Auth: D59DY8uuPqJF8L-GBpjHDEaMGH8 Message-ID: To: Baptiste Daroussin Content-Type: text/plain; charset=ISO-8859-1 X-Mailman-Approved-At: Thu, 12 Jul 2012 10:14:46 +0000 Cc: ports@freebsd.org, ports-announce@freebsd.org, current@freebsd.org Subject: [FreeBSD-Ports-Announce] Re: [HEADSUP & CFT] pkg 1.0rc1 and schedule X-BeenThere: freebsd-ports-announce@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Important news and instructions about the FreeBSD " ports collection" \[moderated\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Jul 2012 10:12:19 -0000 On Thu, Jul 12, 2012 at 12:01 PM, Baptiste Daroussin wrote: > Third party tools > ----------------- > > Tools supporting natively pkgng > - ports-mgmt/portupgrade-devel (soon the main portupgrade will support) > - ports-mgmt/pkg_cutleaves > - ports-mgmt/poudriere > - ports-mgmt/portdowngrade > - ports-mgmt/tinderbox-devel (support can be improved) Also: - ports-mgmt/portbuilder. -- Alberto Villa, FreeBSD committer http://people.FreeBSD.org/~avilla From owner-freebsd-ports-announce@FreeBSD.ORG Thu Jul 12 22:02:10 2012 Return-Path: Delivered-To: ports-announce@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 3D1521065676; Thu, 12 Jul 2012 22:02:10 +0000 (UTC) (envelope-from bapt@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 1FB1E8FC14; Thu, 12 Jul 2012 22:02:10 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.5/8.14.5) with ESMTP id q6CM2AGm053597; Thu, 12 Jul 2012 22:02:10 GMT (envelope-from bapt@FreeBSD.org) Received: (from bapt@localhost) by freefall.freebsd.org (8.14.5/8.14.5/Submit) id q6CM29h2053595; Thu, 12 Jul 2012 22:02:09 GMT (envelope-from bapt@FreeBSD.org) X-Authentication-Warning: freefall.freebsd.org: bapt set sender to bapt@FreeBSD.org using -f Date: Thu, 12 Jul 2012 22:02:07 +0000 From: Baptiste Daroussin To: Doug Barton Message-ID: <20120712220207.GD49382@ithaqua.etoilebsd.net> References: <20120712100110.GA34228@ithaqua.etoilebsd.net> <4FFF1C09.2020408@FreeBSD.org> MIME-Version: 1.0 Content-Type: multipart/signed; micalg=pgp-sha1; protocol="application/pgp-signature"; boundary="GpGaEY17fSl8rd50" Content-Disposition: inline In-Reply-To: <4FFF1C09.2020408@FreeBSD.org> User-Agent: Mutt/1.5.21 (2010-09-15) Cc: ports@FreeBSD.org, ports-announce@FreeBSD.org, current@FreeBSD.org Subject: [FreeBSD-Ports-Announce] Re: [HEADSUP & CFT] pkg 1.0rc1 and schedule X-BeenThere: freebsd-ports-announce@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Important news and instructions about the FreeBSD " ports collection" \[moderated\]" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 12 Jul 2012 22:02:10 -0000 --GpGaEY17fSl8rd50 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Content-Transfer-Encoding: quoted-printable On Thu, Jul 12, 2012 at 11:48:41AM -0700, Doug Barton wrote: > I do not mean this e-mail to be in any way critical. I was told after > the new OPTIONS framework discussion that I should have asked questions > before the change, so I'm asking these questions now; in a genuine > attempt to get information. >=20 > On 07/12/2012 03:01 AM, Baptiste Daroussin wrote: >=20 > In the time that you have been working on this project I have asked > numerous times for you(pl.) to answer the following questions: >=20 > 1. What are the goals for pkg? The why part of this mail should reply this question, no? Anyway the goal is to have a decent package manager, providing modern featu= res: repositories, decent dependency tracking, decent reverse dependency trackin= g, managing upgrade correctly (I'll explain this more later), provide a decent library for third party tools (desktop integration via PackageKit for examp= le) Providing easy package management for enterprise (who never got problems managing packages on a large set of freebsd servers, and how complicated it= is on FreeBSD to have automated reliable puppet,salt,chef,cfengine like tools) One of the proof of this problem is how fast people integrated pkgng in tho= se tools. > 2. Why can't the existing tools fulfill those goals? The existing tools can't fulfill those goals, because they are hardly maintainable, the code hasn't change much since when they were written, lot= of people have tried over the year to improve them, but all of them gave up. T= he design of the tools, (I mean the code) is really imho not adapted to be improved, I spent a lot of time trying to work on it before starting a comp= lete new project. For example they do not know what is a version, they do not know what are t= he reverse dependencies except through this ugly hack that is +REQUIRED_BY, the database is pretty fragile: who never got the package corrupted: empty @pkg= dep line for example. > 3. How does pkg fulfill them? >=20 > You've put some of this in the various places where pkg is documented, > but I don't see any thorough treatment of these questions. You have some > of it below, which I'd like to see expanded on if you would be so kind. :) It is true that, I'm not very good at documenting in general, and even more= in english, hopefully, the documentation is improving a lot recently, there is= the for usage: http://wiki.freebsd.org/PkgPrimer and for all other things: http://wiki.freebsd.org/pkgng Lot of native english speakers have joined the project and help with documentation, if you find someting missing, do not hesitate to had the sec= tion in the apropriate wiki page, I often have a look at them, and try to fill a= ll the blank section to answer user questions. >=20 > > Why pkg? > > pkg_* tools have become hardly maintainable over the time, >=20 > I agree on this point, but the right solution (as some of us have been > saying for years) is to move the pkg_* tools into the ports tree. You > are correctly handling that by keeping pkg in the ports tree, I'm simply > pointing out that this isn't a reason we need to switch to pkg. >=20 > > it lacks lots of features most of people are expecting from a package m= anager: > > - binary upgrade >=20 > I'm not sure what you mean by this. We have the ability to create binary > packages now. No we haven't :), I know we can mimic a binary upgrade using for example portmaster (I describe this in a poudriere howto) but this is not fully bin= ary upgrade, it is deinstalling/reinstalling a package. Binary upgrade is much = more complexe than that, for example one thing you can't handle now is a package= that has been splitted into lib vs runtime will break with the current way we ca= n do it. Just as an example. Just have a look at this old video: http://www.youtube.com/watch?v=3DiBgcuKF8R_A (it is only 1m30) >=20 > > - ability to search information about remote packages >=20 > This is a good feature, certainly. However there is no reason we can't > create a tool to do this, or add the functionality to an existing tool. Have a look at what pkgng can present you as information and you will see t= he difference. >=20 > > - real reverse dependency tracking > > - tracking leaves >=20 > Can you expand on what these 2 mean? Of course. The current reverse dependency tracking in pkg_install is a hack= : a +REQUIRED_BY file trying to maintain the list of packages that may depend o= n the said dependency, a good way to see it is a hack is to see how often the fil= e get broken (and on portmaster you added an options to fix them so you might kno= w :)) >=20 > What I'm looking for is compelling motivation to make this overwhelming > change to the ports infrastructure. There is not much changes needed in the ports infrastructure. It now works = ootb But there are tons of improvements pkgng will offers, like: ability to simp= ly add new plist keyword without the need of modifying pkgng, native support f= or registering a package from a stagedir. >=20 >=20 > > Schedule > > -------- > >=20 > > The plan is to switch the ports tree to pkgng on CURRENT by default on = July 25th > > No dates are planned yet for other branches. >=20 > Can you describe how this is going to be done? I assume with an > OSVERSION knob in bsd.port.mk? Yes the plan if to check OSVERSION and define WITH_PKGNG on the concerned versions except if the user have defined NO_PKGNG in make.conf >=20 > > Note that there will be a NO_PKGNG knob for some time (undefined yet) f= or people > > not will to switch on July 25th > >=20 > > Please also note that some ports won't work with pkgng right now, becau= se pkgng > > is more strict than pkg_install on purpose. > > The major one is: nvidia drivers, because pkgng does not allow to overw= rite a file > > owned by another package, and we will not accept any hacks for that in = pkgng. >=20 > IMO it would be a very large mistake to switch the default in any branch > until the problem with the nvidia drivers is sorted out. We have a lot > of users (myself included) who use this port, and by switching the > default there's going to be 1 of 2 outcomes for those users. Either they > will opt-out, which means you won't get the level of testing you're > looking for; or you'll break their existing ports installation. Neither > outcome is desirable. I proposed 3 differents way to fix the nvidia driver problem, no one really takle the task on it even if most agreed with at least one of the method. So waiting for someone to provide a really clean way to provide nvidia driv= er, I'm now working on a small modification of the current way it works, that w= ill bypass the pkgng strictness. So nvidia-driver should be fixed on pkgng quite soon (if maintainer do acce= pt the modification :)). I hope, I have answered your question correctly? regards, Bapt --GpGaEY17fSl8rd50 Content-Type: application/pgp-signature -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.19 (FreeBSD) iEYEARECAAYFAk//SV8ACgkQ8kTtMUmk6EzdVwCfUXyk+p9ImppQVpl0zCxPMl2d Xk0AoLlDHX/iQPiyQnyT+nZ67hKZ7bMg =cRzu -----END PGP SIGNATURE----- --GpGaEY17fSl8rd50--