pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: pkg/46685: ruby packages failed to install if multiple ruby-version are needed (pkgsrc 2012Q1)



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@localhost>
To: gnats-bugs%NetBSD.org@localhost
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@localhost>
        on Wed, 11 Jul 2012 09:55:00 +0000 (UTC),
        Wolfgang.Stukenbrock%nagler-company.com@localhost 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@localhost>







Home | Main Index | Thread Index | Old Index