motu-release will revert libgems-ruby to the old state.
Loïc Minier
loic.minier at ubuntu.com
Mon Sep 1 20:43:19 BST 2008
On Mon, Sep 01, 2008, Mathias Gug wrote:
> This was indeed suggested at the very beginning of the bug thread [1] by
> using /etc/profile.d/. However it was rejected on the following grounds
> [2]
I'm not quite sure I agree with the rationale; I agree it's a good
policy that programs /installed by packages/ must not depend on
environment variables to get reasonable /defaults/. However:
* it's not against policy that programs installed via gems (not
installed by packages) rely on a specific PATH or LD_LIBRARY_PATH to
work
* it's not against policy to setup a system to try to expand its PATH
to use additional data, as long as using the default PATH wouldn't
break the system and its packages
* the rubygems package doesn't require a custom PATH setting to do its
work (installing gems) -- however you do need special settings to use
the installed data (gems)
* Ubuntu went through the hassle of promising that PATH is set in
exactly one place across the whole system
<https://wiki.ubuntu.com/OneTruePath>; especially in light of "Ubuntu
wants to remove /usr/games from the default $PATH" in the above spec,
it seems that it's a long term desired distro feature to define the
PATH in a central place for various use cases and this sounds like a
good use case
An issue I see with relying on the PATH env var is that its old value
is in a bunch of running processes; probably not worse than upgrading a
lib such as libssl and having to restart services to pick it up.
So I don't know whether it would be hard to implement a
/etc/environment.d which would be guaranteed to be used in all cases
where /etc/environment is used, or whether it would be too dangerous to
update PATH in /etc/environment -- there are certainly implementation
questions -- but I don't think this should go against policy.
> This is related to section 9.9 of the Debian Policy [3], Environment variables:
> A program must not depend on environment variables to get reasonable
> defaults. (That's because these environment variables would have to be
> set in a system-wide configuration file like /etc/profile, which is not
> supported by all shells.)
Is there any shell which doesn't honor the PATH in /etc/environment?
If yes, I think it's a bug; if not, we can build on the PATH set in
this file IMO.
And even if there were such shells, these shells would simply miss
gems; the programs installed by packages would still work correctly,
even commands to add / remove gems. What might not work are gems
themselves.
--
Loïc Minier
More information about the Ubuntu-motu
mailing list