{"id":13599950,"url":"https://github.com/sheepla/fzpac","last_synced_at":"2025-04-30T10:31:04.208Z","repository":{"id":46315752,"uuid":"358938969","full_name":"sheepla/fzpac","owner":"sheepla","description":"🔎 Arch Linux package finder with fzf","archived":false,"fork":false,"pushed_at":"2021-12-17T17:36:29.000Z","size":303,"stargazers_count":64,"open_issues_count":4,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-06T00:51:09.794Z","etag":null,"topics":["archlinux","fzf","fzf-scripts","pacman","paru","yay"],"latest_commit_sha":null,"homepage":"","language":"Shell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sheepla.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-04-17T17:17:36.000Z","updated_at":"2024-11-16T15:01:42.000Z","dependencies_parsed_at":"2022-08-20T10:31:20.099Z","dependency_job_id":null,"html_url":"https://github.com/sheepla/fzpac","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sheepla%2Ffzpac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sheepla%2Ffzpac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sheepla%2Ffzpac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sheepla%2Ffzpac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sheepla","download_url":"https://codeload.github.com/sheepla/fzpac/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251684510,"owners_count":21627143,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["archlinux","fzf","fzf-scripts","pacman","paru","yay"],"created_at":"2024-08-01T17:01:20.988Z","updated_at":"2025-04-30T10:31:03.941Z","avatar_url":"https://github.com/sheepla.png","language":"Shell","funding_links":[],"categories":["Shell"],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\u003ch1\u003e 🔎 fzpac\u003c/h1\u003e\u003c/div\u003e\n\n\u003cdiv align=\"right\"\u003e\n    \u003cimg src=\"https://img.shields.io/static/v1?label=Language\u0026message=shell\u0026color=blue\u0026style=flat-square\"/\u003e\n    \u003cimg src=\"https://img.shields.io/static/v1?label=License\u0026message=MIT\u0026color=blue\u0026style=flat-square\"/\u003e\n\u003c/div\u003e\n\n\u003cdiv align=\"center\"\u003e\n\n`fzpac` is a `pacman` wrapper, an Arch Linux package finder with fuzzy finder.\n\n\u003c/div\u003e\n\n## Demo\n\n\u003cdiv align=\"center\"\u003e\n\u003cimg src=\"https://user-images.githubusercontent.com/62412884/146584731-6b68fc92-55c7-4936-a551-0c533e62f507.gif\" width=\"80%\"\u003e\n\u003c/div\u003e\n\n## Features\n\n- [x] Quickly find the packages you are looking for with **fuzzy search and preview**.\n- [x] Uses easy-to-use **APT-like subcommands**.\n- [x] You can immediately **install** / **uninstall** the packages that you selected.\n- [x] Supports **Tab completion** in multiple shells.\n    - `bash` (`bash-completion` package required)\n    - `fish`\n    - `zsh` (`zsh-completions` package required)\n- [x] Supports **multiple AUR helpers** such as [paru](https://github.com/Morganamilo/paru) and [yay](https://github.com/Jguer/yay) .\n- [x] Supports **multiple fuzzy finders** such as [fzf](https://github.com/junegunn/fzf) and [skim](https://https://github.com/lotabout/skim) .\n\n## Try fzpac\n\nTo try `fzpac` quickly, run the following command:\n\n```bash\ncurl -LO git.io/fzpac \u0026\u0026 chmod +x fzpac\n```\n\n## Usage\n\n1. Run this command\n2. Select the packages with fuzzy finder\n3. You can view the package info or install / uninstall it immediately\n\n### Help Message\n\n```\nfzpac -- Arch Linux package finder with fuzzy finder\n\nUSAGE\n    fzpac SUBCMD [KEYWORDS...]\n    fzpac --help|--version\n\nSUBCMD\n    s, search        search for all available packages\n    l, local         search for already installed packages\n    S, install       select packages and INSTALL it\n    R, remove        select packages and UNINSTALL it\n    A, autoremove    select packages that are no longer needed and UNINSTALL it.\n    h, help          show help message\n    v, version       show version\n\nOPTIONS\n    -h, --help           show help message\n    -v, --version        show version\n\nKEY BINDINGS\n    \u003cC-j\u003e, \u003cC-n\u003e  move focus down\n    \u003cC-k\u003e, \u003cC-p\u003e  move focus up\n    \u003cC-s\u003e         show information of the package\n    \u003cTab\u003e         select a package\n    \u003cCR\u003e          confirm selection\n```\n\n## Installation\n\n### Dependence\n\nRequires `fzf`, `sk` or your favorite fuzzy finder, but recommended one is `fzf` or `sk` to use full features.\n\n- [junegunn/fzf](https://github.com/junegunn/fzf)\n- [lotabout/skim](https://https://github.com/lotabout/skim)\n\nIf `fzf` or `sk` is not installed, install it with the following command:\n\n```bash\nsudo pacman -S fzf\n# or\nsudo pacman -S sk\n```\n\nIf you want to use other fuzzy finder, see **FZPAC_FINDER** section in Configuration.\n\n### Optional\n\n#### AUR Helper\n\nIf you have the following AUR helpers installed, `fzpac` will use that command in preference to `pacman` .\n\n\u003cul\u003e\n    \u003cli\u003e\u003ca href=\"https://github.com/Morganamilo/paru\"\u003eMorganamilo/paru\u003c/a\u003e\u003c/li\u003e\n    \u003cli\u003e\u003ca href=\"https://github.com/Jguer/yay\"\u003eJguer/yay\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\n#### Tab Completion on the Shells\n\n##### bash\n\nTo use Tab completion with bash, install the `bash-completion` package.\n\n```bash\nsudo pacman -S bash-completion\n```\n\nthen, add the following contents to your `~/.bashrc` .\n\n```bash\n_set_completion() {\n    local bash_completion\n    bash_completion='/usr/share/bash-completion/bash_completion'\n    [ -f \"${bash_completion}\" ] \u0026\u0026 source \"${bash_completion}\"\n}\n\n_set_completion\n```\n\n##### fish\n\nComplete functions are built into `fish` so you don't need to install any additional packages.\n\n##### zsh\n\nTo use Tab completion with zsh, requires `zsh-completions` package.\n\n```zsh\nsudo pacman -S zsh-completions\n```\n\nthen, append this commands on your `.zshrc` to activate completion.\n\n```.zshrc\nautoload -U compinit\ncompinit -u\n```\n\n### Install with PKGBUILD (Recommend)\n\nRun below if you want to install the latest stable version with `PKGBUILD` .\nAfter a successful installation, you can manage `fzpac` as an Arch Linux package.\n\n```bash\n# install base-devel package\nsudo pacman -S --needed base-devel\n# cd to some empty directory to build package\ncd \"$(mktemp -d)\"\n# download PKGBUILD file\ncurl -O https://raw.githubusercontent.com/sheepla/fzpac/main/aur/PKGBUILD\n# build package and install\nmakepkg -si\n```\n\n### Install from the latest commit\n\nRun below if you want to install the latest commit version.\n\n```bash\ngit clone https://github.com/sheepla/fzpac\ncd fzpac\nsudo make install\n```\n\n## Configurations\n\n### FZPAC_PACMAN\n\nTo change the AUR helper command to use, run fzpac with the value of the `\"${FZPAC_PACMAN}\"` variable set.\n\nThis value is a colon-separated list like a `\"${PATH}\"` variable, elements are but commands not directories. fzpac tries to use each of the commands in `\"${FZPAC_PACMAN}\"` in turn as a pacman command to find packages. So fallback to following commands if the preceding one isn't found.\n\nIf no `\"${FZPAC_PACMAN}\"` is set or empty, fzpac assumes the value is `paru:yay:pacman`.\n\nNote that fzpac assumes commands in `\"${FZPAC_PACMAN}\"` supports pacman compatible arguments. So maybe fzpac doesn't work as expected if the commands don't support them.\n\n```bash\n# Elements are command name or path.\nFZPAC_PACMAN=\"aur-helper1:/path/to/aur-helper2:...\" fzpac ...\n\n# Precede your favorite AUR helper if you want to give priority to it.\nFZPAC_FINDER=\"yay:paru:...\" fzpac ...\n```\n\nTo always use this setting, add the following line to your `~/.bashrc` or other shell rc file\n\n```bash\nexport FZPAC_PACMAN=\"aur-helper1:/path/to/aur-helper2:...\"\n```\n\n### FZPAC_FINDER\n\nAlmost the same as `\"${FZPAC_PACMAN}\"`, but this is to config the fuzzy finder which is used in fzpac.\n\nIf no `\"${FZPAC_FINDER}\"` is set or empty, fzpac assumes the value is `fzf:sk:peco:gof:fzy` .\n\n## Contribution\n\nIssue or PR is welcome!❤\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsheepla%2Ffzpac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsheepla%2Ffzpac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsheepla%2Ffzpac/lists"}