Synapse Matrix install error

Creating a bug report/issue

I have searched the existing open and closed issues

Required Information

  • DietPi version | cat /boot/dietpi/.version

cat /boot/dietpi/.version
G_DIETPI_VERSION_CORE=10
G_DIETPI_VERSION_SUB=0
G_DIETPI_VERSION_RC=1
G_GITBRANCH=‘master’
G_GITOWNER=‘MichaIng’
root@DietPi:~#

  • Distro version | echo $G_DISTRO_NAME $G_RASPBIAN

trixie 0

  • Kernel version | uname --all

Linux DietPi 6.12.62+rpt-rpi-v8 #1 SMP PREEMPT Debian 1:6.12.62-1+rpt1 (2025-12-18) aarch64 GNU/Linux

  • Architecture | dpkg --print-architecture

arm64

  • SBC model | echo $G_HW_MODEL_NAME or (EG: RPi3)

RPi 4 Model B (aarch64)

  • Power supply used | (EG: 5V 1A RAVpower)
  • SD card used | (EG: SanDisk ultra)

Additional Information (if applicable)

  • Software title | (EG: Nextcloud)
  • Was the software title installed freshly or updated/migrated?
  • Can this issue be replicated on a fresh installation of DietPi?
    ← If you sent a “dietpi-bugreport”, please paste the ID here →
  • Bug report ID | echo $G_HW_UUID

Hello, I’m back to ask for help from the forum again with a problem installing a Synapse (Matrix) server.

I obviously went through dietpi-software, but during installation I got an error message

× Cannot uninstall typing_extensions 4.13.2
╰─> The package’s contents are unknown: no RECORD file was found for typing_extensions.

hint: The package was installed by debian. You should check if it can uninstall the package.

[FAILED] DietPi-Software | pip3 install -U matrix-synapse psycopg2
[FAILED] DietPi-Software | Unable to continue, DietPi-Software will now terminate.

Do you have a solution for me?

Thank you

<!-- Explain Successfully built psycopg2
                                │ Installing collected packages: typing-extensions, semantic_version, rpds-py, pyyaml, python-multipart, pyrsistent,
                                │ pyparsing, psycopg2, prometheus-client, phonenumbers, netaddr, multipart, msgpack, matrix-common, immutabledict,
                                │ ijson, canonicaljson, bleach, setuptools-rust, referencing, pynacl, signedjson, pymacaroons,
                                │ jsonschema-specifications, treq, jsonschema, matrix-synapse
                                │   Attempting uninstall: typing-extensions
                                │     Found existing installation: typing_extensions 4.13.2
                                │ error: uninstall-no-record-file
                                │
                                │ × Cannot uninstall typing_extensions 4.13.2
                                │ ╰─> The package's contents are unknown: no RECORD file was found for typing_extensions.
                                │
                                │ hint: The package was installed by debian. You should check if it can uninstall the package. how to reproduce the issue -->

Another problem: when installing microblog-pub,

I get another error:

Downloading Python-3.11.14.tar.gz...
-> https://www.python.org/ftp/python/3.11.14/Python-3.11.14.tgz
Installing Python-3.11.14...
/opt/microblog-pub/plugins/python-build/bin/python-build: line 2032: patch: comm                                                        and not found

BUILD FAILED (Debian 13 using python-build 2.6.22)

Inspect or clean up the working tree at /tmp/python-build.20260216180709.48292
Results logged to /tmp/python-build.20260216180709.48292.log

Last 10 log lines:
/tmp/python-build.20260216180709.48292 ~
/tmp/python-build.20260216180709.48292/Python-3.11.14 /tmp/python-build.20260216                                                        180709.48292 ~
[FAILED] DietPi-Software | Compiling and installing Python 3.11.14 into pyenv, w                                                        hich will take a while ...
 - Command: runuser -u microblog-pub -- dash -c . /opt/microblog-pub/pyenv-activ                                                        ate.sh; exec pyenv install 3.11.14

RPi 4 Model B (aarch64) | IP: 192.168.0.22 | Use up/down buttons to scroll text┐
│ Compiling and installing Python 3.11.14 into pyenv, which will take a while
│ ...
│  - Command: runuser -u microblog-pub -- dash -c .
│ /opt/microblog-pub/pyenv-activate.sh; exec pyenv install 3.11.14
│  - Exit code: 1
│  - DietPi version: v10.0.1 (MichaIng/master) | HW_MODEL: 4 | HW_ARCH: 3 |
│ DISTRO: 8
│  - Error log:
│ Downloading Python-3.11.14.tar.gz...
│ -> https://www.python.org/ftp/python/3.11.14/Python-3.11.14.tgz
│ Installing Python-3.11.14...
│ /opt/microblog-pub/plugins/python-build/bin/python-build: line 2032: patch:
│ command not found
│
│ BUILD FAILED (Debian 13 using python-build 2.6.22)

Just tested on an empty fresh system, there it is working without issue. I guess some python modules where installed already, casing some conflicts now.

I’m a little confused, because among other things I have a Nextcloud with a calendar/photo library that runs. Is there a way to export/import server and application configurations ?

How can I avoid losing too much if I have to start over on a new system?

In my VM it ran also fine but on my RPi 3B got the same error when installing synapse. But not sure what’s going on, it says hint: The package was installed by debian. but I can not find any package belonging to this.

I ask @MichaIng for assistance

With recent pip you remove the system package before pip can install the recent module from PyPI:

sudo apt autopurge python3-typing-extensions

I hope this would not uninstall some end user package. As long as it is only python3-* packages, those can be installed via pip.

But generally, we need to move Python software into venv’s to avoid those conflicts.

pyenv Python build now requires patch?

sudo apt install patch
dietpi-software install 16

Indeed, for certain Python versions at least: pyenv/plugins/python-build/share/python-build/patches at master · pyenv/pyenv · GitHub
This patch is applied to all Python versions prior to 3.12: pyenv/plugins/python-build/share/python-build/patches/3.11.14/Python-3.11.14/0001-Recognize-an-argument-to-j-in-MAKEFLAGS.patch at 81befc15926fe94b015a0e47a60edb5085e26add · pyenv/pyenv · GitHub

Sadly microblog.pub is not developed anymore :sad_but_relieved_face:. @gilou let me know if you think microblog.pub is still useful without a good alternative. I don’t remember whether we tested it with newer Python versions, or just assumed it won’t work or might cause subtile issues. I’ll add the patch dependency for now: dietpi-software: microblog.pub: add missing dependency · MichaIng/DietPi@9e1b2ed · GitHub

root@DietPi:\~# sudo apt autopurge python3-typing-extensions
REMOVING:
deluge-common\*               python3-legacy-cgi\*
deluge-console\*              python3-libtorrent\*
deluge-web\*                  python3-mako\*
deluged\*                     python3-markupsafe\*
libboost-python1.83.0\*       python3-more-itertools\*
libtorrent-rasterbar2.0t64\*  python3-pkg-resources\*
python3-attr\*                python3-pyasn1\*
python3-autocommand\*         python3-pyasn1-modules\*
python3-automat\*             python3-rencode\*
python3-constantly\*          python3-service-identity\*
python3-hamcrest\*            python3-twisted\*
python3-hyperlink\*           python3-typeguard\*
python3-incremental\*         python3-typing-extensions\*
python3-inflect\*             python3-xdg\*
python3-jaraco.context\*      python3-zope.interface\*
python3-jaraco.functools\*

Summary:
Upgrading: 0, Installing: 0, Removing: 31, Not Upgrading: 0
Freed space: 42.3 MB

Continue? \[Y/n\]

Okay, this will probably uninstall Deluge, so I’ll likely have to reinstall it. Do you see any other critical apps?

root@DietPi:~# sudo apt install patch
Installing:
  patch

Suggested packages:
  ed  diffutils-doc

Summary:
  Upgrading: 0, Installing: 1, Removing: 0, Not Upgrading: 0
  Download size: 128 kB
  Space needed: 276 kB / 40.9 GB available

Get:1 https://deb.debian.org/debian trixie/main arm64 patch arm64 2.8-2 [128 kB]
Fetched 128 kB in 1s (197 kB/s)
Selecting previously unselected package patch.
(Reading database ... 46706 files and directories currently installed.)
Preparing to unpack .../archives/patch_2.8-2_arm64.deb ...
Unpacking patch (2.8-2) ...
Setting up patch (2.8-2) ...
root@DietPi:~# dietpi-software install 16
[  OK  ] DietPi-Software | Initialised database
[  OK  ] DietPi-Software | Reading database

 DietPi-Software
─────────────────────────────────────────────────────
 Mode: Automated install

[  OK  ] DietPi-Software | Installing microblog.pub: A self-hosted, single-user,                                          ActivityPub powered microblog.
[  OK  ] DietPi-Software | DietPi-Userdata validation: /mnt/ssd/dietpi_userdata

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Checking for conflicts and missing inputs


 DietPi-Software
─────────────────────────────────────────────────────
 Step: Checking for prerequisite software

[ INFO ] DietPi-Software | Git will be installed
[  OK  ] DietPi-Software | mkdir -p /mnt/dietpi_userdata/Music /mnt/dietpi_userd                                         ata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads /var/www                                          /opt /usr/local/bin
[  OK  ] DietPi-Software | chown dietpi:dietpi /mnt/dietpi_userdata/Music /mnt/d                                         ietpi_userdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/download                                         s
[  OK  ] DietPi-Software | chmod 0775 /mnt/dietpi_userdata/Music /mnt/dietpi_use                                         rdata/Pictures /mnt/dietpi_userdata/Video /mnt/dietpi_userdata/downloads
[ SUB1 ] DietPi-Services > stop
[  OK  ] DietPi-Services | stop : cron
[  OK  ] DietPi-Services | stop : tor
[  OK  ] DietPi-Services | stop : node-red
[  OK  ] DietPi-Services | stop : motioneye
[  OK  ] DietPi-Services | stop : deluge-web
[  OK  ] DietPi-Services | stop : deluged
[  OK  ] DietPi-Services | stop : icecast2
[  OK  ] DietPi-Services | stop : apache2
[  OK  ] DietPi-Services | stop : php8.4-fpm
[  OK  ] DietPi-Services | stop : postgresql
[  OK  ] DietPi-Services | stop : mariadb
[  OK  ] DietPi-Services | stop : redis-server
[  OK  ] DietPi-Services | stop : smbd
[  OK  ] DietPi-Services | stop : nmbd
[  OK  ] DietPi-Services | stop : avahi-daemon
[ INFO ] DietPi-Software | APT update, please wait...
Hit:1 https://deb.debian.org/debian trixie InRelease
Get:2 https://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
Get:3 https://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
Get:4 https://deb.debian.org/debian trixie-backports InRelease [54.0 kB]
Hit:5 https://dietpi.com/apt trixie InRelease
Get:6 https://archive.raspberrypi.com/debian trixie InRelease [54.9 kB]
Hit:7 https://dietpi.com/apt all InRelease
Get:8 https://deb.debian.org/debian-security trixie-security/main arm64 Packages                                          [108 kB]
Get:9 https://deb.debian.org/debian trixie-backports/main arm64 Packages.diff/In                                         dex [63.3 kB]
Get:10 https://packages.adoptium.net/artifactory/deb trixie InRelease [7503 B]
Get:11 https://deb.debian.org/debian trixie-backports/main arm64 Packages T-2026                                         -02-17-0209.58-F-2026-02-17-0209.58.pdiff [422 B]
Get:11 https://deb.debian.org/debian trixie-backports/main arm64 Packages T-2026                                         -02-17-0209.58-F-2026-02-17-0209.58.pdiff [422 B]
Get:12 https://archive.raspberrypi.com/debian trixie/main arm64 Packages [399 kB                                         ]
Fetched 778 kB in 2s (389 kB/s)
Reading package lists...
[  OK  ] DietPi-Software | APT update

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing Git: Clone and manage Git repositories locally

[ INFO ] DietPi-Software | APT install git, please wait...
Reading package lists...
Building dependency tree...
Reading state information...
git is already the newest version (1:2.47.3-0+deb13u1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[  OK  ] DietPi-Software | APT install git

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Installing microblog.pub: A self-hosted, single-user, ActivityPub powered                                          microblog.

[  OK  ] DietPi-Software | mkdir -p /mnt/dietpi_userdata/microblog-pub/.pip
[  OK  ] DietPi-Software | eval echo -e '[global]\nno-cache-dir=true' > '/mnt/di                                         etpi_userdata/microblog-pub/.pip/pip.conf'
[  OK  ] DietPi-Software | sed --follow-symlinks -i /^\[poetry.dev-dependencies\                                         ]$/c\[poetry.group.dev.dependencies] /mnt/dietpi_userdata/microblog-pub/pyprojec                                         t.toml
[  OK  ] DietPi-Software | Desired setting in /mnt/dietpi_userdata/microblog-pub                                         /pyproject.toml was already set: package-mode = false
[  OK  ] DietPi-Software | usermod -d /mnt/dietpi_userdata/microblog-pub -s /usr                                         /sbin/nologin microblog-pub
[  OK  ] DietPi-Software | chown -R microblog-pub:microblog-pub /mnt/dietpi_user                                         data/microblog-pub
[  OK  ] DietPi-Software | cd /tmp/DietPi-Software
[  OK  ] DietPi-Software | Checking URL: https://github.com/pyenv/pyenv/archive/                                         master.tar.gz
[ INFO ] DietPi-Software | G_THREAD_START_0 | curl -sSfL https://github.com/pyen                                         v/pyenv/archive/master.tar.gz -o master.tar.gz
[ INFO ] DietPi-Software | APT install libreadline-dev zlib1g-dev make libssl-de                                         v libc6-dev libbz2-dev libffi-dev libsqlite3-dev gcc liblzma-dev g++, please wai                                         t...
Reading package lists...
Building dependency tree...
Reading state information...
libreadline-dev is already the newest version (8.2-6).
zlib1g-dev is already the newest version (1:1.3.dfsg+really1.3.1-1+b1).
make is already the newest version (4.4.1-2).
libssl-dev is already the newest version (3.5.4-1~deb13u2+rpt1).
libc6-dev is already the newest version (2.41-12+rpt1+deb13u1).
libbz2-dev is already the newest version (1.0.8-6).
libffi-dev is already the newest version (3.4.8-2).
libsqlite3-dev is already the newest version (3.46.1-7).
gcc is already the newest version (4:14.2.0-1).
liblzma-dev is already the newest version (5.8.1-1).
g++ is already the newest version (4:14.2.0-1).
0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
[  OK  ] DietPi-Software | APT install libreadline-dev zlib1g-dev make libssl-de                                         v libc6-dev libbz2-dev libffi-dev libsqlite3-dev gcc liblzma-dev g++
[  OK  ] DietPi-Software | G_THREAD: All threads finished
[  OK  ] DietPi-Software | tar xf master.tar.gz
[  OK  ] DietPi-Software | rm master.tar.gz
[  OK  ] DietPi-Software | chown -R microblog-pub:microblog-pub pyenv-master
[  OK  ] DietPi-Software | rm -R /opt/microblog-pub
[  OK  ] DietPi-Software | mv pyenv-master /opt/microblog-pub
[ INFO ] DietPi-Software | Compiling and installing Python 3.11.14 into pyenv, w                                         hich will take a while ..., please wait...
Downloading Python-3.11.14.tar.gz...
-> https://www.python.org/ftp/python/3.11.14/Python-3.11.14.tgz
Installing Python-3.11.14...
patching file setup.py
Installed Python-3.11.14 to /opt/microblog-pub/versions/3.11.14
[  OK  ] DietPi-Software | Compiling and installing Python 3.11.14 into pyenv, w                                         hich will take a while ...
[ INFO ] DietPi-Software | Setting Python 3.11.14 as global version for this pye                                         nv instance, please wait...
[  OK  ] DietPi-Software | Setting Python 3.11.14 as global version for this pye                                         nv instance
[ INFO ] DietPi-Software | Upgrading base modules: pip setuptools wheel, please                                          wait...
Requirement already satisfied: pip in /opt/microblog-pub/versions/3.11.14/lib/py                                         thon3.11/site-packages (24.0)
Collecting pip
  Downloading pip-26.0.1-py3-none-any.whl.metadata (4.7 kB)
Requirement already satisfied: setuptools in /opt/microblog-pub/versions/3.11.14                                         /lib/python3.11/site-packages (79.0.1)
Collecting setuptools
  Downloading setuptools-82.0.0-py3-none-any.whl.metadata (6.6 kB)
Collecting wheel
  Downloading wheel-0.46.3-py3-none-any.whl.metadata (2.4 kB)
Collecting packaging>=24.0 (from wheel)
  Downloading packaging-26.0-py3-none-any.whl.metadata (3.3 kB)
Downloading pip-26.0.1-py3-none-any.whl (1.8 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 18.8 MB/s eta 0:00:00
Downloading setuptools-82.0.0-py3-none-any.whl (1.0 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.0/1.0 MB 31.8 MB/s eta 0:00:00
Downloading wheel-0.46.3-py3-none-any.whl (30 kB)
Downloading packaging-26.0-py3-none-any.whl (74 kB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 74.4/74.4 kB 29.6 MB/s eta 0:00:00
Installing collected packages: setuptools, pip, packaging, wheel
  Attempting uninstall: setuptools
    Found existing installation: setuptools 79.0.1
    Uninstalling setuptools-79.0.1:
      Successfully uninstalled setuptools-79.0.1
  Attempting uninstall: pip
    Found existing installation: pip 24.0
    Uninstalling pip-24.0:
      Successfully uninstalled pip-24.0
Successfully installed packaging-26.0 pip-26.0.1 setuptools-82.0.0 wheel-0.46.3
[  OK  ] DietPi-Software | Upgrading base modules: pip setuptools wheel
[ INFO ] DietPi-Software | Installing Poetry, please wait...
Collecting poetry
  Downloading poetry-2.3.2-py3-none-any.whl.metadata (7.2 kB)
Collecting build<2.0.0,>=1.2.1 (from poetry)
  Downloading build-1.4.0-py3-none-any.whl.metadata (5.8 kB)
Collecting cachecontrol<0.15.0,>=0.14.0 (from cachecontrol[filecache]<0.15.0,>=0                                         .14.0->poetry)
  Downloading cachecontrol-0.14.4-py3-none-any.whl.metadata (3.1 kB)
Collecting cleo<3.0.0,>=2.1.0 (from poetry)
  Downloading cleo-2.1.0-py3-none-any.whl.metadata (12 kB)
Collecting dulwich<2,>=0.25.0 (from poetry)
  Downloading dulwich-1.0.0-cp311-cp311-manylinux_2_28_aarch64.whl.metadata (5.4                                          kB)
Collecting fastjsonschema<3.0.0,>=2.18.0 (from poetry)
  Downloading fastjsonschema-2.21.2-py3-none-any.whl.metadata (2.3 kB)
Collecting findpython<0.8.0,>=0.6.2 (from poetry)
  Downloading findpython-0.7.1-py3-none-any.whl.metadata (5.4 kB)
Collecting installer<0.8.0,>=0.7.0 (from poetry)
  Downloading installer-0.7.0-py3-none-any.whl.metadata (936 bytes)
Collecting keyring<26.0.0,>=25.1.0 (from poetry)
  Downloading keyring-25.7.0-py3-none-any.whl.metadata (21 kB)
Requirement already satisfied: packaging>=24.2 in /opt/microblog-pub/versions/3.                                         11.14/lib/python3.11/site-packages (from poetry) (26.0)
Collecting pbs-installer>=2025.6.10 (from pbs-installer[download,install]>=2025.                                         6.10->poetry)
  Downloading pbs_installer-2026.2.11-py3-none-any.whl.metadata (991 bytes)
Collecting pkginfo<2.0,>=1.12 (from poetry)
  Downloading pkginfo-1.12.1.2-py3-none-any.whl.metadata (13 kB)
Collecting platformdirs<5,>=3.0.0 (from poetry)
  Downloading platformdirs-4.9.2-py3-none-any.whl.metadata (4.7 kB)
Collecting poetry-core==2.3.1 (from poetry)
  Downloading poetry_core-2.3.1-py3-none-any.whl.metadata (3.8 kB)
Collecting pyproject-hooks<2.0.0,>=1.0.0 (from poetry)
  Downloading pyproject_hooks-1.2.0-py3-none-any.whl.metadata (1.3 kB)
Collecting requests<3.0,>=2.26 (from poetry)
  Downloading requests-2.32.5-py3-none-any.whl.metadata (4.9 kB)
Collecting requests-toolbelt<2.0.0,>=1.0.0 (from poetry)
  Downloading requests_toolbelt-1.0.0-py2.py3-none-any.whl.metadata (14 kB)
Collecting shellingham<2.0,>=1.5 (from poetry)
  Downloading shellingham-1.5.4-py2.py3-none-any.whl.metadata (3.5 kB)
Collecting tomlkit<1.0.0,>=0.11.4 (from poetry)
  Downloading tomlkit-0.14.0-py3-none-any.whl.metadata (2.8 kB)
Collecting trove-classifiers>=2022.5.19 (from poetry)
  Downloading trove_classifiers-2026.1.14.14-py3-none-any.whl.metadata (2.4 kB)
Collecting virtualenv>=20.26.6 (from poetry)
  Downloading virtualenv-20.37.0-py3-none-any.whl.metadata (5.1 kB)
Collecting msgpack<2.0.0,>=0.5.2 (from cachecontrol<0.15.0,>=0.14.0->cachecontro                                         l[filecache]<0.15.0,>=0.14.0->poetry)
  Downloading msgpack-1.1.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aar                                         ch64.manylinux_2_28_aarch64.whl.metadata (8.1 kB)
Collecting filelock>=3.8.0 (from cachecontrol[filecache]<0.15.0,>=0.14.0->poetry                                         )
  Downloading filelock-3.24.2-py3-none-any.whl.metadata (2.0 kB)
Collecting crashtest<0.5.0,>=0.4.1 (from cleo<3.0.0,>=2.1.0->poetry)
  Downloading crashtest-0.4.1-py3-none-any.whl.metadata (1.1 kB)
Collecting rapidfuzz<4.0.0,>=3.0.0 (from cleo<3.0.0,>=2.1.0->poetry)
  Downloading rapidfuzz-3.14.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28                                         _aarch64.whl.metadata (12 kB)
Collecting urllib3>=2.2.2 (from dulwich<2,>=0.25.0->poetry)
  Downloading urllib3-2.6.3-py3-none-any.whl.metadata (6.9 kB)
Collecting typing_extensions>=4.6.0 (from dulwich<2,>=0.25.0->poetry)
  Downloading typing_extensions-4.15.0-py3-none-any.whl.metadata (3.3 kB)
Collecting SecretStorage>=3.2 (from keyring<26.0.0,>=25.1.0->poetry)
  Downloading secretstorage-3.5.0-py3-none-any.whl.metadata (4.0 kB)
Collecting jeepney>=0.4.2 (from keyring<26.0.0,>=25.1.0->poetry)
  Downloading jeepney-0.9.0-py3-none-any.whl.metadata (1.2 kB)
Collecting importlib_metadata>=4.11.4 (from keyring<26.0.0,>=25.1.0->poetry)
  Downloading importlib_metadata-8.7.1-py3-none-any.whl.metadata (4.7 kB)
Collecting jaraco.classes (from keyring<26.0.0,>=25.1.0->poetry)
  Downloading jaraco.classes-3.4.0-py3-none-any.whl.metadata (2.6 kB)
Collecting jaraco.functools (from keyring<26.0.0,>=25.1.0->poetry)
  Downloading jaraco_functools-4.4.0-py3-none-any.whl.metadata (3.0 kB)
Collecting jaraco.context (from keyring<26.0.0,>=25.1.0->poetry)
  Downloading jaraco_context-6.1.0-py3-none-any.whl.metadata (4.3 kB)
Collecting charset_normalizer<4,>=2 (from requests<3.0,>=2.26->poetry)
  Downloading charset_normalizer-3.4.4-cp311-cp311-manylinux2014_aarch64.manylin                                         ux_2_17_aarch64.manylinux_2_28_aarch64.whl.metadata (37 kB)
Collecting idna<4,>=2.5 (from requests<3.0,>=2.26->poetry)
  Downloading idna-3.11-py3-none-any.whl.metadata (8.4 kB)
Collecting certifi>=2017.4.17 (from requests<3.0,>=2.26->poetry)
  Downloading certifi-2026.1.4-py3-none-any.whl.metadata (2.5 kB)
Collecting zipp>=3.20 (from importlib_metadata>=4.11.4->keyring<26.0.0,>=25.1.0-                                         >poetry)
  Downloading zipp-3.23.0-py3-none-any.whl.metadata (3.6 kB)
Collecting httpx<1,>=0.27.0 (from pbs-installer[download,install]>=2025.6.10->po                                         etry)
  Downloading httpx-0.28.1-py3-none-any.whl.metadata (7.1 kB)
Collecting zstandard>=0.21.0 (from pbs-installer[download,install]>=2025.6.10->p                                         oetry)
  Downloading zstandard-0.25.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_                                         aarch64.whl.metadata (3.3 kB)
Collecting anyio (from httpx<1,>=0.27.0->pbs-installer[download,install]>=2025.6                                         .10->poetry)
  Downloading anyio-4.12.1-py3-none-any.whl.metadata (4.3 kB)
Collecting httpcore==1.* (from httpx<1,>=0.27.0->pbs-installer[download,install]                                         >=2025.6.10->poetry)
  Downloading httpcore-1.0.9-py3-none-any.whl.metadata (21 kB)
Collecting h11>=0.16 (from httpcore==1.*->httpx<1,>=0.27.0->pbs-installer[downlo                                         ad,install]>=2025.6.10->poetry)
  Downloading h11-0.16.0-py3-none-any.whl.metadata (8.3 kB)
Collecting cryptography>=2.0 (from SecretStorage>=3.2->keyring<26.0.0,>=25.1.0->                                         poetry)
  Downloading cryptography-46.0.5-cp311-abi3-manylinux_2_34_aarch64.whl.metadata                                          (5.7 kB)
Collecting cffi>=2.0.0 (from cryptography>=2.0->SecretStorage>=3.2->keyring<26.0                                         .0,>=25.1.0->poetry)
  Downloading cffi-2.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch6                                         4.whl.metadata (2.6 kB)
Collecting pycparser (from cffi>=2.0.0->cryptography>=2.0->SecretStorage>=3.2->k                                         eyring<26.0.0,>=25.1.0->poetry)
  Downloading pycparser-3.0-py3-none-any.whl.metadata (8.2 kB)
Collecting distlib<1,>=0.3.7 (from virtualenv>=20.26.6->poetry)
  Downloading distlib-0.4.0-py2.py3-none-any.whl.metadata (5.2 kB)
Collecting more-itertools (from jaraco.classes->keyring<26.0.0,>=25.1.0->poetry)
  Downloading more_itertools-10.8.0-py3-none-any.whl.metadata (39 kB)
Collecting backports.tarfile (from jaraco.context->keyring<26.0.0,>=25.1.0->poet                                         ry)
  Downloading backports.tarfile-1.2.0-py3-none-any.whl.metadata (2.0 kB)
Downloading poetry-2.3.2-py3-none-any.whl (287 kB)
Downloading poetry_core-2.3.1-py3-none-any.whl (340 kB)
Downloading build-1.4.0-py3-none-any.whl (24 kB)
Downloading cachecontrol-0.14.4-py3-none-any.whl (22 kB)
Downloading cleo-2.1.0-py3-none-any.whl (78 kB)
Downloading crashtest-0.4.1-py3-none-any.whl (7.6 kB)
Downloading dulwich-1.0.0-cp311-cp311-manylinux_2_28_aarch64.whl (1.4 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 30.8 MB/s  0:00:00
Downloading fastjsonschema-2.21.2-py3-none-any.whl (24 kB)
Downloading findpython-0.7.1-py3-none-any.whl (21 kB)
Downloading installer-0.7.0-py3-none-any.whl (453 kB)
Downloading keyring-25.7.0-py3-none-any.whl (39 kB)
Downloading msgpack-1.1.2-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch                                         64.manylinux_2_28_aarch64.whl (416 kB)
Downloading pkginfo-1.12.1.2-py3-none-any.whl (32 kB)
Downloading platformdirs-4.9.2-py3-none-any.whl (21 kB)
Downloading pyproject_hooks-1.2.0-py3-none-any.whl (10 kB)
Downloading rapidfuzz-3.14.3-cp311-cp311-manylinux_2_26_aarch64.manylinux_2_28_a                                         arch64.whl (1.4 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 29.4 MB/s  0:00:00
Downloading requests-2.32.5-py3-none-any.whl (64 kB)
Downloading charset_normalizer-3.4.4-cp311-cp311-manylinux2014_aarch64.manylinux                                         _2_17_aarch64.manylinux_2_28_aarch64.whl (147 kB)
Downloading idna-3.11-py3-none-any.whl (71 kB)
Downloading requests_toolbelt-1.0.0-py2.py3-none-any.whl (54 kB)
Downloading shellingham-1.5.4-py2.py3-none-any.whl (9.8 kB)
Downloading tomlkit-0.14.0-py3-none-any.whl (39 kB)
Downloading urllib3-2.6.3-py3-none-any.whl (131 kB)
Downloading certifi-2026.1.4-py3-none-any.whl (152 kB)
Downloading filelock-3.24.2-py3-none-any.whl (24 kB)
Downloading importlib_metadata-8.7.1-py3-none-any.whl (27 kB)
Downloading jeepney-0.9.0-py3-none-any.whl (49 kB)
Downloading pbs_installer-2026.2.11-py3-none-any.whl (70 kB)
Downloading httpx-0.28.1-py3-none-any.whl (73 kB)
Downloading httpcore-1.0.9-py3-none-any.whl (78 kB)
Downloading h11-0.16.0-py3-none-any.whl (37 kB)
Downloading secretstorage-3.5.0-py3-none-any.whl (15 kB)
Downloading cryptography-46.0.5-cp311-abi3-manylinux_2_34_aarch64.whl (4.3 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 4.3/4.3 MB 36.5 MB/s  0:00:00
Downloading cffi-2.0.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aarch64.                                         whl (216 kB)
Downloading trove_classifiers-2026.1.14.14-py3-none-any.whl (14 kB)
Downloading typing_extensions-4.15.0-py3-none-any.whl (44 kB)
Downloading virtualenv-20.37.0-py3-none-any.whl (5.8 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.8/5.8 MB 41.9 MB/s  0:00:00
Downloading distlib-0.4.0-py2.py3-none-any.whl (469 kB)
Downloading zipp-3.23.0-py3-none-any.whl (10 kB)
Downloading zstandard-0.25.0-cp311-cp311-manylinux2014_aarch64.manylinux_2_17_aa                                         rch64.whl (5.1 MB)
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 5.1/5.1 MB 43.9 MB/s  0:00:00
Downloading anyio-4.12.1-py3-none-any.whl (113 kB)
Downloading jaraco.classes-3.4.0-py3-none-any.whl (6.8 kB)
Downloading jaraco_context-6.1.0-py3-none-any.whl (7.1 kB)
Downloading backports.tarfile-1.2.0-py3-none-any.whl (30 kB)
Downloading jaraco_functools-4.4.0-py3-none-any.whl (10 kB)
Downloading more_itertools-10.8.0-py3-none-any.whl (69 kB)
Downloading pycparser-3.0-py3-none-any.whl (48 kB)
Installing collected packages: trove-classifiers, fastjsonschema, distlib, zstan                                         dard, zipp, urllib3, typing_extensions, tomlkit, shellingham, rapidfuzz, pyproje                                         ct-hooks, pycparser, poetry-core, platformdirs, pkginfo, pbs-installer, msgpack,                                          more-itertools, jeepney, installer, idna, h11, filelock, crashtest, charset_nor                                         malizer, certifi, backports.tarfile, virtualenv, requests, jaraco.functools, jar                                         aco.context, jaraco.classes, importlib_metadata, httpcore, findpython, dulwich,                                          cleo, cffi, build, anyio, requests-toolbelt, httpx, cryptography, cachecontrol,                                          SecretStorage, keyring, poetry

Successfully installed SecretStorage-3.5.0 anyio-4.12.1 backports.tarfile-1.2.0                                          build-1.4.0 cachecontrol-0.14.4 certifi-2026.1.4 cffi-2.0.0 charset_normalizer-3                                         .4.4 cleo-2.1.0 crashtest-0.4.1 cryptography-46.0.5 distlib-0.4.0 dulwich-1.0.0                                          fastjsonschema-2.21.2 filelock-3.24.2 findpython-0.7.1 h11-0.16.0 httpcore-1.0.9                                          httpx-0.28.1 idna-3.11 importlib_metadata-8.7.1 installer-0.7.0 jaraco.classes-                                         3.4.0 jaraco.context-6.1.0 jaraco.functools-4.4.0 jeepney-0.9.0 keyring-25.7.0 m                                         ore-itertools-10.8.0 msgpack-1.1.2 pbs-installer-2026.2.11 pkginfo-1.12.1.2 plat                                         formdirs-4.9.2 poetry-2.3.2 poetry-core-2.3.1 pycparser-3.0 pyproject-hooks-1.2.                                         0 rapidfuzz-3.14.3 requests-2.32.5 requests-toolbelt-1.0.0 shellingham-1.5.4 tom                                         lkit-0.14.0 trove-classifiers-2026.1.14.14 typing_extensions-4.15.0 urllib3-2.6.                                         3 virtualenv-20.37.0 zipp-3.23.0 zstandard-0.25.0
[  OK  ] DietPi-Software | Installing Poetry
[ INFO ] DietPi-Software | Updating dependency locks, please wait...
The "poetry.dev-dependencies" section is deprecated and will be removed in a fut                                         ure version. Use "poetry.group.dev.dependencies" instead.
Creating virtualenv microblogpub-LWDs9VY0-py3.11 in /mnt/dietpi_userdata/microbl                                         og-pub/.cache/pypoetry/virtualenvs
Updating dependencies
Resolving dependencies...

Writing lock file
[  OK  ] DietPi-Software | Updating dependency locks
[ INFO ] DietPi-Software | Adding setuptools dependency for Poetry needed for co                                         nfig wizard, please wait...
The "poetry.dev-dependencies" section is deprecated and will be removed in a fut                                         ure version. Use "poetry.group.dev.dependencies" instead.

Updating dependencies
Resolving dependencies...

Writing lock file
[  OK  ] DietPi-Software | Adding setuptools dependency for Poetry needed for co                                         nfig wizard
[ INFO ] DietPi-Software | Installing microblog.pub, please wait...
The "poetry.dev-dependencies" section is deprecated and will be removed in a fut                                         ure version. Use "poetry.group.dev.dependencies" instead.
Installing dependencies from lock file

Package operations: 105 installs, 0 updates, 0 removals

  - Installing aiosqlite (0.17.0)
  - Installing alembic (1.18.4)
  - Installing anyio (3.7.1)
  - Installing asgiref (3.11.1)
  - Installing bcrypt (3.2.2)
  - Installing beautifulsoup4 (4.14.3)
  - Installing black (22.12.0)
  - Installing bleach (5.0.1)
  - Installing blurhash-python (1.2.2)
  - Installing boussole (2.1.3)
  - Installing brotli (1.2.0)
  - Installing bs4 (0.0.1)
  - Installing cachetools (5.5.2)
  - Installing certifi (2026.1.4)
  - Installing cffi (2.0.0)
  - Installing charset-normalizer (3.4.4)
  - Installing click (8.3.1)
  - Installing colorama (0.4.6)
  - Installing colorlog (6.10.1)
  - Installing emoji (1.7.0)
  - Installing factory-boy (3.3.3)
  - Installing faker (40.4.0)
  - Installing fastapi (0.78.0)
  - Installing feedgen (0.9.0)
  - Installing flake8 (4.0.1)
  - Installing frozendict (2.4.7)
  - Installing greenlet (1.1.3.post0)
  - Installing h11 (0.12.0)
  - Installing h2 (4.3.0)
  - Installing hpack (4.1.0)
  - Installing html2text (2020.1.16)
  - Installing html5lib (1.1)
  - Installing httpcore (0.15.0)
  - Installing httptools (0.7.1)
  - Installing httpx (0.23.0)
  - Installing humanize (4.15.0)
  - Installing hyperframe (6.1.0)
  - Installing idna (3.11)
  - Installing iniconfig (2.3.0)
  - Installing invoke (1.7.3)
  - Installing isort (5.13.2)
  - Installing itsdangerous (2.2.0)
  - Installing jinja2 (3.1.6)
  - Installing libsass (0.21.0)
  - Installing loguru (0.6.0)
  - Installing lxml (6.0.2)
  - Installing mako (1.3.10)
  - Installing markupsafe (3.0.3)
  - Installing mccabe (0.6.1)
  - Installing mf2py (1.1.3)
  - Installing mistletoe (0.9.0)
  - Installing mypy (0.960)
  - Installing mypy-extensions (1.1.0)
  - Installing packaging (26.0)
  - Installing pathspec (1.0.4)
  - Installing pebble (5.2.0)
  - Installing pillow (9.5.0)
  - Installing platformdirs (4.9.2)
  - Installing pluggy (1.6.0)
  - Installing prompt-toolkit (3.0.52)
  - Installing pyaml (26.2.1)
  - Installing pycodestyle (2.8.0)
  - Installing pycparser (3.0)
  - Installing pycryptodome (3.23.0)
  - Installing pydantic (1.10.26)
  - Installing pyflakes (2.4.0)
  - Installing pygments (2.19.2)
  - Installing pyld (2.0.4)
  - Installing pytest (7.4.4)
  - Installing pytest-asyncio (0.18.3)
  - Installing python-dateutil (2.9.0.post0)
  - Installing python-dotenv (1.2.1)
  - Installing python-multipart (0.0.5)
  - Installing pyyaml (6.0.3)
  - Installing requests (2.32.5)
  - Installing respx (0.19.3)
  - Installing rfc3986 (1.5.0)
  - Installing setuptools (80.10.2)
  - Installing six (1.17.0)
  - Installing sniffio (1.3.1)
  - Installing soupsieve (2.8.3)
  - Installing sqlalchemy (1.4.54)
  - Installing sqlalchemy2-stubs (0.0.2a38)
  - Installing starlette (0.19.1)
  - Installing supervisor (4.3.0)
  - Installing tabulate (0.8.10)
  - Installing tomli (2.4.0)
  - Installing tomli-w (1.2.0)
  - Installing types-bleach (5.0.3.1)
  - Installing types-cachetools (5.5.0.20240820)
  - Installing types-emoji (1.7.4)
  - Installing types-markdown (3.10.2.20260211)
  - Installing types-pillow (9.5.0.6)
  - Installing types-python-dateutil (2.9.0.20260124)
  - Installing types-requests (2.32.4.20260107)
  - Installing types-tabulate (0.8.11)
  - Installing typing-extensions (4.15.0)
  - Installing urllib3 (2.6.3)
  - Installing uvicorn (0.18.3)
  - Installing uvloop (0.22.1)
  - Installing watchdog (6.0.0)
  - Installing watchfiles (1.1.1)
  - Installing wcwidth (0.6.0)
  - Installing webencodings (0.5.1)
  - Installing websockets (16.0)
[  OK  ] DietPi-Software | Installing microblog.pub
[ INFO ] DietPi-Software | Storing Poetry virtualenv path, please wait...
The "poetry.dev-dependencies" section is deprecated and will be removed in a fut                                         ure version. Use "poetry.group.dev.dependencies" instead.
[  OK  ] DietPi-Software | Storing Poetry virtualenv path
[  OK  ] DietPi-Software | Checking Poetry virtualenv path
[  OK  ] DietPi-Software | rm /opt/microblog-pub/.virtual_path
[  OK  ] DietPi-Software | microblog.pub installation finished. In order to complete the setup, please run "microblog-pub configure" in a new bash session. Append the port ":8007" to the domain when being asked for it if you do not use a reverse proxy.

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Finalising install

[  OK  ] DietPi-Software | systemctl daemon-reload
2026-02-17 15:07:06 [ INFO ] DietPi-RAMlog | Storing /var/log to /var/tmp/dietpi/logs/dietpi-ramlog_store...
2026-02-17 15:07:06 [  OK  ] DietPi-RAMlog | Stored /var/log to /var/tmp/dietpi/logs/dietpi-ramlog_store.

 DietPi-Software
─────────────────────────────────────────────────────
 Step: Install completed

Applying the patch takes quite a long time on a Raspberry Pi 4, but in the end:

│ [ INFO ] microblog.pub installation finished                                 │
│                                                                              │
│ In order to complete the setup, please run “microblog-pub configure” in a    │
│ new bash session.                                                            │
│                                                                              │
│ NB: Append the port “:8007” to the domain when being asked for it if you do  │
│ not use a reverse proxy.

root@DietPi:~# microblog-pub configure
The "poetry.dev-dependencies" section is deprecated and will be removed in a fut                                                                               ure version. Use "poetry.group.dev.dependencies" instead.
boussole compile
/mnt/dietpi_userdata/microblog-pub/.cache/pypoetry/virtualenvs/microblogpub-LWDs9VY0-py3.11/lib/python3.11/site-packages/boussole/__init__.py:7: UserWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io/en/latest/pkg_resources.html. The pkg_resources package is slated for removal as early as 2025-11-30. Refrain from using this package or pin to Setuptools<81.
  import pkg_resources
15:09:37 - Building project
15:09:37 - Output: /mnt/ssd/dietpi_userdata/microblog-pub/app/static/css/main.css
MICROBLOGPUB_CONFIG_FILE=tests.toml alembic upgrade head
INFO  [alembic.runtime.migration] Context impl SQLiteImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.runtime.migration] Running upgrade  -> f5717d82b3ff, Initial migration
INFO  [alembic.runtime.migration] Running upgrade f5717d82b3ff -> 50d26a370a65, Add is_blocked attribute on actors
INFO  [alembic.runtime.migration] Running upgrade 50d26a370a65 -> 1702e88016db, Tweak notification model
INFO  [alembic.runtime.migration] Running upgrade 1702e88016db -> 9bc69ed947e2, New conversation field
INFO  [alembic.runtime.migration] Running upgrade 9bc69ed947e2 -> 6286262bb466, Enable WAL mode
INFO  [alembic.runtime.migration] Running upgrade 6286262bb466 -> 5d3e3f2b9b4e, Add Actor.is_deleted
INFO  [alembic.runtime.migration] Running upgrade 5d3e3f2b9b4e -> 604d125ea2fb, Add InboxObject.has_local_mention
INFO  [alembic.runtime.migration] Running upgrade 604d125ea2fb -> b28c0551c236, Add a slug field for outbox objects
INFO  [alembic.runtime.migration] Running upgrade b28c0551c236 -> fadfd359ce78, Add Webmention.webmention_type
INFO  [alembic.runtime.migration] Running upgrade fadfd359ce78 -> 9b404c47970a, Add option to hide announces from actor
INFO  [alembic.runtime.migration] Running upgrade 9b404c47970a -> 4ab54becec04, Add OAuth client
INFO  [alembic.runtime.migration] Running upgrade 4ab54becec04 -> a209f0333f5a, Add OAuth refresh token support
MICROBLOGPUB_CONFIG_FILE=tests.toml PYTHONPATH=. python scripts/config_wizard.py
Welcome to microblog.pub setup wizard

Generating key...
Your identity will be @{username}@{domain}
domain:
username: gilou
admin password: **************
name (e.g. John Doe): gilou
summary (short description, in markdown, press [CTRL] + [SPACE] to submit):

will the site be served via https? (y/n): y
Note that you can put your icon/avatar in the static/ directory
icon URL: https://*****************/static/nopic.png
Done
The "poetry.dev-dependencies" section is deprecated and will be removed in a future version. Use "poetry.group.dev.dependencies" instead.
alembic upgrade head
INFO  [alembic.runtime.migration] Context impl SQLiteImpl.
INFO  [alembic.runtime.migration] Will assume non-transactional DDL.
INFO  [alembic.runtime.migration] Running upgrade  -> f5717d82b3ff, Initial migration
INFO  [alembic.runtime.migration] Running upgrade f5717d82b3ff -> 50d26a370a65, Add is_blocked attribute on actors
INFO  [alembic.runtime.migration] Running upgrade 50d26a370a65 -> 1702e88016db, Tweak notification model
INFO  [alembic.runtime.migration] Running upgrade 1702e88016db -> 9bc69ed947e2, New conversation field
INFO  [alembic.runtime.migration] Running upgrade 9bc69ed947e2 -> 6286262bb466, Enable WAL mode
INFO  [alembic.runtime.migration] Running upgrade 6286262bb466 -> 5d3e3f2b9b4e, Add Actor.is_deleted
INFO  [alembic.runtime.migration] Running upgrade 5d3e3f2b9b4e -> 604d125ea2fb, Add InboxObject.has_local_mention
INFO  [alembic.runtime.migration] Running upgrade 604d125ea2fb -> b28c0551c236, Add a slug field for outbox objects
INFO  [alembic.runtime.migration] Running upgrade b28c0551c236 -> fadfd359ce78, Add Webmention.webmention_type
INFO  [alembic.runtime.migration] Running upgrade fadfd359ce78 -> 9b404c47970a, Add option to hide announces from actor
INFO  [alembic.runtime.migration] Running upgrade 9b404c47970a -> 4ab54becec04, Add OAuth client
INFO  [alembic.runtime.migration] Running upgrade 4ab54becec04 -> a209f0333f5a, Add OAuth refresh token support
Created symlink '/etc/systemd/system/multi-user.target.wants/microblog-pub.service' → '/etc/systemd/system/microblog-pub.service'.
root@DietPi:~#

the microblog-pub service seems to be well installed and active.However, when I enter https/myserver.com:8007

I don’t get any response.

did you add the port during setup to your domain as stated on our online docs?

During the reconfiguration via microblog-pub configure you are asked - amongst others - for your domain.
Do not forget to add a :8007

In addition you can check for LISTEN ports

ss -alnp | grep LISTEN

sure I forget to add :8007 during setup

the service works on a local network 192.168.0.22:8007

If it works locally, it should also work via domain name. It depends on how your domain is accessed locally. If it is the external IP address, you may need to enable the port on the router. Just a thought.

Ah I see, yeah Deluge is installed via APT. This pip change is so annoying. APT installs to /usr/lib, pip to /usr/local/lib, so they do not actually conflict, and we never saw any issues with e.g. APT Python packages loading pip Python modules vice versa. But well, no way around venv now.

Working on a migration, resp. letting Copilot work on it :smile::