From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: <gentoo-dev+bounces-63318-garchives=archives.gentoo.org@lists.gentoo.org> Received: from lists.gentoo.org (pigeon.gentoo.org [208.92.234.80]) by finch.gentoo.org (Postfix) with ESMTP id BC76C1387A6 for <garchives@archives.gentoo.org>; Fri, 1 Nov 2013 17:47:26 +0000 (UTC) Received: from pigeon.gentoo.org (localhost [127.0.0.1]) by pigeon.gentoo.org (Postfix) with SMTP id 14A63E099F; Fri, 1 Nov 2013 17:47:20 +0000 (UTC) Received: from smtp.gentoo.org (smtp.gentoo.org [140.211.166.183]) (using TLSv1 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by pigeon.gentoo.org (Postfix) with ESMTPS id 2F0DBE0968 for <gentoo-dev@lists.gentoo.org>; Fri, 1 Nov 2013 17:47:19 +0000 (UTC) Received: from [192.168.11.61] (cpe-72-177-217-176.satx.res.rr.com [72.177.217.176]) (using SSLv3 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) (Authenticated sender: steev) by smtp.gentoo.org (Postfix) with ESMTPSA id 15DCE33F030 for <gentoo-dev@lists.gentoo.org>; Fri, 1 Nov 2013 17:47:18 +0000 (UTC) Message-ID: <1383327937.4573.1.camel@oswin.hackershack.net> Subject: Re: [gentoo-dev] Re: vim and gvim package split From: Steev Klimaszewski <steev@gentoo.org> To: gentoo-dev@lists.gentoo.org Date: Fri, 01 Nov 2013 12:45:37 -0500 In-Reply-To: <loom.20131101T173004-30@post.gmane.org> References: <20131031230212.1ea303a9@egeo.atlantide.net> <CAATnKFBP4eZ0aCzJWo3qrGRP7m9wY1aKKDw7_=RHrng7Hs+sJg@mail.gmail.com> <loom.20131101T173004-30@post.gmane.org> Content-Type: text/plain; charset="UTF-8" X-Mailer: Evolution 3.6.4 Precedence: bulk List-Post: <mailto:gentoo-dev@lists.gentoo.org> List-Help: <mailto:gentoo-dev+help@lists.gentoo.org> List-Unsubscribe: <mailto:gentoo-dev+unsubscribe@lists.gentoo.org> List-Subscribe: <mailto:gentoo-dev+subscribe@lists.gentoo.org> List-Id: Gentoo Linux mail <gentoo-dev.gentoo.org> X-BeenThere: gentoo-dev@lists.gentoo.org Reply-to: gentoo-dev@lists.gentoo.org Mime-Version: 1.0 Content-Transfer-Encoding: 7bit X-Archives-Salt: 0bc66aee-45dc-493e-8345-4b70b602a6f7 X-Archives-Hash: 2add75442dab51c4a1aa22e3d0953a42 On Fri, 2013-11-01 at 16:52 +0000, Alessandro DE LAURENZIS wrote: > Kent Fredric <kentfredric <at> gmail.com> writes: > > > Useflags have their perks for giving variations on behaviour, but having 3 > > effective packages in one, governed by useflags, means you'll have 3 much > > more tightly coupled packages, and the code will be much messier with > > useflag conditionals to pull dependencies. > > > > If you imagine useflags like "if" statements, and ebuilds like independent > > classes where "dependencies" are a kind of inheritance, you may find theres' > > reasonable benefits for the maintenance side e.g.: people checking reverse > > deps for QT don't have to worry about changes in QT breaking vim and gvim > > because those packages are independent of QT interaction > > > > > > Fixes that need to go in to make building vs QT mean only the qvim ebuild > > gets updated and the rest are fine as-is. > > > > The only real downside is if you're building all 3 {q,g,}vim there's a > > little compile time overhead as a result ( Though I'm not sure what the > > difference is in real terms ) > > > > But by having them seperate, we enjoy a more robust installation, > > especially for people who only want one of the 3, then they're not > > needlessly burdened by logic to handle things they're not using, which > > could break. > > > > Not to mention you have to deal with overheads introduced by having to > > work out the equivalent of all three of the above having vastly different > > useflags and making useflags conditional upon each other as a result to > > codify the same behaviour, again, further raising the odds that a situtation > > will arise where things break and the dependencies/use flags are a mess. > > Kent, > > all your argumentations make sense, but actually only apply to vim-qt, which > isn't in fact in the vim main tree. > > In other words: it's normal that vim and vim-qt are two different packages, > but gvim is just vim with the GUI interface (neither an add-on nor a different > project); playing with USE flags in /etc/portage/package.use should give easy > access to all the possible options: > > - only vim ("-gtk"); > - gvim ("gtk"); > - qvim ("-gtk" for vim and vim-qt as package, having vim as dependency); > - or even both ("gtk" for vim and vim-qt). > > What's wrong or complex (from a mantainer perspective) with this? > > Thanks for your comments > > > For binary package use, it's nice, as you may want to only install vim on one machine, and gvim on a different one, but if you use the same binhost that means you have to build vim rather than use the binary packages.