Skip to content

Support for installing AppImages on Linux #15808

@alebcay

Description

@alebcay

Verification

Provide a detailed description of the proposed feature

Provide the ability to install applications packaged as AppImage format to be installed.

AppImages are similar (at least in user experience) to macOS .app bundles.

  • Self-contained (application and any libraries)
  • Relocatable
  • Linux distro-agnostic
  • Binary distribution provided by upstream
  • Does not require root (no daemon etc. running in the background)

In the context of Homebrew, AppImages would be handled more like a cask than a formula.

Some upstreams may provide a direct AppImage. Others might not directly provide one, but it is also possible to create an AppImage out of an application's executable files. For instance, Firefox does not have an official AppImage but one can be created from the official upstream .tar.bz2 distribution (in this example, there's a community-maintained one too).

See https://appimage.github.io/ for a big collection of AppImages, some official and some unofficial.

What is the motivation for the feature?

Make it easier to install GUI-based1 applications on Linux with Homebrew, similar to how one might install GUI-based applications with Homebrew Cask.

Originally requested/discussed at https://github.com/orgs/Homebrew/discussions/3789.


1. Yes, Homebrew Cask may distribute software that isn't strictly GUI-based, and some GUI-based applications on Linux can already be obtained as formulae. But we currently skip distributing some more complex desktop software (e.g. web browsers, music notation programs, media players) on Linux.

How will the feature be relevant to at least 90% of Homebrew users?

This feature pertains only to Homebrew users on Linux. It would allow Linux users to obtain both CLI/libraries/other things from Homebrew formulae that they have today and also be able to obtain desktop applications, similar to what can be done with Homebrew Cask today for macOS users.

What alternatives to the feature have been considered?

  • Nothing (the status quo). Users can always obtain AppImages by downloading it themselves. The installation process is trivial (chmod to make it executable, then just run it).
  • Integrate with snaps instead. I would liken these more to .pkg installers on macOS or the App Store, they require root access to install, offer isolation/sandboxing, and are associated with a bundle ID. They are managed through a snap daemon (snapd), not directly manipulating the filesystem. The adoption for snap is, to my knowledge, spearheaded by Canonical and not nearly as prevalent as AppImage.
  • Integrate with flatpak instead. These are similar in scope and role as snaps. They are similarly associated with a bundle ID and can be installed through a CLI, e.g. flatpak install flathub org.mozilla.firefox. The adoption for flatpak is currently wider than that of snaps.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions