GNOME launcher · Rust · Wayland

Launch at warp speed.

Press a key, type, press Enter. Apps, your git projects, the shell, GitHub, clipboard history, passwords, files and servers in one fast, dark panel that's easy to extend.

$ curl -fsSL https://raw.githubusercontent.com/abidibo/parsec/main/install.sh | bash
Tue Oct 20  09:41

One box, every tool

Type a few letters.
Or start with a verb.

Plain text searches everything at once, ranked by what you pick most. A short verb narrows it to one tool.

Apps fire

Fuzzy matched, ranked by how often and how recently you launch them.

Projects myproj

Your git repositories, with branch, last commit and files.

Shell $ cmd

Run a command in your terminal, or pick one from your history.

GitHub gh pr

Your repositories and open pull requests, through the gh CLI.

Clipboard cb

History with pinned snippets. Passwords never land in it.

KeePass kp

Unlock once and copy a password: it stays out of the history and is cleared after a timeout.

Files f

Anywhere on disk, through GNOME's index and plocate.

SSH ssh

Hosts from your ssh config. Enter connects in your terminal.

Docker dk

Containers: shell, logs, start, stop and restart.

Services svc

systemd units, user and system: status, logs, restart.

System sys

Dark style, do not disturb, Wi-Fi, mute, lock, settings panels.

Windows win

Switch to any open window, with the Shell extension.

Images img

Resize, convert, crop or trim the images you copied in Files.

QR codes qr

Any text as a QR code, drawn as you type. Even your Wi-Fi.

Browser h

Your browser's history and bookmarks.

Processes ps

Heaviest first. ps :3000 finds who's on a port.

Small details, big speed

More than a search box.

Pipes

Ctrl+Enter hands a result on to the next verb, and a $ stage runs in the background and hands on its output. Send a crashing container's logs to Claude, or turn your staged changes into a commit message, without copying a thing.

Quick Look

A pane slides in beside the results: images, text, a folder's contents, a project's README rendered as Markdown with its git state.

Instant

A resident Rust daemon with a GTK 4 window, already running before you press the key. No network calls while you type.

Follows you

Your editor, terminal and project folders are detected on first run and written to one config file you can carry between machines.

GNOME through and through

libadwaita and Wayland first. An optional Shell extension adds window switching and pastes straight into the window you came from.

Updates in one click

Parsec checks for new releases and plugin updates once a day. Update from Settings with a click: see what changed in each plugin first, and Parsec restarts itself on the new version.

↑↓ move Tab next action ↵ run Ctrl↵ pipe Alt1…9 nth result Esc back Ctrl, settings

Hackable

Plugins in any language.

A plugin is a small program that reads JSON lines on stdin and writes them on stdout. Results can stream as they're written, preview Markdown, and use the clipboard. Install one from a git URL, and Parsec keeps it up to date.

~/.local/share/parsec/plugins/dice
import json, random, sys

for line in sys.stdin:
    msg = json.loads(line)
    if msg["type"] == "query":
        n = str(random.randint(1, 6))
        item = {"title": f"You rolled {n}",
                "actions": [{"label": "Copy", "copy": n}]}
        reply = {"type": "results", "id": msg["id"],
                 "items": [item]}
    elif msg["type"] == "init":
        reply = {"type": "ready"}
    else:
        reply = {"type": "ok"}
    print(json.dumps(reply), flush=True)
name = "Dice"
keywords = ["roll"]
exec = "main.py"
icon = "applications-games-symbolic"

Ready for warp?

One command installs the prebuilt binary, the desktop entry and a CtrlSpace shortcut, then starts Parsec.

Terminal
$ curl -fsSL https://raw.githubusercontent.com/abidibo/parsec/main/install.sh | bash
  • GNOME 46 or newer on Wayland
  • Prebuilt for x86_64 and ARM64; builds from source elsewhere
  • Updates itself from Settings