Package management is one of the unique features of Clear Linux. Unlike many distributions software is not managed as discrete packages, but as "bundles" of software that are installed and updated together to provide a certain functionality. In this article, I describe some of the package management concepts of Clear Linux.
Clear Linux provides the swupd CLI program for managing software and updating software from the distribution's repositories or user defined custom repositories. It is a somewhat simple program at least in user interaction, but is capable of installing and removing programs, updating the system to the latest Clear Linux OS version or to any available specified version. Note that because all available software is built together the OS version also specifies the version of all software on the system with one number.
Because the OS's statelessness is realized by minimizing the content of the /etc directory in order to separate the core system from user configuration, some software such as desktop environments or other software that rely on configuration found in /etc, don't behave as expected as in traditional distributions. Clear Linux offers another method of installing software that doesn't manifest issues as a result of not having configuration in /etc, namely installing software as Flatpaks, either through GNOME Software or through the CLI.
The two modes of installing software in Clear Linux are illustrated below -- Flatpaks and distribution distributed software as "bundles". In the terminal window a search for "vlc" with swupdshows that it can be installed from the distribution's repository as the bundle vlc or the bundle desktop-apps-extras, which includes many other bundles. A GNOME Software search shows VLC as the native bundle (the generic icon) already installed and as a Flatpak (the program's specific icon) as uninstalled and available.