Kirsle.net logo Kirsle.net

Manjaro in comparison to Fedora

For the Fedora 34 cycle I installed and ran Manjaro instead, these are some of the differences, pros and cons as compared to Fedora.

These are just some notes that I might eventually write a blog entry about.

This page won't compare the dnf and pacman commands (there are plenty of resources online for that) but I do want to mention that I liked the AUR helper command yay - has a similar API as pacman in terms of CLI flags to search, sync and update. I installed my first AUR package (xfce4-panel-plugin) by hand as recommended in the Arch Wiki and yay thereafter.

Missing packages in Manjaro

Several packages that were available in Fedora repos (or RPMFusion) were not in Manjaro's primary repos but thankfully were available on the Arch user repositories (AUR). The packages I had installed from the AUR include:

  • vscodium-bin: Visual Studio Code sans Microsoft telemetry.
  • mkdocs: static website generator for documentation sites.
  • microsoft-edge-beta-bin: for Fedora, Microsoft provides a .rpm download but for Manjaro the AUR was the best way.
  • rpmbuild: even Debian has apt install rpm but Manjaro doesn't package this at all.
  • mingw: build toolchain to cross compile Windows apps on Linux.
  • android-sdk and android-ndk
  • teams: Microsoft Teams.
  • google-chrome
  • mongodb-bin: Mongo CLI tools.
  • ttf-ms-fonts: Microsoft fonts.
  • xfce4-places-plugin: it is not maintained often so Manjaro dropped it but Fedora continues to ship it in their repos.

Packages that I miss from Fedora that I was unable to locate even on the AUR:

  • emoji-picker (TBD on exact package name): its launcher icon was the rocket ship emoji, it was a simple GUI with categories and copies emojis to your clipboard, available on Fedora repos but nowhere for Manjaro.

Software that just "didn't work" on Manjaro:

  • pgAdmin: it installs but gets runtime errors, I found DBeaver as an alternative.

Multiple Python Versions

Fedora is delightful for a Python developer because the upstream repo makes all versions of Python available, e.g. dnf install python35 python36 python37 and their binaries go like /usr/bin/python35 and you can call them for virtualenvs and test your apps under various versions.

Manjaro only packages the latest Python and I needed to install pyenv to work around this.

Pros for Manjaro

  • Rolling release distribution so you never need to do a heavy upgrade twice a year to switch to the latest release branch.
  • Good custom UI tools for settings such as to set up your nVIDIA graphics card and other proprietary hardware drivers.
  • The AUR is great! Much better than Fedora's COPR or Ubuntu's PPAs, the latter provide pre-built rpm/deb packages linked against other dependencies and it gets messy when it's time to upgrade your Fedora/Ubuntu release version! The AUR downloads from git and builds a package for your system and so you don't run into dependency hell.

Cons for Manjaro

  • It was difficult to set up full disk encryption with their standard live install images; their custom GUI doesn't seem to support Logical Volume Management (LVM) creation, so my typical LUKS+LVM did not work. However, the work-around was to install the whole system on one rootfs partition and encrypt that with LUKS directly, as compared to Fedora's default LVM layout which houses /, /home and swap under one encrypted LVM group.
    • Manjaro Architect seems a way to create a custom installation and gives more flexibility but as a casual user I could not be bothered.