diff --git a/Dockerfile b/Dockerfile index f40e3b9..c6d20e2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,9 +1,9 @@ FROM quay.io/almalinuxorg/atomic-desktop-kde:10 -ARG KERNEL=kernel-cachyos +ARG KERNEL=kernel-ml ENV KERNEL=${KERNEL} -RUN echo 'omit_drivers+=" nouveau "' | tee /etc/dracut.conf.d/blacklist-nouveau.conf +RUN dnf upgrade -y COPY bin/set_next_version.sh /tmp RUN /tmp/set_next_version.sh @@ -15,43 +15,47 @@ RUN dnf install --nogpgcheck -y https://mirrors.rpmfusion.org/free/el/rpmfusion- RUN dnf config-manager --add-repo https://copr.fedorainfracloud.org/coprs/andersrh/sonicDE/repo/rhel+epel-10/andersrh-sonicDE-rhel+epel-10.repo -y RUN dnf config-manager --add-repo https://copr.fedorainfracloud.org/coprs/g/xlibre/xlibre-xserver/repo/rhel+epel-10/group_xlibre-xlibre-xserver-rhel+epel-10.repo -y +RUN dnf config-manager --add-repo https://pc-rytteren.dk/forge/api/packages/anders/rpm.repo -y # This may be necessary for the speakers and internal microphone RUN dnf install -y alsa-sof-firmware -RUN dnf install sonic-workspace-x11 sonic-win sonic-interface-libraries sonic-workspace --allowerasing -y +RUN rpm -e --nodeps plasma-workspace-libs plasma-workspace libplasma \ + kwin kwin-common kwin-libs kscreenlocker plasma-desktop sddm-wayland-plasma && \ + dnf install --allowerasing --nogpgcheck -y \ + sonic-workspace \ + sonic-workspace-libs \ + sonic-workspace-common \ + sonic-workspace-x11 \ + sonic-win \ + sonic-desktop-interface \ + sonic-interface-libraries + +RUN dnf install --allowerasing --nogpgcheck -y sonic-keybind-daemon sonic-frameworks-windowsystem sonic-system-info sonic-screen sonic-screen-library sonic-sysguard-library + +RUN dnf remove -y sddm && \ + dnf install --allowerasing --nogpgcheck -y sonic-login-manager RUN dnf install -y fish distrobox nvtop intel-media-driver libva-intel-driver htop -RUN dnf install -y https://github.com/TheAssassin/AppImageLauncher/releases/download/v2.2.0/appimagelauncher-2.2.0-travis995.0f91801.x86_64.rpm - -# Enable CachyOS repositories -RUN dnf copr enable bieszczaders/kernel-cachyos -y +RUN dnf install -y https://github.com/TheAssassin/AppImageLauncher/releases/download/v3.0.0-beta-3/appimagelauncher_3.0.0-beta-2-gha287.96cb937_x86_64.rpm # Enable CachyOS addons EL10 fork repo RUN dnf copr enable andersrh/kernel-cachyos-addons-el10 -y -RUN dnf install -y ${KERNEL} ${KERNEL}-devel-matched +RUN rpm --import https://www.elrepo.org/RPM-GPG-KEY-v2-elrepo.org +RUN dnf install https://www.elrepo.org/elrepo-release-10.el10.elrepo.noarch.rpm -y -RUN dnf remove -y kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra kernel-tools kernel-tools-libs +RUN dnf install --enablerepo=elrepo-kernel -y ${KERNEL} -# Install Negativo17 Nvidia driver, waydroid and SELinux rules -# Dette kræver at du kører build med --privileged eller --cap-add SYS_ADMIN -# eller bruger Buildah's RUN --mount feature +RUN rpm -e --nodeps kernel kernel-core kernel-modules kernel-modules-core kernel-modules-extra -RUN dnf install -y dkms-nvidia nvidia-driver nvidia-persistenced opencl-filesystem libva-nvidia-driver waydroid policycoreutils && \ - mkdir -p /tmp/selinux-tmp && \ - mount -t tmpfs tmpfs /tmp/selinux-tmp && \ - mkdir -p /tmp/selinux-tmp/etc/selinux/targeted && \ - cp -r /etc/selinux/targeted/* /tmp/selinux-tmp/etc/selinux/targeted/ && \ - semodule -p /tmp/selinux-tmp/etc/selinux -B && \ - semodule -p /tmp/selinux-tmp/etc/selinux -i /usr/share/selinux/targeted/waydroid.pp && \ - semodule -p /tmp/selinux-tmp/etc/selinux -i /usr/share/selinux/packages/targeted/nvidia-driver.pp.bz2 && \ - cp -a /tmp/selinux-tmp/etc/selinux/targeted/* /etc/selinux/targeted/ && \ - umount /tmp/selinux-tmp +RUN dnf install --enablerepo=elrepo-kernel -y ${KERNEL}-devel +# 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 scx-scheds +RUN dnf install -y waydroid # Remove plocate to avoid updatedb going crazy with scanning the file system once a day RUN dnf remove -y plocate @@ -100,8 +104,13 @@ 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 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 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 = []