2023-02-09 11:08:39 -08:00
FROM ghcr.io/ublue-os/kinoite-nvidia:latest
COPY etc /etc
COPY usr /usr
2023-02-09 23:13:40 -08:00
RUN ln -s /usr/bin/steamos-logger /usr/bin/steamos-info && \
ln -s /usr/bin/steamos-logger /usr/bin/steamos-notice && \
ln -s /usr/bin/steamos-logger /usr/bin/steamos-warning
2023-02-09 11:08:39 -08:00
2023-02-09 23:13:40 -08:00
# Re-enable RPMFusion repos & add Copr repos
2023-02-09 11:08:39 -08:00
RUN sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/rpmfusion-nonfree{,-updates}.repo && \
2023-02-09 23:13:40 -08:00
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/rpmfusion-free{,-updates}.repo && \
2023-02-13 23:26:29 -08:00
wget https://copr.fedorainfracloud.org/coprs/ublue-os/vanilla-first-setup/repo/fedora-$(rpm -E %fedora)/ublue-os-vanilla-first-setup-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_ublue-os-vanilla-first-setup.repo && \
2023-02-09 23:13:40 -08:00
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 && \
wget https://copr.fedorainfracloud.org/coprs/kylegospo/LatencyFleX/repo/fedora-$(rpm -E %fedora)/kylegospo-LatencyFleX-fedora-$(rpm -E %fedora).repo -O /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo
2023-02-09 11:08:39 -08:00
# Install new packages
RUN rpm-ostree install \
2023-02-13 23:26:29 -08:00
vanilla-first-setup \
2023-02-09 23:13:40 -08:00
distrobox \
steam \
steam-devices \
gamescope \
gamescope-session \
jupiter-fan-control \
jupiter-hw-support-btrfs \
steamdeck-kde-presets \
gamemode \
latencyflex-vulkan-layer \
vkBasalt \
mangohud \
duperemove \
kdeconnectd \
btop \
fish \
2023-02-13 00:13:07 -08:00
kate \
openrgb-udev-rules \
$(rpm -qa --qf "%{NAME} ")
# The above prints every package installed, this acts similarly to rpm-ostree update when making an OCI image and resolves issues with installing Steam
2023-02-09 11:08:39 -08:00
# Install dock updater, this is done manually as it has proprietary parts and cannot be built in Copr.
RUN git clone https://github.com/KyleGospo/jupiter-dock-updater-bin.git && \
2023-02-09 23:13:40 -08:00
mv -v jupiter-dock-updater-bin/packaged/usr/lib/jupiter-dock-updater /usr/lib/jupiter-dock-updater
2023-02-09 11:08:39 -08:00
# Remove unneeded packages
RUN rpm-ostree override remove toolbox
# Install mesa freeworld components and ffmpeg for hardware accelerated video decode
RUN rpm-ostree override remove \
2023-02-09 23:13:40 -08:00
mesa-va-drivers \
libavutil-free \
libswscale-free \
libswresample-free \
libavformat-free \
libavcodec-free \
libavfilter-free \
libpostproc-free \
--install=mesa-va-drivers-freeworld.x86_64 \
--install=mesa-va-drivers-freeworld.i686 \
--install=mesa-vdpau-drivers-freeworld \
--install=libva-intel-driver \
--install=nvidia-vaapi-driver \
--install=ffmpeg-libs \
--install=ffmpeg \
--install=libavcodec-freeworld
2023-02-09 11:08:39 -08:00
# Cleanup & Finalize
2023-02-09 23:13:40 -08:00
RUN sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-nonfree{,-updates}.repo && \
2023-02-09 11:08:39 -08:00
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-free{,-updates}.repo && \
2023-02-13 23:26:29 -08:00
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-vanilla-first-setup.repo && \
2023-02-09 11:08:39 -08:00
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \
2023-02-09 23:13:40 -08:00
sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/user.conf && \
sed -i 's/#DefaultTimeoutStopSec.*/DefaultTimeoutStopSec=15s/' /etc/systemd/system.conf && \
sed -i 's/#AutomaticUpdatePolicy.*/AutomaticUpdatePolicy=stage/' /etc/rpm-ostreed.conf && \
systemctl enable rpm-ostreed-automatic.timer && \
2023-02-09 11:08:39 -08:00
rm -rf \
2023-02-15 07:27:19 -08:00
/tmp/* \
/var/* && \
2023-02-09 14:56:17 -08:00
mkdir -p /var/lib/duperemove && \
2023-02-09 11:08:39 -08:00
ostree container commit