Skip to main content

Quicky interact with flatpak cli

Project description

Flatgrep ⚡alpha v0.2.2

Automated searches for boring CLI tools.

Tired of typing by hand flatpak run com.something.veryobnoxious?
Try Flatgrep for fuzzy search and grep what you want in just seconds.

  • Quick test :
flatgrep run mpv
  • Fast and easy install apps from Flathub:
flatgrep install firefox

What is Flatgrep?

Flatgrep is a smart, fuzzy-finding command-line wrapper for Flatpak that makes searching, installing, and managing your applications a breeze. It enhances the standard flatpak commands with an interactive fzf interface, ensuring you find and select the right application quickly, even with typos or partial names.

Why Flatgrep?

Tired of trying to guess the exact application ID for a Flatpak? The default flatpak search can be cumbersome. Flatgrep solves this by providing a powerful and intuitive search layer on top of Flatpak.

  • Typo-proof Searching: Can't remember if it's Discord or discord? Just type disc and let the fuzzy finder show you the options.
  • Interactive Selection: No more manually copying and pasting long app IDs like org.gimp.GIMP. Just search, select from the list, and let Flatgrep handle the rest. The selected ID is copied to your clipboard automatically.
  • Unified Workflow: Use one consistent and powerful search tool to find, install, run, and uninstall your Flatpak apps.

Features

  • Smart Interactive Search: Uses fzf to provide a fuzzy search interface for both locally installed apps and the entire Flathub repository.
  • 🧠 Intelligent Filtering:
    • If there's one perfect match, it's selected automatically.
    • If there are multiple matches, you can choose from an interactive list using fzf.
    • If no initial match is found, it falls back to a fuzzy search over the entire list of apps.
  • 📋 Clipboard Integration: The selected application ID is automatically copied to your clipboard for convenience.
  • 🎨 Rich Terminal Output: Utilizes the rich library for clean, modern, and colorful command-line feedback.
  • 🚀 Full Management Suite: Provides intuitive commands for search, install, run, and uninstall.

Command Table

Action Linux Command
Search on Flathub flatgrep search "app name" --flathub
List locally installed apps flatgrep search "app name"
Install an app from Flathub flatgrep install "app name"
Run an app flatgrep run "app name"
Uninstall an app flatgrep uninstall "app name"

Building Instructions

Prerequisites

Before you begin, make sure you have the following installed on your system:

  • Python 3.8+
  • Flatpak
  • fzf (a command-line fuzzy finder)

You can install fzf using your system's package manager:

# Debian/Ubuntu
sudo apt install fzf

# Fedora
sudo dnf install fzf

# Arch Linux
sudo pacman -S fzf

Clone Git Repository

git clone git@github.com:rodhfr/flatgrep.git
cd flatgrep/src

Setup Python Virtual Environment

# Create python virtual environment (isolated dependencies)
python -m venv .venv

# Activate the virtual python shell
source .venv/bin/activate # also works for zsh
#source .venv/bin/activate.fish # uncomment this line for fish shell

# Install python library requeriments
pip install -r requirements.txt

Install

# installation is just a binary in $HOME/.local/bin
sh build_and_install.sh

Uninstall

# Or just remove the binary located in $HOME/.local/bin
sh uninstall.sh

Management

Released Features ✅

  • Search installed Flatpak app IDs.
  • Copy app IDs to the clipboard.
  • Install Flatpaks via fuzzy search with --flathub flag.
  • Rich-text console.
  • Run Flatpaks with run mode 'feature: 2025-09-15.v0.1.1'
  • Write building instructions and program description. 'feature: 2025-09-16.v0.1.3'

Planned 🛠️

  • Write installation guide.
  • Release in some package manager.
  • Write documentation.
  • Search mode also searches by app names not only app ids.
  • Run mode update: Auto install app if not available.
  • Proper sanitize search command.

Potential Features 🤔

  • Other package managers like dnf/pacman/aur helpers.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

flatgrep-0.2.2.tar.gz (6.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

flatgrep-0.2.2-py3-none-any.whl (6.0 kB view details)

Uploaded Python 3

File details

Details for the file flatgrep-0.2.2.tar.gz.

File metadata

  • Download URL: flatgrep-0.2.2.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.9

File hashes

Hashes for flatgrep-0.2.2.tar.gz
Algorithm Hash digest
SHA256 1c37f41f6b8b6d7787418a933d3b42dd8d29be6dc6df6415744c0b96dd28270a
MD5 d9b392fcf7e1fa656a1449c394f7cc05
BLAKE2b-256 b5ae6ad8358f834d5d7ce917d99eeb7a9b86893cc443f649df63c9e5f74688bf

See more details on using hashes here.

File details

Details for the file flatgrep-0.2.2-py3-none-any.whl.

File metadata

  • Download URL: flatgrep-0.2.2-py3-none-any.whl
  • Upload date:
  • Size: 6.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.9

File hashes

Hashes for flatgrep-0.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 ce5cf04b624f2315f81a3f90a0d1669a0f3de8d3caa44de5a77ae91a9d73aa57
MD5 4033cb4a3e164140995fdac67d159b58
BLAKE2b-256 05cc666296bef2672da48d016abfb5da526060d58a5f6337105b0b0d50de3f14

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page