Re: Directory Organization for Sub-Architectures?
> What do you think about directory organization for
> sub-architectures?
>
> There is a work in progress to make Debian packages for a
> non-AT i386 architecture in Japan. While the architecture
> requires special kernel and system-specific commands, users
> are able to use the most of i386 binaries with no changes.
>
> I expect the Debian GNU/Linux will support the architecture
> in the future, but there may be a problem when it becomes
> true. I don't think the current directory organization can
> handle such sub-architectures well.
We have a similar problem on m68k: There are several kinds of m68k
machines (Amiga, Atari, Mac, ...), but it's still the same CPU. Most
of the binaries/packages work as well on all machine types, but for
some packages they're different (e.g. fdisk, bootstrap,
kernel-images), and some packages are meaningful only on certain
machines (e.g. setsccserial and nvram are Atari-specific). Things
become even more complicated because some packages are Priority:
required.
We've now (hopefully...) sorted out these problems so far, but the
solution isn't optimal. Out (the m68k ploeple's) conclusion was that
the best solution would be something like sub-archs in dpkg :-) But we
didn't dare to hope that something like that would be ever
implemented. But if now also other people need sub-archs, maybe
there's some hope :-)
> b) Add the notion of sub-architecture to the packaging
> system and share a directory between sub-architectures.
I don't think the directory structure isn't the big problem... (e.g.
make new sections for subarch-specific stuff).
The bigger problem is to build the notion of sub-archs into dpkg & Co.
My thoughts were the following (no proposal, just some ideas):
- dpkg knows the sub-arch of the machine it currently runs on [1],
and tells it to the rest of the world with, for example, a
--print-sub-architecture option.
- There's a Sub-Arch: field in the control file of packages (applying
to binary packages), which is a list of sub-archs suitable for the
package.
- dpkg refuses to install packages with a non-matching sub-arch.
If the dpkg maintainers don't completely refuse the idea, I also would
volunteer to implement this...
Roman
[1]: The way of determining the sub-arch is obviously arch-specific.
Don't know how to distinguish between i386/PC and
i386/these-japanese-machines. But on m68k, one can open /proc/hardware
(a m68k-specific /proc file) and search for a line that starts with
"Model:". The Model line is something like:
Model: Atari TT
Model: Amiga A4000
Model: Macintosh ...
We currently extract the first word and use this as something similar
as the sub-arch.
Roman
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-request@lists.debian.org .
Trouble? e-mail to templin@bucknell.edu .
Reply to: