11ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME:-kinoite}"
22ARG IMAGE_FLAVOR="${IMAGE_FLAVOR:-main}"
3+ ARG AKMODS_FLAVOR="${AKMODS_FLAVOR:-main}"
34ARG SOURCE_IMAGE="${SOURCE_IMAGE:-$BASE_IMAGE_NAME-$IMAGE_FLAVOR}"
45ARG BASE_IMAGE="ghcr.io/ublue-os/${SOURCE_IMAGE}"
56ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION:-38}"
@@ -8,16 +9,16 @@ FROM ${BASE_IMAGE}:${FEDORA_MAJOR_VERSION} AS bazzite
89
910ARG IMAGE_NAME="${IMAGE_NAME}"
1011ARG IMAGE_VENDOR="ublue-os"
11- ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME}"
1212ARG IMAGE_FLAVOR="${IMAGE_FLAVOR}"
13+ ARG AKMODS_FLAVOR="${AKMODS_FLAVOR}"
14+ ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME}"
1315ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION}"
1416
1517COPY system_files/desktop/shared system_files/desktop/${BASE_IMAGE_NAME} /
1618
1719# Add ublue packages, add needed negativo17 repo and then immediately disable due to incompatibility with RPMFusion
18- COPY --from=ghcr.io/ublue-os/akmods:main-${FEDORA_MAJOR_VERSION} /rpms /tmp/akmods-rpms
19- RUN if [[ "${IMAGE_FLAVOR}" = "main" || "${IMAGE_NAME}" = "nvidia" ]]; then \
20- sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
20+ COPY --from=ghcr.io/ublue-os/akmods:${AKMODS_FLAVOR}-${FEDORA_MAJOR_VERSION} /rpms /tmp/akmods-rpms
21+ RUN sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
2122 wget https://negativo17.org/repos/fedora-multimedia.repo -O /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
2223 if [[ "${FEDORA_MAJOR_VERSION}" -ge "39" ]]; then \
2324 rpm-ostree install \
@@ -39,8 +40,7 @@ RUN if [[ "${IMAGE_FLAVOR}" = "main" || "${IMAGE_NAME}" = "nvidia" ]]; then \
3940 /tmp/akmods-rpms/kmods/*winesync*.rpm && \
4041 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
4142 mkdir -p /etc/akmods-rpms/ && \
42- mv /tmp/akmods-rpms/kmods/*steamdeck*.rpm /etc/akmods-rpms/steamdeck.rpm \
43- ; fi
43+ mv /tmp/akmods-rpms/kmods/*steamdeck*.rpm /etc/akmods-rpms/steamdeck.rpm
4444
4545# Setup Copr repos
4646RUN wget https://copr.fedorainfracloud.org/coprs/kylegospo/bazzite/repo/fedora-$(rpm -E %fedora)/kylegospo-bazzite-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
@@ -54,7 +54,6 @@ RUN wget https://copr.fedorainfracloud.org/coprs/kylegospo/bazzite/repo/fedora-$
5454 wget https://copr.fedorainfracloud.org/coprs/kylegospo/wallpaper-engine-kde-plugin/repo/fedora-$(rpm -E %fedora)/kylegospo-wallpaper-engine-kde-plugin-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-wallpaper-engine-kde-plugin.repo && \
5555 wget https://copr.fedorainfracloud.org/coprs/kylegospo/gnome-vrr/repo/fedora-$(rpm -E %fedora)/kylegospo-gnome-vrr-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-gnome-vrr.repo && \
5656 wget https://copr.fedorainfracloud.org/coprs/ycollet/audinux/repo/fedora-$(rpm -E %fedora)/ycollet-audinux-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_ycollet-audinux.repo && \
57- wget https://copr.fedorainfracloud.org/coprs/lyessaadi/gradience/repo/fedora-$(rpm -E %fedora)/lyessaadi-gradience-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_lyessaadi-gradience.repo && \
5857 wget https://copr.fedorainfracloud.org/coprs/kylegospo/rom-properties/repo/fedora-$(rpm -E %fedora)/kylegospo-rom-properties-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-rom-properties.repo && \
5958 wget https://pkgs.tailscale.com/stable/fedora/tailscale.repo -O /etc/yum.repos.d/tailscale.repo && \
6059 sed -i 's@gpgcheck=1@gpgcheck=0@g' /etc/yum.repos.d/tailscale.repo
@@ -118,7 +117,7 @@ RUN if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
118117 kdeconnectd \
119118 extest.i686 \
120119 rom-properties-kf5 && \
121- if [ ${FEDORA_MAJOR_VERSION} -lt 39 ]; then \
120+ if [[ " ${FEDORA_MAJOR_VERSION}" -lt "39" ] ]; then \
122121 rpm-ostree override replace \
123122 --experimental \
124123 --from repo=copr:copr.fedorainfracloud.org:kylegospo:gnome-vrr \
@@ -135,7 +134,7 @@ RUN if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
135134 rm -rf /tmp/wallpaper-engine-kde-plugin && \
136135 sed -i 's@After=plasma-core.target@After=plasma-core.target\n After=xdg-desktop-portal.service@g' /usr/lib/systemd/user/plasma-xdg-desktop-portal-kde.service \
137136; else \
138- if [ ${FEDORA_MAJOR_VERSION} -lt 39 ]; then \
137+ if [[ " ${FEDORA_MAJOR_VERSION}" -lt "39" ] ]; then \
139138 rpm-ostree override replace \
140139 --experimental \
141140 --from repo=copr:copr.fedorainfracloud.org:kylegospo:gnome-vrr \
@@ -156,7 +155,6 @@ RUN if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
156155 rpm-ostree install \
157156 xwaylandvideobridge \
158157 steamdeck-backgrounds \
159- gradience \
160158 gnome-randr-rust \
161159 gnome-shell-extension-user-theme \
162160 gnome-shell-extension-gsconnect \
@@ -250,9 +248,7 @@ RUN /tmp/image-info.sh && \
250248 pip install --prefix=/usr yafti && \
251249 pip install --prefix=/usr hyfetch && \
252250 sed -i 's/stage/none/g' /etc/rpm-ostreed.conf && \
253- if [[ "${IMAGE_FLAVOR}" = "main" || "${IMAGE_NAME}" = "nvidia" ]]; then \
254- sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo \
255- ; fi && \
251+ sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
256252 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
257253 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite-multilib.repo && \
258254 sed -i 's@enabled=1@enabeld=0@g' /etc/yum.repos.d/_copr_ublue-os-staging.repo && \
@@ -264,15 +260,14 @@ RUN /tmp/image-info.sh && \
264260 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-wallpaper-engine-kde-plugin.repo && \
265261 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-gnome-vrr.repo && \
266262 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ycollet-audinux.repo && \
267- sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_lyessaadi-gradience.repo && \
268263 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-rom-properties.repo && \
269264 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/tailscale.repo && \
270265 sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/user.conf && \
271266 sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/system.conf && \
272267 mkdir -p /usr/etc/flatpak/remotes.d && \
273268 wget -q https://dl.flathub.org/repo/flathub.flatpakrepo -P /usr/etc/flatpak/remotes.d && \
274269 systemctl enable com.system76.Scheduler.service && \
275- if [[ "${IMAGE_FLAVOR }" = "main" || "${IMAGE_NAME}" = "nvidia " ]]; then \
270+ if [[ "${FEDORA_MAJOR_VERSION }" -lt "39 " ]]; then \
276271 systemctl enable displaylink.service \
277272 ; fi && \
278273 systemctl enable btrfs-dedup@var-home.timer && \
@@ -310,16 +305,14 @@ FROM bazzite as bazzite-deck
310305
311306ARG IMAGE_NAME="${IMAGE_NAME}"
312307ARG IMAGE_VENDOR="ublue-os"
313- ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME}"
314308ARG IMAGE_FLAVOR="${IMAGE_FLAVOR}"
309+ ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME}"
315310ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION}"
316311
317312COPY system_files/deck/shared system_files/deck/${BASE_IMAGE_NAME} /
318313
319314# Setup Copr repos
320- RUN if [[ "${IMAGE_FLAVOR}" = "main" || "${IMAGE_NAME}" = "nvidia" ]]; then \
321- sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo \
322- ; fi && \
315+ RUN sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
323316 sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
324317 sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-bazzite-multilib.repo && \
325318 sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \
@@ -329,32 +322,30 @@ RUN if [[ "${IMAGE_FLAVOR}" = "main" || "${IMAGE_NAME}" = "nvidia" ]]; then \
329322 sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ycollet-audinux.repo
330323
331324# Install Valve's Steam Deck drivers as kmod
332- RUN if [[ "${IMAGE_FLAVOR}" = "main" || "${IMAGE_NAME}" = "nvidia" ]]; then \
333- rpm-ostree install \
325+ RUN rpm-ostree install \
334326 /etc/akmods-rpms/steamdeck.rpm && \
335- rm -rf /etc/akmods-rpms \
336- ; fi
327+ rm -rf /etc/akmods-rpms
337328
338329# Install gamescope-limiter patched Mesa and patched udisks2 (Needed for SteamOS SD card mounting)
339- RUN rpm-ostree override replace \
340- --experimental \
341- --from repo=copr:copr.fedorainfracloud.org:kylegospo:bazzite-multilib \
342- mesa-filesystem \
343- mesa-dri-drivers \
344- mesa-libEGL \
345- mesa-libEGL-devel \
346- mesa-libgbm \
347- mesa-libGL \
348- mesa-libglapi \
349- mesa-vulkan-drivers && \
350- if [ ${FEDORA_MAJOR_VERSION} -lt 39 ]; then \
351- rpm-ostree override replace \
330+ RUN if [[ "${FEDORA_MAJOR_VERSION}" -lt "39" ]]; then \
331+ rpm-ostree override replace \
332+ --experimental \
333+ --from repo=copr:copr.fedorainfracloud.org:kylegospo:bazzite-multilib \
334+ mesa-filesystem \
335+ mesa-dri-drivers \
336+ mesa-libEGL \
337+ mesa-libEGL-devel \
338+ mesa-libgbm \
339+ mesa-libGL \
340+ mesa-libglapi \
341+ mesa-vulkan-drivers && \
342+ rpm-ostree override replace \
352343 --experimental \
353344 --from repo=copr:copr.fedorainfracloud.org:kylegospo:bazzite \
354345 udisks2 \
355346 libudisks2 \
356347 udisks2-btrfs \
357- ; fi
348+ ; fi
358349
359350# Configure KDE & GNOME
360351RUN if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}" ; then \
@@ -460,6 +451,7 @@ RUN rpm-ostree install \
460451 wxGTK \
461452 libFAudio \
462453 gamescope \
454+ gamescope.i686 \
463455 gamescope-session \
464456 wine-core \
465457 winetricks \
@@ -492,9 +484,7 @@ RUN /tmp/image-info.sh && \
492484 ; fi && \
493485 cp "/usr/share/ublue-os/firstboot/yafti.yml" "/usr/etc/yafti.yml" && \
494486 sed -i 's/#HandlePowerKey=poweroff/HandlePowerKey=suspend/g' /etc/systemd/logind.conf && \
495- if [[ "${IMAGE_FLAVOR}" = "main" || "${IMAGE_NAME}" = "nvidia" ]]; then \
496- sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo \
497- ; fi && \
487+ sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
498488 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
499489 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite-multilib.repo && \
500490 sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \
0 commit comments