pkg.sopackage field notes

brew / rank 1484

Install gpatch with Homebrew

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

provider-native install command

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 bottle metadata was recorded.

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
patchexecutableindexed executableDiscovered from the local executable index.

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-08-03
manager version2.8
manager updated
local dataunknown
upstreamnot available
latest detectednot detected
  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:gpatch
Version2.8
Package managerHomebrew
Homepagehttps://savannah.gnu.org/projects/patch/
Bottlenot recorded
Servicenone declared

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
  • curated package history
  • pkgdb category and tag curation