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

Re: multiarch status update

On Wed, May 17, 2006 at 12:14:24AM +0200, Goswin von Brederlow wrote:

> Wait a second. How do you create the dir when the file already exists?

There was quite some talk on linux-kernel about
'every-file-is-a-directory' approaches when Reiserfs 4 was released.
Some said they'd like to see this feature in other file systems if only
someone got the nerve to design & implement the needed VFS extensions.

> Say I have /usr/bin/firefox/i486 and /usr/bin/firefox/x86_64. Which
> one should be the default? Where/how do I set the default?

This is just theory, but if you implement the
'every-file-is-a-directory' concept with extended attributes then
- /usr/bin/firefox is just a stub file containing a magic cookie
- the per-architecture binaries are stored as EAs
- there can be a 'default' EA pointing to the default architecture, so
  you can set the default separately for every binary
- a binfmt_misc helper should be created that intercepts the magic
  cookie in the stub file and loads the binary from the appropriate EA

This way running /usr/bin/firefox gives you the defalt arch, and
/usr/bin/firefox/$ARCH (or /usr/bin/firefox@$ARCH or whatever syntax you
define for accessing the EAs) gives you the binary for the specific arch.

> I never use flash so I want the x86_64 default. But userB always uses
> flash and wants i486. How do you set that up per user?

This problem already exists with alternatives regardless of multiarch.
The sysadmin sets up JDK-1.5 as default using the alternatives system
but userB always uses JDK-1.4. How do you set that up per user?

alias firefox=/usr/bin/firefox/i486 works just fine for userB.

> Multiarch (so far) does not allow the same path/file in 2 packages
> (with the exception of /usr/share/doc/ files)

Hmm. How do you want to handle one-arch-only binNMUs? binNMUs change
changelog.Debian.gz, so
- you can't upgrade just the architecture that was binNMUed without
  changelog.Debian.gz becoming invalid for the other arches
- there will be no new version for the other arches so you can't just
  wait till the versions are in sync


     MTA SZTAKI Computer and Automation Research Institute
                Hungarian Academy of Sciences

Reply to: