scoop-fsearch (and scoop-manifest)

scoop-fsearch is a fast and fancy search tool for the Scoop package manager.

(See the end of this document for info about scoop-manifest.)

Features

Compared to the built-in scoop search command, scoop-fsearch:

The output of scoop-fsearch is shown as soon as each package definition file is processed and may not be in any particular order. However, if you sort the output, the search results will be grouped based on how they are found, for example whether the match is in the package name or in the description. (In a GNU environment you may have to use LC_ALL=C sort to get sensible ordering.)

Building

You need a Rust toolchain (rustc, libstd, cargo). The latest stable version of the toolchain should work; if it doesn't, please file a bug report. Then run:

sh cargo build --release

This creates target/release/scoop-fsearch.exe.

Installation

Until there are proper releases, the latest development version can be downloaded from the Artifacts page (artifacts.zip). Ideas on how to create an automatically-updating Scoop bucket for scoop-fsearch are welcome.

You can put scoop-fsearch.exe in any directory in your $PATH and run it with scoop-fsearch.

The release package includes an experimental helper script that lets you run scoop-fsearch as scoop fsearch once added to Scoop's shims directory. This integration is fragile and can cause an error message to show up in scoop help if at some point Scoop's internal help detection changes. Please do not bother the Scoop developers if anything breaks due to this integration; file a bug report on scoop-fsearch instead.

Contributing

If you contribute to this project, you agree to license your contribution under the AGPL-3.0-or-later license unless otherwise specified.

Alternatives

scoop-search is a good alternative that is also fast but, unlike scoop-fsearch, aims to be compatible with the scoop search output.

Bonus: scoop-manifest

The scoop-fsearch package also comes with scoop-manifest, a very simple tool to display package manifests. The two programs are fully independent and can be installed and run separately.