The first obvious answer may be the one you are comfortable with but that may be none for a new computer/ linux user.
The one where those package are available. Or even multiple ones.
With atomic (immutable) distros this question will arise more often as the question of which image becomes more important than which distro to chose.
I use dnf but I could also use apt or pacman. What are the relevant advantages of the package managers? What’s the reason to use apt over dnf? Nix? Simply package availability?
In an immutable setup on Fedora (trying to main Bazzite) is the correct way to use zsh and oh my zsh as my main shell to use rpm-ostree to install it, or should I be using distrobox or Nix/Fleek?
I installed zsh and oh-my-zsh with an Arch container and it works flawlessly.
Try to avoid using ostree
Good question! However I think it’s wise to concentrate on a particular word/phrase before actually answering your query.
Currently, it’s not always clear if there even is a correct way of installing some of these (more) edge cases. Therefore, I wouldn’t be surprised if you’d see ‘seasoned’ Fedora Atomic users that have all tackled these in very different ways while being satisfied with (not only) their own solutions (but also approve the respective solutions of their peers).
As for your query, I would say that starting to use Fedora Atomic and pointing out correctly some of the more common ways to install software while being aware of the ambiguity that exists with the chosen installation method for this specific piece of software is already very commendable. So I would like to congratulate you on that!
But, you shouldn’t be afraid to stick to what’s easy (aka don’t allow good to be the enemy of perfect). If the extra time required for changing your base system doesn’t bother you at all (which happens automatically in the background anyway), then layering it (thus installing with
rpm-ostree
) is probably the easiest method while protecting you from a lot of possible edge cases you might have to deal with otherwise. Traditionally,zsh
(and other shells) were layered (thus installed withrpm-ostree
) and uBlue itself included (perhaps still does) just commands to change root shell tozsh
,fish
etc. This might have changed in the last few weeks, but I think it should still be a safe bet. FWIW, I have never had any troubles pertaining to myzsh
installation and any of its plugins (might as well link the managed zsh-config I rely on).