From 83258b8c2068cf50677b980571a87ab672561d45 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Sat, 16 May 2026 12:38:13 -0300 Subject: [PATCH 01/11] Test Mate Desktop --- Dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Dockerfile b/Dockerfile index 4d58396..57eb365 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,9 +12,12 @@ 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://copr.fedorainfracloud.org/coprs/skip77/MateDesktop-EL10/repo/rhel+epel-10/skip77-MateDesktop-EL10-rhel+epel-10.repo -y RUN dnf install sonic-workspace-x11 sonic-win sonic-interface-libraries sonic-workspace --allowerasing -y +RUN dnf groupinstall "MATE-Desktop" -y + 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 From e90cfc8b780fb8e8eeddb98e4a414913e41a174a Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Sat, 16 May 2026 13:50:45 -0300 Subject: [PATCH 02/11] Install Mate Desktop --- Dockerfile | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Dockerfile b/Dockerfile index 4d58396..57eb365 100644 --- a/Dockerfile +++ b/Dockerfile @@ -12,9 +12,12 @@ 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://copr.fedorainfracloud.org/coprs/skip77/MateDesktop-EL10/repo/rhel+epel-10/skip77-MateDesktop-EL10-rhel+epel-10.repo -y RUN dnf install sonic-workspace-x11 sonic-win sonic-interface-libraries sonic-workspace --allowerasing -y +RUN dnf groupinstall "MATE-Desktop" -y + 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 From bf803ff88f582b1ca9f0cb190fc1f07f625d0825 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Sat, 16 May 2026 14:21:45 -0300 Subject: [PATCH 03/11] Enable TearFree --- etc/X11/xorg.conf.d/20-modesetting.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/etc/X11/xorg.conf.d/20-modesetting.conf b/etc/X11/xorg.conf.d/20-modesetting.conf index 332e165..1296f55 100644 --- a/etc/X11/xorg.conf.d/20-modesetting.conf +++ b/etc/X11/xorg.conf.d/20-modesetting.conf @@ -3,5 +3,5 @@ Section "Device" Driver "modesetting" Option "ShadowFB" "false" # you don't need on recent hardware Option "Atomic" "true" #only effective on Xlibre, or Xorg-git with a special patch - Option "TearFree" "false" # We will be using compositor, so TearFree (extra buffer) in the driver is not necessary + Option "TearFree" "true" # We will be using compositor, so TearFree (extra buffer) in the driver is not necessary EndSection From 456fb282e8573f8abb8cf109652e248833936df2 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Sat, 16 May 2026 17:58:44 -0300 Subject: [PATCH 04/11] remove comment --- etc/X11/xorg.conf.d/20-modesetting.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/etc/X11/xorg.conf.d/20-modesetting.conf b/etc/X11/xorg.conf.d/20-modesetting.conf index 1296f55..da8f040 100644 --- a/etc/X11/xorg.conf.d/20-modesetting.conf +++ b/etc/X11/xorg.conf.d/20-modesetting.conf @@ -3,5 +3,5 @@ Section "Device" Driver "modesetting" Option "ShadowFB" "false" # you don't need on recent hardware Option "Atomic" "true" #only effective on Xlibre, or Xorg-git with a special patch - Option "TearFree" "true" # We will be using compositor, so TearFree (extra buffer) in the driver is not necessary + Option "TearFree" "true" EndSection From 94f0906f9d395ebb987531fedd5818ae898be0c2 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Sat, 16 May 2026 18:01:46 -0300 Subject: [PATCH 05/11] remove custom chromium config --- Dockerfile | 3 -- etc/chromium/chromium.conf | 76 -------------------------------------- 2 files changed, 79 deletions(-) delete mode 100644 etc/chromium/chromium.conf diff --git a/Dockerfile b/Dockerfile index 57eb365..3bad7a5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -49,9 +49,6 @@ RUN dnf install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docke RUN dnf install xorg-x11-xinit xkbcomp xinput xlibre-xserver-Xorg xlibre-xf86-input-libinput -y -# Delete default Chromium config so it can be replaced by my own -RUN rm -f /etc/chromium/chromium.conf - # Add rule to SELinux allowing modules to be loaded into custom kernel RUN setsebool -P domain_kernel_load_modules on diff --git a/etc/chromium/chromium.conf b/etc/chromium/chromium.conf deleted file mode 100644 index f6cbbbc..0000000 --- a/etc/chromium/chromium.conf +++ /dev/null @@ -1,76 +0,0 @@ -# system wide chromium flags - -ARCH="$(arch)" -MODE="$(systemd-detect-virt)" - -# GRAPHIC_DRIVER=[amd|intel|nvidia|default] -GRAPHIC_DRIVER=intel - -# WEB_DARKMODE=[on|off] -WEB_DARKMODE=off - -# NATIVE_WAYLAND=[on|off] -# chromium >=141 switched to --ozone-platform-hint=auto -if [ ! -z "$WAYLAND_DISPLAY" ]; then - NATIVE_WAYLAND=on -else - NATIVE_WAYLAND=off -fi - -DISABLE_FEATURES="LensOverlay,ExtensionManifestV2Unsupported,ExtensionManifestV2Disabled" -ENABLE_FEATURES="AllowQt" -CHROMIUM_FLAGS=" --enable-chrome-browser-cloud-management" -if [ "$NATIVE_WAYLAND" == "on" ] ; then - ENABLE_FEATURES+=",WaylandLinuxDrmSyncobj,WaylandPerSurfaceScale,WaylandUiScale" - CHROMIUM_FLAGS+=" --ozone-platform=wayland" -else - CHROMIUM_FLAGS+=" --enable-gpu-memory-buffer-video-frames" - CHROMIUM_FLAGS+=" --enable-zero-copy" - CHROMIUM_FLAGS+=" --ignore-gpu-blocklist --disable-gpu-driver-bug-workaround" - CHROMIUM_FLAGS+=" --enable-gpu-rasterization" -fi - -ENABLE_FEATURES+=",AcceleratedVideoDecodeLinuxGL,AcceleratedVideoDecodeLinuxZeroCopyGL" - -case "$GRAPHIC_DRIVER" in - amd|intel) - # Need new mesa with AMD multi planes support, is supported in fedora >= 40 (mesa-24.1.1 or newer) - # see https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26165 - CHROMIUM_FLAGS+=" --enable-accelerated-video-decode" - ENABLE_FEATURES+=",VaapiIgnoreDriverChecks,UseMultiPlaneFormatForHardwareVideo" - ;; - nvidia) - # The NVIDIA VaAPI drivers are known to not support Chromium - # see https://crbug.com/1492880. This feature switch is - # provided for developers to test VaAPI drivers on NVIDIA GPUs - ENABLE_FEATURES+=",VaapiOnNvidiaGPUs" - export CUDA_DISABLE_PERF_BOOST=1 - ;; - *) - ENABLE_FEATURES+=",AcceleratedVideoEncoder" - ;; -esac - -if [ "$MODE" != "none" ] ; then - # chromium in VM, running with standard setting - CHROMIUM_FLAGS="" - DISABLE_FEATURES="" - ENABLE_FEATURES="" -fi - -# Set gtk version to 3 by default -# todo: switch to gtk4 in the future -CHROMIUM_FLAGS+=" --gtk-version=3" - -# Web Dark mode -if [ "$WEB_DARKMODE" == "on" ] ; then - darktype="WebContentsForceDark:inversion_method/cielab_based/image_behavior/none/foreground_lightness_threshold/150/background_lightness_threshold/205" - if [ -z "$ENABLE_FEATURES" ] ; then - ENABLE_FEATURES+="$darktype" - else - ENABLE_FEATURES+=",$darktype" - fi -fi - -[ -z "$DISABLE_FEATURES" ] || CHROMIUM_FLAGS+=" --disable-features=$DISABLE_FEATURES" -[ -z "$ENABLE_FEATURES" ] || CHROMIUM_FLAGS+=" --enable-features=$ENABLE_FEATURES" From 48bf9428304ac2be3496c67ba01633c0dec23803 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Thu, 18 Jun 2026 18:15:49 -0300 Subject: [PATCH 06/11] upgrade sonicDE, remove MATE and install Brave browser and fix nouveau blacklist on stock kernel --- Dockerfile | 25 +++++++++++++++++++++++-- etc/X11/xorg.conf.d/20-modesetting.conf | 2 +- 2 files changed, 24 insertions(+), 3 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3bad7a5..163756c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,10 +13,23 @@ 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://copr.fedorainfracloud.org/coprs/skip77/MateDesktop-EL10/repo/rhel+epel-10/skip77-MateDesktop-EL10-rhel+epel-10.repo -y +RUN dnf config-manager --add-repo https://pc-rytteren.dk/forge/api/packages/anders/rpm.repo -y -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 groupinstall "MATE-Desktop" -y +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 @@ -36,6 +49,10 @@ RUN dnf install hplip -y RUN dnf -y install gwenview vlc kalk okular RUN dnf -y install chromium firefox +# Install Brave browser +RUN dnf config-manager --add-repo https://brave-browser-rpm-release.s3.brave.com/brave-browser.repo -y +RUN dnf install brave-browser -y + # Enable CachyOS addons EL10 fork repo RUN dnf copr enable andersrh/kernel-cachyos-addons-el10 -y RUN dnf install -y scx-scheds cachyos-settings @@ -52,6 +69,10 @@ RUN dnf install xorg-x11-xinit xkbcomp xinput xlibre-xserver-Xorg xlibre-xf86-in # Add rule to SELinux allowing modules to be loaded into custom kernel RUN setsebool -P domain_kernel_load_modules on +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 + RUN systemctl enable docker COPY etc /etc diff --git a/etc/X11/xorg.conf.d/20-modesetting.conf b/etc/X11/xorg.conf.d/20-modesetting.conf index da8f040..96ed85d 100644 --- a/etc/X11/xorg.conf.d/20-modesetting.conf +++ b/etc/X11/xorg.conf.d/20-modesetting.conf @@ -3,5 +3,5 @@ Section "Device" Driver "modesetting" Option "ShadowFB" "false" # you don't need on recent hardware Option "Atomic" "true" #only effective on Xlibre, or Xorg-git with a special patch - Option "TearFree" "true" + Option "TearFree" "false" EndSection From 31a31d035d66a7b6c04d299e48280632291651f2 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Fri, 19 Jun 2026 11:32:26 -0300 Subject: [PATCH 07/11] add almalinux nvidia driver and dnf update in the beginning --- Dockerfile | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Dockerfile b/Dockerfile index 163756c..b6d66b7 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,6 +5,14 @@ RUN /tmp/set_next_version.sh COPY repo/*.repo /etc/yum.repos.d/ +RUN dnf update -y + +# Install Almalinux Nvidia driver +RUN dnf install almalinux-release-nvidia-driver -y +RUN dnf install nvidia-open-kmod nvidia-driver -y +RUN dnf install nvidia-driver-cuda -y + + # This is necessary for the speakers and internal microphone RUN dnf install -y alsa-sof-firmware From 20e8324d949ec6ec486ae88edaba633ad0ee4d8f Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Fri, 19 Jun 2026 12:04:37 -0300 Subject: [PATCH 08/11] move up rpmfusion --- Dockerfile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Dockerfile b/Dockerfile index b6d66b7..81f8f2c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -7,6 +7,8 @@ COPY repo/*.repo /etc/yum.repos.d/ RUN dnf update -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 + # Install Almalinux Nvidia driver RUN dnf install almalinux-release-nvidia-driver -y RUN dnf install nvidia-open-kmod nvidia-driver -y @@ -16,8 +18,6 @@ RUN dnf install nvidia-driver-cuda -y # This is necessary for the speakers and internal microphone RUN dnf install -y alsa-sof-firmware -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 - 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://copr.fedorainfracloud.org/coprs/skip77/MateDesktop-EL10/repo/rhel+epel-10/skip77-MateDesktop-EL10-rhel+epel-10.repo -y From 6971569944ae064e383941efc0587fc2e8763ed6 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Fri, 19 Jun 2026 15:29:53 -0300 Subject: [PATCH 09/11] use negativo17 driver instead --- Dockerfile | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/Dockerfile b/Dockerfile index 81f8f2c..05038c5 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,18 +3,21 @@ FROM quay.io/almalinuxorg/atomic-desktop-kde:10 COPY bin/set_next_version.sh /tmp RUN /tmp/set_next_version.sh +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 + +# Install kernel dev files +RUN dnf install -y kernel-headers kernel-devel-matched + +RUN dnf config-manager --add-repo=https://negativo17.org/repos/epel-nvidia.repo -y + +# 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) + COPY repo/*.repo /etc/yum.repos.d/ RUN dnf update -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 - -# Install Almalinux Nvidia driver -RUN dnf install almalinux-release-nvidia-driver -y -RUN dnf install nvidia-open-kmod nvidia-driver -y -RUN dnf install nvidia-driver-cuda -y - - # This is necessary for the speakers and internal microphone RUN dnf install -y alsa-sof-firmware From df5c4416585b0b11970105633d5a03204da9f3a9 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Fri, 19 Jun 2026 20:53:41 -0300 Subject: [PATCH 10/11] lower touchpad speed --- etc/X11/xorg.conf.d/90-touchpad-tap.conf | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/etc/X11/xorg.conf.d/90-touchpad-tap.conf b/etc/X11/xorg.conf.d/90-touchpad-tap.conf index aef5833..885af96 100644 --- a/etc/X11/xorg.conf.d/90-touchpad-tap.conf +++ b/etc/X11/xorg.conf.d/90-touchpad-tap.conf @@ -5,8 +5,7 @@ Section "InputClass" MatchDevicePath "/dev/input/event*" Driver "libinput" - # Korrigerer hastigheden til 2x (til 4K / 200% skalering) - Option "TransformationMatrix" "5 0 0 0 5 0 0 0 2" + Option "TransformationMatrix" "130 0 0 0 130 0 0 0 100" # Bruger den ergonomiske 'adaptive' profil (1 0 er Adaptive) #Option "AccelProfile" "adaptive" From 772c6384189a2c5c4c2eb08221cef2c6b6ff3c45 Mon Sep 17 00:00:00 2001 From: Anders da Silva Rytter Hansen Date: Wed, 24 Jun 2026 10:16:05 -0300 Subject: [PATCH 11/11] Upgrade Appimage launcher --- Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Dockerfile b/Dockerfile index 05038c5..e618474 100644 --- a/Dockerfile +++ b/Dockerfile @@ -43,7 +43,7 @@ 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 +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 # Remove plocate to avoid updatedb going crazy with scanning the file system once a day RUN dnf remove -y plocate