https://github.com/pgsty/extension
PostgreSQL Extension Ecosystem
https://github.com/pgsty/extension
catalog deb extension packaging postgresql rpm
Last synced: 6 months ago
JSON representation
PostgreSQL Extension Ecosystem
- Host: GitHub
- URL: https://github.com/pgsty/extension
- Owner: pgsty
- License: apache-2.0
- Created: 2024-07-31T01:08:18.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-04-04T03:11:31.000Z (6 months ago)
- Last Synced: 2025-04-04T04:20:21.759Z (6 months ago)
- Topics: catalog, deb, extension, packaging, postgresql, rpm
- Language: Python
- Size: 2.95 MB
- Stars: 34
- Watchers: 2
- Forks: 6
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Roadmap: docs/roadmap.md
Awesome Lists containing this project
README
# PostgreSQL Extension Repo
[](https://pigsty.io/ext)
[](https://github.com/pgsty/pig)
[](https://pigsty.io/docs/pgext/list)
[](https://github.com/pgsty/pig/blob/main/LICENSE)The supplementary [APT](#apt-repo) and [YUM](#yum-repo) repo for PostgreSQL extensions, maintained and used by [Pigsty](https://www.pigsty.io)
Provide 405 available [Extensions](https://ext.pigsty.io/#/list) as [RPM](https://ext.pigsty.io/#/rpm) / [DEB](https://ext.pigsty.io/#/deb) for PostgreSQL **13** - **17** in addition to the official PGDG repo.
Available on Linux: Debian 12 / Ubuntu 24.04 / 22.04 / EL8 / EL9 compatible OS distros, and `x86_64` & `ARM64` architectures.
| Entry / Filter | All | PGDG | PIGSTY | CONTRIB | MISC | MISS | PG17 | PG16 | PG15 | PG14 | PG13 |
|:--------------:|:---:|:----:|:------:|:-------:|:----:|:----:|:----:|:----:|:----:|:----:|:----:|
| RPM Extension | 397 | 116 | 208 | 69 | 4 | 7 | 379 | 392 | 394 | 378 | 355 |
| DEB Extension | 391 | 103 | 215 | 69 | 4 | 13 | 378 | 386 | 388 | 377 | 352 |**Why extension matters to PostgreSQL?** check the post: "[***PostgreSQL is eating the database world!***](https://medium.com/@fengruohang/postgres-is-eating-the-database-world-157c204dcfc4)"
**Why using this repo?** check the post: [***The idea way to deliver PostgreSQL extensions***](https://medium.com/@fengruohang/the-idea-way-to-deliver-postgresql-extensions-35646464bb71)
[](https://medium.com/@fengruohang/postgres-is-eating-the-database-world-157c204dcfc4)
> [The idea way to deliver PostgreSQL extensions](https://medium.com/@fengruohang/the-idea-way-to-deliver-postgresql-extensions-35646464bb71)
-------
## Get Started
### Pig CLI
You can use the [`pig`](/pig) cli tool (pg package manager) or just use the traditional way. It's up to you.
```bash
curl -fsSL https://repo.pigsty.io/pig | bash # install pig rpm/deb package
$ pig repo add pigsty pgdg -u # add pgdg & pigsty repo, update cache
$ pig ext install pg17 # install PostgreSQL 17 kernels with PGDG native packages
$ pig ext install pg_duckdb # install the pg_duckdb extension (for current pg17)
```### APT Repo
[](https://pigsty.io/docs/node)
[](https://pigsty.io/docs/node)
[](https://pigsty.io/docs/pgext/list/deb/)
[](https://pigsty.io/docs/pgext/list/deb/)
[](https://pigsty.io/docs/reference/compatibility/)All rpm/deb packages are signed with GPG key `B9BD8B20` (`9592A7BC7A682E7333376E09E7935D8DB9BD8B20` ).
For Ubuntu 22.04 / 24.04 & Debian 12 or any compatible platforms, use the following commands:
```bash
curl -fsSL https://repo.pigsty.io/key | sudo gpg --dearmor -o /etc/apt/keyrings/pigsty.gpg # add gpg key
sudo tee /etc/apt/sources.list.d/pigsty-io.list > /dev/null </dev/null # add gpg key
curl -fsSL https://repo.pigsty.io/yum/repo | sudo tee /etc/yum.repos.d/pigsty.repo >/dev/null # add repo file
sudo yum makecache; # sudo yum install pig
```-------
## What's Inside
Linux x86_64/amd64 [Extension](/list) packages for PostgreSQL 12 - 17, on El8, EL9, Ubuntu 22.04 and Debian 12.
Check the [extension list](https://ext.pigsty.io/#/list) for details.
----------------
## Contrib
If you have any suggestions on including new extensions or bumping to new versions, or find any mistake about metadata,
PR or [Issue](https://github.com/pgsty/extension/issues/new) are welcome!You can edit the [`pigsty.csv`](https://github.com/pgsty/extension/blob/main/data/pigsty.csv) raw data and create a pull
request to update the metadata.--------
## Compatibility
`pig` runs on: RHEL 8/9, Ubuntu 22.04/24.04, and Debian 12, on both `amd64/arm64` arch
| Code | Distribution | `x86_64` | `aarch64` |
|:-------:|--------------------------------|:----------:|:----------:|
| **el9** | RHEL 9 / Rocky9 / Alma9 / ... | PG 17 - 13 | PG 17 - 13 |
| **el8** | RHEL 8 / Rocky8 / Alma8 / ... | PG 17 - 13 | PG 17 - 13 |
| **u24** | Ubuntu 24.04 (`noble`) | PG 17 - 13 | PG 17 - 13 |
| **u22** | Ubuntu 22.04 (`jammy`) | PG 17 - 13 | PG 17 - 13 |
| **d12** | Debian 12 (`bookworm`) | PG 17 - 13 | PG 17 - 13 |Here are some bad cases and limitation for above distros:
- [`pg_duckdb`](https://ext.pigsty.io/#/pg_duckdb) `el8:*:*`
- [`pljava`](https://ext.pigsty.io/#/pljava): `el8:*:*`
- [`pllua`](https://ext.pigsty.io/#/pllua): `el8:arm:13,14,15`
- [`h3`](https://ext.pigsty.io/#/h3): `el8.amd.pg17`
- [`jdbc_fdw`](https://ext.pigsty.io/#/jdbc_fdw): `el:arm:*`
- [`pg_partman`](https://ext.pigsty.io/#/pg_partman): `u24:*:13`
- [`wiltondb`](https://ext.pigsty.io/#/babelfishpg_common): `d12:*:*`
- [`citus`](https://ext.pigsty.io/#/citus) and [`hydra`](https://ext.pigsty.io/#/hydra) are mutually exclusive
- [`pg_duckdb`](https://ext.pigsty.io/#/pg_duckdb) and [`pg_mooncake`](https://ext.pigsty.io/#/pg_mooncake) are mutually exclusive
- [`pg_duckdb`](https://ext.pigsty.io/#/pg_duckdb) will invalidate [`duckdb_fdw`](https://ext.pigsty.io/#/duckdb_fdw)
- [`documentdb_core`](https://ext.pigsty.io/#/documentdb_core) is not available on `arm` arch
- [`vchord`](https://ext.pigsty.io/#/vchord) 0.2+ is not available on `d12/u22` (0.1 available)----------------
## About
[](https://github.com/pgsty/extension)
[](https://vonng.com/)
[](https://vonng.com/en/)
[](mailto:rh@vonng.com)
[-red?logo=c&color=steelblue)](https://github.com/Vonng)
[](https://pigsty.io/docs/about/license/)