Skip to content

Repository

The infrastructure to deliver PostgreSQL Extensions

Pigsty provides a PostgreSQL extension repository across 16 Linux platform targets (8 distribution releases on both x86_64 and aarch64). It is designed to work together with the official PostgreSQL Global Development Group (PGDG) repo. Together, they can provide up to 575 packaged PostgreSQL extensions out-of-the-box.

OS / Arch OS x86_64 aarch64
EL8 el8 18 17 16 15 14 18 17 16 15 14
EL9 el9 18 17 16 15 14 18 17 16 15 14
EL10 el10 18 17 16 15 14 18 17 16 15 14
Debian 12 d12 18 17 16 15 14 18 17 16 15 14
Debian 13 d13 18 17 16 15 14 18 17 16 15 14
Ubuntu 22.04 u22 18 17 16 15 14 18 17 16 15 14
Ubuntu 24.04 u24 18 17 16 15 14 18 17 16 15 14
Ubuntu 26.04 u26 18 17 16 15 14 18 17 16 15 14

Get Started

You can enable the pigsty infra & pgsql repo with the pig CLI tool:

curl https://repo.pigsty.io/pig | bash      # download and install the pig CLI tool
pig repo add all -u                         # add linux, pgdg, pigsty repo and update cache
curl https://repo.pigsty.cc/pig | bash      # download from mirror site
pig repo add -u                             # add linux, pgdg, pigsty repo and update cache

Manual Install

You can also add these repo to your system manually with default apt, dnf, yum approach.

# Add Pigsty's GPG public key to your system keychain to verify package signatures
curl -fsSL https://repo.pigsty.io/key | sudo gpg --dearmor -o /etc/apt/keyrings/pigsty.gpg

# Get the Debian/Ubuntu codename (bookworm, trixie, jammy, noble, resolute), and write the matching repository address to the APT list file
distro_codename=$(lsb_release -cs)
sudo tee /etc/apt/sources.list.d/pigsty-io.list > /dev/null <<EOF
deb [signed-by=/etc/apt/keyrings/pigsty.gpg] https://repo.pigsty.io/apt/infra generic main
deb [signed-by=/etc/apt/keyrings/pigsty.gpg] https://repo.pigsty.io/apt/pgsql/${distro_codename} ${distro_codename} main
EOF

# Refresh APT repository cache
sudo apt update
# Add Pigsty's GPG public key to your system keychain to verify package signatures
curl -fsSL https://repo.pigsty.io/key | sudo tee /etc/pki/rpm-gpg/RPM-GPG-KEY-pigsty >/dev/null

# Add Pigsty Repo definition files to /etc/yum.repos.d/ directory, including two repositories
sudo tee /etc/yum.repos.d/pigsty-io.repo > /dev/null <<-'EOF'
[pigsty-infra]
name=Pigsty Infra for $basearch
baseurl=https://repo.pigsty.io/yum/infra/$basearch
skip_if_unavailable = 1
enabled = 1
priority = 1
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-pigsty
module_hotfixes=1

[pigsty-pgsql]
name=Pigsty PGSQL For el$releasever.$basearch
baseurl=https://repo.pigsty.io/yum/pgsql/el$releasever.$basearch
skip_if_unavailable = 1
enabled = 1
priority = 1
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-pigsty
module_hotfixes=1
EOF

# Refresh YUM/DNF repository cache
sudo yum makecache;

All the RPM / DEB packages are signed with GPG Key fingerprint (B9BD8B20) in Pigsty repository.

Compatibility

Pigsty has two major repos: INFRA and PGSQL, provide DEB / RPM for x86_64 and aarch64 architecture.

The infra repo contains packages that are generic to any PostgreSQL version and Linux major version, including prometheus & grafana stack, admin tools for postgres, and many utils written in go.

Linux Package x86_64 aarch64
EL rpm
Debian deb

The pgsql repo contains packages that are ad hoc to specific PostgreSQL Major Versions. (Often ad hoc to a specific Linux distro major version, too) Including extensions, and some kernel forks.

OS Vendor Major Minor Fullname PG Major Version Comment
el7.x86_64 EL 7 7.9 CentOS 7 x86 18 17 16 15 14 EOL
el8.x86_64 EL 8 8.10 RockyLinux 8 x86 18 17 16 15 14 Near EOL
el8.aarch64 EL 8 8.10 RockyLinux 8 ARM 18 17 16 15 14 Near EOL
el9.x86_64 EL 9 9.7 RockyLinux 9 x86 18 17 16 15 14 OK
el9.aarch64 EL 9 9.7 RockyLinux 9 ARM 18 17 16 15 14 OK
el10.x86_64 EL 10 10.1 RockyLinux 10 x86 18 17 16 15 14 OK
el10.aarch64 EL 10 10.1 RockyLinux 10 ARM 18 17 16 15 14 OK
d11.x86_64 Debian 11 11.11 Debian 11 x86 18 17 16 15 14 EOL
d11.aarch64 Debian 11 11.11 Debian 11 ARM 18 17 16 15 14 EOL
d12.x86_64 Debian 12 12.13 Debian 12 x86 18 17 16 15 14 OK
d12.aarch64 Debian 12 12.13 Debian 12 ARM 18 17 16 15 14 OK
d13.x86_64 Debian 13 13.3 Debian 13 x86 18 17 16 15 14 OK
d13.aarch64 Debian 13 13.3 Debian 13 ARM 18 17 16 15 14 OK
u20.x86_64 Ubuntu 20 20.04.6 Ubuntu 20.04 x86 18 17 16 15 14 EOL
u20.aarch64 Ubuntu 20 20.04.6 Ubuntu 20.04 ARM 18 17 16 15 14 EOL
u22.x86_64 Ubuntu 22 22.04.5 Ubuntu 22.04 x86 18 17 16 15 14 OK
u22.aarch64 Ubuntu 22 22.04.5 Ubuntu 22.04 ARM 18 17 16 15 14 OK
u24.x86_64 Ubuntu 24 24.04.3 Ubuntu 24.04 x86 18 17 16 15 14 OK
u24.aarch64 Ubuntu 24 24.04.3 Ubuntu 24.04 ARM 18 17 16 15 14 OK

Source

Building specs of these repos and packages are open-sourced on GitHub:

The repo for PostgreSQL Extensions & Kernel Forks

Packages that are generic to any PostgreSQL version and Linux major version.

The official PostgreSQL APT/YUM repository

Import the GPG key for Pigsty repository