mirror of
https://github.com/zoriya/astal.git
synced 2026-05-23 22:52:30 +00:00
1.9 KiB
1.9 KiB
Apps
Library and CLI tool for querying and launching
applications that have a corresponding .desktop file.
Installation
- install dependencies
:::code-group
sudo pacman -Syu meson vala json-glib gobject-introspection
sudo dnf install meson gcc valac json-glib-devel gobject-introspection-devel
sudo apt install meson valac libjson-glib-dev gobject-introspection
:::
- clone repo
git clone https://github.com/aylur/astal.git
cd astal/lib/apps
- install
meson setup build
meson install -C build
:::tip
Most distros recommend manual installs in /usr/local,
which is what meson defaults to. If you want to install to /usr
instead which most package managers do, set the prefix option:
meson setup --prefix /usr build
:::
Usage
You can browse the Apps reference.
CLI
astal-apps --help
Library
:::code-group
import Apps from "gi://AstalApps"
const apps = new Apps.Apps({
includeEntry: true,
includeExecutable: true,
})
print(apps.fuzzy_query("spotify")
.map(app => app.name)
.join("\n"))
# Not yet documented, contributions are appreciated
-- Not yet documented, contributions are appreciated
// Not yet documented, contributions are appreciated
:::
:::info The fuzzy query uses Levenshtein distance. I am not a mathematician, but if you know how to reimplement the logic of fzf to make it better feel free to open PRs. :::