Skip to main content

Quicky interact with flatpak cli

Project description

Flatgrep ⚡v0.2.6

Automated search for boring CLI.

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

  • Fast and easy install apps from Flathub:
flatgrep install mpv
  • Quickly copy app id from installed apps:
flatgrep copy mpv
  • Swiftly uninstall flatpak app by regular name:
flatgrep remove vlc
  • Fuzzy search all app ids from installed apps:
flatgrep list
  • Copy id if installed, otherwise install from flathub:
flatgrep mpv

Installation

  • Quick Installation:
pipx install flatgrep

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

Usage: flatgrep [install|search|remove|run|copy|list] app name

Action Linux Command
Install an app from Flathub flatgrep install app name
Fuzzy search installed apps flatgrep list
Copy installed app id flatgrep copy app name
Run an app flatgrep run app name
Uninstall an app flatgrep uninstall app name
Uninstall an app flatgrep remove app name
Copy local / install flatgrep app name

Examples:

Action Example Command Description
Install an app from Flathub flatgrep install vlc Installs the VLC media player via Flathub.
Fuzzy search installed apps flatgrep list Lists all installed applications.
Copy installed app id flatgrep copy gimp Copies the installed GIMP app ID to the clipboard.
Run an app flatgrep run vlc Runs the VLC media player.
Uninstall an app flatgrep remove vlc Removes/uninstalls VLC.
Copy local / install flatgrep gimp Searches for the app and allows copying or installing it.

Building Instructions

Prerequisites

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

You can install uv using pipx:

pipx install uv

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 https://github.com/rodhfr/flatgrep.git
cd flatgrep

Setup environment with uv

uv install

Test

uv run flatgrep

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.
  • Run mode update: Auto install app if not available.
  • Proper sanitize search command.
  • Search mode also searches by app names not only app ids.

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.6.tar.gz (7.0 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.6-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: flatgrep-0.2.6.tar.gz
  • Upload date:
  • Size: 7.0 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.6.tar.gz
Algorithm Hash digest
SHA256 f639b1c3ebeb17333cf672c7df1c67ab021be3c6ad1203012ac17f08f56784d3
MD5 4f1e0d73c983e4b12df6fb8571c424dc
BLAKE2b-256 4ff3c79b95e2db3192cad14c2e15f0a1d302a4ea3ebd9d012d58770bc22d364d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: flatgrep-0.2.6-py3-none-any.whl
  • Upload date:
  • Size: 6.4 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.6-py3-none-any.whl
Algorithm Hash digest
SHA256 6a7df5691bf4824f47426cf8e13f79c419b4bafd27a6bff9c20c4717d5e7d628
MD5 f4444f9b259c5593c6423b2c878de40e
BLAKE2b-256 4b997fe124b45301cd833be1d776656f16dbaf196b79d1699ef2fa116b9a531f

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