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

Re: Hurd UX testing



Amos Jeffries, le dim. 05 juil. 2020 07:21:42 +1200, a ecrit:
> On 4/07/20 11:02 pm, Samuel Thibault wrote:
> > Amos Jeffries, le sam. 04 juil. 2020 07:23:43 +1200, a ecrit:
> >>
> >>   Synaptic Menu: Settings->Repositories
> >>
> >>   Click "New" button
> >>
> >> Type:          deb
> >> URI:           [arch=hurd-i386] http://deb.debian.org/debian-ports/
> >> Distribution:  unstable
> >> Sections(s):   main
> > 
> > I'm *really* wondering: how did you end up thinking this could work?
> 
> TBH, I was not expecting it to. Synaptic surprised me.

Well, multi-arch *is* supported by Debian, at least to be able to run
foreign binaries. But you won't be running multiple kernels at the same
time without some virtualization tool.

> > Is this documented anywhere (that would really need to be erased)?
> 
> The values are documented for use with dpkg and apt command line
> arguments preparing for Hurd cross-compile.

Where is this documented?

> And no that info should not be removed cross-compile is a real
> use-case.

Cross-compile is fine, but such documentation should really have a fat
warning that this can work only for cross-compilation, being able to
actually *run* the binaries is a considerably different beast.

> > For a different architecture, you'd need the
> > corresponding qemu-user simulator (yes, virtual machinery). For a
> > different *kernel*, there is simply no support and I doubt there will
> > ever be. Even the i386->amd64 cross-upgrade is not really supported, so
> > even less cross-kernel upgrades...
> 
> I am expecting a dual-boot system to be valid for two ports with the
> same CPU arch.

Such expectation is way beyond what Debian (I really mean Debian, not
Debian Hurd) currently supports, and I believe, will ever support. It
happens that for instance linux-amd64 supports running linux-i386
binaries (and similar other 64bit/32bit pairs). But running a non-linux
binary on a linux kernel, or vice-versa, won't be supported. And yes,
that's what you'd need with the "install as a mere package" approach you
are suggesting: is /bin/sh supposed to be a Linux or Hurd binary?

> > I'm sorry, but really I don't think this package approach will ever
> > work, since it's not even working for i386->amd64.
> 
> I am still optimistic that multi-arch can work for applications, not
> just libraries.

For applications built for the same kernel, and possibly some qemu-user
magic, yes, it can work. But as the i386->amd64 crossgrading (I really
mean cross-grading, i.e. turn /bin/sh from an i386 binary to an amd64
binary) difficulties show, a kernel-wide multi-arch support is really
not planned.

Samuel


Reply to: