diff --git a/Dockerfile b/Dockerfile index 7ae3077..3ee1894 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,16 +1,15 @@ FROM quay.io/almalinuxorg/atomic-desktop-kde:10 -ARG KERNEL=kernel +ARG KERNEL=kernel-cachyos ENV KERNEL=${KERNEL} RUN dnf upgrade -y -RUN echo 'omit_drivers+=" nouveau "' | tee /etc/dracut.conf.d/blacklist-nouveau.conf - COPY bin/set_next_version.sh /tmp RUN /tmp/set_next_version.sh COPY repo/*.repo /etc/yum.repos.d/ +RUN dnf config-manager --add-repo=https://negativo17.org/repos/epel-nvidia.repo -y RUN dnf install --nogpgcheck -y https://mirrors.rpmfusion.org/free/el/rpmfusion-free-release-$(rpm -E %rhel).noarch.rpm https://mirrors.rpmfusion.org/nonfree/el/rpmfusion-nonfree-release-$(rpm -E %rhel).noarch.rpm @@ -43,26 +42,18 @@ RUN dnf install -y https://github.com/TheAssassin/AppImageLauncher/releases/down # Enable CachyOS addons EL10 fork repo RUN dnf copr enable andersrh/kernel-cachyos-addons-el10 -y -RUN dnf install -y ${KERNEL}-devel ${KERNEL}-headers +# Enable CachyOS repositories +RUN dnf copr enable bieszczaders/kernel-cachyos -y -RUN wget https://download.virtualbox.org/virtualbox/rpm/el/virtualbox.repo -O /etc/yum.repos.d/virtualbox.repo -RUN dnf install -y chkconfig +RUN dnf install -y ${KERNEL} -RUN dnf install VirtualBox-7.2 -y && \ - KVER=$(rpm -q --queryformat "%{VERSION}-%{RELEASE}.%{ARCH}\n" ${KERNEL}) && \ - for mod in vboxdrv vboxnetflt vboxnetadp; do \ - make -C /lib/modules/${KVER}/build M=/usr/share/virtualbox/src/vboxhost/${mod} \ - KERN_VER=${KVER} CONFIG_MODULE_COMPRESS_GZIP= CONFIG_MODULE_COMPRESS_XZ= \ - CONFIG_MODULE_COMPRESS_ZSTD= -j$(nproc) modules; \ - make -C /lib/modules/${KVER}/build M=/usr/share/virtualbox/src/vboxhost/${mod} \ - KERN_VER=${KVER} INSTALL_MOD_DIR=misc modules_install; \ - done && \ - depmod ${KVER} - -RUN systemctl enable vboxdrv +RUN rpm -e --nodeps kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra -RUN dnf install almalinux-release-nvidia-driver -y -RUN dnf install nvidia-open-kmod nvidia-driver nvidia-driver-cuda -y +RUN dnf install -y ${KERNEL}-devel ${KERNEL}-devel-matched + +# Install Negativo17 Nvidia driver +RUN dnf install -y dkms-nvidia nvidia-driver nvidia-persistenced opencl-filesystem libva-nvidia-driver +RUN dkms install nvidia/$(ls /usr/src/ | grep nvidia- | cut -d- -f2-) -k $(rpm -q --queryformat "%{VERSION}-%{RELEASE}.%{ARCH}\n" ${KERNEL}) RUN dnf install -y waydroid scx-scheds @@ -113,12 +104,19 @@ RUN dnf install rclone -y RUN dnf install https://github.com/trapexit/mergerfs/releases/download/2.41.1/mergerfs-2.41.1-1.el10.x86_64.rpm -y +RUN dnf install -y virt-manager + +RUN dnf install -y https://github.com/balena-io/etcher/releases/download/v2.1.6/balena-etcher-2.1.6-1.x86_64.rpm + RUN systemctl enable docker -RUN systemctl enable scx_loader RUN echo 'kargs = ["mem_sleep_default=deep"]' > /usr/lib/bootc/kargs.d/10-mem-sleep.toml +RUN echo 'kargs = ["rd.driver.blacklist=nouveau", "nouveau.modeset=0"]' > /usr/lib/bootc/kargs.d/20-blacklist-nouveau.toml RUN printf '[connection]\nwifi.powersave=2\n' > /usr/lib/NetworkManager/conf.d/disable-wifi-powersave.conf +# Disable BORE schduler +RUN echo "kernel.sched_bore = 0" | tee /usr/lib/sysctl.d/99-disable-bore.conf + COPY etc /etc COPY usr /usr diff --git a/usr/share/scx_loader/config.toml b/usr/share/scx_loader/config.toml deleted file mode 100644 index 9ad0305..0000000 --- a/usr/share/scx_loader/config.toml +++ /dev/null @@ -1,13 +0,0 @@ -# This field specifies the scheduler that will be started automatically when scx_loader starts (e.g., on boot). -default_sched = "scx_flash" - -# This field specifies the mode which will be used when scx_loader starts (e.g., on boot). -#default_mode = "Auto" - -# This "structure" allows configuring flags for each scheduler mode of particular scx scheduler -#[scheds.'scheduler'] -#auto_mode = [] -#gaming_mode = [] -#lowlatency_mode = [] -#powersave_mode = [] -#server_mode = []