[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-10-08 Thread Lucas Nussbaum
** Changed in: ruby1.9.1 (Ubuntu)
   Status: New = Fix Released

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

Title:
  gem1.9.1 doens't install executables on PATH

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/ruby1.9.1/+bug/706603/+subscriptions

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-02-08 Thread Zygmunt Krynicki
A few people discussed this issue on #ubuntu-devel and we came to the
following conclusion:

1) We should coordinate this change in both Ubuntu and Debian.

2) We should change the install location for gems to /usr/local. We
still have to patch upstream source as the default install location
(/usr) would clash with debian packages and is not safe. Using
/usr/local will yield all the benefits (is on default path, can override
system packages, does not clash with system packages) without
introducing any significant new issues. This would also be consistent
with the way we handle python's pip tool that is similar in spirit to
gems.

3) We need to apply this change to both rubygems 1.8 and ruby 1.9

4) We need to have migration path. Currently a few options are still
possible but we believe that simply moving all the data to /usr/local
and dropping a symlink in the old location would be sufficient.

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Zygmunt Krynicki
This has been debated over and over again.
/usr/local/bin was rejected because the packaging and filesystem policy 
clashes. I cannot offer any solution that would not raise all the objections 
from both sides.

BTW: would it be possible to solve the problem by instaling gems as is
today and adding that directory to PATH the first time rubygems are
installed?

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Lucas Nussbaum
There's no easy way to add a directory to PATH.

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Stefan Lang
 This has been debated over and over again.
 /usr/local/bin was rejected because the packaging and filesystem policy 
 clashes.

I've found these previous discussions:
https://bugs.launchpad.net/ubuntu/+source/ruby1.8/+bug/145267
and
http://fossplanet.com/f10/bug-448639-rubygems-fhs-compliance-debian-ubuntu-43888/

Where's the packaging and filesystem policy clash?

What's the purpose of  /usr/local/bin if not for stuff like this.
This way gem doesn't affect apt installed software and vice versa.

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Zygmunt Krynicki
You can install gems from debian packages which _cannot_ put things into
/usr/local/. You can also install gems directly. This would probably be
a nightmare to maintain.

In my personal opinion the /var/lib path is broken too. The problem with
the language-centric repositories and their client-side package
managers is that they have to clash with the system packager. They clash
for filesystem namespace (apt-get/yum install foo vs pip/gem install
foo) and clash for semantics (one-vs-more-than-one version at a time).

A suboptimal solution (at least for ruby where you _want_ to install
many versions of one thing at a time) that would still improve the
situation could make this:

* work on rubygems to have a debian-connector that automatically keeps the 
debian metadata in sync (so packages installed via gem behave the same as 
packages installed with dpkg, except that they don't pick up non-ruby 
dependencies).
* install things into /usr/lib and /usr/bin

If anyone is willing to try doing this (the same debian-connector, or
perhaps dpkg-connector) could be used for python and pip as well) feel
free to start discussing and drafting this here. I was considering doing
this a while ago.

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Zygmunt Krynicki
I used some confusing statements in my previous comment. I would also
like to clarify some things.

1) Package installed with domain-specific manager like gem or pip
becomes debian package at installation time. It can be removed and
upgraded using either of the managers (with appropriate hooks/triggers
ensuring that the process behaves properly). Dpkg would have all the
proper meta-data about packages (like files, md5sums and so on). The
only meta-data that would be partially missing is native dependencies
that debianized packages of domain-specific packages sometimes have.

2) Packages with more than one version could be mangled into different
packages inside debian. This is suboptimal but would work. It _probably_
will be hard to do generate proper virtual packages so that I can
install libfoo-1.2.3 and still get libfoo1 and libfoo1.2

3) Packages that already have been debianized might need to conflict
with the domain-specific packages. I can see a lot of potential issues
here (domain specific package becomes many debian packages for example,
slightly different names, debian-specific patches). This is a big topic
for research.

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Stefan Lang
 You can install gems from debian packages

Something is either a gem or a deb package. A Ruby package installed via
apt should not show up as RubyGem and a Ruby package installed via gem
should not show up as deb. A cleanly written Ruby program that requires
a library doesn't care with which package manager it was installed.

Keep debs and gems separate. They satisfy different needs that cannot be
integrated into a single solution.

View gem as just some program that happens to write to /usr/local/bin.
No deb integration. Nowhere does RubyGems advertise deb integration.
That would be an extra (that would IMHO, be more problematic than
useful). So why not fix the basics (executables in PATH), before even
thinking about extra functionality?

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Zygmunt Krynicki
Stefan, there is no semantic difference between a gem and a deb package.
It's just a difference of implementation details. From users point of
view they both install, remove and upgrade things. By making both play
well with each other you improve the user experience. That said, I agree
that the connector idea is a separate topic.

While I agree there is a problem it's not a simple problem to solve. The
discussion on installing to /usr/local seems to have stalled. There are
security concerns with installing things with gem/pip and other similar
programs with a way to override something on the default path. What is
interesting (and quite worth discussing) is why pip can do it but gem
cannot. Is pip any more secure than gem today?

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Stefan Lang
 it's not a simple problem to solve

I disagree. The current state is this: Installation instructions
recommend installing RubyGems from source because Ubuntu's is broken.
This rubygems installed from source in combination with a Ruby installed
from apt will cause gem to write executables in /usr/bin.

What again is the argument against setting EXECUTABLE_DIRECTORY to
/usr/local/bin? It's more standard conforming than the current /var
path. It's simply the administrator (sudo) installing an executable in
/usr/local/bin, which is standard practice.

Ubuntu doesn't modify other software to prevent writing to
/usr/local/bin, why pick out rubygems, whose users are developers, not
technology averse end users?

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

Title:
  gem1.9.1 doens't install executables on PATH

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


[Bug 706603] Re: gem1.9.1 doens't install executables on PATH

2011-01-25 Thread Zygmunt Krynicki
I'll try reopen the discussion about gem policy.

Despite all debian security concerns there is a very vocal ruby
community that shuns our patches and we should work to make the
situation better.

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

Title:
  gem1.9.1 doens't install executables on PATH

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