fpf-cli 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (4) hide show
  1. package/LICENSE +674 -0
  2. package/README.md +104 -0
  3. package/fpf +962 -0
  4. package/package.json +44 -0
package/README.md ADDED
@@ -0,0 +1,104 @@
1
+ # Fuzzy Package Finder (`fpf`)
2
+
3
+ `fpf` is a cross-platform fuzzy package finder powered by `fzf`.
4
+
5
+ It auto-detects your OS and distro package manager, then lets you fuzzy-search packages, preview details, and install/remove/update with one interface.
6
+
7
+ ## Supported package managers
8
+
9
+ - Linux distro managers: `apt`, `dnf`, `pacman`, `zypper`, `emerge`
10
+ - Cross-platform app managers: `snap`, `flatpak`
11
+ - Dev package managers: `npm`, `bun`
12
+ - macOS: `brew`
13
+
14
+ `winget` is intentionally not supported.
15
+
16
+ ## Features
17
+
18
+ - Auto-detects default manager from OS + distro
19
+ - Supports manager override with one or two-letter flags
20
+ - Unified fuzzy UI for search/install/list/remove
21
+ - Multi-select installs/removals with safety confirmation
22
+ - Shared keybinds and preview pane behavior across managers
23
+
24
+ ## Requirements
25
+
26
+ - `bash`
27
+ - `fzf`
28
+ - One or more supported package managers from the list above
29
+
30
+ ## Usage
31
+
32
+ ```bash
33
+ fpf [manager option] [action option] [query]
34
+ fpf -m|--manager <name> [action option] [query]
35
+ ```
36
+
37
+ Default action is `search + install` using auto-detected manager.
38
+
39
+ ## Install
40
+
41
+ ```bash
42
+ # npm
43
+ npm install -g fpf-cli
44
+
45
+ # bun
46
+ bun add -g fpf-cli
47
+ ```
48
+
49
+ ### Action options
50
+
51
+ - `-l`, `--list-installed` - fuzzy list installed packages and inspect details
52
+ - `-R`, `--remove` - fuzzy select installed packages to remove
53
+ - `-U`, `--update` - run manager update/upgrade flow
54
+ - `-h`, `--help` - show help
55
+
56
+ ### Manager options
57
+
58
+ - `-ap`, `--apt`
59
+ - `-dn`, `--dnf`
60
+ - `-pm`, `--pacman`
61
+ - `-zy`, `--zypper`
62
+ - `-em`, `--emerge`
63
+ - `-br`, `--brew`
64
+ - `-sn`, `--snap`
65
+ - `-fp`, `--flatpak`
66
+ - `-np`, `--npm`
67
+ - `-bn`, `--bun`
68
+ - `-ad`, `--auto` (force auto-detection)
69
+ - `-m`, `--manager <name>` (explicit manager by name)
70
+
71
+ ### Examples
72
+
73
+ ```bash
74
+ # Auto-detected manager search/install
75
+ fpf ripgrep
76
+
77
+ # Force DNF
78
+ fpf -dn nginx
79
+
80
+ # Use APT and list installed packages
81
+ fpf -ap -l openssl
82
+
83
+ # Remove with Homebrew
84
+ fpf -br -R wget
85
+
86
+ # Update with auto-detected manager
87
+ fpf -U
88
+
89
+ # Explicit manager name
90
+ fpf --manager flatpak gimp
91
+ ```
92
+
93
+ ## Keybinds
94
+
95
+ - `ctrl-h` show help in preview
96
+ - `ctrl-k` show keybinds in preview
97
+ - `ctrl-/` toggle preview
98
+ - `ctrl-n` jump to next selected item
99
+ - `ctrl-b` jump to previous selected item
100
+
101
+ ## Notes
102
+
103
+ - Root-required managers (`apt`, `dnf`, `pacman`, `zypper`, `emerge`, `snap`) run privileged operations via `sudo` when needed.
104
+ - User-space managers (`brew`, `npm`, `bun`, and default user-mode `flatpak`) run without `sudo`.