Simple application launcher for Linux
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Albert S. d9b0be5063 Fix some Qt deprication warnings 1 week ago
screenshots added screenshot 3 years ago
.gitignore added .gitignore 2 years ago
LICENCE added licence 3 years ago Update to document inheritance 8 months ago
calculationengine.cpp formating fixes / copyright update... 2 years ago
calculationengine.h formating fixes / copyright update... 2 years ago
entryprovider.cpp Fix some Qt deprication warnings 1 week ago
entryprovider.h Introduce new button type 'DYNAMIC' for PATH suggestions 7 months ago
entrypushbutton.cpp EntryPushButton: Hardcode max 256x256 icon size for now 2 months ago
entrypushbutton.h implement deletion of entries 7 months ago
main.cpp main: don't ignore config value for single instance mode. allow override using cli param 7 months ago EntryProvider: Introduce readEntryFromPath() 8 months ago
settingsprovider.cpp SettingsProvider/main: Read single instance socket path from config 7 months ago
settingsprovider.h SettingsProvider/main: Read single instance socket path from config 7 months ago
singleinstanceserver.cpp Added basic single instance functionality 2 years ago
singleinstanceserver.h reformating (no functional change) 2 years ago
window.cpp Fix some Qt deprication warnings 1 week ago
window.h Add a basic ranking of system entries and show most relevant first 2 months ago


qsrun is a launcher. It contains user defined entries for applications and also searches system-applications. Using libcalculate, it can also be used as a calculator.

If you run a desktop environment like KDE it is questionable whether you will find this useful, since they usually bring applications that are more or less comparable to qsrun, although much more powerful (like KRunner). It can be useful for users running a window manager like fluxbox etc.


Qt >=5.7.

For the calculation engine, libqalculate is needed.

Currently no conditional compile flags are supported...


Assuming the necessary dependencies are installed:


Getting started

$HOME/.config/qsrun In this folder user-defined entries should be put (See "Entry format").

Config format

Path: $HOME/.config/qsrun/qsrun.config


sysAppsPaths = "/usr/share/applications/", "/var/lib/snapd/desktop/applications/"

sysAppsPaths will default to "/usr/share/applications/" if no value is given.

Entry format

It rudimentary supports .desktop files, but for user entries, the own format should be preferred.

It's a simple format: [key] [value].

Example: quasselclient.qsrun:

command quasselclient
name Quassel
icon /usr/share/icons/hicolor/128x128/apps/quassel.png
row 1
col 0
key I

Example with inheritance: qsrun will search for "vlc.desktop" inside the paths defined in sysAppsPaths:

inherit vlc.desktop
row 3
col 1

Therefore, there is no need to explicitly the entry a name or icon etc. However, values given here will overwrite the inherited values.

"key" means a shortcut key, you can launch those by pressing Ctrl + "key", so in the example above: CTRL + I.

Simply pressing Ctrl will show you the associated shortcuts on each individual button.

General usage

Starting to type will search user defined entries first, followed by system entries. Then the PATH variable will be searched, if there is a single match you can also press TAB for auto completion.

In general it will launch anything once you press enter, however it won't open a terminal.


Start by typing "=", followed by your expression, e. g: "=(2+3)^2"