diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 52adac61baf3dbd173c6bd400027df987b460209..b14ba7491f04c61d06bfaa54ea7ff31c440e4d89 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -259,6 +259,7 @@ apkg:deb:
         - 'debian-10'
         - 'debian-11'
         - 'debian-12'
+        - 'debian-13'
         - 'ubuntu-20.04'
         - 'ubuntu-22.04'
         - 'ubuntu-24.04'
diff --git a/ci/images/full/debian-13/Dockerfile b/ci/images/full/debian-13/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..02a0c753d0c2dedcc8a0831f5a09ac4729cbf6e5
--- /dev/null
+++ b/ci/images/full/debian-13/Dockerfile
@@ -0,0 +1,37 @@
+FROM registry.nic.cz/packaging/apkg/systemd/debian-13
+ENV DEBIAN_FRONTEND=noninteractive
+
+WORKDIR /root
+CMD ["/bin/bash"]
+
+# upgrade system to latest
+RUN apt-get update -qqq
+RUN apt-get upgrade -y -qqq
+
+# packaging deps
+RUN apt-get install -y -qqq \
+    apt-utils \
+    build-essential \
+    curl \
+    debhelper \
+    dh-python \
+    dpkg-dev \
+    git \
+    python3-all \
+    python3-pip \
+    python3-setuptools \
+    pipx
+# apkg deps
+RUN apt-get install -y -qqq \
+    python3-bs4 \
+    python3-blessed \
+    python3-build \
+    python3-click \
+    python3-distro \
+    python3-jinja2 \
+    python3-packaging \
+    python3-requests \
+    python3-toml
+# install stable apkg from PyPI
+RUN python3 -m pip install --break-system-packages apkg
+RUN apkg --version
diff --git a/ci/images/systemd/debian-13/Dockerfile b/ci/images/systemd/debian-13/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..00ca5d14284ef95492f98eaa0bd3272a23f80e92
--- /dev/null
+++ b/ci/images/systemd/debian-13/Dockerfile
@@ -0,0 +1,25 @@
+FROM debian:trixie
+
+ENV DEBIAN_FRONTEND=noninteractive
+ARG ARCH=amd64
+
+RUN apt-get update && apt-get install -y \
+		systemd \
+		init \
+		dhcpcd5 \
+		curl \
+		git \
+		git-lfs \
+	&& rm -rf /var/lib/apt/lists/*
+
+# autologin as root on console
+RUN mkdir -p /etc/systemd/system/console-getty.service.d
+COPY console-getty.conf /etc/systemd/system/console-getty.service.d/override.conf
+
+# gitlab runner is needed for artifacts/cache
+RUN curl -LJO "https://gitlab-runner-downloads.s3.amazonaws.com/latest/deb/gitlab-runner_${ARCH}.deb" \
+	&& curl -LJO "https://gitlab-runner-downloads.s3.amazonaws.com/latest/deb/gitlab-runner-helper-images.deb" \
+	&& dpkg -i "gitlab-runner_${ARCH}.deb" "gitlab-runner-helper-images.deb" \
+	&& rm "gitlab-runner_${ARCH}.deb" "gitlab-runner-helper-images.deb"
+
+CMD ["/sbin/init"]
diff --git a/ci/images/test/debian-13/Dockerfile b/ci/images/test/debian-13/Dockerfile
new file mode 100644
index 0000000000000000000000000000000000000000..007319c49e9947896f930e9e3ffd918fd68fbbe2
--- /dev/null
+++ b/ci/images/test/debian-13/Dockerfile
@@ -0,0 +1,51 @@
+# SPDX-License-Identifier: GPL-3.0-or-later
+
+FROM debian:trixie
+ENV DEBIAN_FRONTEND=noninteractive
+
+WORKDIR /root
+CMD ["/bin/bash"]
+
+# upgrade system to latest
+RUN apt-get update -qqq
+RUN apt-get upgrade -y -qqq
+
+# enable Knot DNS repo (Knot Resolver dep)
+#RUN apt-get -y -qqq install wget
+#RUN wget -O - https://pkg.labs.nic.cz/doc/scripts/enable-repo-cznic-labs.sh | bash -s - knot-dns
+
+# packaging deps
+RUN apt-get install -y -qqq \
+    apt-utils \
+    build-essential \
+    curl \
+    debhelper \
+    dh-python \
+    dpkg-dev \
+    git \
+    pybuild-plugin-pyproject \
+    python3-all \
+    python3-pip \
+    python3-setuptools \
+    pipx
+# testing deps
+RUN apt-get install -y -qqq \
+    python3-pytest \
+    python3-pytest-sugar
+# basic deps
+RUN apt-get install -y -qqq \
+    python3-blessed \
+    python3-bs4 \
+    python3-build \
+    python3-click \
+    python3-distro \
+    python3-jinja2 \
+    python3-packaging \
+    python3-requests \
+    python3-toml
+
+# add pipx/pip bin dir to $PATH
+RUN echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc
+
+# workaround PEP668 breaking pip installs
+RUN mkdir -p ~/.config/pip && printf '[global]\nbreak-system-packages = true\n\n' >> ~/.config/pip/pip.conf