# Install carthage with Homebrew, MacPorts

Decentralized dependency manager for Cocoa. Version 0.40.0 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:carthage
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install carthage
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install carthage
```

  Evidence: MacPorts ports tree: devel/carthage/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

## Package facts

- **Package key:** brew:carthage
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/carthage>
- **Version:** 0.40.0
- **Source summary:** Decentralized dependency manager for Cocoa
- **Homepage:** <https://github.com/Carthage/Carthage>
- **Repository:** <https://github.com/Carthage/Carthage>
- **Upstream docs:** <https://github.com/Carthage/Carthage#readme>
- **License:** MIT
- **Source archive:** <https://github.com/Carthage/Carthage.git>
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- carthage (cli)
- carthage (alias)

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, monterey, sonoma, ventura

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 0.40.0
- Local data: ok
- Upstream repository: https://github.com/Carthage/Carthage
- info: No package-manager update timestamp was available.
- info: No cached GitHub release or tag data was available.
## Project history and usage

Carthage is a decentralized dependency manager for Cocoa. Its README says it builds dependencies and provides binary frameworks while leaving project structure and build settings under the developer's control.

### Project history

The public repository was created in 2014, during the period when Swift and modern Cocoa dependency management were taking shape. Carthage's official pitch was simplicity and decentralization: dependencies are declared in a Cartfile, resolved to exact versions in Cartfile.resolved, and built or downloaded without automatically editing the Xcode project.

### Adoption history

Carthage became a major alternative to CocoaPods for iOS and macOS projects that preferred explicit framework integration. Its documentation emphasizes manual Xcode integration, shared schemes, tagged releases, binary framework archives, and reproducible bootstrap through committed Cartfile.resolved files.

### How it is used

A typical project creates a Cartfile next to its .xcodeproj or .xcworkspace, runs carthage update, then adds built frameworks or XCFrameworks from Carthage/Build into Xcode. Carthage can also checkout dependencies into Carthage/Checkouts, use Git submodules, cache builds, and authenticate binary framework downloads through ~/.netrc when --use-netrc is set.

### Why package nerds care

Carthage is one of the canonical package-manager stories in Apple development: it rejects project mutation as a feature, relies on Git tags and semantic versions, and treats dependency builds as visible artifacts. For package-manager catalogs, it is a historically important Cocoa tool because it captures a distinct design point from CocoaPods and Swift Package Manager.

### Timeline

- 2014: Public GitHub repository created.
- 2021: README says version 0.37.0 encouraged XCFrameworks and required them for Apple Silicon Macs.
- 2020s: Documentation describes Cartfile, Cartfile.private, Cartfile.resolved, Carthage/Build, Carthage/Checkouts, and the shared cache under ~/Library/Caches/org.carthage.CarthageKit.

### Related projects

- Official documentation compares Carthage's approach with CocoaPods.
- Carthage operates in the Cocoa, Xcode, Swift, iOS, macOS, tvOS, and watchOS ecosystem.
- Its artifacts and binary-project-specification docs connect it to GitHub releases and HTTPS-hosted framework archives.

### Sources

- <https://api.github.com/repos/Carthage/Carthage>
- <https://github.com/Carthage/Carthage>
- <https://github.com/Carthage/Carthage/tree/master/Documentation>
- <https://github.com/Carthage/Carthage#readme>
- <https://formulae.brew.sh/api/formula/carthage.json>


## Security Notes

infrastructure mutation or orchestration signal.

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


## Configuration and credential file locations

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.


## Configuration files

- Unix: ./Cartfile, ./Cartfile.private, ./Cartfile.resolved

## Credential files

- Unix: ~/.netrc
## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** carthage
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Requirements:** macos, xcode
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- MacPorts - carthage: normalized package name match | MacPorts ports tree: devel/carthage/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1


## Related links

- [Source-control packages](https://www.automicvault.com/pkg/source-control-tools/) - Belongs to a source-control command family.
- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Text processing packages](https://www.automicvault.com/pkg/text-processing-tools/) - Matched text, document, or structured-data processing metadata.
- [cocoapods](https://www.automicvault.com/pkg/brew/cocoapods/) - Shares av.db curated category or tags: cli, cocoa, dependency-management, dependency-manager, developer-tools.
- [carton](https://www.automicvault.com/pkg/brew/carton/) - Shares av.db curated category or tags: cli, dependency-management, dependency-manager, developer-tools.
- [cask](https://www.automicvault.com/pkg/brew/cask/) - Shares av.db curated category or tags: cli, dependency-management, dependency-manager, developer-tools.
- [coursier](https://www.automicvault.com/pkg/brew/coursier/) - Shares av.db curated category or tags: cli, dependency-management, dependency-manager, developer-tools.
- [swift-outdated](https://www.automicvault.com/pkg/brew/swift-outdated/) - Shares av.db curated category or tags: cli, dependency-management, developer-tools, swift.
- [weaver](https://www.automicvault.com/pkg/brew/weaver/) - Shares av.db curated category or tags: cli, developer-tools, ios, macos, swift.
- [cargo-edit](https://www.automicvault.com/pkg/brew/cargo-edit/) - Shares av.db curated category or tags: cli, dependency-management, developer-tools.
- [cargo-features-manager](https://www.automicvault.com/pkg/brew/cargo-features-manager/) - Shares av.db curated category or tags: cli, dependency-management, developer-tools.
- [mint](https://www.automicvault.com/pkg/brew/mint/) - Local package facts share a topical domain. Shared terms: cli, dependency, dependency-manager, developer, developer-tools.

## Combined YAML source

View the package source record on GitHub. [combined/carthage.yml](https://github.com/automic-vault/db/blob/main/combined/carthage.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated configuration and credential file locations
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
