SkillAgentSearch skills...

Bauh

Graphical user interface for managing your Linux applications. Supports AppImage, Debian and Arch packages (including AUR), Flatpak, Snap and native Web applications

Install / Use

/learn @vinifmor/Bauh
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

GitHub release PyPI AUR AUR-staging License kofi

bauh (baoo), formerly known as fpakman, is a graphical interface for managing your Linux software (packages/applications). It currently supports the following formats: AppImage, Debian and Arch Linux packages (including AUR), Flatpak, Snap and Web applications.

Key features

  • A management panel where you can: search, install, uninstall, upgrade, downgrade and launch your applications
  • Tray mode: it launches attached to the system tray and publishes notifications when there are software updates available
  • System backup: it integrates with Timeshift to provide a simple and safe backup process before applying changes to your system
  • Custom themes: it's possible to customize the tool's style/appearance. More at Custom themes
<p align="center"> <img src="https://raw.githubusercontent.com/vinifmor/bauh-files/master/pictures/panel-themes.gif"> </p>

Index

  1. Installation
  2. Isolated installation
  3. Desktop entry / menu shortcut
  4. Autostart: tray mode
  5. Distribution
  6. Supported types
  7. General settings
  8. Directory structure, caching and logs
  9. Custom themes
  10. Tray icons
  11. CLI (Command Line Interface)
  12. Improving performance
  13. bauh-files
  14. Code structure
  15. Roadmap
  16. Contributing
  17. Donations

Installation

<a name="inst_appimage">AppImage</a>

Required dependencies
  • fuse: the package name may vary from distribution
  • qt5dxcb-plugin (or equivalent): the package name may vary from distribution
Steps
  • Download the .AppImage file attached with the latest release from https://github.com/vinifmor/bauh/releases
  • Generally the desktop environment allows you to double-click the downloaded file to execute it. If that's not your case, follow the steps below from a console:
    • chmod a+x bauh-${version}-x86_64.AppImage (replace ${version} by the respective downloaded version)
    • ./bauh-${version}-x86_64.AppImage
  • If you want to integrate bauh to your desktop: click on bauh's settings menu ("sandwich") and then Install bauh
<p align="center"> <img src="https://raw.githubusercontent.com/vinifmor/bauh-files/master/pictures/releases/0.10.0/appim_self.png"> </p>

<a name="inst_ubuntu">Ubuntu 20.04 based distros (Linux Mint, PopOS, ...)</a>

Required dependencies

sudo apt-get install python3 python3-pip python3-yaml python3-dateutil python3-pyqt5 python3-packaging python3-requests

Installing bauh

sudo pip3 install bauh

Optional dependencies (they should be installed with apt-get/apt)
  • aptitude: Debian package management
  • timeshift: system backup
  • aria2: multi-threaded downloads
  • axel: multi-threaded downloads alternative
  • libappindicator3-1: tray-mode
  • sqlite3, fuse: AppImage support
  • flatpak: Flatpaks support
  • snapd: Snaps support
  • python3-lxml, python3-bs4: Web apps support
  • python3-venv: isolated installation
  • xdg-utils: to open URLs in the browsers (xdg-open)
Updating bauh

Method 1

sudo pip3 install bauh --upgrade

Method 2

sudo pip3 uninstall bauh
sudo pip3 install bauh
Uninstalling bauh
bauh --reset  # removes cache and configurations files from HOME
sudo pip3 uninstall bauh

<a name="inst_arch">Arch-based distros</a>

Using yay

yay -S bauh

Using git
git clone  https://aur.archlinux.org/bauh.git
cd bauh
makepkg -si
Optional dependencies
  • timeshift: system backup
  • aria2: multi-threaded downloads
  • axel: multi-threaded downloads alternative
  • libappindicator-gtk2: tray-mode (GTK2 desktop environments)
  • libappindicator-gtk3: tray-mode (GTK3 desktop environments)
  • xdg-utils: to open URLs in the browser (xdg-open)
  • sqlite, fuse2, fuse3: AppImage support
  • flatpak: Flatpak support
  • snapd: Snap support
  • pacman: ArchLinux package management support
  • python-lxml, python-beautifulsoup4: Web apps support
  • python-venv: isolated installation
Uninstalling bauh
bauh --reset  # removes cache and configurations files from HOME
pacman -R bauh

<a name="inst_iso">Isolated installation</a>

If you prefer an isolated installation from the system libraries, type the following commands:

python3 -m venv bauh_env       # creates an isolated environment inside the directory called "bauh_env"
bauh_env/bin/pip install bauh  # installs bauh in the isolated environment
bauh_env/bin/bauh              # launches bauh. For the tray-mode: bauh_env/bin/bauh-tray

Updating bauh

bauh_env/bin/pip install bauh --upgrade

Uninstalling bauh

bauh_env/bin/bauh --reset  # removes cache and configurations files from HOME
rm -rf bauh_env` (just remove the directory)

<a name="desk_entry">Desktop entry / menu shortcut</a>

To create a shortcut for bauh on your desktop menu:

  • Copy the files from bauh/desktop to ~/.local/share/applications (or /usr/share/applications for root)
  • Replace the Exec field on theses files by the bauh binary path. e.g: Exec=/usr/bin/bauh (or bauh_env/bin/bauh)
  • Copy logo.svg to /usr/share/icons/hicolor/scalable/apps as bauh.svg

<a name="autostart">Autostart: tray mode</a>

In order to initialize bauh with the system, use your Desktop Environment settings to register it as a startup application / script (bauh-tray). Or create a file named bauh.desktop in ~/.config/autostart with the content below:

[Desktop Entry]
Type=Application
Name=bauh (tray)
Exec=/path/to/bauh-tray

<a name="dist">Distribution</a>

bauh is officially distributed through PyPi and AUR (bauh / bauh-staging)

<a name="types">Supported types</a>

<a name="type_appimage">AppImage</a>
  • Supported sources: AppImageHub (applications with no releases published to GitHub are not available)

  • All available application names can be found at apps.txt

  • Only x86_64 AppImage files are available through the search mechanism at the moment

  • Crashes may happen during an AppImage installation if AppImageLauncher is installed. It is recommended to uninstall it and reboot your system before trying to install an application.

  • Extra actions

    • Install AppImage file: allows to install an external AppImage file
    • Upgrade file: allows to upgrade a manually installed AppImage file
    • Update database: manually synchronize the AppImage database
    • Install bauh: installs bauh if it is running as an AppImage
  • Installed applications are store at ~/.local/share/bauh/appimage/installed (or /usr/local/share/bauh/installed for root)

  • Desktop entries (menu shortcuts) of the installed applications are stored at ~/.local/share/applications (or /usr/share/applications for root). Name pattern: bauh_appimage_appname.desktop

  • Symlinks are created at ~/.local/bin (or /usr/local/bin for root). They have the same name of the application (if the name already exists, it will be created as 'app_name-appimage'. e.g: rpcs3-appimage)

  • Downloaded database files are stored at ~/.cache/bauh/appimage (or /var/cache/bauh/appimage for root) as apps.db and releases.db

  • Databases are updated during the initialization process if they are considered outdated

  • The configuration file is located at ~/.config/bauh/appimage.yml (or /etc/bauh/appimage.yml for root) and it allows the following customizations:

database:
  expiration: 60  # defines the period (in minutes) in which the database will be considered up to date during the initialization process. Use 0 if you always want to update it. Default: 60.
suggestions:
    expiration: 24  # defines the period (in hours) in which the suggestions stored in disc will be considered up to date. Use 0 if you always want to update them. Default: 24.
  • Applications with ignored updates are defined at ~/.config/bauh/appimage/updates_ignored.txt (or /etc/bauh/appimage/updates_ignored.txt for root)
  • Cached package suggest
View on GitHub
GitHub Stars1.3k
CategoryCustomer
Updated54m ago
Forks85

Languages

Python

Security Score

100/100

Audited on Mar 29, 2026

No findings