[libvirt PATCH 8/9] ci: Refresh generated files

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Add black, drop scrub.

Signed-off-by: Andrea Bolognani <abologna@xxxxxxxxxx>
---
 ci/buildenv/almalinux-8.sh                            | 5 ++++-
 ci/buildenv/alpine-317.sh                             | 1 +
 ci/buildenv/alpine-edge.sh                            | 1 +
 ci/buildenv/centos-stream-8.sh                        | 5 ++++-
 ci/buildenv/centos-stream-9.sh                        | 5 ++++-
 ci/buildenv/debian-11-cross-aarch64.sh                | 2 +-
 ci/buildenv/debian-11-cross-armv6l.sh                 | 2 +-
 ci/buildenv/debian-11-cross-armv7l.sh                 | 2 +-
 ci/buildenv/debian-11-cross-i686.sh                   | 2 +-
 ci/buildenv/debian-11-cross-mips64el.sh               | 2 +-
 ci/buildenv/debian-11-cross-mipsel.sh                 | 2 +-
 ci/buildenv/debian-11-cross-ppc64le.sh                | 2 +-
 ci/buildenv/debian-11-cross-s390x.sh                  | 2 +-
 ci/buildenv/debian-11.sh                              | 2 +-
 ci/buildenv/debian-12-cross-aarch64.sh                | 2 +-
 ci/buildenv/debian-12-cross-armv6l.sh                 | 2 +-
 ci/buildenv/debian-12-cross-armv7l.sh                 | 2 +-
 ci/buildenv/debian-12-cross-i686.sh                   | 2 +-
 ci/buildenv/debian-12-cross-mips64el.sh               | 2 +-
 ci/buildenv/debian-12-cross-mipsel.sh                 | 2 +-
 ci/buildenv/debian-12-cross-ppc64le.sh                | 2 +-
 ci/buildenv/debian-12-cross-s390x.sh                  | 2 +-
 ci/buildenv/debian-12.sh                              | 2 +-
 ci/buildenv/debian-sid-cross-aarch64.sh               | 2 +-
 ci/buildenv/debian-sid-cross-armv6l.sh                | 2 +-
 ci/buildenv/debian-sid-cross-armv7l.sh                | 2 +-
 ci/buildenv/debian-sid-cross-i686.sh                  | 2 +-
 ci/buildenv/debian-sid-cross-mips64el.sh              | 2 +-
 ci/buildenv/debian-sid-cross-ppc64le.sh               | 2 +-
 ci/buildenv/debian-sid-cross-s390x.sh                 | 2 +-
 ci/buildenv/debian-sid.sh                             | 2 +-
 ci/buildenv/fedora-37.sh                              | 2 +-
 ci/buildenv/fedora-38-cross-mingw32.sh                | 2 +-
 ci/buildenv/fedora-38-cross-mingw64.sh                | 2 +-
 ci/buildenv/fedora-38.sh                              | 2 +-
 ci/buildenv/fedora-rawhide-cross-mingw32.sh           | 2 +-
 ci/buildenv/fedora-rawhide-cross-mingw64.sh           | 2 +-
 ci/buildenv/fedora-rawhide.sh                         | 2 +-
 ci/buildenv/opensuse-leap-15.sh                       | 5 ++++-
 ci/buildenv/opensuse-tumbleweed.sh                    | 4 ++--
 ci/buildenv/ubuntu-2004.sh                            | 2 +-
 ci/buildenv/ubuntu-2204.sh                            | 2 +-
 ci/cirrus/freebsd-12.vars                             | 2 +-
 ci/cirrus/freebsd-13.vars                             | 2 +-
 ci/cirrus/macos-13.vars                               | 2 +-
 ci/cirrus/macos-14.vars                               | 2 +-
 ci/containers/almalinux-8.Dockerfile                  | 6 +++++-
 ci/containers/alpine-317.Dockerfile                   | 1 +
 ci/containers/alpine-edge.Dockerfile                  | 1 +
 ci/containers/centos-stream-8.Dockerfile              | 6 +++++-
 ci/containers/centos-stream-9.Dockerfile              | 6 +++++-
 ci/containers/debian-11-cross-aarch64.Dockerfile      | 2 +-
 ci/containers/debian-11-cross-armv6l.Dockerfile       | 2 +-
 ci/containers/debian-11-cross-armv7l.Dockerfile       | 2 +-
 ci/containers/debian-11-cross-i686.Dockerfile         | 2 +-
 ci/containers/debian-11-cross-mips64el.Dockerfile     | 2 +-
 ci/containers/debian-11-cross-mipsel.Dockerfile       | 2 +-
 ci/containers/debian-11-cross-ppc64le.Dockerfile      | 2 +-
 ci/containers/debian-11-cross-s390x.Dockerfile        | 2 +-
 ci/containers/debian-11.Dockerfile                    | 2 +-
 ci/containers/debian-12-cross-aarch64.Dockerfile      | 2 +-
 ci/containers/debian-12-cross-armv6l.Dockerfile       | 2 +-
 ci/containers/debian-12-cross-armv7l.Dockerfile       | 2 +-
 ci/containers/debian-12-cross-i686.Dockerfile         | 2 +-
 ci/containers/debian-12-cross-mips64el.Dockerfile     | 2 +-
 ci/containers/debian-12-cross-mipsel.Dockerfile       | 2 +-
 ci/containers/debian-12-cross-ppc64le.Dockerfile      | 2 +-
 ci/containers/debian-12-cross-s390x.Dockerfile        | 2 +-
 ci/containers/debian-12.Dockerfile                    | 2 +-
 ci/containers/debian-sid-cross-aarch64.Dockerfile     | 2 +-
 ci/containers/debian-sid-cross-armv6l.Dockerfile      | 2 +-
 ci/containers/debian-sid-cross-armv7l.Dockerfile      | 2 +-
 ci/containers/debian-sid-cross-i686.Dockerfile        | 2 +-
 ci/containers/debian-sid-cross-mips64el.Dockerfile    | 2 +-
 ci/containers/debian-sid-cross-ppc64le.Dockerfile     | 2 +-
 ci/containers/debian-sid-cross-s390x.Dockerfile       | 2 +-
 ci/containers/debian-sid.Dockerfile                   | 2 +-
 ci/containers/fedora-37.Dockerfile                    | 2 +-
 ci/containers/fedora-38-cross-mingw32.Dockerfile      | 2 +-
 ci/containers/fedora-38-cross-mingw64.Dockerfile      | 2 +-
 ci/containers/fedora-38.Dockerfile                    | 2 +-
 ci/containers/fedora-rawhide-cross-mingw32.Dockerfile | 2 +-
 ci/containers/fedora-rawhide-cross-mingw64.Dockerfile | 2 +-
 ci/containers/fedora-rawhide.Dockerfile               | 2 +-
 ci/containers/opensuse-leap-15.Dockerfile             | 6 +++++-
 ci/containers/opensuse-tumbleweed.Dockerfile          | 4 ++--
 ci/containers/ubuntu-2004.Dockerfile                  | 2 +-
 ci/containers/ubuntu-2204.Dockerfile                  | 2 +-
 88 files changed, 118 insertions(+), 86 deletions(-)

diff --git a/ci/buildenv/almalinux-8.sh b/ci/buildenv/almalinux-8.sh
index 0f0e66ef9a..322f8fc062 100644
--- a/ci/buildenv/almalinux-8.sh
+++ b/ci/buildenv/almalinux-8.sh
@@ -73,12 +73,14 @@ function install_buildenv() {
         python3 \
         python3-docutils \
         python3-flake8 \
+        python3-pip \
         python3-pytest \
+        python3-setuptools \
+        python3-wheel \
         qemu-img \
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
@@ -90,6 +92,7 @@ function install_buildenv() {
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
+    /usr/bin/pip3 install black
 }
 
 export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
diff --git a/ci/buildenv/alpine-317.sh b/ci/buildenv/alpine-317.sh
index d11c247051..18aaa936eb 100644
--- a/ci/buildenv/alpine-317.sh
+++ b/ci/buildenv/alpine-317.sh
@@ -13,6 +13,7 @@ function install_buildenv() {
         audit-dev \
         augeas \
         bash-completion \
+        black \
         ca-certificates \
         ccache \
         ceph-dev \
diff --git a/ci/buildenv/alpine-edge.sh b/ci/buildenv/alpine-edge.sh
index d11c247051..18aaa936eb 100644
--- a/ci/buildenv/alpine-edge.sh
+++ b/ci/buildenv/alpine-edge.sh
@@ -13,6 +13,7 @@ function install_buildenv() {
         audit-dev \
         augeas \
         bash-completion \
+        black \
         ca-certificates \
         ccache \
         ceph-dev \
diff --git a/ci/buildenv/centos-stream-8.sh b/ci/buildenv/centos-stream-8.sh
index 58adc95633..44e39a9112 100644
--- a/ci/buildenv/centos-stream-8.sh
+++ b/ci/buildenv/centos-stream-8.sh
@@ -74,12 +74,14 @@ function install_buildenv() {
         python3 \
         python3-docutils \
         python3-flake8 \
+        python3-pip \
         python3-pytest \
+        python3-setuptools \
+        python3-wheel \
         qemu-img \
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
@@ -91,6 +93,7 @@ function install_buildenv() {
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
+    /usr/bin/pip3 install black
 }
 
 export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
diff --git a/ci/buildenv/centos-stream-9.sh b/ci/buildenv/centos-stream-9.sh
index 28960fff46..794c731016 100644
--- a/ci/buildenv/centos-stream-9.sh
+++ b/ci/buildenv/centos-stream-9.sh
@@ -70,12 +70,14 @@ function install_buildenv() {
         python3 \
         python3-docutils \
         python3-flake8 \
+        python3-pip \
         python3-pytest \
+        python3-setuptools \
+        python3-wheel \
         qemu-img \
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
@@ -87,6 +89,7 @@ function install_buildenv() {
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
+    /usr/bin/pip3 install black
 }
 
 export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
diff --git a/ci/buildenv/debian-11-cross-aarch64.sh b/ci/buildenv/debian-11-cross-aarch64.sh
index ba0062577f..0b8f7046c7 100644
--- a/ci/buildenv/debian-11-cross-aarch64.sh
+++ b/ci/buildenv/debian-11-cross-aarch64.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -42,7 +43,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-11-cross-armv6l.sh b/ci/buildenv/debian-11-cross-armv6l.sh
index 272cb71c8a..9a36c4be5b 100644
--- a/ci/buildenv/debian-11-cross-armv6l.sh
+++ b/ci/buildenv/debian-11-cross-armv6l.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -42,7 +43,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-11-cross-armv7l.sh b/ci/buildenv/debian-11-cross-armv7l.sh
index 4cbb2bddf1..5041e8895c 100644
--- a/ci/buildenv/debian-11-cross-armv7l.sh
+++ b/ci/buildenv/debian-11-cross-armv7l.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -42,7 +43,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-11-cross-i686.sh b/ci/buildenv/debian-11-cross-i686.sh
index 9cb76c85c8..ffdd9d0db9 100644
--- a/ci/buildenv/debian-11-cross-i686.sh
+++ b/ci/buildenv/debian-11-cross-i686.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -42,7 +43,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-11-cross-mips64el.sh b/ci/buildenv/debian-11-cross-mips64el.sh
index 3960d6f949..a1727dcca3 100644
--- a/ci/buildenv/debian-11-cross-mips64el.sh
+++ b/ci/buildenv/debian-11-cross-mips64el.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -42,7 +43,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-11-cross-mipsel.sh b/ci/buildenv/debian-11-cross-mipsel.sh
index 787da13997..4edad75f64 100644
--- a/ci/buildenv/debian-11-cross-mipsel.sh
+++ b/ci/buildenv/debian-11-cross-mipsel.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -42,7 +43,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-11-cross-ppc64le.sh b/ci/buildenv/debian-11-cross-ppc64le.sh
index 60fd2e116c..be74683905 100644
--- a/ci/buildenv/debian-11-cross-ppc64le.sh
+++ b/ci/buildenv/debian-11-cross-ppc64le.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -42,7 +43,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-11-cross-s390x.sh b/ci/buildenv/debian-11-cross-s390x.sh
index b703571016..a4641bcae8 100644
--- a/ci/buildenv/debian-11-cross-s390x.sh
+++ b/ci/buildenv/debian-11-cross-s390x.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -42,7 +43,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-11.sh b/ci/buildenv/debian-11.sh
index 353bc76567..d445616684 100644
--- a/ci/buildenv/debian-11.sh
+++ b/ci/buildenv/debian-11.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             clang \
@@ -77,7 +78,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             systemtap-sdt-dev \
             wireshark-dev \
diff --git a/ci/buildenv/debian-12-cross-aarch64.sh b/ci/buildenv/debian-12-cross-aarch64.sh
index 16857a60c8..ecedf390f6 100644
--- a/ci/buildenv/debian-12-cross-aarch64.sh
+++ b/ci/buildenv/debian-12-cross-aarch64.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-12-cross-armv6l.sh b/ci/buildenv/debian-12-cross-armv6l.sh
index 8d758a195b..f65856143d 100644
--- a/ci/buildenv/debian-12-cross-armv6l.sh
+++ b/ci/buildenv/debian-12-cross-armv6l.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-12-cross-armv7l.sh b/ci/buildenv/debian-12-cross-armv7l.sh
index 08e1b08d4d..e74f363fcb 100644
--- a/ci/buildenv/debian-12-cross-armv7l.sh
+++ b/ci/buildenv/debian-12-cross-armv7l.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-12-cross-i686.sh b/ci/buildenv/debian-12-cross-i686.sh
index 37142cb0c3..c0e194c552 100644
--- a/ci/buildenv/debian-12-cross-i686.sh
+++ b/ci/buildenv/debian-12-cross-i686.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-12-cross-mips64el.sh b/ci/buildenv/debian-12-cross-mips64el.sh
index aab7c72a4f..f374c33379 100644
--- a/ci/buildenv/debian-12-cross-mips64el.sh
+++ b/ci/buildenv/debian-12-cross-mips64el.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-12-cross-mipsel.sh b/ci/buildenv/debian-12-cross-mipsel.sh
index c188d46f41..23d4052c42 100644
--- a/ci/buildenv/debian-12-cross-mipsel.sh
+++ b/ci/buildenv/debian-12-cross-mipsel.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-12-cross-ppc64le.sh b/ci/buildenv/debian-12-cross-ppc64le.sh
index 75b82147f9..5fd07da2c8 100644
--- a/ci/buildenv/debian-12-cross-ppc64le.sh
+++ b/ci/buildenv/debian-12-cross-ppc64le.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-12-cross-s390x.sh b/ci/buildenv/debian-12-cross-s390x.sh
index e537333efb..a9f2063642 100644
--- a/ci/buildenv/debian-12-cross-s390x.sh
+++ b/ci/buildenv/debian-12-cross-s390x.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-12.sh b/ci/buildenv/debian-12.sh
index 5b259a243a..01521b9074 100644
--- a/ci/buildenv/debian-12.sh
+++ b/ci/buildenv/debian-12.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             clang \
@@ -77,7 +78,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             systemtap-sdt-dev \
             wireshark-dev \
diff --git a/ci/buildenv/debian-sid-cross-aarch64.sh b/ci/buildenv/debian-sid-cross-aarch64.sh
index 16857a60c8..ecedf390f6 100644
--- a/ci/buildenv/debian-sid-cross-aarch64.sh
+++ b/ci/buildenv/debian-sid-cross-aarch64.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-sid-cross-armv6l.sh b/ci/buildenv/debian-sid-cross-armv6l.sh
index 69a5612d01..81ac6defb2 100644
--- a/ci/buildenv/debian-sid-cross-armv6l.sh
+++ b/ci/buildenv/debian-sid-cross-armv6l.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-sid-cross-armv7l.sh b/ci/buildenv/debian-sid-cross-armv7l.sh
index 2f59aa4203..30ff3e5381 100644
--- a/ci/buildenv/debian-sid-cross-armv7l.sh
+++ b/ci/buildenv/debian-sid-cross-armv7l.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-sid-cross-i686.sh b/ci/buildenv/debian-sid-cross-i686.sh
index f096fa88c6..04cccfd05f 100644
--- a/ci/buildenv/debian-sid-cross-i686.sh
+++ b/ci/buildenv/debian-sid-cross-i686.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-sid-cross-mips64el.sh b/ci/buildenv/debian-sid-cross-mips64el.sh
index aab7c72a4f..f374c33379 100644
--- a/ci/buildenv/debian-sid-cross-mips64el.sh
+++ b/ci/buildenv/debian-sid-cross-mips64el.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-sid-cross-ppc64le.sh b/ci/buildenv/debian-sid-cross-ppc64le.sh
index 75b82147f9..5fd07da2c8 100644
--- a/ci/buildenv/debian-sid-cross-ppc64le.sh
+++ b/ci/buildenv/debian-sid-cross-ppc64le.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-sid-cross-s390x.sh b/ci/buildenv/debian-sid-cross-s390x.sh
index e537333efb..a9f2063642 100644
--- a/ci/buildenv/debian-sid-cross-s390x.sh
+++ b/ci/buildenv/debian-sid-cross-s390x.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             codespell \
@@ -43,7 +44,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             xsltproc
     sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen
diff --git a/ci/buildenv/debian-sid.sh b/ci/buildenv/debian-sid.sh
index 5b259a243a..01521b9074 100644
--- a/ci/buildenv/debian-sid.sh
+++ b/ci/buildenv/debian-sid.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             clang \
@@ -77,7 +78,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             systemtap-sdt-dev \
             wireshark-dev \
diff --git a/ci/buildenv/fedora-37.sh b/ci/buildenv/fedora-37.sh
index 10c5e1651f..2e7ec0d2e9 100644
--- a/ci/buildenv/fedora-37.sh
+++ b/ci/buildenv/fedora-37.sh
@@ -68,6 +68,7 @@ function install_buildenv() {
         pkgconfig \
         polkit \
         python3 \
+        python3-black \
         python3-docutils \
         python3-flake8 \
         python3-pytest \
@@ -75,7 +76,6 @@ function install_buildenv() {
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
diff --git a/ci/buildenv/fedora-38-cross-mingw32.sh b/ci/buildenv/fedora-38-cross-mingw32.sh
index 3b1479d945..325e953dec 100644
--- a/ci/buildenv/fedora-38-cross-mingw32.sh
+++ b/ci/buildenv/fedora-38-cross-mingw32.sh
@@ -39,12 +39,12 @@ function install_buildenv() {
         perl-base \
         polkit \
         python3 \
+        python3-black \
         python3-docutils \
         python3-flake8 \
         python3-pytest \
         qemu-img \
         rpm-build \
-        scrub \
         sed \
         systemd-rpm-macros
     dnf install -y \
diff --git a/ci/buildenv/fedora-38-cross-mingw64.sh b/ci/buildenv/fedora-38-cross-mingw64.sh
index 5ab11f7af1..4e79a753d2 100644
--- a/ci/buildenv/fedora-38-cross-mingw64.sh
+++ b/ci/buildenv/fedora-38-cross-mingw64.sh
@@ -39,12 +39,12 @@ function install_buildenv() {
         perl-base \
         polkit \
         python3 \
+        python3-black \
         python3-docutils \
         python3-flake8 \
         python3-pytest \
         qemu-img \
         rpm-build \
-        scrub \
         sed \
         systemd-rpm-macros
     dnf install -y \
diff --git a/ci/buildenv/fedora-38.sh b/ci/buildenv/fedora-38.sh
index 10c5e1651f..2e7ec0d2e9 100644
--- a/ci/buildenv/fedora-38.sh
+++ b/ci/buildenv/fedora-38.sh
@@ -68,6 +68,7 @@ function install_buildenv() {
         pkgconfig \
         polkit \
         python3 \
+        python3-black \
         python3-docutils \
         python3-flake8 \
         python3-pytest \
@@ -75,7 +76,6 @@ function install_buildenv() {
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
diff --git a/ci/buildenv/fedora-rawhide-cross-mingw32.sh b/ci/buildenv/fedora-rawhide-cross-mingw32.sh
index 2dba1c835b..01c89b5019 100644
--- a/ci/buildenv/fedora-rawhide-cross-mingw32.sh
+++ b/ci/buildenv/fedora-rawhide-cross-mingw32.sh
@@ -40,12 +40,12 @@ function install_buildenv() {
         perl-base \
         polkit \
         python3 \
+        python3-black \
         python3-docutils \
         python3-flake8 \
         python3-pytest \
         qemu-img \
         rpm-build \
-        scrub \
         sed \
         systemd-rpm-macros
     dnf install -y \
diff --git a/ci/buildenv/fedora-rawhide-cross-mingw64.sh b/ci/buildenv/fedora-rawhide-cross-mingw64.sh
index 9ccd1c9914..918179454e 100644
--- a/ci/buildenv/fedora-rawhide-cross-mingw64.sh
+++ b/ci/buildenv/fedora-rawhide-cross-mingw64.sh
@@ -40,12 +40,12 @@ function install_buildenv() {
         perl-base \
         polkit \
         python3 \
+        python3-black \
         python3-docutils \
         python3-flake8 \
         python3-pytest \
         qemu-img \
         rpm-build \
-        scrub \
         sed \
         systemd-rpm-macros
     dnf install -y \
diff --git a/ci/buildenv/fedora-rawhide.sh b/ci/buildenv/fedora-rawhide.sh
index 198fb85659..8af23ea834 100644
--- a/ci/buildenv/fedora-rawhide.sh
+++ b/ci/buildenv/fedora-rawhide.sh
@@ -69,6 +69,7 @@ function install_buildenv() {
         pkgconfig \
         polkit \
         python3 \
+        python3-black \
         python3-docutils \
         python3-flake8 \
         python3-pytest \
@@ -76,7 +77,6 @@ function install_buildenv() {
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
diff --git a/ci/buildenv/opensuse-leap-15.sh b/ci/buildenv/opensuse-leap-15.sh
index 50fa733612..6bdd248cf0 100644
--- a/ci/buildenv/opensuse-leap-15.sh
+++ b/ci/buildenv/opensuse-leap-15.sh
@@ -72,12 +72,14 @@ function install_buildenv() {
            python3-base \
            python3-docutils \
            python3-flake8 \
+           python3-pip \
            python3-pytest \
+           python3-setuptools \
+           python3-wheel \
            qemu-tools \
            readline-devel \
            rpm-build \
            sanlock-devel \
-           scrub \
            sed \
            systemd-rpm-macros \
            systemtap-sdt-devel \
@@ -88,6 +90,7 @@ function install_buildenv() {
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
+    /usr/bin/pip3 install black
 }
 
 export CCACHE_WRAPPERSDIR="/usr/libexec/ccache-wrappers"
diff --git a/ci/buildenv/opensuse-tumbleweed.sh b/ci/buildenv/opensuse-tumbleweed.sh
index 56854136d3..ca0face186 100644
--- a/ci/buildenv/opensuse-tumbleweed.sh
+++ b/ci/buildenv/opensuse-tumbleweed.sh
@@ -70,14 +70,14 @@ function install_buildenv() {
            pkgconfig \
            polkit \
            python3-base \
+           python3-black \
            python3-docutils \
+           python3-flake8 \
            python3-pytest \
-           python39-flake8 \
            qemu-tools \
            readline-devel \
            rpm-build \
            sanlock-devel \
-           scrub \
            sed \
            systemd-rpm-macros \
            systemtap-sdt-devel \
diff --git a/ci/buildenv/ubuntu-2004.sh b/ci/buildenv/ubuntu-2004.sh
index 3572918758..893f25f094 100644
--- a/ci/buildenv/ubuntu-2004.sh
+++ b/ci/buildenv/ubuntu-2004.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             clang \
@@ -80,7 +81,6 @@ function install_buildenv() {
             python3-setuptools \
             python3-wheel \
             qemu-utils \
-            scrub \
             sed \
             systemtap-sdt-dev \
             wireshark-dev \
diff --git a/ci/buildenv/ubuntu-2204.sh b/ci/buildenv/ubuntu-2204.sh
index 153dd94209..472b6bcf52 100644
--- a/ci/buildenv/ubuntu-2204.sh
+++ b/ci/buildenv/ubuntu-2204.sh
@@ -12,6 +12,7 @@ function install_buildenv() {
             augeas-lenses \
             augeas-tools \
             bash-completion \
+            black \
             ca-certificates \
             ccache \
             clang \
@@ -78,7 +79,6 @@ function install_buildenv() {
             python3-docutils \
             python3-pytest \
             qemu-utils \
-            scrub \
             sed \
             systemtap-sdt-dev \
             wireshark-dev \
diff --git a/ci/cirrus/freebsd-12.vars b/ci/cirrus/freebsd-12.vars
index ec8b2e0faf..278b5834f6 100644
--- a/ci/cirrus/freebsd-12.vars
+++ b/ci/cirrus/freebsd-12.vars
@@ -11,6 +11,6 @@ MAKE='/usr/local/bin/gmake'
 NINJA='/usr/local/bin/ninja'
 PACKAGING_COMMAND='pkg'
 PIP3='/usr/local/bin/pip-3.8'
-PKGS='augeas bash-completion ca_root_nss ccache codespell cppi curl cyrus-sasl diffutils diskscrub fusefs-libs gettext git glib gmake gnugrep gnutls gsed libpcap libpciaccess libssh libssh2 libxml2 libxslt meson ninja perl5 pkgconf polkit py39-docutils py39-flake8 py39-pytest python3 qemu readline yajl'
+PKGS='augeas bash-completion ca_root_nss ccache codespell cppi curl cyrus-sasl diffutils fusefs-libs gettext git glib gmake gnugrep gnutls gsed libpcap libpciaccess libssh libssh2 libxml2 libxslt meson ninja perl5 pkgconf polkit py39-black py39-docutils py39-flake8 py39-pytest python3 qemu readline yajl'
 PYPI_PKGS=''
 PYTHON='/usr/local/bin/python3'
diff --git a/ci/cirrus/freebsd-13.vars b/ci/cirrus/freebsd-13.vars
index ec8b2e0faf..278b5834f6 100644
--- a/ci/cirrus/freebsd-13.vars
+++ b/ci/cirrus/freebsd-13.vars
@@ -11,6 +11,6 @@ MAKE='/usr/local/bin/gmake'
 NINJA='/usr/local/bin/ninja'
 PACKAGING_COMMAND='pkg'
 PIP3='/usr/local/bin/pip-3.8'
-PKGS='augeas bash-completion ca_root_nss ccache codespell cppi curl cyrus-sasl diffutils diskscrub fusefs-libs gettext git glib gmake gnugrep gnutls gsed libpcap libpciaccess libssh libssh2 libxml2 libxslt meson ninja perl5 pkgconf polkit py39-docutils py39-flake8 py39-pytest python3 qemu readline yajl'
+PKGS='augeas bash-completion ca_root_nss ccache codespell cppi curl cyrus-sasl diffutils fusefs-libs gettext git glib gmake gnugrep gnutls gsed libpcap libpciaccess libssh libssh2 libxml2 libxslt meson ninja perl5 pkgconf polkit py39-black py39-docutils py39-flake8 py39-pytest python3 qemu readline yajl'
 PYPI_PKGS=''
 PYTHON='/usr/local/bin/python3'
diff --git a/ci/cirrus/macos-13.vars b/ci/cirrus/macos-13.vars
index b059205480..ca4e55887c 100644
--- a/ci/cirrus/macos-13.vars
+++ b/ci/cirrus/macos-13.vars
@@ -11,6 +11,6 @@ MAKE='/opt/homebrew/bin/gmake'
 NINJA='/opt/homebrew/bin/ninja'
 PACKAGING_COMMAND='brew'
 PIP3='/opt/homebrew/bin/pip3'
-PKGS='augeas bash-completion ccache codespell cppi curl diffutils docutils flake8 gettext git glib gnu-sed gnutls grep libiscsi libpcap libssh libssh2 libxml2 libxslt make meson ninja perl pkg-config python3 qemu readline scrub yajl'
+PKGS='augeas bash-completion black ccache codespell cppi curl diffutils docutils flake8 gettext git glib gnu-sed gnutls grep libiscsi libpcap libssh libssh2 libxml2 libxslt make meson ninja perl pkg-config python3 qemu readline yajl'
 PYPI_PKGS='pytest'
 PYTHON='/opt/homebrew/bin/python3'
diff --git a/ci/cirrus/macos-14.vars b/ci/cirrus/macos-14.vars
index b059205480..ca4e55887c 100644
--- a/ci/cirrus/macos-14.vars
+++ b/ci/cirrus/macos-14.vars
@@ -11,6 +11,6 @@ MAKE='/opt/homebrew/bin/gmake'
 NINJA='/opt/homebrew/bin/ninja'
 PACKAGING_COMMAND='brew'
 PIP3='/opt/homebrew/bin/pip3'
-PKGS='augeas bash-completion ccache codespell cppi curl diffutils docutils flake8 gettext git glib gnu-sed gnutls grep libiscsi libpcap libssh libssh2 libxml2 libxslt make meson ninja perl pkg-config python3 qemu readline scrub yajl'
+PKGS='augeas bash-completion black ccache codespell cppi curl diffutils docutils flake8 gettext git glib gnu-sed gnutls grep libiscsi libpcap libssh libssh2 libxml2 libxslt make meson ninja perl pkg-config python3 qemu readline yajl'
 PYPI_PKGS='pytest'
 PYTHON='/opt/homebrew/bin/python3'
diff --git a/ci/containers/almalinux-8.Dockerfile b/ci/containers/almalinux-8.Dockerfile
index 453fa28c7b..83d0315207 100644
--- a/ci/containers/almalinux-8.Dockerfile
+++ b/ci/containers/almalinux-8.Dockerfile
@@ -74,12 +74,14 @@ RUN dnf update -y && \
         python3 \
         python3-docutils \
         python3-flake8 \
+        python3-pip \
         python3-pytest \
+        python3-setuptools \
+        python3-wheel \
         qemu-img \
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
@@ -94,6 +96,8 @@ RUN dnf update -y && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 
+RUN /usr/bin/pip3 install black
+
 ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 ENV LANG "en_US.UTF-8"
 ENV MAKE "/usr/bin/make"
diff --git a/ci/containers/alpine-317.Dockerfile b/ci/containers/alpine-317.Dockerfile
index 52a2caf5a0..461b1a7482 100644
--- a/ci/containers/alpine-317.Dockerfile
+++ b/ci/containers/alpine-317.Dockerfile
@@ -14,6 +14,7 @@ RUN apk update && \
         audit-dev \
         augeas \
         bash-completion \
+        black \
         ca-certificates \
         ccache \
         ceph-dev \
diff --git a/ci/containers/alpine-edge.Dockerfile b/ci/containers/alpine-edge.Dockerfile
index aa78d00372..50d53399b2 100644
--- a/ci/containers/alpine-edge.Dockerfile
+++ b/ci/containers/alpine-edge.Dockerfile
@@ -14,6 +14,7 @@ RUN apk update && \
         audit-dev \
         augeas \
         bash-completion \
+        black \
         ca-certificates \
         ccache \
         ceph-dev \
diff --git a/ci/containers/centos-stream-8.Dockerfile b/ci/containers/centos-stream-8.Dockerfile
index 1ca3bde68c..b67eb917de 100644
--- a/ci/containers/centos-stream-8.Dockerfile
+++ b/ci/containers/centos-stream-8.Dockerfile
@@ -75,12 +75,14 @@ RUN dnf distro-sync -y && \
         python3 \
         python3-docutils \
         python3-flake8 \
+        python3-pip \
         python3-pytest \
+        python3-setuptools \
+        python3-wheel \
         qemu-img \
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
@@ -95,6 +97,8 @@ RUN dnf distro-sync -y && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 
+RUN /usr/bin/pip3 install black
+
 ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 ENV LANG "en_US.UTF-8"
 ENV MAKE "/usr/bin/make"
diff --git a/ci/containers/centos-stream-9.Dockerfile b/ci/containers/centos-stream-9.Dockerfile
index 6bc61fe816..5a85ccfeed 100644
--- a/ci/containers/centos-stream-9.Dockerfile
+++ b/ci/containers/centos-stream-9.Dockerfile
@@ -71,12 +71,14 @@ RUN dnf distro-sync -y && \
         python3 \
         python3-docutils \
         python3-flake8 \
+        python3-pip \
         python3-pytest \
+        python3-setuptools \
+        python3-wheel \
         qemu-img \
         readline-devel \
         rpm-build \
         sanlock-devel \
-        scrub \
         sed \
         systemd-devel \
         systemd-rpm-macros \
@@ -91,6 +93,8 @@ RUN dnf distro-sync -y && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 
+RUN /usr/bin/pip3 install black
+
 ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 ENV LANG "en_US.UTF-8"
 ENV MAKE "/usr/bin/make"
diff --git a/ci/containers/debian-11-cross-aarch64.Dockerfile b/ci/containers/debian-11-cross-aarch64.Dockerfile
index 4652009d5d..61964b02b2 100644
--- a/ci/containers/debian-11-cross-aarch64.Dockerfile
+++ b/ci/containers/debian-11-cross-aarch64.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -44,7 +45,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-11-cross-armv6l.Dockerfile b/ci/containers/debian-11-cross-armv6l.Dockerfile
index 406c6eba49..b8f56c9c1d 100644
--- a/ci/containers/debian-11-cross-armv6l.Dockerfile
+++ b/ci/containers/debian-11-cross-armv6l.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -44,7 +45,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-11-cross-armv7l.Dockerfile b/ci/containers/debian-11-cross-armv7l.Dockerfile
index 4d53743de0..f7d387c482 100644
--- a/ci/containers/debian-11-cross-armv7l.Dockerfile
+++ b/ci/containers/debian-11-cross-armv7l.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -44,7 +45,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-11-cross-i686.Dockerfile b/ci/containers/debian-11-cross-i686.Dockerfile
index 52130cd52a..4d28a3dfa9 100644
--- a/ci/containers/debian-11-cross-i686.Dockerfile
+++ b/ci/containers/debian-11-cross-i686.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -44,7 +45,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-11-cross-mips64el.Dockerfile b/ci/containers/debian-11-cross-mips64el.Dockerfile
index 8becb6eca9..9603fccf51 100644
--- a/ci/containers/debian-11-cross-mips64el.Dockerfile
+++ b/ci/containers/debian-11-cross-mips64el.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -44,7 +45,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-11-cross-mipsel.Dockerfile b/ci/containers/debian-11-cross-mipsel.Dockerfile
index c41398f6e5..eee3c9550f 100644
--- a/ci/containers/debian-11-cross-mipsel.Dockerfile
+++ b/ci/containers/debian-11-cross-mipsel.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -44,7 +45,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-11-cross-ppc64le.Dockerfile b/ci/containers/debian-11-cross-ppc64le.Dockerfile
index ae17452b86..fdde64a3c6 100644
--- a/ci/containers/debian-11-cross-ppc64le.Dockerfile
+++ b/ci/containers/debian-11-cross-ppc64le.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -44,7 +45,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-11-cross-s390x.Dockerfile b/ci/containers/debian-11-cross-s390x.Dockerfile
index b3242bfecc..d5f59510a7 100644
--- a/ci/containers/debian-11-cross-s390x.Dockerfile
+++ b/ci/containers/debian-11-cross-s390x.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -44,7 +45,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-11.Dockerfile b/ci/containers/debian-11.Dockerfile
index 313e9f8e32..a5b1e2dba4 100644
--- a/ci/containers/debian-11.Dockerfile
+++ b/ci/containers/debian-11.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       clang \
@@ -79,7 +80,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       systemtap-sdt-dev \
                       wireshark-dev \
diff --git a/ci/containers/debian-12-cross-aarch64.Dockerfile b/ci/containers/debian-12-cross-aarch64.Dockerfile
index b1df77f686..11b2c4fc30 100644
--- a/ci/containers/debian-12-cross-aarch64.Dockerfile
+++ b/ci/containers/debian-12-cross-aarch64.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-12-cross-armv6l.Dockerfile b/ci/containers/debian-12-cross-armv6l.Dockerfile
index 39326f8463..44f13d45c9 100644
--- a/ci/containers/debian-12-cross-armv6l.Dockerfile
+++ b/ci/containers/debian-12-cross-armv6l.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-12-cross-armv7l.Dockerfile b/ci/containers/debian-12-cross-armv7l.Dockerfile
index 2f5cba03df..2c91ec59d6 100644
--- a/ci/containers/debian-12-cross-armv7l.Dockerfile
+++ b/ci/containers/debian-12-cross-armv7l.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-12-cross-i686.Dockerfile b/ci/containers/debian-12-cross-i686.Dockerfile
index 1241904b3b..2b57133958 100644
--- a/ci/containers/debian-12-cross-i686.Dockerfile
+++ b/ci/containers/debian-12-cross-i686.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-12-cross-mips64el.Dockerfile b/ci/containers/debian-12-cross-mips64el.Dockerfile
index dd7eeb23db..e457d2949d 100644
--- a/ci/containers/debian-12-cross-mips64el.Dockerfile
+++ b/ci/containers/debian-12-cross-mips64el.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-12-cross-mipsel.Dockerfile b/ci/containers/debian-12-cross-mipsel.Dockerfile
index b320afbecd..3a3483395d 100644
--- a/ci/containers/debian-12-cross-mipsel.Dockerfile
+++ b/ci/containers/debian-12-cross-mipsel.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-12-cross-ppc64le.Dockerfile b/ci/containers/debian-12-cross-ppc64le.Dockerfile
index 79a785ecc5..aaac11b763 100644
--- a/ci/containers/debian-12-cross-ppc64le.Dockerfile
+++ b/ci/containers/debian-12-cross-ppc64le.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-12-cross-s390x.Dockerfile b/ci/containers/debian-12-cross-s390x.Dockerfile
index 37564b3bf8..59f00c769e 100644
--- a/ci/containers/debian-12-cross-s390x.Dockerfile
+++ b/ci/containers/debian-12-cross-s390x.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-12.Dockerfile b/ci/containers/debian-12.Dockerfile
index 8464b8ad93..04fbf91e79 100644
--- a/ci/containers/debian-12.Dockerfile
+++ b/ci/containers/debian-12.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       clang \
@@ -79,7 +80,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       systemtap-sdt-dev \
                       wireshark-dev \
diff --git a/ci/containers/debian-sid-cross-aarch64.Dockerfile b/ci/containers/debian-sid-cross-aarch64.Dockerfile
index c2670eba71..b28de509d3 100644
--- a/ci/containers/debian-sid-cross-aarch64.Dockerfile
+++ b/ci/containers/debian-sid-cross-aarch64.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-sid-cross-armv6l.Dockerfile b/ci/containers/debian-sid-cross-armv6l.Dockerfile
index eef19ab72c..d348281c8f 100644
--- a/ci/containers/debian-sid-cross-armv6l.Dockerfile
+++ b/ci/containers/debian-sid-cross-armv6l.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-sid-cross-armv7l.Dockerfile b/ci/containers/debian-sid-cross-armv7l.Dockerfile
index 97c765bc7a..a8e729bc1d 100644
--- a/ci/containers/debian-sid-cross-armv7l.Dockerfile
+++ b/ci/containers/debian-sid-cross-armv7l.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-sid-cross-i686.Dockerfile b/ci/containers/debian-sid-cross-i686.Dockerfile
index a6c90df0cc..e780a00da3 100644
--- a/ci/containers/debian-sid-cross-i686.Dockerfile
+++ b/ci/containers/debian-sid-cross-i686.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-sid-cross-mips64el.Dockerfile b/ci/containers/debian-sid-cross-mips64el.Dockerfile
index 5cc740fe89..eb6276d058 100644
--- a/ci/containers/debian-sid-cross-mips64el.Dockerfile
+++ b/ci/containers/debian-sid-cross-mips64el.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-sid-cross-ppc64le.Dockerfile b/ci/containers/debian-sid-cross-ppc64le.Dockerfile
index 996dd596d0..7e179ce0fe 100644
--- a/ci/containers/debian-sid-cross-ppc64le.Dockerfile
+++ b/ci/containers/debian-sid-cross-ppc64le.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-sid-cross-s390x.Dockerfile b/ci/containers/debian-sid-cross-s390x.Dockerfile
index 757c9c4c3a..9db5210871 100644
--- a/ci/containers/debian-sid-cross-s390x.Dockerfile
+++ b/ci/containers/debian-sid-cross-s390x.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       codespell \
@@ -45,7 +46,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       xsltproc && \
     eatmydata apt-get autoremove -y && \
diff --git a/ci/containers/debian-sid.Dockerfile b/ci/containers/debian-sid.Dockerfile
index 7145c0fcb5..3f9796249c 100644
--- a/ci/containers/debian-sid.Dockerfile
+++ b/ci/containers/debian-sid.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       clang \
@@ -79,7 +80,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       systemtap-sdt-dev \
                       wireshark-dev \
diff --git a/ci/containers/fedora-37.Dockerfile b/ci/containers/fedora-37.Dockerfile
index 86ebc0f027..5177f8db1a 100644
--- a/ci/containers/fedora-37.Dockerfile
+++ b/ci/containers/fedora-37.Dockerfile
@@ -79,6 +79,7 @@ exec "$@"\n' > /usr/bin/nosync && \
                pkgconfig \
                polkit \
                python3 \
+               python3-black \
                python3-docutils \
                python3-flake8 \
                python3-pytest \
@@ -86,7 +87,6 @@ exec "$@"\n' > /usr/bin/nosync && \
                readline-devel \
                rpm-build \
                sanlock-devel \
-               scrub \
                sed \
                systemd-devel \
                systemd-rpm-macros \
diff --git a/ci/containers/fedora-38-cross-mingw32.Dockerfile b/ci/containers/fedora-38-cross-mingw32.Dockerfile
index 27adb78658..3e003177d0 100644
--- a/ci/containers/fedora-38-cross-mingw32.Dockerfile
+++ b/ci/containers/fedora-38-cross-mingw32.Dockerfile
@@ -50,12 +50,12 @@ exec "$@"\n' > /usr/bin/nosync && \
                perl-base \
                polkit \
                python3 \
+               python3-black \
                python3-docutils \
                python3-flake8 \
                python3-pytest \
                qemu-img \
                rpm-build \
-               scrub \
                sed \
                systemd-rpm-macros && \
     nosync dnf autoremove -y && \
diff --git a/ci/containers/fedora-38-cross-mingw64.Dockerfile b/ci/containers/fedora-38-cross-mingw64.Dockerfile
index 8d5a69f686..21a222ac3f 100644
--- a/ci/containers/fedora-38-cross-mingw64.Dockerfile
+++ b/ci/containers/fedora-38-cross-mingw64.Dockerfile
@@ -50,12 +50,12 @@ exec "$@"\n' > /usr/bin/nosync && \
                perl-base \
                polkit \
                python3 \
+               python3-black \
                python3-docutils \
                python3-flake8 \
                python3-pytest \
                qemu-img \
                rpm-build \
-               scrub \
                sed \
                systemd-rpm-macros && \
     nosync dnf autoremove -y && \
diff --git a/ci/containers/fedora-38.Dockerfile b/ci/containers/fedora-38.Dockerfile
index a47e4a484e..903f396899 100644
--- a/ci/containers/fedora-38.Dockerfile
+++ b/ci/containers/fedora-38.Dockerfile
@@ -79,6 +79,7 @@ exec "$@"\n' > /usr/bin/nosync && \
                pkgconfig \
                polkit \
                python3 \
+               python3-black \
                python3-docutils \
                python3-flake8 \
                python3-pytest \
@@ -86,7 +87,6 @@ exec "$@"\n' > /usr/bin/nosync && \
                readline-devel \
                rpm-build \
                sanlock-devel \
-               scrub \
                sed \
                systemd-devel \
                systemd-rpm-macros \
diff --git a/ci/containers/fedora-rawhide-cross-mingw32.Dockerfile b/ci/containers/fedora-rawhide-cross-mingw32.Dockerfile
index 865fde2f8f..8fa2579503 100644
--- a/ci/containers/fedora-rawhide-cross-mingw32.Dockerfile
+++ b/ci/containers/fedora-rawhide-cross-mingw32.Dockerfile
@@ -51,12 +51,12 @@ exec "$@"\n' > /usr/bin/nosync && \
                perl-base \
                polkit \
                python3 \
+               python3-black \
                python3-docutils \
                python3-flake8 \
                python3-pytest \
                qemu-img \
                rpm-build \
-               scrub \
                sed \
                systemd-rpm-macros && \
     nosync dnf autoremove -y && \
diff --git a/ci/containers/fedora-rawhide-cross-mingw64.Dockerfile b/ci/containers/fedora-rawhide-cross-mingw64.Dockerfile
index 0e1a23dbac..35aa4087f9 100644
--- a/ci/containers/fedora-rawhide-cross-mingw64.Dockerfile
+++ b/ci/containers/fedora-rawhide-cross-mingw64.Dockerfile
@@ -51,12 +51,12 @@ exec "$@"\n' > /usr/bin/nosync && \
                perl-base \
                polkit \
                python3 \
+               python3-black \
                python3-docutils \
                python3-flake8 \
                python3-pytest \
                qemu-img \
                rpm-build \
-               scrub \
                sed \
                systemd-rpm-macros && \
     nosync dnf autoremove -y && \
diff --git a/ci/containers/fedora-rawhide.Dockerfile b/ci/containers/fedora-rawhide.Dockerfile
index 72e7d85643..8d76cb4ae6 100644
--- a/ci/containers/fedora-rawhide.Dockerfile
+++ b/ci/containers/fedora-rawhide.Dockerfile
@@ -80,6 +80,7 @@ exec "$@"\n' > /usr/bin/nosync && \
                pkgconfig \
                polkit \
                python3 \
+               python3-black \
                python3-docutils \
                python3-flake8 \
                python3-pytest \
@@ -87,7 +88,6 @@ exec "$@"\n' > /usr/bin/nosync && \
                readline-devel \
                rpm-build \
                sanlock-devel \
-               scrub \
                sed \
                systemd-devel \
                systemd-rpm-macros \
diff --git a/ci/containers/opensuse-leap-15.Dockerfile b/ci/containers/opensuse-leap-15.Dockerfile
index 748d764075..80074ba8a4 100644
--- a/ci/containers/opensuse-leap-15.Dockerfile
+++ b/ci/containers/opensuse-leap-15.Dockerfile
@@ -73,12 +73,14 @@ RUN zypper update -y && \
            python3-base \
            python3-docutils \
            python3-flake8 \
+           python3-pip \
            python3-pytest \
+           python3-setuptools \
+           python3-wheel \
            qemu-tools \
            readline-devel \
            rpm-build \
            sanlock-devel \
-           scrub \
            sed \
            systemd-rpm-macros \
            systemtap-sdt-devel \
@@ -91,6 +93,8 @@ RUN zypper update -y && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \
     ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc
 
+RUN /usr/bin/pip3 install black
+
 ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 ENV LANG "en_US.UTF-8"
 ENV MAKE "/usr/bin/make"
diff --git a/ci/containers/opensuse-tumbleweed.Dockerfile b/ci/containers/opensuse-tumbleweed.Dockerfile
index 691553e9be..644f173ed1 100644
--- a/ci/containers/opensuse-tumbleweed.Dockerfile
+++ b/ci/containers/opensuse-tumbleweed.Dockerfile
@@ -71,14 +71,14 @@ RUN zypper dist-upgrade -y && \
            pkgconfig \
            polkit \
            python3-base \
+           python3-black \
            python3-docutils \
+           python3-flake8 \
            python3-pytest \
-           python39-flake8 \
            qemu-tools \
            readline-devel \
            rpm-build \
            sanlock-devel \
-           scrub \
            sed \
            systemd-rpm-macros \
            systemtap-sdt-devel \
diff --git a/ci/containers/ubuntu-2004.Dockerfile b/ci/containers/ubuntu-2004.Dockerfile
index 25d787f50a..641f6f2555 100644
--- a/ci/containers/ubuntu-2004.Dockerfile
+++ b/ci/containers/ubuntu-2004.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       clang \
@@ -82,7 +83,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-setuptools \
                       python3-wheel \
                       qemu-utils \
-                      scrub \
                       sed \
                       systemtap-sdt-dev \
                       wireshark-dev \
diff --git a/ci/containers/ubuntu-2204.Dockerfile b/ci/containers/ubuntu-2204.Dockerfile
index 47b9c3d7f9..2b0ba90bde 100644
--- a/ci/containers/ubuntu-2204.Dockerfile
+++ b/ci/containers/ubuntu-2204.Dockerfile
@@ -14,6 +14,7 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       augeas-lenses \
                       augeas-tools \
                       bash-completion \
+                      black \
                       ca-certificates \
                       ccache \
                       clang \
@@ -80,7 +81,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
                       python3-docutils \
                       python3-pytest \
                       qemu-utils \
-                      scrub \
                       sed \
                       systemtap-sdt-dev \
                       wireshark-dev \
-- 
2.43.0
_______________________________________________
Devel mailing list -- devel@xxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxx




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]

  Powered by Linux