Hello dear self-hosterz, and welcome to this spoooOOooooking testing
Following the alpha-testing opened a few months ago, we are happy to announce that we are moving to the beta-testing stage for Trixie !
We consider that it should now be okay to upgrade to or install a fresh Yunohost 13.0+ running on Trixie for a production server if you are a tech-savvy person not afraid to debug stuff if needed. However, you should still remain careful, especially when running the Bookworm->Trixie migration depending on the complexity of your setup (but doing so helps spotting issues !). Additionally, some apps are still known to not be Trixie-ready yet.
Please keep in mind that this is a beta-testing and small issues or edge-cases are still expected, so be careful.
Major changes
Trixie comes with Python 3.13, Pydantic v2, Postgres 17, Mariadb 11.8
APT: Use new deb822 “.sources” format for files in /etc/apt/sources.list.d
Email: Significant changes in dovecot configuration syntax because upstream changed the format
Users / LDAP stack: Switch to sssd / sssd-ldap and other SSS-related stuff as a replacement for unscd, nslcd, sudo-ldap and everything else related to LDAP integration to the system
Apps: Drop support for legacy packaging v1
???
What to test ?
Generally-speaking, you are encouraged to test everything you’d do on your YunoHost server, such as:
installing and using your favorite apps,
browsing the webadmin,
checking the diagnosis,
installing certificates,
checking emails, …
More specifically we are looking for feedback regarding:
Emails : making sure that sending/receiving email and interacting using an external client does work, to validate the changes in dovecot configuration where the format changed significantly.
???
Pre-installed images
(FIXME : we still need to make these)
Installing a fresh YunoHost on top of a fresh Debian 13/Trixie
Obtain a brand new server (such as a VPS online, a local virtual machine, or a development LXC)
Preinstall your server with Debian Trixie
Then install Yunohost 13.x with :
$ curl https://install.yunohost.org/trixie | bash -s -- -d testing
# You will get a disclaimer intended to make sure what you're doing.
# Read it and follow the instructions.
Upgrading an existing YunoHost 12.x/Bookworm server to 13/Trixie
Latest versions of YunoHost 12.x already ships a “hidden” migration that allows to upgrade to YunoHost 13/Trixie.
Before going through this process, we reiterate that ideally, you should have a way to entirely rollback your server before proceeding with the upgrade. That way, if you spot issues, we’ll be able to provide a fix then validate that the fix works by re-running the upgrade from the same starting point.
Switch to the “testing” : curl https://install.yunohost.org/switchtoTesting | bash (this is needed because later, Yunohost 13 is only shipped through the testing channel)
Enable the “hidden” migration: sudo mv /usr/lib/python3/dist-packages/yunohost/migrations/0036_migrate_to_trixie.py{.disabled,}
In the webadmin, under Tools > Migrations, you should now see an available migration to upgrade to Trixie. Read the disclaimer and start the migration.
… be patient, this will take a while. But try to stay attentive to what’s going on. Share the detailed log if anything that goes wrong.
Ideally after the upgrade, test that everything (e.g. apps installed) still works as expected.
Whichever feels more appropriate for you and depending on the magnitude of the issue, either here, or if that’s something that is like to get pretty technical, on our issue tracker
Tried an install (over a Gandi.net GandiCloud VPS, freshly installed with Debian 13), and quite early, I get:
3/5 • Apply various tweaks to prepare installation
/etc/environment: line 1: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8): No such file or directory
Done!
That ain’t probably much, but quite strange for the random noob
Then, during post-install, I get two warnings displayed, which don’t feel so right: jq: parse error: Invalid numeric literal at line 1, column 6
and: WARNING - dpkg-query: no packages found matching postgresql-17
After havin installed, post-installed, and logged-in through the Web admin, I’m checking the diagnosis… but it ain’t happy (french):
Le service postfix est dead
# yunohost service status postfix
configuration: unknown
description: Used to send and receive e-mails
last_state_change: 2025-11-01 16:42:10
start_on_boot: enabled
status: dead
Tying to access admin user’s email by installing RoundCube.
The app installs well, but after that, the mail list is empty (even though there are pending emails in the user’s Maildir), and the following error is displayed by RoundCube : Erreur de serveur : LSUB: Internal error occurred. Refer to server log for more information.
As you can see, the file is empty… that may not be normal after a Debian minimal install… but quite possible after a cloud-init provisionning of some kind.
FWIW, I’ve tried running the install again, and noticed some apt errors:
5/5 • Installing YunoHost
'apt-get install --assume-yes -o Dpkg::Options::=--force-confold -o APT::install-recommends=true yunohost yunohost-admin postfix' failed. Please check /var/log/yunohost-installation_20251102_083039.log for debugging
[FAIL] Installation of YunoHost packages failed
[INFO] Installation logs are available in /var/log/yunohost-installation_20251102_083039.log
which says:
E: Failed to fetch https://mirrors.gandi.net/debian/pool/main/p/python-pyotp/python3-pyotp_2.9.0-2_all.deb OpenSSL error: error:0A000126:SSL routines::unexpected eof while reading [IP: 2001:4b98:dc4:5::80 443]
E: Failed to fetch https://mirrors.gandi.net/debian/pool/main/s/sssd/sssd-ad_2.10.1-2%2bb1_amd64.deb OpenSSL error: error:0A000126:SSL routines::unexpected eof while reading [IP: 2001:4b98:dc4:5::80 443]
I guess this is an issue with Debian, and not YNH… but one is a bit clueless on what to do… hopefully, starting again the install will resolve that issue.
Installation method: on top of Debian 13. Debian was freshly installed with Proxmox’s Debian 13.1 LXC Template.
Issue: Piwigo fail to install, apparently due to an issue during the sury source setup.
2025-11-02 19:56:31,338: WARNING - Package php8.3-common is not available, but is referred to by another package.
2025-11-02 19:56:31,338: WARNING - This may mean that the package is missing, has been obsoleted, or
2025-11-02 19:56:31,339: DEBUG - + ynh_die 'Unable to install apt dependencies, it might be due to a conflict with another app - or you should check and share the previous log about what are the problematic dependencies'
2025-11-02 19:56:31,339: WARNING - is only available from another source
2025-11-02 19:56:31,340: DEBUG -
2025-11-02 19:56:31,341: WARNING - Package php8.3-gd is not available, but is referred to by another package.
2025-11-02 19:56:31,341: WARNING - This may mean that the package is missing, has been obsoleted, or
2025-11-02 19:56:31,342: WARNING - is only available from another source
...
apt update shows the sury source is not properly setup
Warning: OpenPGP signature verification failed: https://packages.sury.org/php trixie InRelease: Sub-process /usr/bin/sqv returned an error code (1), error message is: Error: Failed to parse keyring "/etc/apt/trusted.gpg.d/extra_php_version.gpg" Caused by: 0: Reading "/etc/apt/trusted.gpg.d/extra_php_version.gpg": No such file or directory (os error 2) 1: No such file or directory (os error 2)
Error: The repository 'https://packages.sury.org/php trixie InRelease' is not signed.
When I attempt sudo mv /usr/lib/python3/dist-packages/yunohost/migrations/0036_migrate_to_trixie.py{.disabled,} it turns out that the file doesn’t exist at all, even after adding the testing repository and upgrading. Is this a known issue?
Yes we just realized that in the rush we forgot to make a new 12.1.x release to publish the migration draft but we’re working on it, should be available in the coming minutes / hours
I also found that for Bookworm, the testing version (12.1.11) somehow has a version number lower than the stable version (12.1.33), but that can be solved by running sudo apt install yunohost=12.1.11.
Yes it shouldn’t be an issue because people are never supposed to have only the “testing” keyword in their /etc/apt/sources.list*, it should always be testing AND stable