Recommended lightweight apps

The advantages of lightweight applications are discussed on the home page. Linux has a myriad of powerful command line applications (such as rsync, mplayer, ffmpeg and remind) which, for their functionality, are as lightweight as you will ever find. Many of these applications also have graphical front ends - for example, rsync has Grsync - to make the application more user-friendly. This page simply recommends some additional lightweight applications of which you may be less aware. Many recommended applications which run on Linux are already listed under Recommended portable apps. Check the availability of the applications in your Linux distribution's software repositories; software packages should be available for most of them.


DeaDBeeF DeaDBeeF is an audio player for Linux, Android and other Unix-like systems. Has minimal dependencies, takes little memory, and uses its own extensive plugin system to handle a wide range of audio files and playlists. Has tabbed display of playlists and edits tags too. Optional GTK2 and GTK3 versions.
Goggles Music Manager Goggles Music Manager is a music collection manager and player that uses an SQLite database to automatically categorize music by genre, artist, album, and song. It is incredibly fast and lean with a very clean interface. Can play radio streams too.

File management

SpaceFM SpaceFM is a multi-panel tabbed file manager with its own built-in virtual filesystem, integration with Bash, and various plugins. Its unique Design Mode allows you to customize menu and toolbar items, icons and shortcut keys. Another notable feature is its integration with udevil, a udev-based device manager by the same author, which can be used in a wide variety of ways to mount and unmount devices as a user. Comes in GTK2 and GTK3 versions.
Worker Worker is a dual-pane tabbed file manager for the X Window System, requiring only the X11 libraries. Although its operation is less graphical than equivalent GTK or Qt programs, it gains by being very fast and its functions can be customized to a high degree. Also supports various archive file formats, accesses ftp sites, un/mounts devices and defines its own sophisticated file associations.


Geany Geany is a text editor plus a basic integrated development environment (IDE). It is small and fast with few dependencies. Features include: syntax highlighting, code folding, auto-closing of tags, support for many filetypes, plugins, etc. There is also Geany Portable for Windows though it is rather large.
Dmenu Dmenu is a generic 'dynamic menu' program for the X Window System, reading and writing standard input and output, and locating items by substring search. Incredibly light, fast and deceptively simple but highly efficient with a multitude of uses. Supports horizontal and vertical menus, with patched versions also offering Xft fonts support, menu positioning and sizing, and mouse support.


Dunst Dunst is a minimalistic ("dmenu-ish") notification daemon for Linux, designed especially for use with light systems built around a window manager rather than a full desktop environment. Highly configurable, supporting Xft fonts and the customization of parameters such as screen position, colours, timeouts, and message format.

Original scripts

The scripts described below were developed in-house and are particularly aimed at the Arch Linux distribution, but should be readily adaptable to others. The scripts are available as free software and are licensed under the terms of either the GNU GPL or MIT (Expat) licence. Note that the Arch User Repository is abbreviated to AUR.


Ayr is a Bash script which lets you manage menus of application launchers, which can be either executables or desktop files. It also opens files and URIs with launchers, desktop files, or applications associated by name or MIME-type. Launchers can be grouped and/or made read-only with tags, and the menu of launchers can be ordered in various ways, including the frequency or recency of launcher usage. Desktop files and MIME-type file associations are detected according to the XDG Base Directory Specification and Association between MIME types and applications standards, as far as is practical, and a wrapper is provided to let ayr function as an xdg-open replacement. Great for integrating with minimal desktop environments and file managers. Ayr uses dmenu to manage its menus. Once installed, execute the command 'ayr -h' for much more information.

Note for users of fyr and goa: ayr supersedes these programs, providing similar, but enhanced functionality.


Version: 1.63
26 November 2014

Download source or AUR package


Expro is a Bash script which allows you to flexibly open objects such as files, directories or URLs in the applications you prefer. Optionally, you can choose the preferred application from a menu of all applications associated with an object. Associations with applications are made by matching regular expressions against the MIME-type or name of an object. Applications can be specified as desktop (application.desktop) files or as explicit commands which will expand an embedded %f, %F, %u or %U field per the XDG desktop Exec key standard.

Expro's object associations may be configured at both user and system levels. Also, the expro script allows some degree of customization and choice of external programs via variables in the configuration files. Expro can effectively replace the standard xdg-open and xdg-email utilities. The AUR package achieves this by symlinking /usr/local/bin/xdg-open and /usr/local/bin/xdg-email to /usr/bin/expro. The links will be found on the PATH before /usr/bin/xdg-open.


Version: 2.70
4 November 2013

Download source or AUR package


Goa is a Bash script which opens files with any desktop application or executable, chosen from a menu of all possibilities found in standard locations on the system. Desktop files are detected according to the XDG Base Directory Specification and dmenu is used to manage the menu of choices. The selected command may optionally be run in a terminal or run as a different user. Goa makes an excellent addition to the context menu of file managers.


Version: 2.11
4 November 2013

Download source or AUR package


SuperMenu is a dynamic and extendible menu-driven program launcher, written as a Bash script and utilizing the highly versatile Suckless dmenu program (available with Xft support as the dmenu-xft package from the AUR). Your configuration and choice of programs will determine any further dependencies.

SuperMenu has two configuration files, one user-specific and the other system-wide. The configuration files initialize useful $variables, define the content of the menu which will be displayed, and resolve keyphrases to commands which will be executed. By defining appropriate dialog commands, SuperMenu can also prompt you before launching the desired program. What you can launch is limited only by your own ingenuity with Bash and dmenu. The simplest way of running SuperMenu is to assign keyboard shortcuts to execute supermenu (ordinary users) or supermenu -x (expert users). See supermenu -h for further information and command line options.


Version: 8.20
30 December 2013

Download source or AUR package

Arch Linux packages

Packaged in-house and maintained in the Arch User Repository (AUR):

ayr: Manages menus of application launchers, either executables or desktop files. Also opens files and URIs with launchers, desktop files, or applications associated by name or MIME-type.

expro: Opens objects in associated applications by matching regular expressions against object name or MIME-type.

goa: Opens files with any desktop application or executable, chosen from a menu of all possibilities found in standard locations on the system.

notecase-pro-bin: Advanced hierarchical notes manager. Check for more recent packages from the publisher.

portabase-bin: Manages one-table database files (binary from Debian package).

supermenu: A dynamic and extendible menu-driven program launcher, using dmenu.

treeline-unstable: Tree outliner and PIM which stores any kind of information within a tree structure; unstable development snapshot.


Check the software packages used by lighter Linux distributions such as antiX, Puppy Linux, and SliTaz for further ideas about lightweight applications. Software for Linux with a focus on simplicity, clarity, and frugality. Read their philosophy.

Bash Hackers Wiki: Full of Bash scripting tips, hints and tutorials.

Handy self-made command line utilities: Huge forum thread with many utilities and scripting ideas, many useful not just for Arch Linux.

Arch Linux: A simple, lightweight and highly flexible Linux distribution with a 'rolling release'. For more experienced users of Linux, though the Beginners' Guide and ArchWiki are excellent.