PKGSRC / INSTALLATION

MACOS

One package tool, from the rack to the laptop.

Current builds are pkgsrc trunk packages for supported Apple Silicon and Intel macOS releases.

PACKAGE SET

Choose a known base.

Current sets: Apple Silicon on Sonoma 14.5 or newer, and Intel on Monterey 12.3 or newer. Archived sets are available for older macOS releases but are no longer updated.

Important. Bootstrap kits are for a fresh pkgsrc installation. If pkgsrc is already installed, use the matching upgrade kit or pkgin upgrade instead of unpacking a bootstrap over it.

01

Apple Silicon · 14.5+

arm64, updated from pkgsrc trunk every few days.

Install

BOOTSTRAP_TAR="bootstrap-macos14.5-trunk-arm64-20251114.tar.gz"
BOOTSTRAP_SHA="512a3c209fa0e83b4f614bc6ce11928c10b75cd0"

# Download the bootstrap kit to the current directory.
curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap/${BOOTSTRAP_TAR}

# Verify the SHA1 checksum before unpacking.
echo "${BOOTSTRAP_SHA}  ${BOOTSTRAP_TAR}" | shasum -c- || exit 1

# Optional: verify the PGP signature (requires gpg).
# curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap/${BOOTSTRAP_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/ED09C4B0.asc | gpg2 --import
# gpg2 --verify ${BOOTSTRAP_TAR}{.asc,}

# Unpack the kit to /opt/pkg.
sudo tar -zxpf ${BOOTSTRAP_TAR} -C /

# Add pkgsrc tools to this shell.
eval $(/usr/libexec/path_helper)
Upgrade this package set

Use an upgrade kit only when package configuration or signing keys need to change. For normal maintenance, run pkgin upgrade.

UPGRADE_TAR="bootstrap-macos14.5-trunk-arm64-20251114-upgrade.tar.gz"
UPGRADE_SHA="3a1a211baba328513c7d59194c1b5cc199848644"

# Download the upgrade kit to the current directory.
curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap-upgrade/${UPGRADE_TAR}

# Verify the SHA1 checksum before unpacking.
echo "${UPGRADE_SHA}  ${UPGRADE_TAR}" | shasum -c- || exit 1

# Optional: verify the PGP signature (requires gpg).
# curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap-upgrade/${UPGRADE_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/ED09C4B0.asc | gpg2 --import
# gpg2 --verify ${UPGRADE_TAR}{.asc,}

# Unpack the kit to /opt/pkg.
sudo tar -zxpf ${UPGRADE_TAR} -C /

# Ensure package tools and installed packages are current.
sudo /opt/pkg/sbin/pkg_add -U pkg_install pkgin
sudo /opt/pkg/bin/pkgin clean
sudo /opt/pkg/bin/pkgin -y upgrade
02

Intel · 12.3+

x86_64 packages for supported Intel Macs.

Install

BOOTSTRAP_TAR="bootstrap-macos12.3-trunk-x86_64-20240426.tar.gz"
BOOTSTRAP_SHA="2b151d12576befd85312ddb5261307998f16df2f"

# Download the bootstrap kit to the current directory.
curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap/${BOOTSTRAP_TAR}

# Verify the SHA1 checksum before unpacking.
echo "${BOOTSTRAP_SHA}  ${BOOTSTRAP_TAR}" | shasum -c- || exit 1

# Optional: verify the PGP signature (requires gpg).
# curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap/${BOOTSTRAP_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/ED09C4B0.asc | gpg2 --import
# gpg2 --verify ${BOOTSTRAP_TAR}{.asc,}

# Unpack the kit to /opt/pkg.
sudo tar -zxpf ${BOOTSTRAP_TAR} -C /

# Add pkgsrc tools to this shell.
eval $(/usr/libexec/path_helper)
Upgrade this package set

Use an upgrade kit only when package configuration or signing keys need to change. For normal maintenance, run pkgin upgrade.

UPGRADE_TAR="bootstrap-macos12.3-trunk-x86_64-20240426-upgrade.tar.gz"
UPGRADE_SHA="bcbd41547216ec5a2f59ba460c3f7eef7a900eed"

# Download the upgrade kit to the current directory.
curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap-upgrade/${UPGRADE_TAR}

# Verify the SHA1 checksum before unpacking.
echo "${UPGRADE_SHA}  ${UPGRADE_TAR}" | shasum -c- || exit 1

# Optional: verify the PGP signature (requires gpg).
# curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap-upgrade/${UPGRADE_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/ED09C4B0.asc | gpg2 --import
# gpg2 --verify ${UPGRADE_TAR}{.asc,}

# Unpack the kit to /opt/pkg.
sudo tar -zxpf ${UPGRADE_TAR} -C /

# Ensure package tools and installed packages are current.
sudo /opt/pkg/sbin/pkg_add -U pkg_install pkgin
sudo /opt/pkg/bin/pkgin clean
sudo /opt/pkg/bin/pkgin -y upgrade
03

Archive · Big Sur 11.3

Choose either arm64 or x86_64. This package set is no longer updated.

Install

# Choose exactly one architecture.
# Apple Silicon:
BOOTSTRAP_TAR="bootstrap-macos11-trunk-arm64-20240212.tar.gz"
BOOTSTRAP_SHA="3d2a31e1f3eb026bb9ed0b3a63787355ad73a958"
# Intel:
# BOOTSTRAP_TAR="bootstrap-macos11-trunk-x86_64-20240212.tar.gz"
# BOOTSTRAP_SHA="c4b71fe9bf0ef89cc8d38909496a75693050cd96"

curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap/${BOOTSTRAP_TAR}
echo "${BOOTSTRAP_SHA}  ${BOOTSTRAP_TAR}" | shasum -c- || exit 1
# curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap/${BOOTSTRAP_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/1F32A9AD.asc | gpg2 --import
# gpg2 --verify ${BOOTSTRAP_TAR}{.asc,}
sudo tar -zxpf ${BOOTSTRAP_TAR} -C /
eval $(/usr/libexec/path_helper)
04

Archive · Mojave / Catalina

x86_64 for macOS 10.14.6 and 10.15.x. This package set is no longer updated.

Install

BOOTSTRAP_TAR="bootstrap-macos14-trunk-x86_64-20210717.tar.gz"
BOOTSTRAP_SHA="a23fed860e7f515e7405fcfea9595049b9ea6634"

# Download the bootstrap kit to the current directory.
curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap/${BOOTSTRAP_TAR}

# Verify the SHA1 checksum before unpacking.
echo "${BOOTSTRAP_SHA}  ${BOOTSTRAP_TAR}" | shasum -c- || exit 1

# Optional: verify the PGP signature (requires gpg).
# curl -O https://pkgsrc.smartos.org/packages/Darwin/bootstrap/${BOOTSTRAP_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/1F32A9AD.asc | gpg2 --import
# gpg2 --verify ${BOOTSTRAP_TAR}{.asc,}

# Unpack the kit to /opt/pkg.
sudo tar -zxpf ${BOOTSTRAP_TAR} -C /

# Add pkgsrc tools to this shell.
eval $(/usr/libexec/path_helper)
05

Archive · Sierra 10.12.6+

x86_64. This package set is no longer updated and uses its archived repository destination.

Install

BOOTSTRAP_TAR="bootstrap-trunk-x86_64-20190524.tar.gz"
BOOTSTRAP_SHA="1c554a806fb41dcc382ef33e64841ace13988479"
REPO_URL="https://us-central.manta.mnx.io/pkgsrc/public/packages/Darwin/10.12"

curl -O ${REPO_URL}/bootstrap/${BOOTSTRAP_TAR}
echo "${BOOTSTRAP_SHA}  ${BOOTSTRAP_TAR}" | shasum -c- || exit 1
# curl -O ${REPO_URL}/bootstrap/${BOOTSTRAP_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/1F32A9AD.asc | gpg2 --import
# gpg2 --verify ${BOOTSTRAP_TAR}{.asc,}
sudo tar -zxpf ${BOOTSTRAP_TAR} -C /
sudo sed -i '' -e "s,https://pkgsrc.joyent.*All,${REPO_URL}/trunk/x86_64/All," /opt/pkg/etc/pkg_install.conf /opt/pkg/etc/pkgin/repositories.conf || exit 1
eval $(/usr/libexec/path_helper)
06

Archive · Mavericks 10.9.5+

x86_64. This package set is no longer updated and uses its archived repository destination.

Install

BOOTSTRAP_TAR="bootstrap-trunk-x86_64-20181001.tar.gz"
BOOTSTRAP_SHA="7209132a657582cf87897a2ad280c587e3d6bff0"
REPO_URL="https://us-central.manta.mnx.io/pkgsrc/public/packages/Darwin/10.9"

curl -O ${REPO_URL}/bootstrap/${BOOTSTRAP_TAR}
echo "${BOOTSTRAP_SHA}  ${BOOTSTRAP_TAR}" | shasum -c- || exit 1
# curl -O ${REPO_URL}/bootstrap/${BOOTSTRAP_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/1F32A9AD.asc | gpg2 --import
# gpg2 --verify ${BOOTSTRAP_TAR}{.asc,}
sudo tar -zxpf ${BOOTSTRAP_TAR} -C /
sudo sed -i '' -e "s,https://pkgsrc.joyent.*All,${REPO_URL}/trunk/x86_64/All," /opt/pkg/etc/pkg_install.conf /opt/pkg/etc/pkgin/repositories.conf || exit 1
eval $(/usr/libexec/path_helper)
07

Archive · Snow Leopard 10.6.8+

32-bit i386. This package set is no longer updated and uses its archived repository destination.

Install

BOOTSTRAP_TAR="bootstrap-trunk-i386-20180812.tar.gz"
BOOTSTRAP_SHA="283b88b13c75e8f92de8376532ccf4f4b9443f9d"
REPO_URL="https://us-central.manta.mnx.io/pkgsrc/public/packages/Darwin/10.6"

curl -O ${REPO_URL}/bootstrap/${BOOTSTRAP_TAR}
echo "${BOOTSTRAP_SHA}  ${BOOTSTRAP_TAR}" | shasum -c- || exit 1
# curl -O ${REPO_URL}/bootstrap/${BOOTSTRAP_TAR}.asc
# curl -sS https://pkgsrc.smartos.org/pgp/1F32A9AD.asc | gpg2 --import
# gpg2 --verify ${BOOTSTRAP_TAR}{.asc,}
sudo tar -zxpf ${BOOTSTRAP_TAR} -C /
sudo sed -i '' -e "s,https://pkgsrc.joyent.*All,${REPO_URL}/trunk/i386/All," /opt/pkg/etc/pkg_install.conf /opt/pkg/etc/pkgin/repositories.conf || exit 1
eval $(/usr/libexec/path_helper)

POST-INSTALL

Operate with pkgin.

pkgin is the binary package front end. The underlying pkg_add, pkg_info, pkg_create, and pkg_admin tools remain available when you need them.

# Elevated commands use explicit pkgsrc paths so sudo cannot reset them.

# Refresh repository metadata
sudo /opt/pkg/bin/pkgin -y update

# Find, install, and upgrade packages
/opt/pkg/bin/pkgin search ^ffmpeg[0-9]$
sudo /opt/pkg/bin/pkgin -y install ffmpeg4
/opt/pkg/bin/pkgin avail
sudo /opt/pkg/bin/pkgin -y upgrade
sudo /opt/pkg/bin/pkgin -y remove ffmpeg4
sudo /opt/pkg/bin/pkgin -y autoremove

# Inspect installed package metadata and files
/opt/pkg/sbin/pkg_info
/opt/pkg/sbin/pkg_info -Fe /opt/pkg/bin/ffmpeg4
/opt/pkg/sbin/pkg_info -qL ffmpeg4

# Refresh the vulnerability list and audit installed packages
sudo /opt/pkg/sbin/pkg_admin fetch-pkg-vulnerabilities
/opt/pkg/sbin/pkg_admin audit