macOS
brew install charmcraftlocal Homebrew formula metadata
brew
Tool to build charms and publish them on Charmhub. Version 4.3.0 via Homebrew; verified 2026-06-25.
install
brew install charmcraftlocal Homebrew formula metadata
overview
Tool to build charms and publish them on Charmhub
history
Charmcraft is Canonical's command-line tool for creating, packaging, and publishing charms, the operator packages used by Juju. In package-manager terms it is the build-and-release client for the Charmhub/Juju ecosystem rather than a general-purpose language package manager.
The upstream GitHub repository was created in April 2020, and its README describes Charmcraft as the tool for initializing charm projects, packing charms, registering names, uploading revisions, and releasing them through Charmhub. GitHub release metadata shows the first public release, 0.1.0, published in May 2020; current releases are in the 4.x line.
Charmcraft adoption follows Juju and Charmhub adoption: developers who build charmed operators use it to turn operator source trees into distributable charm artifacts. The README says the recommended Linux installation is the Snap package, while the input package-manager facts show a Homebrew formula for macOS users.
Typical use starts with `charmcraft init`, then `charmcraft pack` to build, `charmcraft register` to reserve a Charmhub name, and `charmcraft upload` to publish revisions. The documented `charmcraft.yaml` file declares project metadata consumed by Charmcraft.
Charmcraft matters to package nerds because it is an ecosystem-specific packaging frontend: it bridges source trees, declared package metadata, build isolation, and a central registry for Juju operators. It is also a Canonical example of packaging tooling aligned with Snap distribution and Ubuntu documentation.
security posture
No matching local secret-handling manifest was found for charmcraft. Nucleus package metadata is still published here so future coverage has a stable package URL.
Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.
local files
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.
Config paths the tool may read or write during local use.
./charmcraft.yamlexecutables
| Command | Kind | Exposure | Note |
|---|---|---|---|
charmcraft | cli | global executable |
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.
install metadata
| Package key | brew:charmcraft |
|---|---|
| Version | 4.3.0 |
| Package manager | Homebrew |
| Package manager page | https://formulae.brew.sh/formula/charmcraft |
| Homepage | https://charmhub.io |
| Repository | https://github.com/canonical/charmcraft |
| Upstream docs | https://documentation.ubuntu.com/charmcraft/stable |
| License | Apache-2.0 |
| Source archive | https://files.pythonhosted.org/packages/5f/42/70ca3f5a4337f80b555de3355876de64869c84f8fcd927d78431b9252f20/charmcraft-4.3.0.tar.gz |
| Last updated | 2026-06-25T15:45:55Z |
| Pulse | updated |
| Dependencies | certifi, cryptography, libsodium, libyaml, pydantic, pygit2, python@3.14, rpds-py |
| Uses from macOS | libxml2, libxslt |
| Bottle | available (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux) |
| Homebrew post-install | not defined |
| Service | none declared |
registry facts
| Source Database | Homebrew formula API |
|---|---|
| Tap | homebrew/core |
| Full Name | charmcraft |
| Version Scheme | 0 |
| Revision | 0 |
| Head Version | HEAD |
| Bottle Stable Root URL | https://ghcr.io/v2/homebrew/core |
| Deprecated | no |
| Disabled | no |
| Keg Only | no |
| URL Keys |
|
source trail
This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.
View the package source record on GitHub.