# Pigsty v2.5.0

> Ubuntu/Debian support: bullseye, bookworm, jammy, focal

---

LLMS index: [llms.txt](/llms.txt)

---

**v2\.5\.0 · 2023-10-24**
- [View release](https://github.com/pgsty/pigsty/releases/tag/v2.5.0)
- [Source · tar\.gz](https://github.com/pgsty/pigsty/archive/refs/tags/v2.5.0.tar.gz)
- [Source · zip](https://github.com/pgsty/pigsty/archive/refs/tags/v2.5.0.zip)
- [pgsty\/pigsty](https://github.com/pgsty/pigsty)

```bash
curl https://get.pigsty.cc/latest | bash
```

## Highlights

- [Ubuntu](https://github.com/pgsty/pigsty/blob/master/files/pigsty/ubuntu.yml) / [Debian](https://github.com/pgsty/pigsty/blob/master/files/pigsty/debian.yml) support: bullseye, bookworm, jammy, focal
- CDN `repo.pigsty.cc` software repository providing RPM/DEB package downloads
- Anolis OS support (compatible with EL 8.8)
- PostgreSQL 16 replaces PostgreSQL 14 as the alternative primary supported version
- New PGSQL Exporter / PGSQL Patroni dashboards, redesigned PGSQL Query dashboard
- Extension updates:
    - PostGIS upgraded to 3.4 (EL8/EL9), EL7 remains on PostGIS 3.3
    - Removed `pg_embedding` as developer discontinued maintenance, recommend `pgvector` instead
    - New extension (EL): Point cloud plugin `pointcloud` support, natively available on Ubuntu
    - New extensions (EL): `imgsmlr`, `pg_similarity`, `pg_bigm` for search
    - Recompiled `pg_filedump` as PG version-independent package
    - Added `hydra` columnar storage extension, `citus` no longer installed by default
- Software updates:
    - Grafana to v10.1.5
    - Prometheus to v2.47
    - Promtail/Loki to v2.9.1
    - Node Exporter to v1.6.1
    - Bytebase to v2.10.0
    - Patroni to v3.1.2
    - pgbouncer to v1.21.0
    - pg_exporter to v0.6.0
    - pgbackrest to v2.48.0
    - pgbadger to v12.2
    - pg_graphql to v1.4.0
    - pg_net to v0.7.3
    - FerretDB to v0.12.1
    - SealOS to 4.3.5
    - Supabase support to `20231013070755`

## Ubuntu Support Notes

Pigsty supports Ubuntu 22.04 (jammy) and 20.04 (focal) LTS versions with corresponding offline packages.

Compared to EL systems, some parameter defaults need explicit adjustment. See [`ubuntu.yml`](https://github.com/pgsty/pigsty/blob/master/files/pigsty/ubuntu.yml) for details:

- `repo_upstream`: Adjusted for Ubuntu/Debian package names
- `repo_packages`: Adjusted for Ubuntu/Debian package names
- `node_repo_local_urls`: Defaults to `['deb [trusted=yes] http://${admin_ip}/pigsty ./']`
- `node_default_packages`:
    - `zlib` -> `zlib1g`, `readline` -> `libreadline-dev`
    - `vim-minimal` -> `vim-tiny`, `bind-utils` -> `dnsutils`, `perf` -> `linux-tools-generic`
    - Added `acl` package to ensure Ansible permissions work correctly
- `infra_packages`: All packages with `_` replaced by `-`, `postgresql-client-16` replaces `postgresql16`
- `pg_packages`: Ubuntu conventionally uses `-` instead of `_`, no need to manually install `patroni-etcd`
- `pg_extensions`: Extension names differ from EL, Ubuntu lacks `passwordcheck_cracklib`
- `pg_dbsu_uid`: Ubuntu DEB packages don't specify explicit UID, manual specification required, Pigsty defaults to `543`

## API Changes

Default value changes:

- `repo_modules` now defaults to `infra,node,pgsql,redis,minio`, enabling all upstream sources
- `repo_upstream` changed, now adds Pigsty Infra/MinIO/Redis/PGSQL modular software sources
- `repo_packages` changed, removed unused `karma,mtail,dellhw_exporter`, removed PG14 main extensions, added PG16 main extensions, added virtualenv package
- `node_default_packages` changed, now installs `python3-pip` by default
- `pg_libs`: `timescaledb` removed from shared_preload_libraries, no longer auto-enabled by default
- `pg_extensions` changed, Citus no longer installed by default, `passwordcheck_cracklib` installed by default, EL8,9 PostGIS default version upgraded to 3.4

  ```yaml
  - pg_repack_${pg_version}* wal2json_${pg_version}* passwordcheck_cracklib_${pg_version}*
  - postgis34_${pg_version}* timescaledb-2-postgresql-${pg_version}* pgvector_${pg_version}*
  ```

- All Patroni templates remove `wal_keep_size` parameter by default to avoid triggering Patroni 3.1.1 bug, functionality covered by `min_wal_size`

```bash
MD5 (pigsty-pkg-v2.5.0.el7.x86_64.tgz) = 87e0be2edc35b18709d7722976e305b0
MD5 (pigsty-pkg-v2.5.0.el8.x86_64.tgz) = e71304d6f53ea6c0f8e2231f238e8204
MD5 (pigsty-pkg-v2.5.0.el9.x86_64.tgz) = 39728496c134e4352436d69b02226ee8
MD5 (pigsty-pkg-v2.5.0.debian11.x86_64.tgz) = e3f548a6c7961af6107ffeee3eabc9a7
MD5 (pigsty-pkg-v2.5.0.debian12.x86_64.tgz) = 1e469cc86a19702e48d7c1a37e2f14f9
MD5 (pigsty-pkg-v2.5.0.ubuntu20.x86_64.tgz) = cc3af3b7c12f98969d3c6962f7c4bd8f
MD5 (pigsty-pkg-v2.5.0.ubuntu22.x86_64.tgz) = c5b2b1a4867eee624e57aed58ac65a80
```

## Sources

- [GitHub release](https://github.com/pgsty/pigsty/releases/tag/v2.5.0)
- [Pigsty v2.5 release article](https://pigsty.io/blog/pigsty/v2.5/)
- [Historical About / Release Note](https://pigsty.io/docs/about/release/#v250)
- [Source comparison: `v2.4.1...v2.5.0`](https://github.com/pgsty/pigsty/compare/v2.4.1...v2.5.0)
