{"id":23855308,"url":"https://github.com/pgsty/pig","last_synced_at":"2026-04-14T13:01:58.842Z","repository":{"id":269303385,"uuid":"905614563","full_name":"pgsty/pig","owner":"pgsty","description":"PostgreSQL Extension Package Manager","archived":false,"fork":false,"pushed_at":"2026-02-06T11:12:51.000Z","size":6538,"stargazers_count":182,"open_issues_count":4,"forks_count":7,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-02-06T19:10:16.927Z","etag":null,"topics":["cli","debian","extension","installer","package-manager","postgresql","rhel","ubuntu"],"latest_commit_sha":null,"homepage":"https://pgext.cloud","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pgsty.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-12-19T07:24:41.000Z","updated_at":"2026-02-06T11:12:57.000Z","dependencies_parsed_at":"2024-12-22T15:38:27.998Z","dependency_job_id":"729c4bca-3ca7-4f75-b4f1-aafea85858c7","html_url":"https://github.com/pgsty/pig","commit_stats":null,"previous_names":["pgsty/pig"],"tags_count":33,"template":false,"template_full_name":null,"purl":"pkg:github/pgsty/pig","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgsty%2Fpig","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgsty%2Fpig/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgsty%2Fpig/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgsty%2Fpig/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pgsty","download_url":"https://codeload.github.com/pgsty/pig/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pgsty%2Fpig/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29431593,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-13T22:20:51.549Z","status":"online","status_checked_at":"2026-02-14T02:00:07.626Z","response_time":53,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","debian","extension","installer","package-manager","postgresql","rhel","ubuntu"],"created_at":"2025-01-03T00:38:36.861Z","updated_at":"2026-04-14T13:01:58.834Z","avatar_url":"https://github.com/pgsty.png","language":"Go","readme":"# PIG - Postgres Install Genius\n\n[![Website: pigsty.io/ext](https://img.shields.io/badge/Website-pigsty.io%2Fext-slategray?style=flat\u0026logo=cilium\u0026logoColor=white)](https://pigsty.io/ext/)\n[![Doc: pig](https://img.shields.io/badge/Docs-pig-slategray?style=flat)](https://pigsty.io/docs/pig)\n[![Version: v1.3.4](https://img.shields.io/badge/version-v1.3.4-slategray?style=flat)](https://github.com/pgsty/pig/releases/tag/v1.3.4)\n[![Pigsty: v4.3.0](https://img.shields.io/badge/Pigsty-v4.3.0-slategray?style=flat)](https://pigsty.io/docs/about/release)\n[![License: Apache-2.0](https://img.shields.io/github/license/pgsty/pig?logo=opensourceinitiative\u0026logoColor=green\u0026color=slategray)](https://github.com/pgsty/pig/blob/main/LICENSE)\n[![Extensions: 504](https://img.shields.io/badge/extensions-504-%233E668F?style=flat\u0026logo=postgresql\u0026logoColor=white\u0026labelColor=3E668F)](https://pigsty.io/ext/list)\n[![Ask DeepWiki](https://deepwiki.com/badge.svg)](https://deepwiki.com/pgsty/pig)\n\n[**pig**](https://pigsty.io/docs/pig) is an open-source PostgreSQL (\u0026 Extension) Package Manager for [mainstream](https://pigsty.io/ext/os/) (EL/Debian/Ubuntu) Linux.\n\nInstall PostgreSQL 14 ~ 18 along with [504 extensions](https://pigsty.io/ext/list) on (`amd64` / `arm64`) with native OS package manager\n\nAll commands support structured output (`-o yaml/json`) with self-describing schema, making it an **Agent-Friendly** PostgreSQL CLI tool.\nAlso check the [**Pigsty Extension Catalog**](https://pigsty.io/ext/) to get details about the available extensions.\n\n[![PostgreSQL Extension Ecosystem](https://pigsty.io/img/pigsty/ecosystem.jpg)](https://medium.com/@fengruohang/postgres-is-eating-the-database-world-157c204dcfc4)\n\n\n--------\n\n## Get Started\n\n[![PostgreSQL](https://img.shields.io/badge/PostgreSQL-18,17,16,15,14-%233E668F?style=flat\u0026logo=postgresql\u0026labelColor=3E668F\u0026logoColor=white)](https://pigsty.io/docs/pgsql)\n[![Linux](https://img.shields.io/badge/Linux-amd64/arm64-%23FCC624?style=flat\u0026logo=linux\u0026labelColor=FCC624\u0026logoColor=black)](https://pigsty.io/docs/ref/linux)\n[![EL Support: 8/9/10](https://img.shields.io/badge/EL-8/9/10-red?style=flat\u0026logo=redhat\u0026logoColor=red)](https://pigsty.io/docs/ref/linux#el)\n[![Debian Support: 12/13](https://img.shields.io/badge/Debian-12/13-%23A81D33?style=flat\u0026logo=debian\u0026logoColor=%23A81D33)](https://pigsty.io/docs/ref/linux#debian)\n[![Ubuntu Support: 22/24](https://img.shields.io/badge/Ubuntu-22/24-%23E95420?style=flat\u0026logo=ubuntu\u0026logoColor=%23E95420)](https://pigsty.io/docs/ref/linux#ubuntu)\n\n[**Install**](https://pigsty.io/docs/pig/install/) the `pig` package first, (you can also use the `apt` / `yum` or just copy the binary)\n\n```bash\ncurl -fsSL https://repo.pigsty.io/pig | bash\n```\n\nThen you're ready to go. For example, install the [`pg_duckdb`](https://pigsty.io/ext/e/pg_duckdb) extension:\n\n```bash\n$ pig repo add pigsty pgdg -u       # add pgdg \u0026 pigsty repo, then update repo cache\n$ pig ext install pg18              # install PostgreSQL 18 kernels with native PGDG packages\n$ pig ext install pg_duckdb -v 18   # install the pg_duckdb extension (for current pg18)\n```\n\nThat's it. All set! Check the [advanced usage](#advanced-usage) for details and the [full list of 504 available extensions](https://pigsty.io/ext/list/).\n\n[![asciicast](https://asciinema.org/a/695902.svg)](https://asciinema.org/a/695902)\n\n\n\n--------\n\n## Installation\n\nThe `pig` util is a standalone Go binary with no dependencies. You can install it with:\n\n```bash\ncurl -fsSL https://repo.pigsty.io/pig | bash   # cloudflare default\ncurl -fsSL https://repo.pigsty.cc/pig | bash   # mainland china mirror\n```\n\nOr just download and extract the binary, or use the `apt/dnf` package manager:\n \nFor Ubuntu 22.04 / 24.04 \u0026 Debian 12 / 13 or any compatible platforms:\n\n```bash\nsudo tee /etc/apt/sources.list.d/pigsty.list \u003e /dev/null \u003c\u003cEOF\ndeb [trusted=yes] https://repo.pigsty.io/apt/infra generic main \nEOF\nsudo apt update; sudo apt install -y pig\n```\n\nFor EL 8 / 9 / 10 and compatible platforms:\n\n```bash\nsudo tee /etc/yum.repos.d/pigsty.repo \u003e /dev/null \u003c\u003c-'EOF'\n[pigsty-infra]\nname=Pigsty Infra for $basearch\nbaseurl=https://repo.pigsty.io/yum/infra/$basearch\nenabled = 1\ngpgcheck = 0\nmodule_hotfixes=1\nEOF\nsudo yum makecache; sudo yum install -y pig\n```\n\n\u003e For mainland China users: consider replacing `repo.pigsty.io` with `repo.pigsty.cc`.\n\n`pig` has self-update feature, you can update pig itself to the latest version with:\n\n```bash\npig update                  # self-update to the latest version\npig update -v \u003cversion\u003e     # self-update to a specific released version\npig ext reload              # update extension catalog metadata only\n```\n\n\n\n\n--------\n\n## Advanced Usage\n\n\u003e [!NOTE] \n\u003e command outputs below are examples captured on a specific environment; exact package/version lists can vary by OS, arch, and repo snapshot.\n\n**Environment Status**\n\n```bash\npig status                    # show os \u0026 pg \u0026 pig status\npig repo status               # show upstream repo status\npig ext  status               # show pg extensions status \n```\n\n**Extension Management**\n\n```bash\npig ext list    [query]       # list \u0026 search extension\npig ext info    [ext...]      # get information of a specific extension\npig ext avail   [ext...]      # show extension availability matrix\npig ext status  [-c]          # show installed extension and pg status\npig ext scan                  # scan installed extensions for active pg\npig ext add     [ext...]      # install extension for current pg version\npig ext rm      [ext...]      # remove extension for current pg version\npig ext update  [ext...]      # update extension to the latest version\npig ext import  [ext...]      # download extension to local repo\npig ext link    [ext...]      # link postgres installation to path\npig ext reload                # reload the latest extension catalog\n```\n\n**Repo Management**\n\n```bash\npig repo list                    # available repo list\npig repo info   [repo|module...] # show repo info\npig repo status                  # show current repo status\npig repo add    [repo|module...] # add repo and modules\npig repo set    [repo|module...] # overwrite \u0026 update after add\npig repo rm     [repo|module...] # remove repo \u0026 modules\npig repo update                  # update repo pkg cache\npig repo create                  # create repo on current system\npig repo boot                    # boot repo from offline package\npig repo cache                   # cache repo as offline package\npig repo reload                  # reload repo catalog to latest version\n```\n\n**Build Management**\n\n```bash\npig build repo                   # init build repo (=repo set -ru)\npig build tool  [mini|full|...]  # init build toolset\npig build proxy [id@host:port ]  # init build proxy (optional)\npig build rust                   # init rustc cargo\npig build pgrx  [-v 0.17.0]      # init pgrx\npig build spec                   # init build spec repo\npig build get   [all|std|..]     # get ext code tarball with prefixes\npig build dep   [extname...]     # install extension build deps\npig build ext   [extname...]     # build extension\npig build pkg   [extname...]     # get+dep+ext, build extension in one-pass\n```\n\n**Radical Repo Admin**\n\nThe default `pig repo add pigsty pgdg` will add the [`PGDG`](https://pigsty.io/docs/repo/pgdg/) repo and [`PIGSTY`](https://pigsty.io/docs/repo/pgsql/) repo to your system.\nThe following command backup and overwrites your existing repo configuration, then adds all required repos.\n\n```bash\npig repo add all --ru        # This will OVERWRITE all existing repo with node,pgdg,pigsty repo\npig repo set                 # = pig repo add all --update --remove\n```\n\n`repo set` is the stronger form of repo add: it overwrites your existing repos (`-ru`) by default.\n\nYou can recover your old repos from `/etc/apt/backup` or `/etc/yum.repos.d/backup`.\n\n\n**Install PostgreSQL**\n\nYou can also install PostgreSQL kernel packages with\n\n```bash\npig ext install postgresql -v 18 # install PostgreSQL 18 kernels\npig ext install pg17             # install PostgreSQL 17 kernels (all except test/devel)\npig ext install pg16-mini        # install PostgreSQL 16 kernels with minimal packages\npig ext install pg15 -y          # install PostgreSQL 15 kernels with auto-confirm\npig ext install pg14=14.3        # install PostgreSQL 14 kernels with a specific minor version\npig ext install pg14=14.10       # install PostgreSQL 14 kernels\n\npig install pg17 --plan          # preview translated native install command\npig install postgis -v 17 -o json --plan   # preview in structured JSON output\n```\n\nYou can link the installed PostgreSQL to the system path with:\n\n```bash\npig ext link 17               # create /usr/pgsql -\u003e /usr/pgsql-17 or /usr/lib/postgresql/17 and put its bin dir in your PATH\n. /etc/profile.d/pgsql.sh     # reload the path and take effect immediately\n```\n\n**Using Alias**\n\n`pig install` and `pig ext add/install` support alias translation. Alias resolution has two parts:\n\n1. Static aliases from [`cli/ext/catalog.go`](https://github.com/pgsty/pig/blob/main/cli/ext/catalog.go) (`LoadAliasMap`, with OS/arch overrides).\n2. Dynamic category aliases from [`cli/ext/alias_dynamic.go`](https://github.com/pgsty/pig/blob/main/cli/ext/alias_dynamic.go).\n\nCommon PostgreSQL kernel aliases:\n\n```text\npg\u003cver\u003e                  pgsql\npg\u003cver\u003e-mini             pg\u003cver\u003e-core\npg\u003cver\u003e-full             pg\u003cver\u003e-main\npg\u003cver\u003e-client           pg\u003cver\u003e-server\npg\u003cver\u003e-devel            pg\u003cver\u003e-basic\n```\n\nDynamic category aliases (`pg18-gis`, `pg17-rag`, `pgsql-olap`, ...):\n\n```text\ntime, gis, rag, fts, olap, feat, lang, type,\nutil, func, admin, stat, sec, fdw, sim, etl\n```\n\nCurrent static alias keys (shared by EL/Debian families):\n\n```text\nagens, agensgraph, ansible, babelfishpg, clickhouse, cloudberry,\ndocker, duckdb, ferretdb, genai-toolbox, hunspell, infra, ivorysqldb,\njava-runtime, kafka, kube-runtime, kubernetes, node, node-bootstrap,\nopenhalodb, orioledb, patroni, percona-core, percona-main, pg_activity,\npg_exporter, pg_filedump, pg_timetable, pgbackrest, pgbackrest_exporter,\npgbadger, pgbouncer, pgedge, pgformatter, pgloader, pgsql-common,\npolardb, postgresql, timescaledb-utils, victoria, vip-manager,\nvlogs, vmetrics, vray, vtraces\n```\n\nCheck the actual installed package with `--plan`:\n\n```bash\nvagrant@meta:~$ pig install pg18-gis --plan\nExecution Plan\nCommand: pig install pg18-gis\n\nActions:\n  [1] Resolve package names: postgresql-18-postgis-3 \u003c- pg18-gis, postgresql-18-pgrouting \u003c- pg18-gis, postgresql-18-pointcloud \u003c- pg18-gis, postgresql-18-h3 \u003c- pg18-gis, postgresql-18-q3c \u003c- pg18-gis, postgresql-18-ogr-fdw \u003c- pg18-gis, postgresql-18-geoip \u003c- pg18-gis, postgresql-18-pg-polyline \u003c- pg18-gis, postgresql-18-pg-geohash \u003c- pg18-gis, postgresql-18-mobilitydb \u003c- pg18-gis, postgresql-18-tzf \u003c- pg18-gis\n  [2] Execute: sudo apt-get install postgresql-18-postgis-3 postgresql-18-pgrouting postgresql-18-pointcloud postgresql-18-h3 postgresql-18-q3c postgresql-18-ogr-fdw postgresql-18-geoip postgresql-18-pg-polyline postgresql-18-pg-geohash postgresql-18-mobilitydb postgresql-18-tzf\n\nAffects:\nType     Name                       Impact   Detail\n──────────────────────────────────────────────────────────────────\npackage  postgresql-18-postgis-3    install  requested by pg18-gis\npackage  postgresql-18-pgrouting    install  requested by pg18-gis\npackage  postgresql-18-pointcloud   install  requested by pg18-gis\npackage  postgresql-18-h3           install  requested by pg18-gis\npackage  postgresql-18-q3c          install  requested by pg18-gis\npackage  postgresql-18-ogr-fdw      install  requested by pg18-gis\npackage  postgresql-18-geoip        install  requested by pg18-gis\npackage  postgresql-18-pg-polyline  install  requested by pg18-gis\npackage  postgresql-18-pg-geohash   install  requested by pg18-gis\npackage  postgresql-18-mobilitydb   install  requested by pg18-gis\npackage  postgresql-18-tzf          install  requested by pg18-gis\n\nExpected:\n  Packages installed: postgresql-18-postgis-3, postgresql-18-pgrouting, postgresql-18-pointcloud, postgresql-18-h3, postgresql-18-q3c, postgresql-18-ogr-fdw, postgresql-18-geoip, postgresql-18-pg-polyline, postgresql-18-pg-geohash, postgresql-18-mobilitydb, postgresql-18-tzf\n```\n\n\n\u003cdetails\u003e\u003csummary\u003eMore Alias\u003c/summary\u003e\n\nTake el for examples:\n\n```yaml\n\"postgresql\":          \"postgresql$v postgresql$v-server postgresql$v-libs postgresql$v-contrib postgresql$v-plperl postgresql$v-plpython3 postgresql$v-pltcl\",\n\"pgsql-common\":        \"patroni patroni-etcd pgbouncer pgbackrest pg_exporter pgbackrest_exporter vip-manager\",\n\"patroni\":             \"patroni patroni-etcd\",\n\"pgbouncer\":           \"pgbouncer\",\n\"pgbackrest\":          \"pgbackrest\",\n\"pg_exporter\":         \"pg_exporter\",\n\"pgbackrest_exporter\": \"pgbackrest_exporter\",\n\"vip-manager\":         \"vip-manager\",\n\"pgbadger\":            \"pgbadger\",\n\"pg_activity\":         \"pg_activity\",\n\"pg_filedump\":         \"pg_filedump\",\n\"pgxnclient\":          \"pgxnclient\",\n\"pgformatter\":         \"pgformatter\",\n\"pgcopydb\":            \"pgcopydb\",\n\"pgloader\":            \"pgloader\",\n\"pg_timetable\":        \"pg_timetable\",\n\"timescaledb-utils\":   \"timescaledb-tools timescaledb-event-streamer\",\n\"ivorysql\":            \"ivorysql5\",\n\"agensgraph\":          \"agensgraph_$v\",\n\"agens\":               \"agensgraph_$v\",\n\"pgedge\":              \"pgedge_$v spock_$v lolor_$v snowflake_$v\",\n\"wiltondb\":            \"wiltondb\",\n\"polardb\":             \"PolarDB\",\n\"orioledb\":            \"orioledb_17 oriolepg_17\",\n\"openhalodb\":          \"openhalodb_14\",\n\"percona-core\":        \"percona-postgresql18,percona-postgresql18-server,percona-postgresql18-contrib,percona-postgresql18-plperl,percona-postgresql18-plpython3,percona-postgresql18-pltcl,percona-pg_tde18\",\n\"percona-main\":        \"percona-postgresql18,percona-postgresql18-server,percona-postgresql18-contrib,percona-postgresql18-plperl,percona-postgresql18-plpython3,percona-postgresql18-pltcl,percona-pg_tde18,percona-postgis35_18,percona-postgis35_18-client,percona-postgis35_18-utils,percona-pgvector_18,percona-wal2json18,percona-pg_repack18,percona-pgaudit18,percona-pgaudit18_set_user,percona-pg_stat_monitor18,percona-pg_gather\",\n\"ferretdb\":            \"ferretdb2\",\n\"duckdb\":              \"duckdb\",\n\"etcd\":                \"etcd\",\n\"haproxy\":             \"haproxy\",\n\"pig\":                 \"pig\",\n\"vray\":                \"vray\",\n\"juicefs\":             \"juicefs\",\n\"restic\":              \"restic\",\n\"rclone\":              \"rclone\",\n\"genai-toolbox\":       \"genai-toolbox\",\n\"tigerbeetle\":         \"tigerbeetle\",\n\"clickhouse\":          \"clickhouse-server clickhouse-client clickhouse-common-static\",\n\"victoria\":            \"victoria-metrics victoria-metrics-cluster vmutils grafana-victoriametrics-ds victoria-logs vlogscil vlagent grafana-victorialogs-ds\",\n\"vmetrics\":            \"victoria-metrics victoria-metrics-cluster vmutils grafana-victoriametrics-ds\",\n\"vlogs\":               \"victoria-logs vlogscil vlagent grafana-victorialogs-ds\",\n```\n\n\u003c/details\u003e\n\n\n\n**Install for another PG**\n\n`pig` will use the default postgres installation in your active `PATH`,\nbut you can install extensions for a specific installation with `-v` (when using the PGDG convention),\nor passing any `pg_config` path for custom installation.\n\n```bash\npig ext install pg_duckdb -v 17     # install the extension for pg17\npig ext install pg_duckdb -p /usr/lib/postgresql/16/bin/pg_config    # specify a pg16 pg_config  \n```\n\n**Install a Specific Version**\n\nYou can also install PostgreSQL kernel packages with:\n\n```bash\npig ext install pgvector=0.8.2 # install pgvector 0.8.2\npig ext install pg16=16.5      # install PostgreSQL 16 with a specific minor version\n```\n\n\u003e Beware the **APT** repo may only have the latest minor version for its software (and require the full version string)\n\n\n**Search Extension**\n\nYou can perform fuzzy search on extension name, description, and category.\n\n```bash\nvagrant@meta:~$ pig ext ls olap\n✓ Found 14 extensions matching 'olap'\nName            Version  Cate  Flags   License       RPM      DEB      PG Ver  Description\n─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────\ncitus           14.0.0   OLAP  -dsl--  AGPL-3.0      PIGSTY   PIGSTY   16-18   Distributed PostgreSQL as an extension\ncitus_columnar  14.0.0   OLAP  -ds---  AGPL-3.0      PIGSTY   PIGSTY   16-18   Citus columnar storage engine\ncolumnar        1.1.2    OLAP  -ds---  AGPL-3.0      PIGSTY   PIGSTY   13-16   Hydra Columnar extension\npg_analytics    0.3.7    OLAP  -ds-t-  PostgreSQL    PIGSTY   PIGSTY   14-17   Postgres for analytics, powered by DuckDB\npg_duckdb       1.1.1    OLAP  -dsl--  MIT           PIGSTY   PIGSTY   14-18   DuckDB Embedded in Postgres\npg_mooncake     0.2.0    OLAP  -d-l--  MIT           PIGSTY   PIGSTY   14-18   Columnstore Table in Postgres\npg_clickhouse   0.1.4    OLAP  -ds---  Apache-2.0    PIGSTY   PIGSTY   13-18   Interfaces to query ClickHouse databases from PostgreSQL\nduckdb_fdw      1.1.2    OLAP  -ds--r  MIT           PIGSTY   PIGSTY   13-17   DuckDB Foreign Data Wrapper\npg_parquet      0.5.1    OLAP  -dslt-  PostgreSQL    PIGSTY   PIGSTY   14-18   copy data between Postgres and Parquet\npg_fkpart       1.7.0    OLAP  -d----  GPL-2.0       PIGSTY   PIGSTY   13-18   Table partitioning by foreign key utility\npg_partman      5.4.2    OLAP  -ds---  PostgreSQL    PGDG     PGDG     13-18   Extension to manage partitioned tables by time or ID\nplproxy         2.11.0   OLAP  -ds---  BSD 0-Clause  PGDG     PGDG     13-18   Database partitioning implemented as procedural language\npg_strom        6.1      OLAP  -ds--x  PostgreSQL    PGDG              13-17   PG-Strom - big-data processing acceleration using GPU and NVME\ntablefunc       1.0      OLAP  -ds-tx  PostgreSQL    CONTRIB  CONTRIB  13-18   functions that manipulate whole tables, including crosstab\n\n(14 Rows)\n```\n\nYou can use the `-v 16` or `-p /path/to/pg_config` to find extension availability for other PostgreSQL installation.\n\n**Extension Availability Matrix**\n\nYou can check the availability matrix for extensions across different OS/Arch/PG combinations:\n\n```bash\n$ pig ext avail pg_duckdb            # show availability matrix for pg_duckdb\n$ pig ext avail postgis pgvector     # show matrix for multiple extensions\n$ pig ext avail                      # show all packages availability on current OS\n```\n\n```bash\nvagrant@meta:~$ pig ext avail\n✓ Found 297 packages available on u24.arm64\n\nExtension Availability on u24.aarch64 : https://pigsty.io/ext/os/u24.aarch64\nShowing 340 packages with 504 extensions  (green = PIGSTY, blue = PGDG)\n\nPkg                     18          17          16          15          14      \ntimescaledb             2.25.2      2.25.2      2.25.2      2.25.2      2.19.3\ntimescaledb_toolkit     1.22.0      1.22.0      1.22.0      1.22.0      1.19.0\npg_timeseries           0.2.0       0.2.0       0.2.0       0.2.0       0.2.0   \nperiods                 1.2.3       1.2.3       1.2.3       1.2.3       1.2.3   \ntemporal_tables         1.2.2       1.2.2       1.2.2       1.2.2       1.2.2   \nemaj                    4.7.1       4.7.1       4.7.1       4.7.1       4.7.1   \ntable_version           1.11.1      1.11.1      1.11.1      1.11.1      1.11.1  \npg_cron                 1.6.7       1.6.7       1.6.7       1.6.7       1.6.7   \n...\n```\n\n\n**Print Extension Summary**\n\nYou can get extension metadata with `pig ext info` subcommand:\n\n```bash\n$ pig ext info pg_duckdb\n╭──────────────────────────────────────────────────────────────────────────────────────────────╮\n│ pg_duckdb                                                                                    │\n├──────────────────────────────────────────────────────────────────────────────────────────────┤\n│ DuckDB Embedded in Postgres                                                                  │\n├──────────────┬───────────────────────────────────────────────────────────────────────────────┤\n│ Extension    │ pg_duckdb                                                                     │\n│ Package      │ pg_duckdb                                                                     │\n│ Leading Ext  │ pg_duckdb                                                                     │\n│ Category     │ OLAP                                                                          │\n│ License      │ MIT                                                                           │\n│ Language     │ C++                                                                           │\n│ Website      │ https://github.com/duckdb/pg_duckdb                                           │\n│ Details      │ https://pigsty.io/ext/e/pg_duckdb                                             │\n│ Source       │ pg_duckdb-1.1.1.tar.gz                                                        │\n├──────────────┴───────────────────────────────────────────────────────────────────────────────┤\n│ Properties                                                                                   │\n├──────────────┬────────────┬─────────────┬───────────┬────────────┬─────────────┬─────────────┤\n│  Attributes  │ Has Binary │ Has Library │ Need Load │ Create DDL │ Relocatable │   Trusted   │\n├──────────────┼────────────┼─────────────┼───────────┼────────────┼─────────────┼─────────────┤\n│    -dsl--    │     No     │     Yes     │    Yes    │    Yes     │     No      │     No      │\n├──────────────┴────────────┴─────────────┴───────────┴────────────┴─────────────┴─────────────┤\n│ Relationship                                                                                 │\n├──────────────┬───────────────────────────────────────────────────────────────────────────────┤\n│ Requires:    │                                                                               │\n│ Required By: │ pg_mooncake                                                                   │\n│ See Also:    │ pg_mooncake, duckdb_fdw, pg_analytics, pg_parquet, columnar, citus, citus_... │\n├──────────────┴───────────────────────────────────────────────────────────────────────────────┤\n│ EXT Summary                                                                                  │\n├──────────────┬───────────────────────────────────────────────────────────────────────────────┤\n│ Repository   │ PIGSTY                                                                        │\n│ Version      │ 1.1.1                                                                         │\n│ PG Version   │ 18, 17, 16, 15, 14                                                            │\n│ Schemas      │                                                                               │\n├──────────────┴───────────────────────────────────────────────────────────────────────────────┤\n│ RPM Package                                                                                  │\n├──────────────┬───────────────────────────────────────────────────────────────────────────────┤\n│ Package      │ pg_duckdb_$v                                                                  │\n│ Repository   │ PIGSTY                                                                        │\n│ Version      │ 1.1.1                                                                         │\n│ PG Version   │ 18, 17, 16, 15, 14                                                            │\n├──────────────┴───────────────────────────────────────────────────────────────────────────────┤\n│ DEB Package                                                                                  │\n├──────────────┬───────────────────────────────────────────────────────────────────────────────┤\n│ Package      │ postgresql-$v-pg-duckdb                                                       │\n│ Repository   │ PIGSTY                                                                        │\n│ Version      │ 1.1.1                                                                         │\n│ PG Version   │ 18, 17, 16, 15, 14                                                            │\n├──────────────┴───────────────────────────────────────────────────────────────────────────────┤\n│ Operation                                                                                    │\n├──────────────┬───────────────────────────────────────────────────────────────────────────────┤\n│ INSTALL      │ pig ext add pg_duckdb                                                         │\n│ CONFIG       │ shared_preload_libraries = 'pg_duckdb'                                        │\n│ CREATE       │ CREATE EXTENSION pg_duckdb;                                                   │\n│ BUILD        │ pig build pkg pg_duckdb;  # build rpm / deb                                   │\n├──────────────┴───────────────────────────────────────────────────────────────────────────────┤\n│ Comment: conflict with duckdb_fdw                                                            │\n╰──────────────────────────────────────────────────────────────────────────────────────────────╯\n\n# Print in JSON format\n$ pig ext info pg_duckdb -o json\n{\"success\":true,\"code\":0,\"message\":\"Extension: pg_duckdb\",\"data\":{\"name\":\"pg_duckdb\",\"pkg\":\"pg_duckdb\",\"lead_ext\":\"pg_duckdb\",\"category\":\"OLAP\",\"license\":\"MIT\",\"language\":\"C++\",\"version\":\"1.1.1\",\"url\":\"https://github.com/duckdb/pg_duckdb\",\"source\":\"pg_duckdb-1.1.1.tar.gz\",\"description\":\"DuckDB Embedded in Postgres\",\"zh_desc\":\"在PostgreSQL中的嵌入式DuckDB扩展\",\"properties\":{\"has_bin\":false,\"has_lib\":true,\"need_load\":true,\"need_ddl\":true,\"relocatable\":\"f\",\"trusted\":\"f\"},\"required_by\":[\"pg_mooncake\"],\"see_also\":[\"pg_mooncake\",\"duckdb_fdw\",\"pg_analytics\",\"pg_parquet\",\"columnar\",\"citus\",\"citus_columnar\",\"orioledb\"],\"pg_ver\":[\"18\",\"17\",\"16\",\"15\",\"14\"],\"rpm_package\":{\"package\":\"pg_duckdb_$v\",\"repository\":\"PIGSTY\",\"version\":\"1.1.1\",\"pg_ver\":[\"18\",\"17\",\"16\",\"15\",\"14\"]},\"deb_package\":{\"package\":\"postgresql-$v-pg-duckdb\",\"repository\":\"PIGSTY\",\"version\":\"1.1.1\",\"pg_ver\":[\"18\",\"17\",\"16\",\"15\",\"14\"]},\"operations\":{\"install\":\"pig ext add pg_duckdb\",\"config\":\"shared_preload_libraries = 'pg_duckdb'\",\"create\":\"CREATE EXTENSION pg_duckdb;\",\"build\":\"pig build pkg pg_duckdb;  # build rpm / deb\"},\"comment\":\"conflict with duckdb_fdw\"}}\n```\n\n**Print Extension Availability**\n\nYou can get extension package availability with `pig ext avail` subcommand:\n\n```bash\n$ pig ext avail citus\n\ncitus (citus) - Distributed PostgreSQL as an extension\nLatest: 14.0.0 | 70/84 avail, PG16, PG17, PG18\nDetails: https://pigsty.io/ext/e/citus  (green = PIGSTY, blue = PGDG)\n\n╭──────────────┬──────────────┬──────────────┬──────────────┬──────────────┬──────────────╮\n│ OS \\ PG      │      18      │      17      │      16      │      15      │      14      │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ el8.x86_64   │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ el8.aarch64  │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ el9.x86_64   │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ el9.aarch64  │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ el10.x86_64  │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │              │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ el10.aarch64 │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │              │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ d12.x86_64   │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ d12.aarch64  │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ d13.x86_64   │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │              │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ d13.aarch64  │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │              │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ u22.x86_64   │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ u22.aarch64  │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ u24.x86_64   │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n├──────────────┼──────────────┼──────────────┼──────────────┼──────────────┼──────────────┤\n│ u24.aarch64  │    14.0.0    │    14.0.0    │    14.0.0    │    13.2.0    │    13.0.0    │\n╰──────────────┴──────────────┴──────────────┴──────────────┴──────────────┴──────────────╯\n````\n\n**List Repo**\n\nYou can list all available repo / module (repo collection) with `pig repo list`:\n\n```bash\nvagrant@meta:~$ pig repo list\n✓ Found 25 repositories\nos_environment: {code: u24, arch: arm64, type: deb, major: 24}\nrepo_upstream:  # Available Repo: 25\n  - { name: pigsty-local   ,description: 'Pigsty Local'       ,module: local    ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'http://${admin_ip}/pigsty ./' }\n  - { name: pigsty-pgsql   ,description: 'Pigsty PgSQL'       ,module: pgsql    ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://repo.pigsty.io/apt/pgsql/${distro_codename} ${distro_codename} main' }\n  - { name: pigsty-infra   ,description: 'Pigsty Infra'       ,module: infra    ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://repo.pigsty.io/apt/infra/ generic main' }\n  - { name: nginx          ,description: 'Nginx'              ,module: infra    ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'http://nginx.org/packages/${distro_name} ${distro_codename} nginx' }\n  - { name: docker-ce      ,description: 'Docker'             ,module: docker   ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://download.docker.com/linux/${distro_name} ${distro_codename} stable' }\n  - { name: base           ,description: 'Ubuntu Basic'       ,module: node     ,releases: [20,22,24] ,arch: [aarch64] ,baseurl: 'http://ports.ubuntu.com/ubuntu-ports/ ${distro_codename}             main universe multiverse restricted' }\n  - { name: updates        ,description: 'Ubuntu Updates'     ,module: node     ,releases: [20,22,24] ,arch: [aarch64] ,baseurl: 'http://ports.ubuntu.com/ubuntu-ports/ ${distro_codename}-updates     main restricted universe multiverse' }\n  - { name: backports      ,description: 'Ubuntu Backports'   ,module: node     ,releases: [20,22,24] ,arch: [aarch64] ,baseurl: 'http://ports.ubuntu.com/ubuntu-ports/ ${distro_codename}-backports   main restricted universe multiverse' }\n  - { name: security       ,description: 'Ubuntu Security'    ,module: node     ,releases: [20,22,24] ,arch: [aarch64] ,baseurl: 'http://ports.ubuntu.com/ubuntu-ports/ ${distro_codename}-security    main restricted universe multiverse' }\n  - { name: pgdg           ,description: 'PGDG'               ,module: pgsql    ,releases: [11,12,13,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'http://apt.postgresql.org/pub/repos/apt/ ${distro_codename}-pgdg main' }\n  - { name: pgdg-beta      ,description: 'PGDG Beta'          ,module: beta     ,releases: [11,12,13,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'http://apt.postgresql.org/pub/repos/apt/ ${distro_codename}-pgdg-testing main 19' }\n  - { name: timescaledb    ,description: 'TimescaleDB'        ,module: extra    ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://packagecloud.io/timescale/timescaledb/${distro_name}/ ${distro_codename} main' }\n  - { name: percona        ,description: 'Percona TDE'        ,module: percona  ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://repo.pigsty.io/apt/percona ${distro_codename} main' }\n  - { name: wiltondb       ,description: 'WiltonDB'           ,module: mssql    ,releases: [20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://repo.pigsty.io/apt/mssql/ ${distro_codename} main' }\n  - { name: groonga        ,description: 'Groonga Ubuntu'     ,module: groonga  ,releases: [20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://ppa.launchpadcontent.net/groonga/ppa/ubuntu/ ${distro_codename} main' }\n  - { name: mysql          ,description: 'MySQL'              ,module: mysql    ,releases: [11,12,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://repo.mysql.com/apt/${distro_name} ${distro_codename} mysql-8.0 mysql-tools' }\n  - { name: mongo          ,description: 'MongoDB'            ,module: mongo    ,releases: [11,12,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://repo.mongodb.org/apt/${distro_name} ${distro_codename}/mongodb-org/8.0 multiverse' }\n  - { name: redis          ,description: 'Redis'              ,module: redis    ,releases: [11,12,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://packages.redis.io/deb ${distro_codename} main' }\n  - { name: llvm           ,description: 'LLVM'               ,module: llvm     ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'http://apt.llvm.org/${distro_codename}/ llvm-toolchain-${distro_codename} main' }\n  - { name: haproxyu       ,description: 'Haproxy Ubuntu'     ,module: haproxy  ,releases: [20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://ppa.launchpadcontent.net/vbernat/haproxy-3.1/ubuntu/ ${distro_codename} main' }\n  - { name: grafana        ,description: 'Grafana'            ,module: grafana  ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://apt.grafana.com stable main' }\n  - { name: kubernetes     ,description: 'Kubernetes'         ,module: kube     ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://pkgs.k8s.io/core:/stable:/v1.33/deb/ /' }\n  - { name: gitlab-ee      ,description: 'Gitlab EE'          ,module: gitlab   ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://packages.gitlab.com/gitlab/gitlab-ee/${distro_name}/ ${distro_codename} main' }\n  - { name: gitlab-ce      ,description: 'Gitlab CE'          ,module: gitlab   ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://packages.gitlab.com/gitlab/gitlab-ce/${distro_name}/ ${distro_codename} main' }\n  - { name: clickhouse     ,description: 'ClickHouse'         ,module: click    ,releases: [11,12,13,20,22,24] ,arch: [x86_64, aarch64] ,baseurl: 'https://packages.clickhouse.com/deb/ stable main' }\nrepo_modules:   # Available Modules: 22\n  - all       : pigsty-infra, pigsty-pgsql, pgdg, base, updates, extras, epel, centos-sclo, centos-sclo-rh, baseos, appstream, powertools, crb, security, backports\n  - beta      : pgdg19-beta, pgdg-beta\n  - click     : clickhouse\n  - docker    : docker-ce\n  - extra     : pgdg-extras, pgdg14-nonfree, pgdg15-nonfree, pgdg16-nonfree, pgdg17-nonfree, pgdg18-nonfree, timescaledb, citus\n  - gitlab    : gitlab-ee, gitlab-ce\n  - grafana   : grafana\n  - groonga   : groonga\n  - haproxy   : haproxyd, haproxyu\n  - infra     : pigsty-infra, nginx\n  - kube      : kubernetes\n  - llvm      : llvm\n  - local     : pigsty-local\n  - mongo     : mongo\n  - mssql     : wiltondb\n  - mysql     : mysql\n  - node      : base, updates, extras, epel, centos-sclo, centos-sclo-rh, baseos, appstream, powertools, crb, security, backports\n  - percona   : percona\n  - pgdg      : pgdg\n  - pgsql     : pigsty-pgsql, pgdg-common, pgdg14, pgdg15, pgdg16, pgdg17, pgdg18, pgdg\n  - pigsty    : pigsty-infra, pigsty-pgsql\n  - redis     : redis\n```\n\n**Pigsty Management**\n\nThe **pig** can also be used as a [**CLI**](https://pigsty.io/docs/pig/sty) tool for PostgreSQL \u0026 [Pigsty](https://pigsty.io/), a free battery-included PostgreSQL RDS.\nIt brings HA, PITR, Monitoring, IaC, and all extensions to your PostgreSQL cluster.\n\n```bash\npig sty init     # install pigsty to ~/pigsty \npig sty boot     # install ansible and other pre-deps \npig sty conf     # auto-generate pigsty.yml config file\npig sty deploy   # run the deploy.yml playbook\n```\n\nYou can use the `pig sty` subcommand to bootstrap pigsty on current node.\n\n\n**Usage in Docker**\n\nThe pig cli is intended to be used on standard linux environment, but you can also use it inside container:\n\n```dockerfile\nFROM debian:13\nUSER root\nWORKDIR /root/\nCMD [\"/bin/bash\"]\n\nRUN apt update \u0026\u0026 apt install -y ca-certificates curl \u0026\u0026 curl https://repo.pigsty.io/pig | bash\nRUN pig repo set \u0026\u0026 pig install -y -v 18 pgsql pg_duckdb timescaledb postgis pgvector\n```\n\n**Build Extension**\n\nYou can even build rpm / deb directly with `pig build` subcommand:\n\nYou can prepare an extension building environment with docker \u0026 pig easily:\n\n\u003cdetails\u003e\u003csummary\u003eBuilding RPM/DEB with pig\u003c/summary\u003e\n\n```dockerfile\nFROM debian:13\nUSER root\nWORKDIR /root/\nCMD [\"/bin/bash\"]\n\nRUN apt update \u0026\u0026 apt install -y ca-certificates vim ncdu wget curl rsync unzip \u0026\u0026 \\\n    curl https://repo.pigsty.io/pig | bash -s \u0026\u0026 pig repo add --remove \u0026\u0026 apt clean\nRUN pig repo set \u0026\u0026 pig build tool \u0026\u0026 pig build spec \u0026\u0026 pig build rust \u0026\u0026 pig build pgrx -v 0.17.0\n```\n\n```bash\ndocker build -t d13:latest .\ndocker run --name=d13 -d -it d13:latest /bin/bash\ndocker exec -it d13 /bin/bash\n```\n\n\u003c/details\u003e\n\nThen building an extension such as timescaledb is as simple as:\n\n```bash\n$ pig build pkg timescaledb  # now you can build extension with pig!\n```\n\n\n\n--------\n\n## Compatibility\n\n`pig` runs on: RHEL 8/9/10, Ubuntu 22.04/24.04, and Debian 12/13 and [compatible OS](https://pigsty.io/docs/ref/linux)\n\n|   Code   | Distribution                      |  `x86_64`  | `aarch64`  |\n|:--------:|-----------------------------------|:----------:|:----------:|\n| **el10** | RHEL 10 / Rocky10 / Alma10  / ... | PG 18 - 14 | PG 18 - 14 |\n| **el9**  | RHEL 9 / Rocky9 / Alma9  / ...    | PG 18 - 14 | PG 18 - 14 |\n| **el8**  | RHEL 8 / Rocky8 / Alma8 / ...     | PG 18 - 14 | PG 18 - 14 |\n| **u24**  | Ubuntu 24.04 (`noble`)            | PG 18 - 14 | PG 18 - 14 |\n| **u22**  | Ubuntu 22.04 (`jammy`)            | PG 18 - 14 | PG 18 - 14 |\n| **d13**  | Debian 13 (`trixie`)              | PG 18 - 14 | PG 18 - 14 |\n| **d12**  | Debian 12 (`bookworm`)            | PG 18 - 14 | PG 18 - 14 |\n\n\n--------\n\n## About\n\n[![Author: RuohangFeng](https://img.shields.io/badge/Author-Ruohang_Feng-steelblue?style=flat)](https://blog.vonng.com/en/about)\n[![About: @Vonng](https://img.shields.io/badge/%40Vonng-steelblue?style=flat)](https://vonng.com/en/)\n[![Mail: rh@vonng.com](https://img.shields.io/badge/rh%40vonng.com-steelblue?style=flat)](mailto:rh@vonng.com)\n[![Copyright: 2018-2026 rh@vonng.com](https://img.shields.io/badge/Copyright-2026_(rh%40vonng.com)-red?logo=c\u0026color=steelblue)](https://github.com/Vonng)\n[![License: Apache](https://img.shields.io/badge/License-Apache--2.0-steelblue?style=flat\u0026logo=opensourceinitiative\u0026logoColor=green)](https://github.com/pgsty/pig/blob/main/LICENSE)\n\n[![pig-meme](https://github.com/user-attachments/assets/4c2310a0-7551-4233-875f-18d0bd87a03e)](https://medium.com/@fengruohang/the-idea-way-to-deliver-postgresql-extensions-35646464bb71)\n","funding_links":[],"categories":["Go"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpgsty%2Fpig","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpgsty%2Fpig","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpgsty%2Fpig/lists"}