@mos_8502 oh and another more modern choice you could make too, depending on application: disregard package management entirely and treat the entire OS as an immutable image that's built as an atomic unit, with updates being done by having a pair of A/B partitions. You boot off the current active partition, and to update the OS you write out the entire new image to the inactive and reboot onto it.
The Fedora Atomic distros do this, as do the Universal Blue ecosystem (they're essentially running the "new" atomic stack that future Fedora will use). CoreOS was arguably the OG at this for widely known distros, although this is how a large swatch of embedded linux operates, using either buildroot to generate images or Yocto (whose build system is a horrific crime, but it's also very powerful, can generate whole disk images _and also_ a stream of delta updates for efficient upgrading, and is widely supported by embedded linux hardware and software vendors so a lot of stuff ends up using it, even though I find it horrible every time I try touching it)