Skip to content

python3/pip3 wrapper for installing shfmt

License

Notifications You must be signed in to change notification settings

MaxWinterstein/shfmt-py

Repository files navigation

pre-commit.ci status

shfmt-py

A python wrapper to provide a pip-installable shfmt binary.

Internally this package provides a convenient way to download the pre-built shellcheck binary for your particular platform.

This package is totally cloned from shellcheck-py and modified to provide shfmt instead.

Installation

pip install shfmt-py

Usage

CLI

After installation, the shfmt binary should be available in your environment (or shfmt.exe on windows).

As pre-commit hook

See pre-commit for instructions

Sample .pre-commit-config.yaml:

- repo: https://github.com/maxwinterstein/shfmt-py
  rev: v3.7.0.1
  hooks:
    - id: shfmt

FAQ

Q: It won't get updated via e.g. Renovate Bot

A: See https://github.com/shfmt-py/update-via-renovate .

Q: I get something like SSL: CERTIFICATE_VERIFY_FAILED on macOS

A: Install certificates with e.g.: "/Applications/Python 3.9/Install Certificates.command". See here or here for a solution.