Public bug reported:

A recent forum discussion has alerted me to a problem with how the Ruby
packages handle depencencies.

Consider the case where a user doesn't have ruby on his or her system, and 
installs irb, assuming that it will install ruby as a dependency. However, irb 
depends on irb1.8, which depends on ruby1.8, NOT ruby. Now, our hypothetical 
user writes a Ruby script and starts the file with the standard
    #!/usr/bin/env ruby
Unfortunately, that script won't run, because there is no program called ruby 
in the user's path. The ruby1.8 package installs its main binary as 
/usr/bin/ruby1.8. /usr/bin/ruby is owned by the dependency package ruby.

There needs to be some mechanism to ensure that /usr/bin/ruby is always
present whenever a Ruby interpreter is installed. I'm not very good at
packaging, so I'm not up on all the options, but isn't that what
/etc/alternatives is for? As a temporary band-aid, the other dependency
packages, such as irb and ri, sould have ruby added as an additional
dependency. That would ensure that /usr/bin/ruby was always present. But
the better approach would be to make ruby1.8 set up /usr/bin/ruby as an
appropriate symlink in such a way that having multiple versions of Ruby
is still possible.

The forum thread I referred to is:
http://ubuntuforums.org/showthread.php?p=4630036

** Affects: ruby-defaults (Ubuntu)
     Importance: Undecided
         Status: New

-- 
Ruby dependency problem
https://bugs.launchpad.net/bugs/210631
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to