IntroductionUbuntu and Fedora are both among the top desktop Linux distributions, but they are very different. Fedora is Redhat's testing ground, and it's geared more towards developers and system administrators. On the other hand, Ubuntu is Canonical's primary product, and it tries to please everyone.
LineageBoth Ubuntu and Fedora descend from titans in the Linux world. Ubuntu is the child of Debian, and Fedora is a clone of Redhat Linux, which evolved into Redhat Enterprise Linux(RHEL). Both distributions still carry many of the hallmarks of their family trees.
They both have their respective families' package managers, package formats, repository formats, and filesystem structures. All of those things differ greatly between the Debian family tree and the Redhat one.
Package ManagersUbuntu and Fedora have very different package managers and packaging formats. They're both very good, but they function differently.
Ubuntu uses Apt, the Advanced Package Tool, which it inherited from Debian. Apt is one of the larger and more powerful Linux package managers out there, and it's been around for a while. Apt works with the
.debpackages archive their files in format specific for Debian based distributions.
Apt can do a lot of things, but it usually requires explicit instruction. When you want to update your repositories, for example, you need to tell Apt to update.
Fedora initially used Yum, the Yellowdog Update Manager, which the Redhat distributions got from the now defunct Yellowdog Linux to manage their
$ sudo apt update $ sudo apt install firefox
Newer versions of Fedora use the DNF package manager. It functions exactly the same way that Yum did, but with the
dnfcommand. Under the hood, there are some reliability, speed, and usability improvements that DNF a logical evolution from Yum.
Both DNF and Yum are more automated and intuitive. Whenever you install a package with DNF, it automatically updates repository data to pull the latest version available.
# dnf install firefox
InstallersUbuntu and Fedora have very different installer. That said, they're both among the most modern installers in the tech world as a whole, not just Linux.
However, if you want to totally customize your system during the install, Anaconda lets you do just about anything. In fact, Anaconda is one of the only Linux installers that lets you choose from loads of software and pre-arranged bundles to install with the rest of the system. This way, your system is ready to use the second it first boots up.
RepositoriesCompared to Ubuntu's Fedora's repositories are tiny. There's just no getting around it. Fedora doesn't offer nearly as much software as Ubuntu does. This is partly because Fedora has a strict "free software only" policy, but it's also because there just isn't as much software packaged for Fedora by default.
There is an excellent community around Fedora that packages for third party repositories, but Ubuntu still has more.
If you're a developer, or you only need a core set of software that you know Fedora has, great. Otherwise, you might run into trouble getting what you need.
Release CyclesAt first, it would seem like Ubuntu and Fedora have roughly the same release cycles. Both try to release a new version every six months, but there are a lot more details to take into account that actually separate the two quite a lot.
Ubuntu releases it's regular desktop versions once every six months. Those versions include incremental upgrades to just about everything on the system, and they're intended mostly for desktop users. Every fifth release is an LTS version of Ubuntu. Those are supported officially for five years, and they're intended mostly for servers and workstations. LTS releases receive mostly security updates and bug fixes, rather than software upgrades.
Fedora also releases about once every six months, but they're notorious for missing their release schedule just about every time. Fedora releases always contain the absolute latest software, and can be somewhat buggy and unstable at first. Fedora only really targets desktop and workstation users, so stability takes a back seat to new and cool features. Fedora will continually upgrade software, including core system components, for the duration of the release. In a way, it works like a rolling release distribution.
Corporate BackingBoth Fedora and Ubuntu are backed by huge corporations. Fedora has Redhat behind it, and Ubuntu has Canonical. These different distributions don't quite fit into the same place within their respective corporation's ecosystem, though.
Fedora is the testing ground for Redhat. All of the latest features that Redhat is developing for it's server distributions and the Linux ecosystem as a whole make their appearance in Fedora first. Redhat doesn't offer official support for Fedora. Instead they refer to it as a community project.
Ubuntu is Canonical's primary product. Everything that Canonical develops revolves around Ubuntu. They do offer commercial support for the LTS Ubuntu releases and work with hardware partners for support and certification.
Closing ThoughtsBoth Ubuntu and Fedora make excellent desktop distributions. Their use cases and ecosystems are somewhat different, though.
Ubuntu comes from the Debian family, and it's the primary operating system developed by Canonical. Ubuntu's varied release cycle makes it somewhat of a jack of all trades, and it can fit nearly any use case.
Fedora is Redhat's testbed, and it's a great choice for developers and administrators working with Redhat systems. It has a much narrower ecosystem, and would feel out of place on anything but a desktop or workstation.