174 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
		
		
			
		
	
	
			174 lines
		
	
	
		
			5.5 KiB
		
	
	
	
		
			Docker
		
	
	
	
	
	
|   | # THIS FILE WAS AUTO-GENERATED
 | ||
|  | #
 | ||
|  | #  $ lcitool dockerfile --layers all fedora-40 qemu
 | ||
|  | #
 | ||
|  | # https://gitlab.com/libvirt/libvirt-ci
 | ||
|  | 
 | ||
|  | FROM registry.fedoraproject.org/fedora:40
 | ||
|  | 
 | ||
|  | RUN dnf install -y nosync && \
 | ||
|  |     printf '#!/bin/sh\n\
 | ||
|  | if test -d /usr/lib64\n\
 | ||
|  | then\n\
 | ||
|  |     export LD_PRELOAD=/usr/lib64/nosync/nosync.so\n\
 | ||
|  | else\n\
 | ||
|  |     export LD_PRELOAD=/usr/lib/nosync/nosync.so\n\
 | ||
|  | fi\n\
 | ||
|  | exec "$@"\n' > /usr/bin/nosync && \
 | ||
|  |     chmod +x /usr/bin/nosync && \
 | ||
|  |     nosync dnf update -y && \
 | ||
|  |     nosync dnf install -y \
 | ||
|  |                SDL2-devel \
 | ||
|  |                SDL2_image-devel \
 | ||
|  |                alsa-lib-devel \
 | ||
|  |                bash \
 | ||
|  |                bc \
 | ||
|  |                bison \
 | ||
|  |                brlapi-devel \
 | ||
|  |                bzip2 \
 | ||
|  |                bzip2-devel \
 | ||
|  |                ca-certificates \
 | ||
|  |                capstone-devel \
 | ||
|  |                ccache \
 | ||
|  |                clang \
 | ||
|  |                ctags \
 | ||
|  |                cyrus-sasl-devel \
 | ||
|  |                daxctl-devel \
 | ||
|  |                dbus-daemon \
 | ||
|  |                device-mapper-multipath-devel \
 | ||
|  |                diffutils \
 | ||
|  |                findutils \
 | ||
|  |                flex \
 | ||
|  |                fuse3-devel \
 | ||
|  |                gcc \
 | ||
|  |                gcovr \
 | ||
|  |                gettext \
 | ||
|  |                git \
 | ||
|  |                glib2-devel \
 | ||
|  |                glib2-static \
 | ||
|  |                glibc-langpack-en \
 | ||
|  |                glibc-static \
 | ||
|  |                glusterfs-api-devel \
 | ||
|  |                gnutls-devel \
 | ||
|  |                gtk-vnc2-devel \
 | ||
|  |                gtk3-devel \
 | ||
|  |                hostname \
 | ||
|  |                jemalloc-devel \
 | ||
|  |                json-c-devel \
 | ||
|  |                libaio-devel \
 | ||
|  |                libasan \
 | ||
|  |                libattr-devel \
 | ||
|  |                libbpf-devel \
 | ||
|  |                libcacard-devel \
 | ||
|  |                libcap-ng-devel \
 | ||
|  |                libcmocka-devel \
 | ||
|  |                libcurl-devel \
 | ||
|  |                libdrm-devel \
 | ||
|  |                libepoxy-devel \
 | ||
|  |                libfdt-devel \
 | ||
|  |                libffi-devel \
 | ||
|  |                libgcrypt-devel \
 | ||
|  |                libiscsi-devel \
 | ||
|  |                libjpeg-devel \
 | ||
|  |                libnfs-devel \
 | ||
|  |                libpmem-devel \
 | ||
|  |                libpng-devel \
 | ||
|  |                librbd-devel \
 | ||
|  |                libseccomp-devel \
 | ||
|  |                libselinux-devel \
 | ||
|  |                libslirp-devel \
 | ||
|  |                libssh-devel \
 | ||
|  |                libtasn1-devel \
 | ||
|  |                libubsan \
 | ||
|  |                liburing-devel \
 | ||
|  |                libusbx-devel \
 | ||
|  |                libxdp-devel \
 | ||
|  |                libzstd-devel \
 | ||
|  |                llvm \
 | ||
|  |                lttng-ust-devel \
 | ||
|  |                lzo-devel \
 | ||
|  |                make \
 | ||
|  |                mesa-libgbm-devel \
 | ||
|  |                meson \
 | ||
|  |                mtools \
 | ||
|  |                ncurses-devel \
 | ||
|  |                nettle-devel \
 | ||
|  |                ninja-build \
 | ||
|  |                nmap-ncat \
 | ||
|  |                numactl-devel \
 | ||
|  |                openssh-clients \
 | ||
|  |                pam-devel \
 | ||
|  |                pcre-static \
 | ||
|  |                pipewire-devel \
 | ||
|  |                pixman-devel \
 | ||
|  |                pkgconfig \
 | ||
|  |                pulseaudio-libs-devel \
 | ||
|  |                python3 \
 | ||
|  |                python3-PyYAML \
 | ||
|  |                python3-numpy \
 | ||
|  |                python3-opencv \
 | ||
|  |                python3-pillow \
 | ||
|  |                python3-pip \
 | ||
|  |                python3-sphinx \
 | ||
|  |                python3-sphinx_rtd_theme \
 | ||
|  |                python3-zombie-imp \
 | ||
|  |                rdma-core-devel \
 | ||
|  |                sed \
 | ||
|  |                snappy-devel \
 | ||
|  |                socat \
 | ||
|  |                sparse \
 | ||
|  |                spice-protocol \
 | ||
|  |                spice-server-devel \
 | ||
|  |                swtpm \
 | ||
|  |                systemd-devel \
 | ||
|  |                systemtap-sdt-devel \
 | ||
|  |                tar \
 | ||
|  |                tesseract \
 | ||
|  |                tesseract-langpack-eng \
 | ||
|  |                usbredir-devel \
 | ||
|  |                util-linux \
 | ||
|  |                virglrenderer-devel \
 | ||
|  |                vte291-devel \
 | ||
|  |                which \
 | ||
|  |                xen-devel \
 | ||
|  |                xorriso \
 | ||
|  |                zlib-devel \
 | ||
|  |                zlib-static \
 | ||
|  |                zstd && \
 | ||
|  |     nosync dnf autoremove -y && \
 | ||
|  |     nosync dnf clean all -y && \
 | ||
|  |     rm -f /usr/lib*/python3*/EXTERNALLY-MANAGED && \
 | ||
|  |     rpm -qa | sort > /packages.txt && \
 | ||
|  |     mkdir -p /usr/libexec/ccache-wrappers && \
 | ||
|  |     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
 | ||
|  | 
 | ||
|  | ENV CCACHE_WRAPPERSDIR "/usr/libexec/ccache-wrappers"
 | ||
|  | ENV LANG "en_US.UTF-8"
 | ||
|  | ENV MAKE "/usr/bin/make"
 | ||
|  | ENV NINJA "/usr/bin/ninja"
 | ||
|  | ENV PYTHON "/usr/bin/python3"
 | ||
|  | RUN dnf install -y wget
 | ||
|  | ENV RUSTUP_HOME=/usr/local/rustup CARGO_HOME=/usr/local/cargo
 | ||
|  | ENV RUSTC=/usr/local/rustup/toolchains/nightly-x86_64-unknown-linux-gnu/bin/rustc
 | ||
|  | RUN set -eux && \
 | ||
|  |   rustArch='x86_64-unknown-linux-gnu' && \
 | ||
|  |   rustupSha256='6aeece6993e902708983b209d04c0d1dbb14ebb405ddb87def578d41f920f56d' && \
 | ||
|  |   url="https://static.rust-lang.org/rustup/archive/1.27.1/${rustArch}/rustup-init" && \
 | ||
|  |   wget "$url" && \
 | ||
|  |   echo "${rustupSha256} *rustup-init" | sha256sum -c - && \
 | ||
|  |   chmod +x rustup-init && \
 | ||
|  |   ./rustup-init -y --no-modify-path --profile default --default-toolchain nightly --default-host ${rustArch} && \
 | ||
|  |   chmod -R a+w $RUSTUP_HOME $CARGO_HOME && \
 | ||
|  |   /usr/local/cargo/bin/rustup --version && \
 | ||
|  |   /usr/local/cargo/bin/rustup run nightly rustc --version && \
 | ||
|  |   test "$RUSTC" = "$(/usr/local/cargo/bin/rustup +nightly which rustc)"
 | ||
|  | ENV PATH=$CARGO_HOME/bin:$PATH
 | ||
|  | RUN /usr/local/cargo/bin/rustup run nightly cargo install bindgen-cli
 | ||
|  | # As a final step configure the user (if env is defined)
 | ||
|  | ARG USER
 | ||
|  | ARG UID
 | ||
|  | RUN if [ "${USER}" ]; then \
 | ||
|  |   id ${USER} 2>/dev/null || useradd -u ${UID} -U ${USER}; fi
 |