Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 12/11/2013 02:47 AM, Hans de Graaff wrote: During a transition period like this, various upstreams release a bunch of crap with circular or conflicting dependencies that happen to work on their machines because nobody is using a real package manager. The fact that it works as well as it does is a miracle. If you don't want all three versions of Ruby on your machine, try setting e.g. RUBY_TARGETS=ruby19. It probably won't work, but that's because some package has troublesome dependencies, not because we're handling it wrong. It should work (I have some machines with that setting). Two things to keep in mind: you are now off the default settings, so you will need to manage new ruby targets yourself. You will also still get the ruby20 core installed for the moment due to weird dependency issues with some packages. This will get rectified when we add ruby20 to the default RUBY_TARGETS. If anything needs ruby, you get whatever version of ruby it wants (say, 1.9). But then the next time you emerge -puDN world, you pull in dev-lang/ruby-2.0 in a different slot. But ruby-2.0 needs rdoc, rake, and json with USE=ruby_targets_ruby20. Down the rabbit hole we go =) I did finally get RUBY_TARGETS=ruby19 working but I had to package.mask ruby-2.0 first.
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On Wed, 11 Dec 2013 09:29:56 +0200, Alan McKinnon wrote: I detest python, also, but there's no way w/out it. I like python - the language was designed by a mathematician and it shows. Contrast with perl which was designed by a linguist, and that shows too. As you say you can't run Gentoo with portage without Python, that's one of the things you know for sure up front. What does it matter whether you like the language or not when you are only using software written in it? It only matters is you develop that software. I cannot get on with Perl, but I am not at all bothered about using software written in it. If you really have some philosophical or allergenic objection to even having Python installed, you could always use a different package manager. -- Neil Bothwick Q. How many mathematicians does it take to change a light bulb? A. Only one - who gives it to six Californians, thereby reducing the problem to an earlier joke. signature.asc Description: PGP signature
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 11/12/2013 11:08, Neil Bothwick wrote: On Wed, 11 Dec 2013 09:29:56 +0200, Alan McKinnon wrote: I detest python, also, but there's no way w/out it. I like python - the language was designed by a mathematician and it shows. Contrast with perl which was designed by a linguist, and that shows too. As you say you can't run Gentoo with portage without Python, that's one of the things you know for sure up front. What does it matter whether you like the language or not when you are only using software written in it? It only matters is you develop that software. I cannot get on with Perl, but I am not at all bothered about using software written in it. It doesn't matter whether I like it or not. I just happened to mention that I do. I also like living in a place with 360 days sunshine a year, I like the taste of grilled beef and have a special soft spot for Englishmen skilled in the art of snarky comments (you can thank Monty Python for that one). What does that mean? Not a damn thing. If you really have some philosophical or allergenic objection to even having Python installed, you could always use a different package manager. Well that's what I said, init? run Gentoo with portage -- Alan McKinnon alan.mckin...@gmail.com
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On Wed, 11 Dec 2013 11:18:43 +0200, Alan McKinnon wrote: On 11/12/2013 11:08, Neil Bothwick wrote: On Wed, 11 Dec 2013 09:29:56 +0200, Alan McKinnon wrote: I detest python, also, but there's no way w/out it. I like python - the language was designed by a mathematician and it shows. Contrast with perl which was designed by a linguist, and that shows too. As you say you can't run Gentoo with portage without Python, that's one of the things you know for sure up front. What does it matter whether you like the language or not when you are only using software written in it? It only matters is you develop that software. I cannot get on with Perl, but I am not at all bothered about using software written in it. It doesn't matter whether I like it or not. I just happened to mention that I do. My reply was directed more at Bruce's comment, I left yours in to add context (and, it turned out, confusion). I also like living in a place with 360 days sunshine a year, How tedious, what do you talk about? ;-) I like the taste of grilled beef and have a special soft spot for Englishmen skilled in the art of snarky comments (you can thank Monty Python for that one). I'm not getting involved in that one, arguments are down the corridor. If you really have some philosophical or allergenic objection to even having Python installed, you could always use a different package manager. Well that's what I said, init? run Gentoo with portage Don't mention init, that one has its own department. -- Neil Bothwick Top Oxymorons Number 34: Silent scream signature.asc Description: PGP signature
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 11/12/2013 12:23, Neil Bothwick wrote: On Wed, 11 Dec 2013 11:18:43 +0200, Alan McKinnon wrote: On 11/12/2013 11:08, Neil Bothwick wrote: On Wed, 11 Dec 2013 09:29:56 +0200, Alan McKinnon wrote: I detest python, also, but there's no way w/out it. I like python - the language was designed by a mathematician and it shows. Contrast with perl which was designed by a linguist, and that shows too. As you say you can't run Gentoo with portage without Python, that's one of the things you know for sure up front. What does it matter whether you like the language or not when you are only using software written in it? It only matters is you develop that software. I cannot get on with Perl, but I am not at all bothered about using software written in it. It doesn't matter whether I like it or not. I just happened to mention that I do. My reply was directed more at Bruce's comment, I left yours in to add context (and, it turned out, confusion). I also like living in a place with 360 days sunshine a year, How tedious, what do you talk about? ;-) The big orange ball in the sky? You have seen it, no? I like the taste of grilled beef and have a special soft spot for Englishmen skilled in the art of snarky comments (you can thank Monty Python for that one). I'm not getting involved in that one, arguments are down the corridor. This is abuse, arguments are down that *that* corridor. If you really have some philosophical or allergenic objection to even having Python installed, you could always use a different package manager. Well that's what I said, init? run Gentoo with portage Don't mention init, that one has its own department. I'm sure that to contract isn't it to init there has to be an apostrophe somewhere. I can't figure out where to put it... -- Alan McKinnon alan.mckin...@gmail.com
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On Wed, 11 Dec 2013 12:33:48 +0200, Alan McKinnon wrote: I also like living in a place with 360 days sunshine a year, How tedious, what do you talk about? ;-) The big orange ball in the sky? You have seen it, no? Of course I have, on TV. I do live near Manchester... Well that's what I said, init? run Gentoo with portage Don't mention init, that one has its own department. I'm sure that to contract isn't it to init there has to be an apostrophe somewhere. I can't figure out where to put it... You're contracting a contraction, so maybe the apostrophe is contracted out... -- Neil Bothwick Wow! That lightning sounds clo..it! NO CARRIER signature.asc Description: PGP signature
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On Wednesday 11 Dec 2013 12:33:48 Alan McKinnon wrote: I'm sure that to contract isn't it to init there has to be an apostrophe somewhere. I can't figure out where to put it... Avoid the issue by using the more common spelling: innit. -- Regards Peter
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 10/12/2013 17:19, Grant Edwards wrote: On 2013-12-10, Hans de Graaff gra...@gentoo.org wrote: On Mon, 09 Dec 2013 18:29:46 +, Grant Edwards wrote: My routine more-or-less weekly update suddenly decided that it needed to install 3 versions of Ruby along with ~50 other ruby-related packages. This caused a bit of a problem, since those versions of Ruby can't coexist: (something to do with tk and threads). There should not be a problem installing these versions at the same time, although perhaps with a specific combination of USE flags there might be issues. AFAICT, if you have a global tk USE flag, you can not have 1.8 installed at the same time as 1.9 or 2.0. Because ruby18 and ruby19 are specified in the default RUBY_TARGETS as defined in the profile. And due to the way the dependencies are specified in both webkit and thin-provisioning-tools it will additionally try to pull in ruby20 first. Hence: three versions. I understand that portage defaults to installing multiple versions (of Ruby, Python, and probably other stuff). What I don't understand it _why_. If none of the ebuilds specify q version, then they presumably will work with any availble version -- so why not just install one version? It's probably the same reasoning as python. python has an eselect python module, ruby doesn't. But I presume ruby can be selected just like python can be. So you have multiple pythons on your system. Portage doesn't know why you did that, only that you did. It also doesn't know what python/ruby packages you may install later, only that you might. The only thing portage can do is assume you want everything to work under all installed interpreters. If you want to restrict the list of installed interpreters, use the relevant settings in make.conf. Python has PYTHON_TARGETS and SINGLE_PYTHON_TARGET for this, I don't know what the ruby equivalent is. This portage logic does actually make sense, it's the only thing that works sanely (other than refusing to do anything unless you explicitly name all desired interpreters). -- Alan McKinnon alan.mckin...@gmail.com
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 12/10/2013 10:19 AM, Grant Edwards wrote: I understand that portage defaults to installing multiple versions (of Ruby, Python, and probably other stuff). What I don't understand it _why_. If none of the ebuilds specify q version, then they presumably will work with any availble version -- so why not just install one version? Most packages will work with more than one version of Ruby. The package itself behaves the same, so you don't want to create three slots -- one for each of ruby-1.8, ruby-1.9, and ruby-2.0 -- since they all do the same thing. And you'd have to do that for every Ruby package in the tree. The alternative is to install the package for whichever interpreter(s) will work, subject to the user's RUBY_TARGETS. If I install dev-ruby/libfoo and I have RUBY_TARGETS=ruby19 ruby20, then I should be able to use libfoo in both my ruby19 programs and my ruby20 programs. So why is the RUBY_TARGETS default the way it is? I can't speak for the Ruby team, but it was most likely chosen as the upgrade path that causes the least pain. It's not perfect, as you've seen, but different parts of the Ruby ecosystem move at a different pace, and you have to make them all place nice. During a transition period like this, various upstreams release a bunch of crap with circular or conflicting dependencies that happen to work on their machines because nobody is using a real package manager. The fact that it works as well as it does is a miracle. If you don't want all three versions of Ruby on your machine, try setting e.g. RUBY_TARGETS=ruby19. It probably won't work, but that's because some package has troublesome dependencies, not because we're handling it wrong.
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On Tue, Dec 10, 2013 at 05:52:36PM +0200, Alan McKinnon wrote: The only thing portage can do is assume you want everything to work under all installed interpreters. If you want to restrict the list of installed interpreters, use the relevant settings in make.conf. Python has PYTHON_TARGETS and SINGLE_PYTHON_TARGET for this, I don't know what the ruby equivalent is. -- Alan McKinnon alan.mckin...@gmail.com mingdao@workstation ~ $ grep ruby /etc/portage/make.conf RUBY_TARGETS=ruby20 Can't imagine you didn't know that. Ruby hater? :D -- Happy Penguin Computers ') 126 Fenco Drive ( \ Tupelo, MS 38801 ^^ supp...@happypenguincomputers.com 662-269-2706 662-205-6424 http://happypenguincomputers.com/ A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? Don't top-post: http://en.wikipedia.org/wiki/Top_post#Top-posting
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 10/12/2013 20:28, Bruce Hill wrote: On Tue, Dec 10, 2013 at 05:52:36PM +0200, Alan McKinnon wrote: The only thing portage can do is assume you want everything to work under all installed interpreters. If you want to restrict the list of installed interpreters, use the relevant settings in make.conf. Python has PYTHON_TARGETS and SINGLE_PYTHON_TARGET for this, I don't know what the ruby equivalent is. -- Alan McKinnon alan.mckin...@gmail.com mingdao@workstation ~ $ grep ruby /etc/portage/make.conf RUBY_TARGETS=ruby20 Can't imagine you didn't know that. Ruby hater? :D You could say that: $ grep -ir -C1 ruby /etc/portage /etc/portage/package.use/package.use- # I see no need for lvm thin volumes. And it needs thin-provisioning-tools /etc/portage/package.use/package.use: # which needs ruby. I do not want ruby. /etc/portage/package.use/package.use- sys-fs/lvm2 -thin But the real reason I don't have ruby is I don't have a use for it -- Alan McKinnon alan.mckin...@gmail.com
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 10 December 2013 15:33, Alan McKinnon alan.mckin...@gmail.com wrote: On 10/12/2013 20:28, Bruce Hill wrote: On Tue, Dec 10, 2013 at 05:52:36PM +0200, Alan McKinnon wrote: The only thing portage can do is assume you want everything to work under all installed interpreters. If you want to restrict the list of installed interpreters, use the relevant settings in make.conf. Python has PYTHON_TARGETS and SINGLE_PYTHON_TARGET for this, I don't know what the ruby equivalent is. -- Alan McKinnon alan.mckin...@gmail.com mingdao@workstation ~ $ grep ruby /etc/portage/make.conf RUBY_TARGETS=ruby20 Can't imagine you didn't know that. Ruby hater? :D You could say that: $ grep -ir -C1 ruby /etc/portage /etc/portage/package.use/package.use- # I see no need for lvm thin volumes. And it needs thin-provisioning-tools /etc/portage/package.use/package.use: # which needs ruby. I do not want ruby. /etc/portage/package.use/package.use- sys-fs/lvm2 -thin But the real reason I don't have ruby is I don't have a use for it $ cat /etc/portage/package.mask dev-lang/ruby* dev-ruby/* Because sh, bash, awk, make, scons, cmake, perl, two different version of python certainly aren't enough.
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 11/12/2013 00:11, Norman Invasion wrote: On 10 December 2013 15:33, Alan McKinnon alan.mckin...@gmail.com wrote: On 10/12/2013 20:28, Bruce Hill wrote: On Tue, Dec 10, 2013 at 05:52:36PM +0200, Alan McKinnon wrote: The only thing portage can do is assume you want everything to work under all installed interpreters. If you want to restrict the list of installed interpreters, use the relevant settings in make.conf. Python has PYTHON_TARGETS and SINGLE_PYTHON_TARGET for this, I don't know what the ruby equivalent is. -- Alan McKinnon alan.mckin...@gmail.com mingdao@workstation ~ $ grep ruby /etc/portage/make.conf RUBY_TARGETS=ruby20 Can't imagine you didn't know that. Ruby hater? :D You could say that: $ grep -ir -C1 ruby /etc/portage /etc/portage/package.use/package.use- # I see no need for lvm thin volumes. And it needs thin-provisioning-tools /etc/portage/package.use/package.use: # which needs ruby. I do not want ruby. /etc/portage/package.use/package.use- sys-fs/lvm2 -thin But the real reason I don't have ruby is I don't have a use for it $ cat /etc/portage/package.mask dev-lang/ruby* dev-ruby/* Because sh, bash, awk, make, scons, cmake, perl, two different version of python certainly aren't enough. You left out sed :-) -- Alan McKinnon alan.mckin...@gmail.com
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On Tue, Dec 10, 2013 at 10:33:31PM +0200, Alan McKinnon wrote: mingdao@workstation ~ $ grep ruby /etc/portage/make.conf RUBY_TARGETS=ruby20 Can't imagine you didn't know that. Ruby hater? :D You could say that: $ grep -ir -C1 ruby /etc/portage /etc/portage/package.use/package.use- # I see no need for lvm thin volumes. And it needs thin-provisioning-tools /etc/portage/package.use/package.use: # which needs ruby. I do not want ruby. /etc/portage/package.use/package.use- sys-fs/lvm2 -thin But the real reason I don't have ruby is I don't have a use for it I detest python, also, but there's no way w/out it. -- Happy Penguin Computers ') 126 Fenco Drive ( \ Tupelo, MS 38801 ^^ supp...@happypenguincomputers.com 662-269-2706 662-205-6424 http://happypenguincomputers.com/ A: Because it messes up the order in which people normally read text. Q: Why is top-posting such a bad thing? A: Top-posting. Q: What is the most annoying thing in e-mail? Don't top-post: http://en.wikipedia.org/wiki/Top_post#Top-posting
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 11/12/2013 04:02, Bruce Hill wrote: On Tue, Dec 10, 2013 at 10:33:31PM +0200, Alan McKinnon wrote: mingdao@workstation ~ $ grep ruby /etc/portage/make.conf RUBY_TARGETS=ruby20 Can't imagine you didn't know that. Ruby hater? :D You could say that: $ grep -ir -C1 ruby /etc/portage /etc/portage/package.use/package.use- # I see no need for lvm thin volumes. And it needs thin-provisioning-tools /etc/portage/package.use/package.use: # which needs ruby. I do not want ruby. /etc/portage/package.use/package.use- sys-fs/lvm2 -thin But the real reason I don't have ruby is I don't have a use for it I detest python, also, but there's no way w/out it. I like python - the language was designed by a mathematician and it shows. Contrast with perl which was designed by a linguist, and that shows too. As you say you can't run Gentoo with portage without Python, that's one of the things you know for sure up front. -- Alan McKinnon alan.mckin...@gmail.com
Re: [gentoo-user] Re: Routine update wants to install 3 version of Ruby + 50 others
On 10/12/2013 01:34, Grant Edwards wrote: On 2013-12-09, Adam Carter adamcart...@gmail.com wrote: I understand that sometimes a maintainer decides to add a feature that requires some new dependancies, but why three different versions of Ruby all of a sudden? That's the default if you havent specified which version of ruby you want, via RUBY_TARGETS in make.conf. That seems broken to me. Are there packages that require all three versions of Ruby? No, there are packages that can use all versions but I know of none that require them all. Python is in a similar position with 2.x and 3.x plus all the other implementations too. Portage has no way of knowing what pythons you have, need, or want to use. So the logic is: If you specify in make.conf which versions you want, you get those versions, otherwise you get all versions. Individual ebuilds that use ruby may specify which versions they will be built against, so that you can chop and change the ruby slot in use and your ruby apps still work. Personally, I'm getting a little tired of this eternal fascination with the latest greatest flavour of the day interpreter just because it's shiny and new. And rub devs are amongst the worst I have seen anywhere (worse than php and that's saying something). I know a little of what I talk about, the row of desks behind me has perl, python, php and ruby devs who belong to teams with definite preferences as to the implementation language. Matching code and app quality with experience and language used is an interesting mapping exercise. -- Alan McKinnon alan.mckin...@gmail.com