Automic VaultAutomic Vault

brew

Install kcgi with Homebrew, apk, Nix

Minimal CGI and FastCGI library for C/C++. Version 1.0.1 via Homebrew; verified from local package data. Also installable with nix: nix profile install nixpkgs#kcgi.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install kcgi

local Homebrew formula metadata

Linux

Alpine Linux apkverified · 92%
sudo apk add kcgi

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

Nixverified · 92%
nix profile install nixpkgs#kcgi

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

overview

Package summary

Minimal CGI and FastCGI library for C/C++

Commands and aliases

  • kfcgi

history

Project history and usage

kcgi is Kristaps Dzonsons's minimal CGI and FastCGI library for C and C++ web applications. Its canonical site emphasizes security, auditability, and use in the BCHS stack.

Project history

The public GitHub repository was created in January 2016, while the project site serves as the canonical release and documentation surface. kcgi grew around a conservative C web-programming model: parse CGI/FastCGI requests, validate inputs, produce HTTP output, and keep the untrusted request path small enough to audit.

The release archive shows a long 0.x series before 1.0.0 on November 10, 2025. Notable evolution includes bearer-token validation in 2021, seccomp maintenance changes in 2021, asynchronous FastCGI descriptor support in 2023, CORS header support in 2024, and fetch metadata/Priority header support in the 1.0.0 release.

Adoption history

The official installation page names system packages for OpenBSD, FreeBSD, Homebrew, Arch Linux, and other systems. The batch input also records Alpine, Homebrew, and Nix packages, reflecting its niche but durable role in BSD-flavored C web stacks.

How it is used

kcgi is used as a C/C++ library rather than primarily as a standalone command. The documentation centers on CGI and FastCGI request parsing, HTTP headers and bodies, typed input validation, formatted writers for JSON/XML/HTML output, compression, authentication helpers, and sandboxing or process separation for untrusted input.

Why package nerds care

kcgi is interesting to package nerds because it preserves a small-C, manpage-first, BSD-style approach to web development while still being packaged for modern Unix systems. Its release archive is unusually explicit about ABI, platform, and security tradeoffs.

Timeline

  • 2016-01-20: GitHub repository created.
  • 2021-05-08: 0.12.5 added bearer-token authorization support.
  • 2021-09-23: 0.13.0 changed Linux seccomp defaults.
  • 2023-11-19: 0.13.1 added asynchronous FastCGI descriptor support.
  • 2025-11-10: 1.0.0 release published.
  • 2025-11-17: 1.0.1 hot-fix release published.

Related projects

  • The project site groups kcgi with the BCHS-oriented BSD.lv tools sqlbox and openradtool, and its README notes development primarily on OpenBSD.

security posture

Risk level: green

library-like package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • library-like package without higher-risk signals

Signals

  • metadata:library-like

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Build metadata lists 1 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.

executables

Installed executables

CommandKindExposureNote
kfcgicliglobal 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-25
manager version1.0.1
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://kristaps.bsd.lv/kcgi/

  • infoNo package-manager update timestamp was available.low confidence
  • infoRelease/tag comparison is only available for GitHub repositories.https://kristaps.bsd.lv/kcgi/none confidence

install metadata

Package metadata

Package keybrew:kcgi
Version1.0.1
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/kcgi
Homepagehttps://kristaps.bsd.lv/kcgi/
Repositoryhttps://github.com/kristapsdz/kcgi
Upstream docshttps://kristaps.bsd.lv/kcgi
LicenseISC
Source archivehttps://kristaps.bsd.lv/kcgi/snapshots/kcgi-1.0.1.tgz
Build dependenciesbmake
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 Namekcgi
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.

Nix95%

kcgi

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

kcgi 1.0.1-r0

CGI and FastCGI library for C/C++ web applications

https://kristaps.bsd.lv/kcgi

sudo apk add kcgi
  • License: ISC
  • Architecture: x86_64
  • Source Package: kcgi
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Kcgi
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: kcgi from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

kcgi-dev 1.0.1-r0

CGI and FastCGI library for C/C++ web applications (development files)

https://kristaps.bsd.lv/kcgi

sudo apk add kcgi-dev
  • License: ISC
  • Architecture: x86_64
  • Source Package: kcgi
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Kcgi
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: kcgi-dev from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

kcgi-doc 1.0.1-r0

CGI and FastCGI library for C/C++ web applications (documentation)

https://kristaps.bsd.lv/kcgi

sudo apk add kcgi-doc
  • License: ISC
  • Architecture: x86_64
  • Source Package: kcgi
  • normalized package name match
  • Matched by: Kcgi
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: kcgi-doc from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
apk95%

kcgi-static 1.0.1-r0

CGI and FastCGI library for C/C++ web applications (static library)

https://kristaps.bsd.lv/kcgi

sudo apk add kcgi-static
  • License: ISC
  • Architecture: x86_64
  • Source Package: kcgi
  • normalized package name match
  • Matched by: Kcgi
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: kcgi-static from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz

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