# trellis v1.33.0 released

**URL:** <https://discourse.roots.io/t/trellis-v1-33-0-released/30453>\
**Category:** trellis\
**Tags:** releases\
**Created:** [November 3, 2026, 3:34pm UTC](https://discourse.roots.io/t/trellis-v1-33-0-released/30453 "2026-11-03T15:34:58Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![ben](https://discourse.roots.io/user_avatar/discourse.roots.io/ben/32/11377_2.png) [@ben](https://discourse.roots.io/u/ben)\
**Post date:** [November 3, 2026, 3:34pm UTC](https://discourse.roots.io/t/trellis-v1-33-0-released/30453/1 "2026-11-03T15:34:58Z")

</div>

[trellis v1.33.0 released](https://github.com/roots/trellis/releases/tag/v1.33.0)

## What’s Changed

### Ubuntu 26.04 LTS support

Trellis now supports Ubuntu 26.04 LTS (Resolute Raccoon). CI runs on 26.04, and full provisioning has been tested on a fresh 26.04 cloud image. DigitalOcean (`ubuntu-26-04-x64`) and Hetzner Cloud (`ubuntu-26.04`) both offer it. Ubuntu 24.04 is still supported. (#1663) @retlehs

The next trellis-cli release makes 26.04 the default for new local VMs and `trellis server create` (roots/trellis-cli#676). To keep using 24.04 for VMs, set `vm.ubuntu: "24.04"` in `trellis.cli.yml`.

26.04 ships ImageMagick 7, whose default policy already allows PDFs, so Trellis now only edits the ImageMagick 6 `policy.xml` when it exists.

### MariaDB 11.8

The default MariaDB version is now 11.8 LTS (supported until February 2030), up from 10.11. MariaDB 10.11 has no packages for Ubuntu 26.04. (#1699) @retlehs

- Trellis now runs `mariadb-upgrade` after installing MariaDB. MariaDB’s packages try to run it on startup, but that fails once Trellis sets a root password, which left system tables on the old version after a major upgrade.
- Repositories for other MariaDB versions are removed, so changing `mariadb_version` no longer leaves two repositories configured.
- Tables created with `utf8mb4` but no explicit collation keep using `utf8mb4_general_ci`. MariaDB 11.2+ would otherwise use `utf8mb4_uca1400_ai_ci`, and database dumps that use it can’t be imported into MySQL or older MariaDB. WordPress core tables aren’t affected.

Existing servers are **not** upgraded automatically: provisioning switches the repository to 11.8 but leaves the installed 10.11 packages in place. To upgrade, back up your databases first, then run:

```bash
trellis provision --tags mariadb --extra-vars "mariadb_server_package_state=latest mariadb_client_package_state=latest" production

```

To stay on 10.11 (Ubuntu 24.04 and older only), set `mariadb_version: "10.11"` in `group_vars/all/main.yml`.

### APT repositories now use the deb822 format

The nginx, MariaDB and Sury PHP repositories are now added with `deb822_repository`, and each gets its own `.sources` file and signing key in `/etc/apt/keyrings`. This replaces the deprecated `apt_key` module, since `apt-key` no longer exists on Ubuntu 26.04. The old `.list` files are removed the next time you provision. `python3-debian`, which the new module needs, is now installed by default. (#1669) @MikeiLL

**Breaking change:** `nginx_ppa` and `mariadb_ppa` have been replaced by separate variables:

| Removed | Replaced by |
| --- | --- |
| `nginx_ppa` | `nginx_repo_uri`, `nginx_repo_suite`, `nginx_repo_signing_key` |
| `mariadb_ppa` | `mariadb_repo_uri`, `mariadb_repo_suite`, `mariadb_repo_signing_key` |

If either old variable is still set in your `group_vars`, provisioning stops with an error that names the new variables. For example, to use nginx’s stable packages instead of mainline:

```yaml
nginx_repo_uri: "https://nginx.org/packages/{{ ansible_facts['distribution'] | lower }}"

```

To apply on existing servers:

```bash
trellis provision --tags nginx,mariadb,php production

```

**Full Changelog** : [Comparing v1.32.2...v1.33.0 · roots/trellis · GitHub](https://github.com/roots/trellis/compare/v1.32.2...v1.33.0)
