Installation Guide

This guide will walk you through installing DuckTape on your machine and setting up all the necessary dependencies.

System Requirements

  • macOS 12.0 (Monterey) or newer
  • Access to Calendar, Reminders, and Notes applications
  • Terminal access with permissions to install packages

Installation Options

Using Homebrew (Recommended)

The easiest way to install DuckTape is through Homebrew.

brew install ducktapeai/ducktape/ducktape

From Pre-built Binary

Download the latest release from our GitHub repository.

Download Latest Release

Building from Source

For developers who want to build from source code.

See instructions

Homebrew Installation

If you don't have Homebrew installed, you'll need to install it first:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

Then, you can install DuckTape with a single command:

brew tap ducktapeai/ducktape
brew install ducktape

Or install it in a single line:

brew install ducktapeai/ducktape/ducktape

Updating DuckTape

To update to the latest version, simply run:

brew upgrade ducktape

Building from Source

To build DuckTape from source, you'll need to have Rust installed on your system:

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

Clone the repository and build the project:

# Clone the repository
git clone https://github.com/ducktapeai/ducktape.git
cd ducktape

# Build the project
cargo build --release

# Install (optional)
cargo install --path .

Understanding the Homebrew Release Process

For developers and contributors who are interested in how DuckTape releases are managed through Homebrew, here's an overview of our release process:

# 1. Update version in Cargo.toml (e.g., from 0.16.21 to 0.16.22)
# 2. Update CHANGELOG.md with new features and improvements
# 3. Build and test locally:
cargo build --release
cargo install --path .

# 4. Create a source tarball for the new release:
tar -czf ducktape-0.16.22.tar.gz --exclude=target --exclude=.git .

# 5. Calculate SHA256 hash of the tarball for the Homebrew formula:
shasum -a 256 ducktape-0.16.22.tar.gz

# 6. Update the Homebrew formula with new version and SHA256 hash
# (Update Formula/ducktape.rb in the homebrew-ducktape repository)

# 7. Commit changes to both repositories and push a new version tag
git tag v0.16.22
git push origin v0.16.22

When users install DuckTape via Homebrew, the process automatically:

  • Downloads the source code from the GitHub repository
  • Verifies the integrity of the download using the SHA256 hash
  • Compiles the code with all dependencies
  • Installs the binary to the user's system

GitHub vs Local Tarballs

Note that GitHub automatically generates release tarballs when you tag a release, and these can have different SHA256 hashes than locally created tarballs due to differences in compression settings, file timestamps, and other metadata. When updating the Homebrew formula, always use the hash from the GitHub-generated tarball.

Verifying Installation

To verify that DuckTape has been installed correctly, run:

Terminal
$ ducktape --version
ducktape 0.16.22
$ |

Next Steps

After installing DuckTape, you'll need to set up your environment variables to use its features.