# Install crd2pulumi with Homebrew, Nix

Generate typed CustomResources from a Kubernetes CustomResourceDefinition. Version 1.6.2 via Homebrew; verified 2026-07-27. Also installable with nix: nix profile install nixpkgs#crd2pulumi.

## Install

```sh
sudo av install brew:crd2pulumi
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install crd2pulumi
```

  Evidence: local Homebrew formula metadata

### Linux

- Nix (92%):

```sh
nix profile install nixpkgs#crd2pulumi
```

  Evidence: nixpkgs package indexes: pkgs/by-name/cr/crd2pulumi/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:crd2pulumi
- **Package manager:** Homebrew
- **Version:** 1.6.2
- **Source summary:** Generate typed CustomResources from a Kubernetes CustomResourceDefinition
- **Homepage:** <https://github.com/pulumi/crd2pulumi>
- **Repository:** <https://github.com/pulumi/crd2pulumi>
- **Last updated:** 2026-07-27T22:04:05+02:00
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- crd2pulumi (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 1.6.2
## Project history and usage

crd2pulumi is Pulumi's CLI for generating strongly typed Pulumi CustomResource classes from Kubernetes CustomResourceDefinition YAML.

### Project history

Pulumi created crd2pulumi in 2020 to address a gap in its Kubernetes support: CustomResources were usable, but custom schemas meant users did not get strong typing, IDE checks, or autocomplete for popular CRDs.

The README positions the tool around real-world CRD-heavy projects such as cert-manager and Istio, whose schemas can run to thousands of lines. The tool generates language-specific Pulumi bindings for .NET, Go, Java, Node.js, and Python.

### Adoption history

The official installation section points users to repository-hosted binary releases and Pulumi's Homebrew tap. Supplied package facts also show Nix and Homebrew packaging, matching the tool's role in local infrastructure-development workflows.

### How it is used

Users pass one or more CRD YAML files or URLs to crd2pulumi and select target languages or output paths. The generated packages let Pulumi programs instantiate custom Kubernetes resources with typed arguments instead of untyped object maps.

### Why package nerds care

crd2pulumi is packaging glue between Kubernetes API extension, language package generation, and Pulumi IaC projects. It matters because it turns CRD YAML, usually shipped by Kubernetes projects, into language-native SDK surfaces.

### Timeline

- 2020: pulumi/crd2pulumi repository created.
- 2020: v1.0.3 release published.
- 2026: v1.6.2 release published.

### Related projects

- The README ties crd2pulumi to Pulumi Kubernetes CustomResources and cites cert-manager and Istio as examples of complex CRD producers.

### Sources

- <https://github.com/pulumi/crd2pulumi>
- <https://github.com/pulumi/crd2pulumi#readme>
- <https://github.com/pulumi/crd2pulumi/releases/tag/v1.0.3>
- <https://github.com/pulumi/crd2pulumi/releases/tag/v1.6.2>


## Security Notes

infrastructure mutation or orchestration signal.

- **Geiger risk:** orange / medium
- infrastructure mutation or orchestration signal

## Other Package-Manager Records

- Nix - crd2pulumi: normalized package name match | nixpkgs package indexes: pkgs/by-name/cr/crd2pulumi/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1


## Combined YAML source

View the package source record on GitHub. [combined/crd2pulumi.yml](https://github.com/mxcl/pkgdb/blob/main/combined/crd2pulumi.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- external package-manager database matches
- cross-ecosystem install command graph
