1# THIS FILE WAS AUTO-GENERATED 2# 3# $ lcitool dockerfile --layers all debian-12 qemu 4# 5# https://gitlab.com/libvirt/libvirt-ci 6 7FROM docker.io/library/debian:12-slim 8 9RUN export DEBIAN_FRONTEND=noninteractive && \ 10 apt-get update && \ 11 apt-get install -y eatmydata && \ 12 eatmydata apt-get dist-upgrade -y && \ 13 eatmydata apt-get install --no-install-recommends -y \ 14 bash \ 15 bc \ 16 bindgen \ 17 bison \ 18 bsdextrautils \ 19 bzip2 \ 20 ca-certificates \ 21 ccache \ 22 clang \ 23 dbus \ 24 debianutils \ 25 diffutils \ 26 exuberant-ctags \ 27 findutils \ 28 flex \ 29 gcc \ 30 gcovr \ 31 gettext \ 32 git \ 33 hostname \ 34 libaio-dev \ 35 libasan6 \ 36 libasound2-dev \ 37 libattr1-dev \ 38 libbpf-dev \ 39 libbrlapi-dev \ 40 libbz2-dev \ 41 libc6-dev \ 42 libcacard-dev \ 43 libcap-ng-dev \ 44 libcapstone-dev \ 45 libcbor-dev \ 46 libcmocka-dev \ 47 libcurl4-gnutls-dev \ 48 libdaxctl-dev \ 49 libdrm-dev \ 50 libepoxy-dev \ 51 libfdt-dev \ 52 libffi-dev \ 53 libfuse3-dev \ 54 libgbm-dev \ 55 libgcrypt20-dev \ 56 libglib2.0-dev \ 57 libglusterfs-dev \ 58 libgnutls28-dev \ 59 libgtk-3-dev \ 60 libgtk-vnc-2.0-dev \ 61 libibverbs-dev \ 62 libiscsi-dev \ 63 libjemalloc-dev \ 64 libjpeg62-turbo-dev \ 65 libjson-c-dev \ 66 liblttng-ust-dev \ 67 liblzo2-dev \ 68 libncursesw5-dev \ 69 libnfs-dev \ 70 libnuma-dev \ 71 libpam0g-dev \ 72 libpcre2-dev \ 73 libpipewire-0.3-dev \ 74 libpixman-1-dev \ 75 libpmem-dev \ 76 libpng-dev \ 77 libpulse-dev \ 78 librbd-dev \ 79 librdmacm-dev \ 80 libsasl2-dev \ 81 libsdl2-dev \ 82 libsdl2-image-dev \ 83 libseccomp-dev \ 84 libselinux1-dev \ 85 libslirp-dev \ 86 libsnappy-dev \ 87 libsndio-dev \ 88 libspice-protocol-dev \ 89 libspice-server-dev \ 90 libssh-gcrypt-dev \ 91 libsystemd-dev \ 92 libtasn1-6-dev \ 93 libubsan1 \ 94 libudev-dev \ 95 liburing-dev \ 96 libusb-1.0-0-dev \ 97 libusbredirhost-dev \ 98 libvdeplug-dev \ 99 libvirglrenderer-dev \ 100 libvte-2.91-dev \ 101 libxdp-dev \ 102 libxen-dev \ 103 libzstd-dev \ 104 llvm \ 105 locales \ 106 make \ 107 meson \ 108 mtools \ 109 multipath-tools \ 110 ncat \ 111 nettle-dev \ 112 ninja-build \ 113 openssh-client \ 114 pkgconf \ 115 python3 \ 116 python3-numpy \ 117 python3-opencv \ 118 python3-pillow \ 119 python3-pip \ 120 python3-sphinx \ 121 python3-sphinx-rtd-theme \ 122 python3-venv \ 123 python3-yaml \ 124 rpm2cpio \ 125 rustc \ 126 sed \ 127 socat \ 128 sparse \ 129 swtpm \ 130 systemtap-sdt-dev \ 131 tar \ 132 tesseract-ocr \ 133 tesseract-ocr-eng \ 134 xorriso \ 135 zlib1g-dev \ 136 zstd && \ 137 eatmydata apt-get autoremove -y && \ 138 eatmydata apt-get autoclean -y && \ 139 sed -Ei 's,^# (en_US\.UTF-8 .*)$,\1,' /etc/locale.gen && \ 140 dpkg-reconfigure locales && \ 141 rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \ 142 dpkg-query --showformat '${Package}_${Version}_${Architecture}\n' --show > /packages.txt && \ 143 mkdir -p /usr/libexec/ccache-wrappers && \ 144 ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/cc && \ 145 ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/clang && \ 146 ln -s /usr/bin/ccache /usr/libexec/ccache-wrappers/gcc 147 148ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers" 149ENV LANG "en_US.UTF-8" 150ENV MAKE "/usr/bin/make" 151ENV NINJA "/usr/bin/ninja" 152ENV PYTHON "/usr/bin/python3" 153# netmap/cscope/global 154RUN DEBIAN_FRONTEND=noninteractive eatmydata \ 155 apt install -y --no-install-recommends \ 156 cscope\ 157 global\ 158 linux-headers-generic 159RUN git clone https://github.com/luigirizzo/netmap.git /usr/src/netmap 160RUN cd /usr/src/netmap && git checkout v11.3 161RUN cd /usr/src/netmap/LINUX && \ 162 ./configure --no-drivers --no-apps \ 163 --kernel-dir=$(ls -d /usr/src/linux-headers-*-$(dpkg --print-architecture)) \ 164 && make install 165ENV QEMU_CONFIGURE_OPTS --enable-netmap 166# As a final step configure the user (if env is defined) 167ARG USER 168ARG UID 169RUN if [ "${USER}" ]; then \ 170 id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi 171