Automic VaultAutomic Vault

brew

Install fourmolu with Homebrew, Nix

Formatter for Haskell source code. Version 0.20.0.0 via Homebrew; verified 2026-06-28.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install fourmolu

local Homebrew formula metadata

Linux

Nixverified · 92%
nix profile install nixpkgs#fourmolu

nixpkgs package indexes · pkgs/by-name/fo/fourmolu/package.nix · source: api.github.com

overview

Package summary

Formatter for Haskell source code

Commands and aliases

  • fourmolu

history

Project history and usage

Fourmolu is a formatter for Haskell source code. It is an Ormolu fork that keeps Ormolu's parser-driven, idempotent formatting goals while adding configurable style options through CLI flags and `fourmolu.yaml`.

Project history

The repository was created in 2020 and describes itself as a fork of Ormolu with upstream improvements continually merged. The official README frames the project around one key departure from Ormolu: replacing the no-configuration style rule with configurable parameters.

The changelog shows a pattern of adding Fourmolu-specific configuration while also importing upstream Ormolu changes, including parser updates, formatting fixes, and support for new GHC language features.

Adoption history

Fourmolu is adopted by Haskell projects that want automatic formatting but need policy knobs that Ormolu intentionally avoids. The README documents installation through GHCup, Cabal, Stack, release notes, editor integration through Haskell Language Server, and CI through the recommended `run-fourmolu` GitHub Action.

How it is used

Users run `fourmolu Module.hs` to print formatted output, `fourmolu -i` to rewrite files, or `fourmolu --mode check` in CI. Configuration can be written in `fourmolu.yaml`, discovered from parent directories and the XDG config directory, or passed as command-line options.

Why package nerds care

Fourmolu is a package-nerd case study in formatter governance. It forked an intentionally opinionated tool not to change the parser architecture, but to change the social contract around style configuration, while still tracking upstream Ormolu.

Timeline

  • 2020: The public `fourmolu/fourmolu` repository was created.
  • 2023: v0.13.x and v0.14.x releases continued the configurable formatter line.
  • 2024: v0.16.x added explicit configuration-file selection and upstream parser updates.
  • 2025: v0.19.0.0 added options such as `haddock-location-signature` and `if-style`.
  • 2026: v0.20.0.0 made Fourmolu installable with GHCup and added more import-grouping and record-style configuration.

Related projects

  • Fourmolu is directly related to Ormolu, GHC, ghc-lib-parser, Cabal, Stack, GHCup, Haskell Language Server, Hackage, and the `run-fourmolu` GitHub Action.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 2 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.

Configuration files

Config paths the tool may read or write during local use.

Unix
fourmolu.yaml

executables

Installed executables

CommandKindExposureNote
fourmolucliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version0.20.0.0
manager updated2026-06-28
local dataok
upstreamnot checked
latest detectednot detected

https://fourmolu.github.io/

install metadata

Package metadata

Package keybrew:fourmolu
Version0.20.0.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/fourmolu
Homepagehttps://fourmolu.github.io/
Repositoryhttps://github.com/fourmolu/fourmolu
Upstream docshttps://fourmolu.github.io/
LicenseBSD-3-Clause
Source archivehttps://hackage.haskell.org/package/fourmolu-0.20.0.0/fourmolu-0.20.0.0.tar.gz
Last updated2026-06-28T12:05:17-04:00
Pulseupdated
Dependenciesgmp
Build dependenciescabal-install, ghc
Uses from macOSlibffi
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namefourmolu
Version Scheme0
Revision0
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

fourmolu

nix profile install nixpkgs#fourmolu
  • normalized package name match
  • Matched by: Fourmolu
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/fo/fourmolu/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated configuration and credential file locations
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment