Automic VaultAutomic Vault

brew

Install carthage with Homebrew, MacPorts

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

install

Additional install commands

macOS

Homebrewverified · 100%
brew install carthage

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install carthage

MacPorts ports tree · devel/carthage/Portfile · source: api.github.com

overview

Package summary

Decentralized dependency manager for Cocoa

Commands and aliases

  • carthage

history

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.

security posture

Risk level: orange

infrastructure mutation or orchestration signal.

Risk classifier

orange risk · medium confidence · infrastructure

Why

  • infrastructure mutation or orchestration signal

Signals

  • text:dependency manager

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 8 platform targets.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

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

Config paths the tool may read or write during local use.

Unix
./Cartfile./Cartfile.private./Cartfile.resolved

Credential files

Credential-bearing paths to review before unattended agent runs.

Unix
~/.netrc

executables

Installed executables

CommandKindExposureNote
carthagecliglobal 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-08
manager version0.40.0
manager updated
local dataok
upstreamnot checked
latest detectednot detected

https://github.com/Carthage/Carthage

install metadata

Package metadata

Package keybrew:carthage
Version0.40.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/carthage
Homepagehttps://github.com/Carthage/Carthage
Repositoryhttps://github.com/Carthage/Carthage
Upstream docshttps://github.com/Carthage/Carthage#readme
LicenseMIT
Source archivehttps://github.com/Carthage/Carthage.git
Bottleavailable (on arm64_monterey, arm64_sequoia, arm64_sonoma, arm64_tahoe, arm64_ventura, monterey, sonoma, ventura)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Namecarthage
Version Scheme0
Revision0
Head VersionHEAD
Requirements
  • macos
  • xcode
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • 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.

MacPorts95%

carthage

sudo port install carthage
  • normalized package name match
  • Matched by: Carthage
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/carthage/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

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 configuration and credential file locations
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment