On Thu, Jan 05, 2017 at 11:03:50AM -0500, Stephen Gallagher wrote:
# Overview
For many years, Fedora has supported multilib by carrying parallel-installable
libraries in /usr/lib[64]. This was necessary for a very long time in order to
support 32-bit applications running on a 64-bit deployment. However, in today's
new container world, there is a whole new option.
I'd like to propose that we consider moving away from our traditional approach
to multilib in favor of recommending the use of a 32-bit container runtime when
needed on a 64-bit host.
## Advantages
* Simplification of build-tree creation. We wouldn't have to maintain the lists
and hacks that are required to make sure that multilib packages land in the
correct repositories.
* Less duplication of content in the mirror networks.
* It will be simpler to create module content without having to reimplement all
the multilib hacks of above. This is directly relevant to the Base Runtime
module, whose prototype is today intentionally limited to the primary
architecture (no multilib).
* Requires us to maintain and keep up-to-date the 32-bit container base images.
## Disadvantages
* If we eliminate multilib entirely, all applications that use 32-bit libs will
have to either install a 32-bit host OS or install into a container. This may be
a difficult transition for some users.
* Mitigation: develop and maintain tools to ease this transition.
* It is unlikely that any clean upgrade path would exist. (We could make it
*technically* possible, but likely not without breaking 32-bit software not
installed by RPM.
* Requires us to maintain and keep up-to-date the 32-bit container base images.
(Yes, this is both an advantage and disadvantage.)
More work for the end user to keep their systems updated. Containers in
general are a retrograde step in this area, since instead of being able
todo a simple "dnf update" on the host and have everything updated, you
have to do "dnf update" and then figure out how to update each individual
container. Even if we assume the 32-bit container base image lets you use
dnf normally, this change has at least added an extra step for users
as they have to upgrade their 64-bit and 32-bit container via separate
"dnf update" command invokations.
Regards,
Daniel
--
|:
http://berrange.com -o-
http://www.flickr.com/photos/dberrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org :|
|:
http://entangle-photo.org -o-
http://search.cpan.org/~danberr/ :|