Automic VaultAutomic Vault

brew

Install gpatch with Homebrew, MacPorts, apk, chocolatey, apt, dnf, Nix, pacman, scoop, winget, zypper

Apply a diff file to an original. Version 2.8 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install gpatch

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install gpatch

MacPorts ports tree · devel/gpatch/Portfile · source: api.github.com

Linux

Alpine Linux apkverified · 92%
sudo apk add patch

Alpine Linux edge package indexes · patch · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install patch

Debian stable package indexes · patch · source: deb.debian.org

Fedora dnfverified · 92%
sudo dnf install patch

Fedora Rawhide package metadata · patch · source: dl.fedoraproject.org

Nixverified · 92%
nix profile install nixpkgs#patch

nixpkgs package indexes · patch · source: raw.githubusercontent.com

Arch Linux pacmanverified · 92%
sudo pacman -S patch

Arch Linux sync databases · patch · source: geo.mirror.pkgbuild.com

openSUSE zypperverified · 92%
sudo zypper install patch

openSUSE Tumbleweed package metadata · patch · source: download.opensuse.org

Windows

Chocolateyverified · 92%
choco install patch

Chocolatey community package catalog · patch · source: community.chocolatey.org

Scoopverified · 92%
scoop install main/patch

Scoop official bucket manifest trees · bucket/patch.json · source: api.github.com

Windows Package Managerverified · 92%
winget install --id GnuWin32.Patch -e

Windows Package Manager source index · GnuWin32.Patch · source: cdn.winget.microsoft.com

overview

Package summary

Apply a diff file to an original

Commands and aliases

  • patch

history

Project history and usage

GNU patch applies diff output to original files to produce modified files. It descends from Larry Wall's patch program and became one of the basic tools of Unix source distribution, mailing-list development, and package-manager patch application.

Project history

The GNU patch README states that this GNU version applies diff files to original files and includes many Free Software Foundation changes: binary and large-file handling, unified diff support, merge behavior, GNU-style backup files, improved RCS and SCCS interaction, GNU option parsing/configure conventions, and better POSIX compliance.

The README also explains why the FSF distributed GNU patch independently: Larry Wall had not released a new version since mid-1988, and he agreed to GNU distribution under the GNU General Public License. GNU bulletins from the 1990s describe patch as GNU's version of Larry Wall's program for applying diff output.

Adoption history

patch became a standard Unix packaging primitive because source distributions could ship small textual changes instead of whole replacement trees. GNU patch's support for unified diffs, reject files, backup naming, and POSIX/GNU build conventions made it fit naturally into Autotools-era source packages and distribution build recipes.

How it is used

The GNU diffutils manual shows the common form `patch <patchfile`, with optional original-file and patch-file arguments. If no patch file is supplied, patch reads diff output from standard input; if no input file is supplied, it tries to infer the file to edit from leading patch text.

Why package nerds care

For package maintainers, GNU patch is infrastructure rather than just a user command. It is the tool behind downstream patch queues, source RPM and Debian patch application, vendor backports, portability fixes, and decades of email-driven source exchange before pull-request platforms normalized repository-hosted review.

Timeline

  • 1984: Larry Wall copyright years begin in the GNU patch README.
  • 1988: The GNU patch README says Larry Wall had not released a new version since mid-1988.
  • 1989: Free Software Foundation copyright years begin in the GNU patch README.
  • 1990s: GNU bulletins list patch as GNU's version of Larry Wall's diff-applying program.
  • 1997: GNU FTP archive lists patch 2.5.
  • 2009: patch 2.6 adds a regression test suite, merge option, improved rejects, and GPLv3 licensing.
  • 2012: patch 2.7 adds `diff --git` format support and path-safety checks.
  • 2018: GNU FTP archive lists patch 2.7.6.
  • 2025: GNU FTP archive lists patch 2.8.

Related projects

  • GNU diffutils produces the diff output commonly consumed by patch.
  • RCS, SCCS, CVS, and later Git all coexist with patch-oriented workflows.
  • Git's `git apply` and `git format-patch` continue the patch-file workflow in a repository-aware form.

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 8 platform targets.

Recommended review

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

executables

Installed executables

CommandKindExposureNote
patchcliglobal 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 version2.8
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://savannah.gnu.org/projects/patch/

install metadata

Package metadata

Package keybrew:gpatch
Version2.8
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/gpatch
Homepagehttps://savannah.gnu.org/projects/patch/
Repositoryhttps://git.savannah.gnu.org/cgit/patch.git
Upstream docshttps://savannah.gnu.org/projects/patch
LicenseGPL-3.0-or-later
Source archivehttps://ftpmirror.gnu.org/gnu/patch/patch-2.8.tar.xz
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, sonoma, ventura, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared
CaveatsGNU "patch" has been installed as "gpatch". If you need to use it as "patch", you can add a "gnubin" directory to your PATH from your bashrc like: PATH="$HOMEBREW_PREFIX/opt/gpatch/libexec/gnubin:$PATH"

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namegpatch
Version Scheme0
Revision0
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • 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.

MacPorts95%

gpatch

sudo port install gpatch
  • normalized package name match
  • Matched by: Gpatch
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/gpatch/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1
Debian apt92%

patch 2.8-2

Apply a diff file to an original

https://savannah.gnu.org/projects/patch/

sudo apt install patch
  • Section: vcs
  • Architecture: amd64
  • 1 dependencies
  • 2 optional deps
  • installed executable or alias match
  • Matched by: Patch
Debian stable package indexes · deb.debian.org · Debian stable package indexes: patch from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Nix92%

patch

nix profile install nixpkgs#patch
  • installed executable or alias match
  • Matched by: Patch
nixpkgs package indexes · raw.githubusercontent.com · nixpkgs package indexes: patch from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
Ubuntu apt92%

patch 2.7.6-7build3

Apply a diff file to an original

https://savannah.gnu.org/projects/patch/

sudo apt install patch
  • Section: utils
  • Architecture: amd64
  • 1 dependencies
  • 2 optional deps
  • installed executable or alias match
  • Matched by: Patch
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: patch from https://archive.ubuntu.com/ubuntu/dists/noble/main/binary-amd64/Packages.gz
apk92%

patch 2.8-r0

Utility to apply diffs to files

https://www.gnu.org/software/patch/patch.html

sudo apk add patch
  • License: GPL-3.0-or-later
  • Architecture: x86_64
  • Source Package: patch
  • 1 dependencies
  • 1 provides
  • installed executable or alias match
  • Matched by: Patch
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: patch from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
apk92%

patch-doc 2.8-r0

Utility to apply diffs to files (documentation)

https://www.gnu.org/software/patch/patch.html

sudo apk add patch-doc
  • License: GPL-3.0-or-later
  • Architecture: x86_64
  • Source Package: patch
  • installed executable or alias match
  • Matched by: Patch
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: patch-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz
dnf92%

patch 2.8-4.fc44

Utility for modifying/upgrading files

https://savannah.gnu.org/projects/patch/

sudo dnf install patch
  • License: GPL-3.0-or-later
  • Category: Unspecified
  • Architecture: x86_64
  • Source Package: patch
  • 4 dependencies
  • 2 provides
  • installed executable or alias match
  • Matched by: Patch
Fedora Rawhide package metadata · dl.fedoraproject.org · Fedora Rawhide package metadata: patch from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst
pacman92%

patch 2.8-1

A utility to apply patch files to original sources

https://www.gnu.org/software/patch/

sudo pacman -S patch
  • License: GPL
  • Architecture: x86_64
  • 2 dependencies
  • 1 optional deps
  • installed executable or alias match
  • Matched by: Patch
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: patch from https://geo.mirror.pkgbuild.com/core/os/x86_64/core.db.tar.gz
zypper92%

patch 2.8-2.3

GNU patch

https://ftp.gnu.org/gnu/patch/

sudo zypper install patch
  • License: GPL-3.0-or-later
  • Category: Productivity/Text/Utilities
  • Architecture: x86_64
  • Source Package: patch
  • 1 dependencies
  • 1 provides
  • installed executable or alias match
  • Matched by: Patch
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: patch from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
Chocolatey92%

patch

choco install patch
  • installed executable or alias match
  • Matched by: Patch
Chocolatey community package catalog · community.chocolatey.org · Chocolatey community package catalog: patch from http://community.chocolatey.org/api/v2/Packages?$filter=IsLatestVersion&$select=Id&$top=1000&$skiptoken='11','openssh'
Scoop92%

main/patch

scoop install main/patch
  • installed executable or alias match
  • Matched by: Patch
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/patch.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1
winget92%

GnuWin32.Patch

winget install --id GnuWin32.Patch -e
  • installed executable or alias match
  • Matched by: Patch
Windows Package Manager source index · cdn.winget.microsoft.com · Windows Package Manager source index: GnuWin32.Patch from https://cdn.winget.microsoft.com/cache/source.msix

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 package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment