From 10ab71d1577dd54719cdf81172707f4080a95d49 Mon Sep 17 00:00:00 2001 From: Dryusdan Date: Wed, 21 Jan 2026 17:55:31 +0100 Subject: [PATCH 1/6] Improve Debian 13 OTP dependencies and remove Debian 12 in source installation Cause of Elexir ~> 1.15 (mandatory in Pleroma 2.10) that don't support in Debian 12, I fix doc and replace Debian 12 by Debian 13 And replace a dependencies in OTP release + add a new dependencies for Debian 13. --- changelog.d/improve-doc-debian-13.change | 1 + docs/installation/debian_based_en.md | 4 ++-- docs/installation/otp_en.md | 6 +++++- 3 files changed, 8 insertions(+), 3 deletions(-) create mode 100644 changelog.d/improve-doc-debian-13.change diff --git a/changelog.d/improve-doc-debian-13.change b/changelog.d/improve-doc-debian-13.change new file mode 100644 index 000000000..c8f62ef71 --- /dev/null +++ b/changelog.d/improve-doc-debian-13.change @@ -0,0 +1 @@ +Improve Debian 13 OTP dependencies and remove Debian 12 in source installation diff --git a/docs/installation/debian_based_en.md b/docs/installation/debian_based_en.md index 30f48792d..df45e8366 100644 --- a/docs/installation/debian_based_en.md +++ b/docs/installation/debian_based_en.md @@ -4,7 +4,7 @@ ## Installation -This guide will assume you are on Debian 12 (“bookworm”) or later. This guide should also work with Ubuntu 22.04 (“jammy”) and later. It also assumes that you have administrative rights, either as root or a user with [sudo permissions](https://www.digitalocean.com/community/tutorials/how-to-add-delete-and-grant-sudo-privileges-to-users-on-a-debian-vps). If you want to run this guide with root, ignore the `sudo` at the beginning of the lines, unless it calls a user like `sudo -Hu pleroma`; in this case, use `su -s $SHELL -c 'command'` instead. +This guide will assume you are on Debian 13 (“Trixie”) or later. This guide should also work with Ubuntu 24.04 (“noble”) and later. It also assumes that you have administrative rights, either as root or a user with [sudo permissions](https://www.digitalocean.com/community/tutorials/how-to-add-delete-and-grant-sudo-privileges-to-users-on-a-debian-vps). If you want to run this guide with root, ignore the `sudo` at the beginning of the lines, unless it calls a user like `sudo -Hu pleroma`; in this case, use `su -s $SHELL -c 'command'` instead. {! backend/installation/generic_dependencies.include !} @@ -69,7 +69,7 @@ cd /opt/pleroma sudo -Hu pleroma mix deps.get ``` -* Generate the configuration: +* Generate the configuration: ```shell sudo -Hu pleroma MIX_ENV=prod mix pleroma.instance gen diff --git a/docs/installation/otp_en.md b/docs/installation/otp_en.md index 123dccf3a..f3a571510 100644 --- a/docs/installation/otp_en.md +++ b/docs/installation/otp_en.md @@ -2,7 +2,7 @@ {! backend/installation/otp_vs_from_source.include !} -This guide covers a installation using OTP releases as built by the Pleroma project, it is meant as a fallback to distribution packages/recipes which are the preferred installation method. +This guide covers a installation using OTP releases as built by the Pleroma project, it is meant as a fallback to distribution packages/recipes which are the preferred installation method. To install Pleroma from source, please check out the corresponding guide for your distro. ## Pre-requisites @@ -48,6 +48,10 @@ Other than things bundled in the OTP release Pleroma depends on: ``` apt install curl unzip libncurses5 postgresql postgresql-contrib nginx certbot libmagic-dev ``` + On Debian 13, replace `libncurses5` by `libncurses6` and add `libvips42t64`. So + ``` + apt install curl unzip libncurses6 libvips42t64 postgresql postgresql-contrib nginx certbot libmagic-dev + ``` ### Installing optional packages From 145b38b3149acb93bf1cf72693fe881f8b3eaa74 Mon Sep 17 00:00:00 2001 From: Dryusdan Date: Wed, 21 Jan 2026 20:15:55 +0100 Subject: [PATCH 2/6] Reset deleted double space --- docs/installation/debian_based_en.md | 2 +- docs/installation/otp_en.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/installation/debian_based_en.md b/docs/installation/debian_based_en.md index df45e8366..b6730ce19 100644 --- a/docs/installation/debian_based_en.md +++ b/docs/installation/debian_based_en.md @@ -69,7 +69,7 @@ cd /opt/pleroma sudo -Hu pleroma mix deps.get ``` -* Generate the configuration: +* Generate the configuration: ```shell sudo -Hu pleroma MIX_ENV=prod mix pleroma.instance gen diff --git a/docs/installation/otp_en.md b/docs/installation/otp_en.md index f3a571510..4b88b11e0 100644 --- a/docs/installation/otp_en.md +++ b/docs/installation/otp_en.md @@ -2,7 +2,7 @@ {! backend/installation/otp_vs_from_source.include !} -This guide covers a installation using OTP releases as built by the Pleroma project, it is meant as a fallback to distribution packages/recipes which are the preferred installation method. +This guide covers a installation using OTP releases as built by the Pleroma project, it is meant as a fallback to distribution packages/recipes which are the preferred installation method. To install Pleroma from source, please check out the corresponding guide for your distro. ## Pre-requisites From 177edbbb2c7258876e1c204130cd3f47667c7e11 Mon Sep 17 00:00:00 2001 From: Dryusdan Date: Thu, 22 Jan 2026 08:50:50 +0100 Subject: [PATCH 3/6] Add more RUM versions --- docs/installation/otp_en.md | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/docs/installation/otp_en.md b/docs/installation/otp_en.md index 4b88b11e0..d11cccccb 100644 --- a/docs/installation/otp_en.md +++ b/docs/installation/otp_en.md @@ -48,7 +48,7 @@ Other than things bundled in the OTP release Pleroma depends on: ``` apt install curl unzip libncurses5 postgresql postgresql-contrib nginx certbot libmagic-dev ``` - On Debian 13, replace `libncurses5` by `libncurses6` and add `libvips42t64`. So + On Debian 13 and Ubuntu 24.04, replace `libncurses5` by `libncurses6` and add `libvips42t64`. So ``` apt install curl unzip libncurses6 libvips42t64 postgresql postgresql-contrib nginx certbot libmagic-dev ``` @@ -93,8 +93,12 @@ RUM indexes are an alternative indexing scheme that is not included in PostgreSQ === "Debian/Ubuntu" ``` - # Available only on Buster/19.04 - apt install postgresql-11-rum + # On Trixie and Ubuntu 25.04 + apt install postgresql-17-rum + ``` + # On Ubuntu 24.04 + ``` + apt install postgresql-16-rum ``` #### (Optional) Performance configuration From ce188baa924d6275393147d80ffd804cb71895f8 Mon Sep 17 00:00:00 2001 From: Dryusdan Date: Thu, 22 Jan 2026 08:55:14 +0100 Subject: [PATCH 4/6] Add more Postgresql-rum version --- docs/installation/otp_en.md | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/docs/installation/otp_en.md b/docs/installation/otp_en.md index d11cccccb..a1238b160 100644 --- a/docs/installation/otp_en.md +++ b/docs/installation/otp_en.md @@ -96,10 +96,18 @@ RUM indexes are an alternative indexing scheme that is not included in PostgreSQ # On Trixie and Ubuntu 25.04 apt install postgresql-17-rum ``` + # On Debian 12 + ``` + apt install postgresql-15-rum + ``` # On Ubuntu 24.04 ``` apt install postgresql-16-rum ``` + # On Ubuntu 22.04 + ``` + apt install postgresql-14-rum + ``` #### (Optional) Performance configuration It is encouraged to check [Optimizing your PostgreSQL performance](../configuration/postgresql.md) document, for tips on PostgreSQL tuning. From 3b71770cfa26ee6512324201a3426b4e7a18faff Mon Sep 17 00:00:00 2001 From: Lain Soykaf Date: Mon, 27 Jul 2026 15:31:59 +0400 Subject: [PATCH 5/6] docs: update Debian and Ubuntu requirements --- changelog.d/improve-doc-debian-13.change | 2 +- docs/installation/debian_based_en.md | 2 +- docs/installation/otp_en.md | 32 +++++++++++++----------- 3 files changed, 20 insertions(+), 16 deletions(-) diff --git a/changelog.d/improve-doc-debian-13.change b/changelog.d/improve-doc-debian-13.change index c8f62ef71..0fd7c6e45 100644 --- a/changelog.d/improve-doc-debian-13.change +++ b/changelog.d/improve-doc-debian-13.change @@ -1 +1 @@ -Improve Debian 13 OTP dependencies and remove Debian 12 in source installation +Update Debian and Ubuntu installation requirements and OTP dependencies diff --git a/docs/installation/debian_based_en.md b/docs/installation/debian_based_en.md index b6730ce19..f9086d2f9 100644 --- a/docs/installation/debian_based_en.md +++ b/docs/installation/debian_based_en.md @@ -4,7 +4,7 @@ ## Installation -This guide will assume you are on Debian 13 (“Trixie”) or later. This guide should also work with Ubuntu 24.04 (“noble”) and later. It also assumes that you have administrative rights, either as root or a user with [sudo permissions](https://www.digitalocean.com/community/tutorials/how-to-add-delete-and-grant-sudo-privileges-to-users-on-a-debian-vps). If you want to run this guide with root, ignore the `sudo` at the beginning of the lines, unless it calls a user like `sudo -Hu pleroma`; in this case, use `su -s $SHELL -c 'command'` instead. +This guide will assume you are on Debian 13 (“Trixie”) or later. This guide should also work with Ubuntu 26.04 (“resolute”) and later. It also assumes that you have administrative rights, either as root or a user with [sudo permissions](https://www.digitalocean.com/community/tutorials/how-to-add-delete-and-grant-sudo-privileges-to-users-on-a-debian-vps). If you want to run this guide with root, ignore the `sudo` at the beginning of the lines, unless it calls a user like `sudo -Hu pleroma`; in this case, use `su -s $SHELL -c 'command'` instead. {! backend/installation/generic_dependencies.include !} diff --git a/docs/installation/otp_en.md b/docs/installation/otp_en.md index a1238b160..196685de6 100644 --- a/docs/installation/otp_en.md +++ b/docs/installation/otp_en.md @@ -45,14 +45,16 @@ Other than things bundled in the OTP release Pleroma depends on: ``` === "Debian/Ubuntu" - ``` - apt install curl unzip libncurses5 postgresql postgresql-contrib nginx certbot libmagic-dev - ``` - On Debian 13 and Ubuntu 24.04, replace `libncurses5` by `libncurses6` and add `libvips42t64`. So ``` apt install curl unzip libncurses6 libvips42t64 postgresql postgresql-contrib nginx certbot libmagic-dev ``` + On Debian 12 and Ubuntu 22.04, replace `libvips42t64` with `libvips42`: + + ``` + apt install curl unzip libncurses6 libvips42 postgresql postgresql-contrib nginx certbot libmagic-dev + ``` + ### Installing optional packages Per [`docs/installation/optional/media_graphics_packages.md`](optional/media_graphics_packages.md): @@ -92,20 +94,22 @@ RUM indexes are an alternative indexing scheme that is not included in PostgreSQ ``` === "Debian/Ubuntu" + Install the package matching your distribution's PostgreSQL version: + ``` - # On Trixie and Ubuntu 25.04 + # Debian 13 apt install postgresql-17-rum - ``` - # On Debian 12 - ``` + + # Debian 12 apt install postgresql-15-rum - ``` - # On Ubuntu 24.04 - ``` + + # Ubuntu 26.04 + apt install postgresql-18-rum + + # Ubuntu 24.04 apt install postgresql-16-rum - ``` - # On Ubuntu 22.04 - ``` + + # Ubuntu 22.04 apt install postgresql-14-rum ``` From be5a3957b2ddeaf51c4e7a5eab2a8b35041750f3 Mon Sep 17 00:00:00 2001 From: Lain Soykaf Date: Mon, 27 Jul 2026 16:12:21 +0400 Subject: [PATCH 6/6] docs: explain libvips dependency --- docs/installation/otp_en.md | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/installation/otp_en.md b/docs/installation/otp_en.md index 196685de6..5fc1db21e 100644 --- a/docs/installation/otp_en.md +++ b/docs/installation/otp_en.md @@ -32,6 +32,7 @@ Other than things bundled in the OTP release Pleroma depends on: * curl (to download the release build) * unzip (needed to unpack release builds) * ncurses (ERTS won't run without it) +* libvips (for image processing) * PostgreSQL (also utilizes extensions in postgresql-contrib) * nginx (could be swapped with another reverse proxy but this guide covers only it) * certbot (for Let's Encrypt certificates, could be swapped with another ACME client, but this guide covers only it)