On Thu, 2019-10-17 at 15:04 -0400, Stephen John Smoogen wrote:
Not without using their packaging system, their build system and
their
other design choices.
Frankly, this is not a bad caveat. Keep in mind that we also had to
change our build system for modularity.
Working out slots would mean needing to make
changes into how RPM works and how yum/dnf work.
This is also true for modularity.
It might also not be
possible because a bit of Gentoo's magic is letting the local system
build all the different slot choices instead of having to build all
the combinatorics that having 3 different glibc and N gcc compilers
would need.
Conary had use flags without the local system doing the builds. But in
general, I think the slots thing would not require any local builds -
it's just a way to specify cleanly which versions of something can be
available for parallel install and which cannot.
By the way, I think I started using Gentoo in 2004 or so, and back then
they didn't have parallel installability, but they did have parallel
availability, even without slots. They just had various versions of
each package available in the same repository at the same time, and I
could use the package manager to express which one I want.
To do the magic NixOS does.. we need to eject the FHS and
use a similar system. At that point, we aren't developing Fedora
anymore.. we are developing a clone of NixOS or Gentoo.
Well there's more to the distro than the package manager. I think we
could use great tools that other distros have made instead of having to
make our own just because we want to be more separate from them.
[And there
would be no magic way to move from a Fedora 33 system to Fedora-Nix-
34
or Fedora-Gen-34.. at which point we might as well just call the
whole
thing from scratch.] If we are going that far we might as well
rewrite
conary in python3 or rust and start from there...
I agree that upgrading would be hard.
Resurrecting conary for Python 3 would be awesome, I'm sad that it is
just sitting there in Python 2.old not being used - it's really good.
Rust is also great.