Date: Thu, 31 Jul 2008 23:38:21 +0200 From: "Ivan Voras" <ivoras@freebsd.org> To: "Doug Barton" <dougb@freebsd.org> Cc: freebsd-ports@freebsd.org Subject: Re: Call for comments - pkg_trans Message-ID: <9bbcef730807311438m45802827y91c7bb7366406af6@mail.gmail.com> In-Reply-To: <4892022F.1080009@FreeBSD.org> References: <g6res0$giq$1@ger.gmane.org> <489144B5.4030101@FreeBSD.org> <g6sgqk$mcm$1@ger.gmane.org> <4892022F.1080009@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
2008/7/31 Doug Barton <dougb@freebsd.org>: > As I'm sure you can imagine, I would not regard any solution that says > "portupgrade is mandatory" very favorably, and I don't think I'd be alone > there. What you need to be doing here is to define the API so that whatever > tool(s) the user chooses can interact with the system. No, portupgrade isn't mandatory, and it probably never will be because of ruby. It's only the most widely used and I think that any scheme that adds or changes to the behaviour of the ports infrastructure must also include portupgrade to be useful to the most users. Note that, if I implement pkg_trans, any tool that doesn't know about it will, at best, generate useless single-package transactions (and at worst break the system, but I'll try hard to avoid this). > BTW, I thought of another problem scenario. The user installs port M, and it > brings dependencies D1, D2, and D3. Then the user installs port N which also > has port D2 as a dependency. Port N then won't install D2 as it already exists. The user can rollback [N], then rollback [M+D1+D2+D3]. Trying to roll back back [M+D1+D2+D3] before [N] will show the user a message about dependencies. > The more I think about this idea of transactions as chunks of stuff that can > be reversed together the more I think that this facility probably needs to > be time-constrained, or at minimum have very good support for invalidating > itself to avoid problems with scenarios like the one I described above. A good "-f" (force) command will solve many issues :)
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9bbcef730807311438m45802827y91c7bb7366406af6>