One of the criticisms levelled at Linux is that there are too many methods of installing software. This, it’s argued, creates unnecessary complexity for the Linux user.
Take the popular Ubuntu distro. We can install software from Ubuntu’s own app store, the App Center. Many Ubuntu users, however, still gravitate to installing software using apt, a command-line utility for managing deb packages. But there are many interesting applications which aren’t available in the App Center or don’t have a deb package available.
In the event there isn’t a Snap or a deb package, there’s always the option of manually building the open source program. But sometimes life is too short to spend time doing this particularly if a program has tons of dependencies. And there are other alternative installation methods such as the cross-platform Flatpak and AppImage which are much quicker ways of installing software although they each have their own disadvantages.
If you like testing software, your system can be littered with software installed from a myriad of sources. This makes it harder to manage the system. You might therefore want a way to unify the management.
In this article, we’re reviewing bauh, a graphical interface that lets you manage your software. It supports Snaps, Flatpaks, AppImages, deb packages, web applications, and even packages for the Arch distro.
We tested bauh in Ubuntu 23.10. We can install the software with pip, the Python package manager, or better within an isolated environment not using the system libraries. There’s also an AppImage available.
We elected to test the software partly with the AppImage, simply because it’s a quick way to test software. We generally prefer not using AppImages when there are other installation methods available.
We also tested bauh with Manjaro, an Arch-based distribution. There is a package in the Arch User Repository but this failed to build on our test system. Instead, we installed the software in an isolated environment with these commands:
$ python3 -m venv bauh_env
$ bauh_env/bin/pip install bauh
Let’s see bauh in action.