NetBSD Problem Report #46685

From Wolfgang.Stukenbrock@nagler-company.com  Wed Jul 11 09:54:43 2012
Return-Path: <Wolfgang.Stukenbrock@nagler-company.com>
Received: from mail.netbsd.org (mail.netbsd.org [149.20.53.66])
	by www.NetBSD.org (Postfix) with ESMTP id 58E6963B85F
	for <gnats-bugs@gnats.NetBSD.org>; Wed, 11 Jul 2012 09:54:43 +0000 (UTC)
Message-Id: <20120711095433.DEE971E80A9@test-s0.nagler-company.com>
Date: Wed, 11 Jul 2012 11:54:33 +0200 (CEST)
From: Wolfgang.Stukenbrock@nagler-company.com
Reply-To: Wolfgang.Stukenbrock@nagler-company.com
To: gnats-bugs@gnats.NetBSD.org
Subject: ruby packages failed to install if multiple ruby-version are needed (pkgsrc 2012Q1)
X-Send-Pr-Version: 3.95

>Number:         46685
>Category:       pkg
>Synopsis:       ruby packages failed to install if multiple ruby-version are needed (pkgsrc 2012Q1)
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Jul 11 09:55:00 +0000 2012
>Last-Modified:  Wed Jul 11 12:35:01 +0000 2012
>Originator:     Wolfgang Stukenbrock
>Release:        NetBSD 5.1.2
>Organization:
Dr. Nagler & Company GmbH
>Environment:


System: NetBSD test-s0 4.0 NetBSD 4.0 (NSW-WS) #0: Tue Aug 17 17:28:09 CEST 2010 wgstuken@test-s0:/usr/src/sys/arch/amd64/compile/NSW-WS amd64
Architecture: x86_64
Machine: amd64
>Description:
	pkgsrc 2012Q1 supports the installation of multiple ruby version
	on the same machine - e.g. 1.9.3 (the default version) and 1.8.7
	in parrallel for applications that need ruby 1.8.x.
	Accedently some ruby-packages cannot be installed in that way.
	- devel/ruby-rake will fail to install a man page
	  (And will fail to remve itselft (pkg_delete) for ruby-1.9.3.)
	- www/ruby-rack will fail to install (overwrite) an installed
	  script, that is installed without ruby-version number.
	  It is even not possible to install two different ruby-rack
	  versions for different ruby version - same script file problem
	There may be more where I'm still not stumbled over ...
	May other packages (e.g. the DB-interfaces for mysql, ruby-activesupport3, ...)
	can be installed for multiple ruby versions without problems.
>How-To-Repeat:
	Try to install one of the packages mentioned above for two ruby
	version - e.g.:
	cd /usr/pkgsrc/www/ruby-rack
	make install
	make clean
	make RUBY_VERSION_DEFAULT=18 install
	cd /usr/pkgsrc/www/ruby-rack12
	make RUBY_VERSION_DEFAULT=18 install
>Fix:
	All scripts should be installed with the version number in the
	file name - or better all files installed in /usr/pkg/bin,
	/usr/pkg/man, .... should be installed with the version number.
	There should be a symlink to the file with "default"-version number
	for binaries such as /usr/pkg/bin/rackup that should be created by
	the lang/ruby package or special handlink is required to extract
	this information from the /usr/pkg/bin/ruby link, but I'm not shure
	if that would be a good idea. (The RUBY_VERSION_DEFAULT cannot be used
	during installation, because this is not the real default during
	installation.
	An other possible way would be to create ruby-version specific packages
	for all supported ruby-versions that will handle all aspects of this
	PR and the one without the ruby-version number in it will only
	create the symlinks to the default version. (this is somethink like
	it is for the ruby-package itself, but it would generate lots of
	additional packages ...)

>Audit-Trail:
From: Wolfgang Stukenbrock <wolfgang.stukenbrock@nagler-company.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/46685: ruby packages failed to install if multiple ruby-version are needed (pkgsrc 2012Q1)
Date: Wed, 11 Jul 2012 13:13:01 +0200

 Hi again

 ruby-erubis26 is also affected

 gnats-admin@NetBSD.org wrote:

 > Thank you very much for your problem report.
 > It has the internal identification `pkg/46685'.
 > The individual assigned to look at your
 > report is: pkg-manager. 
 > 
 > 
 >>Category:       pkg
 >>Responsible:    pkg-manager
 >>Synopsis:       ruby packages failed to install if multiple ruby-version are needed (pkgsrc 2012Q1)
 >>Arrival-Date:   Wed Jul 11 09:55:00 +0000 2012
 >>
 > 
 > 


From: Takahiro Kambe <taca@back-street.net>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/46685: ruby packages failed to install if multiple
 ruby-version are needed (pkgsrc 2012Q1)
Date: Wed, 11 Jul 2012 20:10:22 +0900 (JST)

 In message <20120711095500.D9F7263B8E6@www.NetBSD.org>
 	on Wed, 11 Jul 2012 09:55:00 +0000 (UTC),
 	Wolfgang.Stukenbrock@nagler-company.com wrote:
 >>Synopsis:       ruby packages failed to install if multiple ruby-version are needed (pkgsrc 2012Q1)
 ...
 >>How-To-Repeat:
 > 	Try to install one of the packages mentioned above for two ruby
 > 	version - e.g.:
 > 	cd /usr/pkgsrc/www/ruby-rack
 > 	make install
 > 	make clean
 > 	make RUBY_VERSION_DEFAULT=18 install
 > 	cd /usr/pkgsrc/www/ruby-rack12
 > 	make RUBY_VERSION_DEFAULT=18 install
 It is current ruby packages' limitation; not a bug but current
 specification.

 And I don't have goot solution about this problem;

     * I don't want to introduce more complexity.
     * Difficulty with handling rubygem based packages.

 >>Fix:
 > 	All scripts should be installed with the version number in the
 > 	file name - or better all files installed in /usr/pkg/bin,
 > 	/usr/pkg/man, .... should be installed with the version number.
 ...
 > 	An other possible way would be to create ruby-version specific packages
 > 	for all supported ruby-versions that will handle all aspects of this
 > 	PR and the one without the ruby-version number in it will only
 > 	create the symlinks to the default version. (this is somethink like
 > 	it is for the ruby-package itself, but it would generate lots of
 > 	additional packages ...)
 These effort was tried in past as pkgsrc framework, such as pkgview.
 Your proposed solution should not be solved by Ruby packages specific
 way.

 Rather than introducing complexity, I would organize number of
 supporing versions; especially, reduce versions of Rails.


 These are my rough thinking for now.

 -- 
 Takahiro Kambe <taca@back-street.net>

From: Wolfgang Stukenbrock <wolfgang.stukenbrock@nagler-company.com>
To: gnats-bugs@NetBSD.org
Cc: pkg-manager@NetBSD.org, gnats-admin@NetBSD.org, pkgsrc-bugs@NetBSD.org
Subject: Re: pkg/46685: ruby packages failed to install if multiple ruby-version are needed (pkgsrc 2012Q1)
Date: Wed, 11 Jul 2012 14:31:47 +0200

 Hi,

 your're right that it is a limitation of the ruby packages,
 But the problem appears only for files directly installed into 
 /usr/pkg/bin and /usr/pkg/man/...
 If a make variable may be set to avoid the installation of theese files, 
 that would be a workaround.
 You have to decide which version should be the default one and set the 
 variable on the command line when installing into additional ruby 
 version. The default should be to install everything.

 In order to get it installed, I currently just removed the affected 
 files from PLIST prior building the package and it install as expected 
 for the additional ruby versions.
 Of cause, this way is no garantie that no one will call the script in 
 /usr/pkg/bin and ends up with the "wrong" ruby version, but for this 
 situation there cannot be any sollution. E.g. ruby itself is installed 
 as ruby193 and ruby18 too and a symlink selects the default version and 
 there is the same problem.

 Perhaps installing the conflicting files with a version number all the 
 time and use the make variable mentioned above to decide to create a 
 symlink without the version number it will at least solve my problem in 
 a very elegant way.
 And this is more consistant to the way ruby itself is installed.

 best regards

 W. Stukenbrock

 Takahiro Kambe wrote:

 > The following reply was made to PR pkg/46685; it has been noted by GNATS.
 > 
 > From: Takahiro Kambe <taca@back-street.net>
 > To: gnats-bugs@NetBSD.org
 > Cc: 
 > Subject: Re: pkg/46685: ruby packages failed to install if multiple
 >  ruby-version are needed (pkgsrc 2012Q1)
 > Date: Wed, 11 Jul 2012 20:10:22 +0900 (JST)
 > 
 >  In message <20120711095500.D9F7263B8E6@www.NetBSD.org>
 >  	on Wed, 11 Jul 2012 09:55:00 +0000 (UTC),
 >  	Wolfgang.Stukenbrock@nagler-company.com wrote:
 >  >>Synopsis:       ruby packages failed to install if multiple ruby-version are needed (pkgsrc 2012Q1)
 >  ...
 >  >>How-To-Repeat:
 >  > 	Try to install one of the packages mentioned above for two ruby
 >  > 	version - e.g.:
 >  > 	cd /usr/pkgsrc/www/ruby-rack
 >  > 	make install
 >  > 	make clean
 >  > 	make RUBY_VERSION_DEFAULT=18 install
 >  > 	cd /usr/pkgsrc/www/ruby-rack12
 >  > 	make RUBY_VERSION_DEFAULT=18 install
 >  It is current ruby packages' limitation; not a bug but current
 >  specification.
 >  
 >  And I don't have goot solution about this problem;
 >  
 >      * I don't want to introduce more complexity.
 >      * Difficulty with handling rubygem based packages.
 >  
 >  >>Fix:
 >  > 	All scripts should be installed with the version number in the
 >  > 	file name - or better all files installed in /usr/pkg/bin,
 >  > 	/usr/pkg/man, .... should be installed with the version number.
 >  ...
 >  > 	An other possible way would be to create ruby-version specific packages
 >  > 	for all supported ruby-versions that will handle all aspects of this
 >  > 	PR and the one without the ruby-version number in it will only
 >  > 	create the symlinks to the default version. (this is somethink like
 >  > 	it is for the ruby-package itself, but it would generate lots of
 >  > 	additional packages ...)
 >  These effort was tried in past as pkgsrc framework, such as pkgview.
 >  Your proposed solution should not be solved by Ruby packages specific
 >  way.
 >  
 >  Rather than introducing complexity, I would organize number of
 >  supporing versions; especially, reduce versions of Rails.
 >  
 >  
 >  These are my rough thinking for now.
 >  
 >  -- 
 >  Takahiro Kambe <taca@back-street.net>
 >  
 > 
 > 




>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.39 2013/11/01 18:47:49 spz Exp $
$NetBSD: gnats_config.sh,v 1.8 2006/05/07 09:23:38 tsutsui Exp $
Copyright © 1994-2007 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.