On Saturday 07 May 2005 23:49, Ciaran McCreesh wrote:
> Hrm. Being able to say "I need xyz installed globally, and abc installed
> either globally or at home level" would work if and only if there was a
> way of finding out where abc and xyz had been installed.

The "being able to say" is the harder part. ;)

Having a package find out where it's dependencies are is quite simple. 
Enhancing portageq to support it will be one of the smaller tasks in all of 
this. Wrapping that with a dev-friendly bash function will be even easier.

So to summarise prefixed install support thus far:

1  Portage needs to be enhanced with a new SUPPORTS so that packages can
   specify that they can install into a non-standard location.
2  Portage needs to be enhanced with new ebuild support functions for
   detecting the location of a dependency.
3  Portage needs to supply PREFIX and AFFIX variables to those ebuilds that
   support non-standard location installs, which specify executable and
   configuration/data locations respectively.
4  Portage needs a base PREFIX and AFFIX to install to by default.
5  Packages need to be updated for support of these feature.
   - Packages that have a standard location of / rather than /usr install into
     AFFIX rather than PREFIX.

And to add my own little pieces of wisdom:

6  Portage must disallow the creation of binary packages where all
   dependencies are not in the same PREFIX.
7  Portage needs to be able to configured with one-way dependency allowance
   between installed package databases. For example, ~ installed packages are
   allowed to depend on / installed packages.

I was planning to summarize home install support here, but your statement 
above has confused me a little. Is there any case where a package *must* have 
a dependency installed globally? If so, I can't see it.

So unless it is shown otherwise, home install support requires:

8  SUPPORTS needs to be enhanced with another indicator for packages to 
   specify that they can do home installs.
9  Emerge needs to be enhanced to allow the user to specify if they want a
   home install or a prefixed install of a package.
10 Portage needs to tell the ebuild whether it should perform a home install 
   or a prefixed install.

Does that about cover it?

Regards,
Jason Stubbs

Attachment: pgpuFHrpmsrf0.pgp
Description: PGP signature

Reply via email to