www-servers/nginx build with NGINX_MODULES_HTTP="passenger" and www-apache/passenger produce file collision * Searching all installed packages for file collisions... * * Press Ctrl-C to Stop * * www-apache/passenger-2.2.15 * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/abstract_installer.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/abstract_request_handler.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/abstract_server.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/abstract_server_collection.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/admin_tools.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/application.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/console_text_template.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/constants.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/dependencies.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/events.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/exceptions.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/html_template.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/message_channel.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/packaging.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/platform_info.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/simple_benchmarking.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/spawn_manager.rb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/templates/app_exited_during_initialization.html.erb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/templates/framework_init_error.html.erb * /usr/lib64/ruby/site_ruby/1.8/phusion_passenger/utils.rb * * Package 'www-servers/nginx-0.8.53' NOT merged due to file collisions. * If necessary, refer to your elog messages for the whole content of the * above message. P.S please see http://code.google.com/p/rion-overlay/issues/detail?id=116
... and a blocker is probably not the right solution. Would it be possible to have a generic passenger-ebuild which only installs the agents, the ruby-stuff and the helper scripts?
Unfortunately nginx does not support dynamic modules, thus we have to build at least the nginx-extension of passenger during the nginx installation.
what about dropping passenger-2 completely and only support passenger-3 in standalone mode? this way we could get rid of the horrible build system of passenger in the apache and nginx ebuilds and move the ebuild to dev-ruby where it belongs ...
(In reply to comment #3) > what about dropping passenger-2 completely and only support passenger-3 in > standalone mode? this way we could get rid of the horrible build system of > passenger in the apache and nginx ebuilds and move the ebuild to dev-ruby where > it belongs ... Passenger 2.x is the only stable version and passenger 3 is way to new to trust on high-volume websites right now. Also I seem to remember that standalone mode has less features than the apache integration, but this is something that I would need to look up (hopefully this weekend). Finally, passenger should never be in dev-ruby. www-servers, maybe, but not dev-ruby, for the same reason that apache itself shouldn't be in dev-c.
I had a quick discussion with Tiziano on IRC and we think that adding an apache USE flag to the current build is our preferred solution, if we can make it work.
Right, summary is: * add an apache use flag to passenger to install only the agents (watchdog and logging) as well as the ruby modules * let the passenger bundled with nginx depend on the passenger package Only drawback: nginx (probably) has to depend on a specific version of the passenger package.
passenger support has been remove from the nginx ebuild
leave this one open until 0.9.7 is stable ...
Created attachment 270899 [details] fixed ebuild Hi there! Can anybody tell me, why somebody should have both www-apache/passenger and NgX[passenger] installed? What reason? I think, it'll be better to block apache's passenger, as it is unneded in this case. Fixed ebuild (works fine for me) in attach. Regards, mva
I have written an attempt at an ebuild to solve this issue for nginx by moving most of passenger to its own ebuild based off www-apache/passenger. Basically it patches passenger's fakeroot install to remove the apache support, so it should be possible to make the same ebuild install both the apache and nginx passenger "support" files, removing any chance of a collision. It also removes any need to mess with the ruby eclasses in the www-servers/nginx ebuild. Please note these are pretty rough, they don't have any of the patches etc from the current portage tree as they were cut-and-pasted together to see if it was workable. But it should illustrate the basic idea. https://github.com/doobry/doobry-overlay/blob/master/www-servers/nginx/nginx-1.0.0-r100.ebuild https://github.com/doobry/doobry-overlay/blob/master/dev-ruby/passenger/passenger-3.0.7-r100.ebuild I can clean them up and make them a bit more workable if both the apache and nginx parties are willing to share an ebuild for passenger support... mine is currently dev-ruby/passenger, but I don't think that's appropriate, perhaps www-servers/passenger given that there is a standalone version of passenger available.
affected ebuilds are no longer in cvs, closing ...