From 191d5e538d7eb2b57cd93919284200d049bc9c0e Mon Sep 17 00:00:00 2001 From: Aylur Date: Sat, 7 Sep 2024 18:13:54 +0000 Subject: docs: apps page also add icons --- docs/libraries/apps.md | 95 ++++++++++++++++++++++++++++++++++++++++++++++ docs/libraries/libastal.md | 1 - 2 files changed, 95 insertions(+), 1 deletion(-) delete mode 100644 docs/libraries/libastal.md (limited to 'docs/libraries') diff --git a/docs/libraries/apps.md b/docs/libraries/apps.md index a5c617f..85aa8ae 100644 --- a/docs/libraries/apps.md +++ b/docs/libraries/apps.md @@ -1 +1,96 @@ # Apps + +Library and CLI tool for querying and launching +applications that have a corresponding `.desktop` file. + +## Installation + +1. install dependencies + +:::code-group + +```sh [ Arch] +sudo pacman -Syu meson vala json-glib gobject-introspection +``` + +```sh [ Fedora] +sudo dnf install meson gcc valac json-glib-devel gobject-introspection-devel +``` + +```sh [ Ubuntu] +sudo apt install meson valac libjson-glib-dev gobject-introspection +``` + +::: + +2. clone repo + +```sh +git clone https://github.com/aylur/astal.git +cd astal/lib/apps +``` + +3. clone repo + +```sh +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: + +```sh +meson setup --prefix /usr build +meson install -C build +``` + +::: + +## Usage + +You can browse the [Apps reference](https://aylur.github.io/libastal/apps). + +### CLI + +```sh +astal-apps --help +``` + +### Library + +:::code-group + +```js [ JavaScript] +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")) +``` + +```py [ Python] +# Not yet documented, contributions are appreciated +``` + +```lua [ Lua] +-- Not yet documented, contributions are appreciated +``` + +```vala [ Vala] +// Not yet documented, contributions are appreciated +``` + +::: + +:::info +The fuzzy query uses [Levenshtein distance](https://en.wikipedia.org/wiki/Levenshtein_distance). I am not a mathematician, but if you know how to reimplement +the logic of [fzf](https://github.com/junegunn/fzf) to make it better feel free to open PRs. +::: diff --git a/docs/libraries/libastal.md b/docs/libraries/libastal.md deleted file mode 100644 index b89f702..0000000 --- a/docs/libraries/libastal.md +++ /dev/null @@ -1 +0,0 @@ -# Astal -- cgit v1.2.3