2023-06-18 19:22:17 +00:00
|
|
|
ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME:-kinoite}"
|
2023-11-30 08:48:31 -07:00
|
|
|
ARG BASE_IMAGE_FLAVOR="${BASE_IMAGE_FLAVOR:-main}"
|
2023-06-18 19:22:17 +00:00
|
|
|
ARG IMAGE_FLAVOR="${IMAGE_FLAVOR:-main}"
|
2024-10-08 14:50:18 -07:00
|
|
|
ARG NVIDIA_FLAVOR="${NVIDIA_FLAVOR:-nvidia}"
|
2025-01-01 17:53:45 -08:00
|
|
|
ARG NVIDIA_BASE="${NVIDIA_BASE:-bazzite}"
|
2024-10-18 23:55:13 -07:00
|
|
|
ARG KERNEL_FLAVOR="${KERNEL_FLAVOR:-bazzite}"
|
2024-12-21 16:16:21 -07:00
|
|
|
ARG KERNEL_VERSION="${KERNEL_VERSION:-6.12.5-204.bazzite.fc41.x86_64}"
|
2024-01-06 18:53:36 -08:00
|
|
|
ARG IMAGE_BRANCH="${IMAGE_BRANCH:-main}"
|
2023-11-30 08:48:31 -07:00
|
|
|
ARG SOURCE_IMAGE="${SOURCE_IMAGE:-$BASE_IMAGE_NAME-$BASE_IMAGE_FLAVOR}"
|
2023-06-18 19:22:17 +00:00
|
|
|
ARG BASE_IMAGE="ghcr.io/ublue-os/${SOURCE_IMAGE}"
|
2024-10-18 15:14:05 -07:00
|
|
|
ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION:-41}"
|
2025-01-01 01:47:43 -08:00
|
|
|
ARG JUPITER_FIRMWARE_VERSION="${JUPITER_FIRMWARE_VERSION:-jupiter-20241205.1}"
|
2024-07-13 09:49:22 -07:00
|
|
|
ARG SHA_HEAD_SHORT="${SHA_HEAD_SHORT}"
|
2024-08-02 06:49:50 +02:00
|
|
|
ARG VERSION_TAG="${VERSION_TAG}"
|
|
|
|
ARG VERSION_PRETTY="${VERSION_PRETTY}"
|
2023-06-18 19:22:17 +00:00
|
|
|
|
2024-10-18 23:55:13 -07:00
|
|
|
FROM ghcr.io/ublue-os/${KERNEL_FLAVOR}-kernel:${FEDORA_MAJOR_VERSION}-${KERNEL_VERSION} AS kernel
|
2024-08-20 08:43:15 -07:00
|
|
|
FROM ghcr.io/ublue-os/akmods:${KERNEL_FLAVOR}-${FEDORA_MAJOR_VERSION}-${KERNEL_VERSION} AS akmods
|
|
|
|
FROM ghcr.io/ublue-os/akmods-extra:${KERNEL_FLAVOR}-${FEDORA_MAJOR_VERSION}-${KERNEL_VERSION} AS akmods-extra
|
2024-05-15 12:43:05 -04:00
|
|
|
|
2023-06-18 19:22:17 +00:00
|
|
|
FROM ${BASE_IMAGE}:${FEDORA_MAJOR_VERSION} AS bazzite
|
|
|
|
|
2023-11-28 08:49:28 -07:00
|
|
|
ARG IMAGE_NAME="${IMAGE_NAME:-bazzite}"
|
|
|
|
ARG IMAGE_VENDOR="${IMAGE_VENDOR:-ublue-os}"
|
|
|
|
ARG IMAGE_FLAVOR="${IMAGE_FLAVOR:-main}"
|
2024-10-08 14:50:18 -07:00
|
|
|
ARG NVIDIA_FLAVOR="${NVIDIA_FLAVOR:-nvidia}"
|
2025-01-01 17:53:45 -08:00
|
|
|
ARG NVIDIA_BASE="${NVIDIA_BASE:-bazzite}"
|
2024-10-18 23:55:13 -07:00
|
|
|
ARG KERNEL_FLAVOR="${KERNEL_FLAVOR:-bazzite}"
|
2024-12-21 16:16:21 -07:00
|
|
|
ARG KERNEL_VERSION="${KERNEL_VERSION:-6.12.5-204.bazzite.fc41.x86_64}"
|
2024-01-06 18:53:36 -08:00
|
|
|
ARG IMAGE_BRANCH="${IMAGE_BRANCH:-main}"
|
2023-11-28 08:49:28 -07:00
|
|
|
ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME:-kinoite}"
|
2024-10-18 15:14:05 -07:00
|
|
|
ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION:-41}"
|
2025-01-01 01:47:43 -08:00
|
|
|
ARG JUPITER_FIRMWARE_VERSION="${JUPITER_FIRMWARE_VERSION:-jupiter-20241205.1}"
|
2024-07-13 09:49:22 -07:00
|
|
|
ARG SHA_HEAD_SHORT="${SHA_HEAD_SHORT}"
|
2024-08-02 06:49:50 +02:00
|
|
|
ARG VERSION_TAG="${VERSION_TAG}"
|
|
|
|
ARG VERSION_PRETTY="${VERSION_PRETTY}"
|
2023-02-09 11:08:39 -08:00
|
|
|
|
2023-10-11 11:38:36 -07:00
|
|
|
COPY system_files/desktop/shared system_files/desktop/${BASE_IMAGE_NAME} /
|
2023-07-28 00:17:26 -07:00
|
|
|
|
2023-12-24 16:58:07 -08:00
|
|
|
# Update packages that commonly cause build issues
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
rpm-ostree override replace \
|
2023-12-08 21:59:32 -08:00
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
vulkan-loader \
|
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-02-04 19:45:44 -08:00
|
|
|
--from repo=updates \
|
2024-02-04 23:21:55 -08:00
|
|
|
alsa-lib \
|
2024-02-04 19:45:44 -08:00
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2023-12-08 21:59:32 -08:00
|
|
|
--from repo=updates \
|
|
|
|
gnutls \
|
2023-12-13 09:44:27 -08:00
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
glib2 \
|
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-01-23 00:57:55 -08:00
|
|
|
--from repo=updates \
|
2024-07-21 15:38:12 -04:00
|
|
|
nspr \
|
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
2024-09-21 19:40:16 -06:00
|
|
|
nss \
|
2024-07-21 15:38:12 -04:00
|
|
|
nss-softokn \
|
|
|
|
nss-softokn-freebl \
|
2024-09-21 19:40:16 -06:00
|
|
|
nss-sysinit \
|
2024-07-21 15:38:12 -04:00
|
|
|
nss-util \
|
2024-01-23 00:57:55 -08:00
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2023-12-13 09:44:27 -08:00
|
|
|
--from repo=updates \
|
|
|
|
atk \
|
|
|
|
at-spi2-atk \
|
2023-12-19 14:42:42 -08:00
|
|
|
|| true && \
|
2023-12-21 09:31:49 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-01-01 21:41:20 -08:00
|
|
|
--from repo=updates \
|
|
|
|
libaom \
|
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2023-12-21 09:31:49 -08:00
|
|
|
--from repo=updates \
|
|
|
|
gstreamer1 \
|
|
|
|
gstreamer1-plugins-base \
|
|
|
|
|| true && \
|
2023-12-27 13:49:00 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-01-17 23:28:25 -08:00
|
|
|
--from repo=updates \
|
|
|
|
libdecor \
|
|
|
|
|| true && \
|
2024-01-21 11:09:48 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libtirpc \
|
|
|
|
|| true && \
|
2024-01-27 12:08:10 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libuuid \
|
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libblkid \
|
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libmount \
|
|
|
|
|| true && \
|
2024-02-24 21:29:56 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
cups-libs \
|
|
|
|
|| true && \
|
2024-04-09 22:55:47 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libinput \
|
|
|
|
|| true && \
|
2024-04-14 10:09:54 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libopenmpt \
|
|
|
|
|| true && \
|
2024-06-03 07:37:44 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
llvm-libs \
|
|
|
|
|| true && \
|
2024-06-09 10:52:18 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-07-03 00:07:54 -07:00
|
|
|
--from repo=updates \
|
|
|
|
zlib-ng-compat \
|
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-06-09 10:52:18 -07:00
|
|
|
--from repo=updates \
|
|
|
|
fontconfig \
|
|
|
|
|| true && \
|
2024-07-24 20:58:01 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
pciutils-libs \
|
|
|
|
|| true && \
|
2024-07-25 22:28:31 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libdrm \
|
|
|
|
|| true && \
|
2024-08-03 07:37:08 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-09-19 12:30:34 -06:00
|
|
|
--from repo=updates \
|
|
|
|
cpp \
|
|
|
|
libatomic \
|
|
|
|
libgcc \
|
|
|
|
libgfortran \
|
|
|
|
libgomp \
|
|
|
|
libobjc \
|
|
|
|
libstdc++ \
|
|
|
|
|| true && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-08-03 07:37:08 -07:00
|
|
|
--from repo=updates \
|
2024-08-03 07:48:37 -07:00
|
|
|
libX11 \
|
|
|
|
libX11-common \
|
2024-08-03 07:37:08 -07:00
|
|
|
libX11-xcb \
|
|
|
|
|| true && \
|
2024-08-08 21:57:29 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libv4l \
|
|
|
|
|| true && \
|
2024-10-28 13:23:50 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
elfutils-libelf \
|
2024-10-28 13:42:45 -07:00
|
|
|
elfutils-libs \
|
2024-10-28 13:23:50 -07:00
|
|
|
|| true && \
|
2024-11-25 17:45:41 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
glibc \
|
|
|
|
glibc-common \
|
|
|
|
glibc-all-langpacks \
|
|
|
|
glibc-gconv-extra \
|
|
|
|
|| true && \
|
2025-01-01 01:54:10 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
libxcrypt \
|
|
|
|
|| true && \
|
2025-01-05 09:55:43 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
SDL2 \
|
|
|
|
|| true && \
|
2024-09-06 22:49:27 -07:00
|
|
|
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=updates \
|
|
|
|
qt6-qtbase \
|
|
|
|
qt6-qtbase-common \
|
|
|
|
qt6-qtbase-mysql \
|
|
|
|
qt6-qtbase-gui \
|
|
|
|
|| true \
|
|
|
|
; fi && \
|
2023-12-19 14:42:42 -08:00
|
|
|
rpm-ostree override remove \
|
|
|
|
glibc32 \
|
2024-04-10 12:20:41 -07:00
|
|
|
|| true && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-12-08 21:59:32 -08:00
|
|
|
|
2024-07-05 17:28:24 -07:00
|
|
|
# Setup Copr repos
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
2024-11-18 14:07:24 -08:00
|
|
|
curl -Lo /etc/yum.repos.d/_copr_kylegospo-bazzite.repo https://copr.fedorainfracloud.org/coprs/kylegospo/bazzite/repo/fedora-"${FEDORA_MAJOR_VERSION}"/kylegospo-bazzite-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_kylegospo-bazzite-multilib.repo https://copr.fedorainfracloud.org/coprs/kylegospo/bazzite-multilib/repo/fedora-"${FEDORA_MAJOR_VERSION}"/kylegospo-bazzite-multilib-fedora-"${FEDORA_MAJOR_VERSION}".repo?arch=x86_64 && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_ublue-os-staging.repo https://copr.fedorainfracloud.org/coprs/ublue-os/staging/repo/fedora-"${FEDORA_MAJOR_VERSION}"/ublue-os-staging-fedora-"${FEDORA_MAJOR_VERSION}".repo?arch=x86_64 && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo https://copr.fedorainfracloud.org/coprs/kylegospo/LatencyFleX/repo/fedora-"${FEDORA_MAJOR_VERSION}"/kylegospo-LatencyFleX-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_kylegospo-obs-vkcapture.repo https://copr.fedorainfracloud.org/coprs/kylegospo/obs-vkcapture/repo/fedora-"${FEDORA_MAJOR_VERSION}"/kylegospo-obs-vkcapture-fedora-"${FEDORA_MAJOR_VERSION}".repo?arch=x86_64 && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_kylegospo-wallpaper-engine-kde-plugin.repo https://copr.fedorainfracloud.org/coprs/kylegospo/wallpaper-engine-kde-plugin/repo/fedora-"${FEDORA_MAJOR_VERSION}"/kylegospo-wallpaper-engine-kde-plugin-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_ycollet-audinux.repo https://copr.fedorainfracloud.org/coprs/ycollet/audinux/repo/fedora-"${FEDORA_MAJOR_VERSION}"/ycollet-audinux-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_kylegospo-rom-properties.repo https://copr.fedorainfracloud.org/coprs/kylegospo/rom-properties/repo/fedora-"${FEDORA_MAJOR_VERSION}"/kylegospo-rom-properties-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_kylegospo-webapp-manager.repo https://copr.fedorainfracloud.org/coprs/kylegospo/webapp-manager/repo/fedora-"${FEDORA_MAJOR_VERSION}"/kylegospo-webapp-manager-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_hhd-dev-hhd.repo https://copr.fedorainfracloud.org/coprs/hhd-dev/hhd/repo/fedora-"${FEDORA_MAJOR_VERSION}"/hhd-dev-hhd-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_che-nerd-fonts.repo https://copr.fedorainfracloud.org/coprs/che/nerd-fonts/repo/fedora-"${FEDORA_MAJOR_VERSION}"/che-nerd-fonts-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_sentry-switcheroo-control_discrete.repo https://copr.fedorainfracloud.org/coprs/sentry/switcheroo-control_discrete/repo/fedora-"${FEDORA_MAJOR_VERSION}"/sentry-switcheroo-control_discrete-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_hikariknight-looking-glass-kvmfr.repo https://copr.fedorainfracloud.org/coprs/hikariknight/looking-glass-kvmfr/repo/fedora-"${FEDORA_MAJOR_VERSION}"/hikariknight-looking-glass-kvmfr-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_mavit-discover-overlay.repo https://copr.fedorainfracloud.org/coprs/mavit/discover-overlay/repo/fedora-"${FEDORA_MAJOR_VERSION}"/mavit-discover-overlay-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
2024-12-22 08:49:46 -08:00
|
|
|
curl -Lo /etc/yum.repos.d/_copr_lizardbyte-beta.repo https://copr.fedorainfracloud.org/coprs/lizardbyte/beta/repo/fedora-"${FEDORA_MAJOR_VERSION}"/lizardbyte-beta-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
2024-11-18 14:07:24 -08:00
|
|
|
curl -Lo /etc/yum.repos.d/_copr_rok-cdemu.repo https://copr.fedorainfracloud.org/coprs/rok/cdemu/repo/fedora-"${FEDORA_MAJOR_VERSION}"/rok-cdemu-fedora-"${FEDORA_MAJOR_VERSION}".rep && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_rodoma92-kde-cdemu-manager.repo https://copr.fedorainfracloud.org/coprs/rodoma92/kde-cdemu-manager/repo/fedora-"${FEDORA_MAJOR_VERSION}"/rodoma92-kde-cdemu-manager-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_rodoma92-rmlint.repo https://copr.fedorainfracloud.org/coprs/rodoma92/rmlint/repo/fedora-"${FEDORA_MAJOR_VERSION}"/rodoma92-rmlint-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/_copr_ilyaz-lact.repo https://copr.fedorainfracloud.org/coprs/ilyaz/LACT/repo/fedora-"${FEDORA_MAJOR_VERSION}"/ilyaz-LACT-fedora-"${FEDORA_MAJOR_VERSION}".repo && \
|
2024-07-05 17:28:24 -07:00
|
|
|
curl -Lo /etc/yum.repos.d/tailscale.repo https://pkgs.tailscale.com/stable/fedora/tailscale.repo && \
|
2024-10-07 09:55:21 -07:00
|
|
|
rpm-ostree install \
|
|
|
|
https://mirrors.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm \
|
|
|
|
https://mirrors.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm && \
|
2024-07-05 17:28:24 -07:00
|
|
|
sed -i 's@gpgcheck=1@gpgcheck=0@g' /etc/yum.repos.d/tailscale.repo && \
|
2024-10-07 18:30:33 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
|
|
|
|
curl -Lo /etc/yum.repos.d/negativo17-fedora-steam.repo https://negativo17.org/repos/fedora-steam.repo && \
|
2024-10-08 01:06:15 -07:00
|
|
|
curl -Lo /etc/yum.repos.d/negativo17-fedora-rar.repo https://negativo17.org/repos/fedora-rar.repo && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-07-05 17:28:24 -07:00
|
|
|
ostree container commit
|
|
|
|
|
2024-10-18 23:55:13 -07:00
|
|
|
# Install kernel
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
2024-10-18 23:55:13 -07:00
|
|
|
--mount=type=bind,from=kernel,src=/tmp/rpms,dst=/tmp/kernel-rpms \
|
2024-07-21 15:38:12 -04:00
|
|
|
rpm-ostree cliwrap install-to-root / && \
|
2024-10-18 23:55:13 -07:00
|
|
|
echo "Will install ${KERNEL_FLAVOR} kernel" && \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
/tmp/kernel-rpms/kernel-[0-9]*.rpm \
|
|
|
|
/tmp/kernel-rpms/kernel-core-*.rpm \
|
|
|
|
/tmp/kernel-rpms/kernel-modules-*.rpm \
|
|
|
|
/tmp/kernel-rpms/kernel-uki-virt-*.rpm && \
|
2024-07-16 00:02:37 -07:00
|
|
|
rpm-ostree install \
|
2024-07-29 12:27:02 -07:00
|
|
|
scx-scheds && \
|
2024-12-24 19:33:15 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=copr:copr.fedorainfracloud.org:kylegospo:bazzite \
|
2024-12-24 20:58:02 -08:00
|
|
|
bootc \
|
|
|
|
rpm-ostree \
|
|
|
|
rpm-ostree-libs && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-07-05 17:28:24 -07:00
|
|
|
ostree container commit
|
|
|
|
|
|
|
|
# Setup firmware
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
mkdir -p /tmp/linux-firmware-neptune && \
|
2024-08-02 20:12:46 -07:00
|
|
|
curl -Lo /tmp/linux-firmware-neptune/cs35l41-dsp1-spk-cali.bin https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/cs35l41-dsp1-spk-cali.bin && \
|
|
|
|
curl -Lo /tmp/linux-firmware-neptune/cs35l41-dsp1-spk-cali.wmfw https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/cs35l41-dsp1-spk-cali.wmfw && \
|
|
|
|
curl -Lo /tmp/linux-firmware-neptune/cs35l41-dsp1-spk-prot.bin https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/cs35l41-dsp1-spk-prot.bin && \
|
|
|
|
curl -Lo /tmp/linux-firmware-neptune/cs35l41-dsp1-spk-prot.wmfw https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/cs35l41-dsp1-spk-prot.wmfw && \
|
2025-01-01 01:47:43 -08:00
|
|
|
curl -Lo /tmp/linux-firmware-neptune/rtl8822cu_fw.bin https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/rtl_bt/rtl8822cu_fw.bin && \
|
|
|
|
xz --check=crc32 /tmp/linux-firmware-neptune/* && \
|
|
|
|
mv -vf /tmp/linux-firmware-neptune/rtl8822cu_fw.bin.xz /usr/lib/firmware/rtl_bt/rtl8822cu_fw.bin.xz && \
|
2024-07-05 17:28:24 -07:00
|
|
|
mv -vf /tmp/linux-firmware-neptune/* /usr/lib/firmware/cirrus/ && \
|
|
|
|
rm -rf /tmp/linux-firmware-neptune && \
|
|
|
|
mkdir -p /tmp/linux-firmware-galileo && \
|
2024-08-02 20:12:46 -07:00
|
|
|
curl https://gitlab.com/evlaV/linux-firmware-neptune/-/archive/"${JUPITER_FIRMWARE_VERSION}"/linux-firmware-neptune-"${JUPITER_FIRMWARE_VERSION}".tar.gz?path=ath11k/QCA206X -o /tmp/linux-firmware-galileo/ath11k.tar.gz && \
|
2024-07-05 17:28:24 -07:00
|
|
|
tar --strip-components 1 --no-same-owner --no-same-permissions --no-overwrite-dir -xvf /tmp/linux-firmware-galileo/ath11k.tar.gz -C /tmp/linux-firmware-galileo && \
|
|
|
|
xz --check=crc32 /tmp/linux-firmware-galileo/ath11k/QCA206X/hw2.1/* && \
|
2024-10-11 16:41:07 -07:00
|
|
|
rm -f /usr/lib/firmware/ath11k/QCA206X/* && \
|
|
|
|
rm -rf /usr/lib/firmware/ath11k/QCA2066 && \
|
2024-07-05 17:28:24 -07:00
|
|
|
mv -vf /tmp/linux-firmware-galileo/ath11k/QCA206X /usr/lib/firmware/ath11k/QCA206X && \
|
|
|
|
rm -rf /tmp/linux-firmware-galileo/ath11k && \
|
|
|
|
rm -rf /tmp/linux-firmware-galileo/ath11k.tar.gz && \
|
|
|
|
ln -s QCA206X /usr/lib/firmware/ath11k/QCA2066 && \
|
2024-08-02 20:12:46 -07:00
|
|
|
curl -Lo /tmp/linux-firmware-galileo/hpbtfw21.tlv https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/qca/hpbtfw21.tlv && \
|
|
|
|
curl -Lo /tmp/linux-firmware-galileo/hpnv21.309 https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/qca/hpnv21.309 && \
|
|
|
|
curl -Lo /tmp/linux-firmware-galileo/hpnv21.bin https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/qca/hpnv21.bin && \
|
|
|
|
curl -Lo /tmp/linux-firmware-galileo/hpnv21g.309 https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/qca/hpnv21g.309 && \
|
|
|
|
curl -Lo /tmp/linux-firmware-galileo/hpnv21g.bin https://gitlab.com/evlaV/linux-firmware-neptune/-/raw/"${JUPITER_FIRMWARE_VERSION}"/qca/hpnv21g.bin && \
|
2024-07-05 17:28:24 -07:00
|
|
|
xz --check=crc32 /tmp/linux-firmware-galileo/* && \
|
|
|
|
mv -vf /tmp/linux-firmware-galileo/* /usr/lib/firmware/qca/ && \
|
|
|
|
rm -rf /tmp/linux-firmware-galileo && \
|
|
|
|
rm -rf /usr/share/alsa/ucm2/conf.d/acp5x/Valve-Jupiter-1.conf && \
|
2024-10-28 08:33:52 -07:00
|
|
|
ln -s /usr/local/firmware/aw87xxx_acf.bin /usr/lib/firmware/aw87xxx_acf.bin && \
|
|
|
|
ln -s /usr/local/firmware/aw87xxx_acf_air1s.bin /usr/lib/firmware/aw87xxx_acf_air1s.bin && \
|
|
|
|
ln -s /usr/local/firmware/aw87xxx_acf_kun.bin /usr/lib/firmware/aw87xxx_acf_kun.bin && \
|
|
|
|
ln -s /usr/local/firmware/aw87xxx_acf_minipro.bin /usr/lib/firmware/aw87xxx_acf_minipro.bin && \
|
|
|
|
ln -s /usr/local/firmware/aw87xxx_acf_orangepi.bin /usr/lib/firmware/aw87xxx_acf_orangepi.bin && \
|
|
|
|
ln -s /usr/local/firmware/aw87xxx_acf_airplus.bin /usr/lib/firmware/aw87xxx_acf_airplus.bin && \
|
|
|
|
ln -s /usr/local/firmware/aw87xxx_acf_flip.bin /usr/lib/firmware/aw87xxx_acf_flip.bin && \
|
2024-07-05 17:28:24 -07:00
|
|
|
if [[ "${IMAGE_FLAVOR}" =~ "asus" ]]; then \
|
2024-11-18 14:07:24 -08:00
|
|
|
curl -Lo /etc/yum.repos.d/_copr_lukenukem-asus-linux.repo https://copr.fedorainfracloud.org/coprs/lukenukem/asus-linux/repo/fedora-$(rpm -E %fedora)/lukenukem-asus-linux-fedora-$(rpm -E %fedora).repo && \
|
2024-07-05 17:28:24 -07:00
|
|
|
rpm-ostree install \
|
|
|
|
asusctl \
|
|
|
|
asusctl-rog-gui && \
|
|
|
|
git clone https://gitlab.com/asus-linux/firmware.git --depth 1 /tmp/asus-firmware && \
|
|
|
|
cp -rf /tmp/asus-firmware/* /usr/lib/firmware/ && \
|
|
|
|
rm -rf /tmp/asus-firmware \
|
2025-01-01 22:35:46 -07:00
|
|
|
; elif [[ "${IMAGE_FLAVOR}" == "surface" ]]; then \
|
2025-01-01 23:27:04 -07:00
|
|
|
curl -Lo /etc/yum.repos.d/linux-surface.repo https://pkg.surfacelinux.com/fedora/linux-surface.repo && \
|
2025-01-02 00:47:20 -07:00
|
|
|
rpm-ostree override remove \
|
|
|
|
libwacom \
|
|
|
|
libwacom-data \
|
|
|
|
--install libwacom-surface \
|
|
|
|
--install libwacom-surface-data && \
|
2025-01-01 22:35:46 -07:00
|
|
|
rpm-ostree install \
|
2025-01-01 23:27:04 -07:00
|
|
|
iptsd \
|
|
|
|
libcamera \
|
|
|
|
libcamera-tools \
|
|
|
|
libcamera-gstreamer \
|
|
|
|
libcamera-ipa \
|
|
|
|
pipewire-plugin-libcamera && \
|
2025-01-01 22:35:46 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/linux-surface.repo \
|
2024-07-05 17:28:24 -07:00
|
|
|
; fi && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-07-05 17:28:24 -07:00
|
|
|
ostree container commit
|
|
|
|
|
2024-10-07 15:28:33 -07:00
|
|
|
# Add ublue packages
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
--mount=type=bind,from=akmods,src=/rpms,dst=/tmp/akmods-rpms \
|
|
|
|
--mount=type=bind,from=akmods-extra,src=/rpms,dst=/tmp/akmods-extra-rpms \
|
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
|
2024-07-05 17:28:24 -07:00
|
|
|
rpm-ostree install \
|
|
|
|
/tmp/akmods-rpms/kmods/*kvmfr*.rpm \
|
|
|
|
/tmp/akmods-rpms/kmods/*xone*.rpm \
|
|
|
|
/tmp/akmods-rpms/kmods/*openrazer*.rpm \
|
|
|
|
/tmp/akmods-rpms/kmods/*v4l2loopback*.rpm \
|
|
|
|
/tmp/akmods-rpms/kmods/*wl*.rpm \
|
2024-10-30 10:20:21 -07:00
|
|
|
/tmp/akmods-rpms/kmods/*framework-laptop*.rpm \
|
2024-07-21 15:38:12 -04:00
|
|
|
/tmp/akmods-extra-rpms/kmods/*gcadapter_oc*.rpm \
|
|
|
|
/tmp/akmods-extra-rpms/kmods/*nct6687*.rpm \
|
|
|
|
/tmp/akmods-extra-rpms/kmods/*zenergy*.rpm \
|
2024-10-25 21:18:17 -07:00
|
|
|
/tmp/akmods-extra-rpms/kmods/*vhba*.rpm \
|
2024-12-27 13:19:07 -08:00
|
|
|
/tmp/akmods-extra-rpms/kmods/*gpd-fan*.rpm \
|
2024-07-21 15:38:12 -04:00
|
|
|
/tmp/akmods-extra-rpms/kmods/*ayaneo-platform*.rpm \
|
|
|
|
/tmp/akmods-extra-rpms/kmods/*ayn-platform*.rpm \
|
|
|
|
/tmp/akmods-extra-rpms/kmods/*bmi260*.rpm \
|
2024-10-30 10:33:13 -05:00
|
|
|
/tmp/akmods-extra-rpms/kmods/*ryzen-smu*.rpm \
|
|
|
|
/tmp/akmods-extra-rpms/kmods/*evdi*.rpm && \
|
2024-07-24 16:16:44 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=copr:copr.fedorainfracloud.org:ublue-os:staging \
|
|
|
|
fwupd \
|
|
|
|
fwupd-plugin-flashrom \
|
|
|
|
fwupd-plugin-modem-manager \
|
|
|
|
fwupd-plugin-uefi-capsule-data && \
|
2024-10-07 18:30:33 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-*.repo && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-07-05 17:28:24 -07:00
|
|
|
ostree container commit
|
|
|
|
|
2024-11-15 21:29:45 -08:00
|
|
|
# Install Valve's patched Mesa, Pipewire, Bluez, and Xwayland#
|
2024-02-14 12:13:57 -08:00
|
|
|
# Install patched switcheroo control with proper discrete GPU support
|
2024-11-15 21:29:45 -08:00
|
|
|
# Tempporary fix for GPU Encoding
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
2024-11-15 21:29:45 -08:00
|
|
|
rpm-ostree install \
|
|
|
|
mesa-dri-drivers.i686 && \
|
|
|
|
mkdir -p /tmp/mesa-fix64/dri && \
|
|
|
|
cp /usr/lib64/libgallium-*.so /tmp/mesa-fix64/ && \
|
|
|
|
cp /usr/lib64/dri/kms_swrast_dri.so /tmp/mesa-fix64/dri/ && \
|
|
|
|
cp /usr/lib64/dri/libdril_dri.so /tmp/mesa-fix64/dri/ && \
|
|
|
|
cp /usr/lib64/dri/swrast_dri.so /tmp/mesa-fix64/dri/ && \
|
|
|
|
cp /usr/lib64/dri/virtio_gpu_dri.so /tmp/mesa-fix64/dri/ && \
|
|
|
|
mkdir -p /tmp/mesa-fix32/dri && \
|
|
|
|
cp /usr/lib/libgallium-*.so /tmp/mesa-fix32/ && \
|
|
|
|
cp /usr/lib/dri/kms_swrast_dri.so /tmp/mesa-fix32/dri/ && \
|
|
|
|
cp /usr/lib/dri/libdril_dri.so /tmp/mesa-fix32/dri/ && \
|
|
|
|
cp /usr/lib/dri/swrast_dri.so /tmp/mesa-fix32/dri/ && \
|
|
|
|
cp /usr/lib/dri/virtio_gpu_dri.so /tmp/mesa-fix32/dri/ && \
|
2024-02-24 21:19:26 -08:00
|
|
|
rpm-ostree override replace \
|
2023-12-08 21:59:32 -08:00
|
|
|
--experimental \
|
|
|
|
--from repo=copr:copr.fedorainfracloud.org:kylegospo:bazzite-multilib \
|
2024-02-24 21:06:00 -08:00
|
|
|
mesa-libxatracker \
|
|
|
|
mesa-libglapi \
|
2023-12-08 21:59:32 -08:00
|
|
|
mesa-dri-drivers \
|
|
|
|
mesa-libgbm \
|
2024-02-24 21:06:00 -08:00
|
|
|
mesa-libEGL \
|
2023-12-08 21:59:32 -08:00
|
|
|
mesa-vulkan-drivers \
|
2024-02-24 21:06:00 -08:00
|
|
|
mesa-libGL \
|
2024-03-14 22:51:02 -07:00
|
|
|
pipewire \
|
|
|
|
pipewire-alsa \
|
|
|
|
pipewire-gstreamer \
|
2024-06-22 22:59:53 -07:00
|
|
|
pipewire-jack-audio-connection-kit \
|
|
|
|
pipewire-jack-audio-connection-kit-libs \
|
2024-03-14 22:51:02 -07:00
|
|
|
pipewire-libs \
|
|
|
|
pipewire-pulseaudio \
|
2024-05-12 23:44:31 -07:00
|
|
|
pipewire-utils \
|
2024-07-29 13:37:47 -07:00
|
|
|
pipewire-plugin-libcamera \
|
2024-05-20 15:47:38 -07:00
|
|
|
bluez \
|
|
|
|
bluez-obexd \
|
|
|
|
bluez-cups \
|
2024-05-20 16:10:59 -07:00
|
|
|
bluez-libs \
|
2024-05-12 23:44:31 -07:00
|
|
|
xorg-x11-server-Xwayland && \
|
2024-11-15 21:29:45 -08:00
|
|
|
rsync -a /tmp/mesa-fix64/ /usr/lib64/ && \
|
|
|
|
rsync -a /tmp/mesa-fix32/ /usr/lib/ && \
|
|
|
|
rm -rf /tmp/mesa-fix64 && \
|
|
|
|
rm -rf /tmp/mesa-fix32 && \
|
2024-10-07 18:30:33 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/rpmfusion-*.repo && \
|
2024-02-01 10:53:35 -08:00
|
|
|
rpm-ostree install \
|
2024-05-23 22:00:46 -07:00
|
|
|
libaacs \
|
2024-05-23 23:08:07 -07:00
|
|
|
libbdplus \
|
2024-12-27 18:22:52 -08:00
|
|
|
libbluray \
|
|
|
|
libbluray-utils && \
|
2024-10-07 18:30:33 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-*.repo && \
|
2024-02-14 12:13:57 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=copr:copr.fedorainfracloud.org:sentry:switcheroo-control_discrete \
|
2024-04-10 12:20:41 -07:00
|
|
|
switcheroo-control && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-12-08 21:59:32 -08:00
|
|
|
|
2023-07-28 00:17:26 -07:00
|
|
|
# Remove unneeded packages
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
rpm-ostree override remove \
|
2023-11-02 01:15:54 -07:00
|
|
|
ublue-os-update-services \
|
|
|
|
firefox \
|
|
|
|
firefox-langpacks \
|
2024-01-18 12:00:03 -08:00
|
|
|
htop && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-02-09 11:08:39 -08:00
|
|
|
|
|
|
|
# Install new packages
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
rpm-ostree install \
|
2023-10-26 14:38:37 -07:00
|
|
|
discover-overlay \
|
2025-01-01 01:32:53 -08:00
|
|
|
sunshine \
|
2023-10-26 14:38:37 -07:00
|
|
|
python3-pip \
|
|
|
|
libadwaita \
|
|
|
|
duperemove \
|
2024-09-16 09:53:28 -07:00
|
|
|
cpulimit \
|
2024-04-09 09:35:59 -07:00
|
|
|
sqlite \
|
2023-10-26 14:38:37 -07:00
|
|
|
xwininfo \
|
|
|
|
xrandr \
|
|
|
|
compsize \
|
2024-05-26 11:01:39 -06:00
|
|
|
ryzenadj \
|
2024-07-01 23:28:42 -07:00
|
|
|
input-remapper \
|
2024-09-24 00:50:03 -07:00
|
|
|
tuned-profiles-cpu-partitioning \
|
2024-02-16 19:33:38 -08:00
|
|
|
i2c-tools \
|
2024-03-14 22:05:41 -07:00
|
|
|
udica \
|
2023-11-29 14:05:29 -08:00
|
|
|
ladspa-caps-plugins \
|
|
|
|
ladspa-noise-suppression-for-voice \
|
2024-10-27 08:04:00 -07:00
|
|
|
pipewire-module-filter-chain-sofa \
|
2023-10-26 14:38:37 -07:00
|
|
|
python3-icoextract \
|
|
|
|
tailscale \
|
2023-12-29 23:12:22 -08:00
|
|
|
webapp-manager \
|
2023-10-26 14:38:37 -07:00
|
|
|
btop \
|
2024-12-30 09:55:51 -08:00
|
|
|
duf \
|
2023-10-26 14:38:37 -07:00
|
|
|
fish \
|
2024-01-01 15:09:07 -08:00
|
|
|
lshw \
|
2023-10-26 14:38:37 -07:00
|
|
|
xdotool \
|
|
|
|
wmctrl \
|
|
|
|
libcec \
|
|
|
|
yad \
|
|
|
|
f3 \
|
2024-06-24 23:40:09 -07:00
|
|
|
pulseaudio-utils \
|
2023-10-26 14:38:37 -07:00
|
|
|
lzip \
|
2024-10-08 01:06:15 -07:00
|
|
|
rar \
|
2023-10-26 14:38:37 -07:00
|
|
|
libxcrypt-compat \
|
|
|
|
mesa-libGLU \
|
|
|
|
vulkan-tools \
|
2023-11-28 14:01:16 -07:00
|
|
|
glibc.i686 \
|
2023-11-08 00:58:55 -08:00
|
|
|
extest.i686 \
|
2024-01-06 09:04:44 -07:00
|
|
|
xwiimote-ng \
|
2023-10-26 14:38:37 -07:00
|
|
|
twitter-twemoji-fonts \
|
2023-11-08 12:37:25 -08:00
|
|
|
google-noto-sans-cjk-fonts \
|
2023-10-26 14:38:37 -07:00
|
|
|
lato-fonts \
|
2023-11-19 19:49:53 -08:00
|
|
|
fira-code-fonts \
|
2024-01-26 15:12:42 -08:00
|
|
|
nerd-fonts \
|
2024-04-21 10:49:04 -07:00
|
|
|
fastfetch \
|
2023-11-19 19:49:53 -08:00
|
|
|
glow \
|
2023-12-06 09:13:24 -08:00
|
|
|
gum \
|
2024-04-06 12:50:15 -07:00
|
|
|
vim \
|
2024-01-31 23:44:47 -08:00
|
|
|
cockpit-networkmanager \
|
|
|
|
cockpit-podman \
|
|
|
|
cockpit-selinux \
|
|
|
|
cockpit-system \
|
|
|
|
cockpit-navigator \
|
2024-03-23 22:33:30 -07:00
|
|
|
cockpit-storaged \
|
2024-07-27 22:40:28 -07:00
|
|
|
topgrade \
|
2024-06-23 08:16:06 +03:00
|
|
|
ydotool \
|
2024-10-19 18:42:45 -07:00
|
|
|
yafti \
|
2024-08-02 11:38:57 -07:00
|
|
|
stress-ng \
|
2024-10-26 08:44:14 +02:00
|
|
|
btrfs-assistant \
|
2025-01-08 09:33:34 -08:00
|
|
|
podman-compose \
|
2024-12-22 08:53:05 -08:00
|
|
|
edk2-ovmf \
|
|
|
|
qemu \
|
|
|
|
libvirt \
|
2024-08-20 13:17:56 -07:00
|
|
|
lsb_release && \
|
2024-07-27 22:40:28 -07:00
|
|
|
rpm-ostree install \
|
2024-01-25 19:13:08 -08:00
|
|
|
ublue-update && \
|
2024-08-07 10:02:32 -07:00
|
|
|
mkdir -p /etc/xdg/autostart && \
|
2024-02-23 15:00:32 -08:00
|
|
|
sed -i '1s/^/[include]\npaths = ["\/etc\/ublue-os\/topgrade.toml"]\n\n/' /usr/share/ublue-update/topgrade-user.toml && \
|
2024-08-07 10:02:32 -07:00
|
|
|
sed -i 's/min_battery_percent.*/min_battery_percent = 20.0/' /etc/ublue-update/ublue-update.toml && \
|
|
|
|
sed -i 's/max_cpu_load_percent.*/max_cpu_load_percent = 100.0/' /etc/ublue-update/ublue-update.toml && \
|
|
|
|
sed -i 's/max_mem_percent.*/max_mem_percent = 90.0/' /etc/ublue-update/ublue-update.toml && \
|
|
|
|
sed -i 's/dbus_notify.*/dbus_notify = false/' /etc/ublue-update/ublue-update.toml && \
|
2024-10-26 08:44:14 +02:00
|
|
|
sed -i 's/ --xdg-runtime=\\"${XDG_RUNTIME_DIR}\\"//g' /usr/bin/btrfs-assistant-launcher && \
|
2024-04-15 17:20:25 -07:00
|
|
|
curl -Lo /usr/bin/installcab https://raw.githubusercontent.com/KyleGospo/steam-proton-mf-wmv/master/installcab.py && \
|
|
|
|
chmod +x /usr/bin/installcab && \
|
|
|
|
curl -Lo /usr/bin/install-mf-wmv https://github.com/KyleGospo/steam-proton-mf-wmv/blob/master/install-mf-wmv.sh && \
|
|
|
|
chmod +x /usr/bin/install-mf-wmv && \
|
2024-12-29 06:20:34 +01:00
|
|
|
curl -Lo /tmp/ls-iommu.tar.gz $(curl https://api.github.com/repos/HikariKnight/ls-iommu/releases/latest | jq -r '.assets[] | select(.name| test(".*x86_64.tar.gz$")).browser_download_url') && \
|
|
|
|
mkdir -p /tmp/ls-iommu && \
|
|
|
|
tar --no-same-owner --no-same-permissions --no-overwrite-dir -xvzf /tmp/ls-iommu.tar.gz -C /tmp/ls-iommu && \
|
|
|
|
rm -f /tmp/ls-iommu.tar.gz && \
|
|
|
|
cp -r /tmp/ls-iommu/ls-iommu /usr/bin/ && \
|
|
|
|
rm -rf /tmp/ls-iommu && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-06-18 19:22:17 +00:00
|
|
|
|
2023-12-05 22:59:31 -08:00
|
|
|
# Install Steam & Lutris, plus supporting packages
|
2024-12-27 10:19:05 -08:00
|
|
|
# Downgrade ibus to fix an issue with the Steam keyboard
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
2024-12-27 10:34:12 -08:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=copr:copr.fedorainfracloud.org:kylegospo:bazzite \
|
|
|
|
ibus \
|
|
|
|
ibus-gtk2 \
|
|
|
|
ibus-gtk3 \
|
|
|
|
ibus-gtk4 \
|
|
|
|
ibus-libs \
|
|
|
|
ibus-panel \
|
2024-12-27 11:17:02 -08:00
|
|
|
ibus-setup \
|
|
|
|
ibus-xinit && \
|
2024-07-21 15:38:12 -04:00
|
|
|
rpm-ostree install \
|
2024-04-28 16:39:53 -07:00
|
|
|
jupiter-sd-mounting-btrfs \
|
2023-12-13 09:44:27 -08:00
|
|
|
at-spi2-core.i686 \
|
|
|
|
atk.i686 \
|
2023-10-07 17:15:39 -07:00
|
|
|
vulkan-loader.i686 \
|
|
|
|
alsa-lib.i686 \
|
|
|
|
fontconfig.i686 \
|
|
|
|
gtk2.i686 \
|
|
|
|
libICE.i686 \
|
|
|
|
libnsl.i686 \
|
|
|
|
libxcrypt-compat.i686 \
|
|
|
|
libpng12.i686 \
|
|
|
|
libXext.i686 \
|
|
|
|
libXinerama.i686 \
|
|
|
|
libXtst.i686 \
|
|
|
|
libXScrnSaver.i686 \
|
2024-07-17 23:40:23 -07:00
|
|
|
NetworkManager-libnm.i686 \
|
2023-10-07 17:15:39 -07:00
|
|
|
nss.i686 \
|
|
|
|
pulseaudio-libs.i686 \
|
|
|
|
libcurl.i686 \
|
|
|
|
systemd-libs.i686 \
|
|
|
|
libva.i686 \
|
|
|
|
libvdpau.i686 \
|
|
|
|
libdbusmenu-gtk3.i686 \
|
|
|
|
libatomic.i686 \
|
2023-10-17 00:04:07 -07:00
|
|
|
pipewire-alsa.i686 \
|
2024-06-24 08:22:21 -07:00
|
|
|
gobject-introspection \
|
2024-10-07 15:28:33 -07:00
|
|
|
clinfo \
|
2023-10-07 17:15:39 -07:00
|
|
|
steam && \
|
|
|
|
rpm-ostree install \
|
|
|
|
lutris \
|
2024-07-26 15:25:32 -07:00
|
|
|
umu-launcher \
|
2023-10-31 10:10:37 -07:00
|
|
|
wine-core.x86_64 \
|
|
|
|
wine-core.i686 \
|
2023-10-31 12:40:52 -07:00
|
|
|
wine-pulseaudio.x86_64 \
|
|
|
|
wine-pulseaudio.i686 \
|
2024-09-08 00:14:00 -07:00
|
|
|
libFAudio.x86_64 \
|
|
|
|
libFAudio.i686 \
|
2023-10-07 17:15:39 -07:00
|
|
|
winetricks \
|
2023-10-08 10:11:30 -07:00
|
|
|
latencyflex-vulkan-layer \
|
2024-10-07 15:28:33 -07:00
|
|
|
mesa-vulkan-drivers.i686 \
|
|
|
|
mesa-va-drivers.i686 \
|
2023-10-16 23:51:00 -07:00
|
|
|
vkBasalt.x86_64 \
|
|
|
|
vkBasalt.i686 \
|
2024-10-07 18:30:33 -07:00
|
|
|
mangohud.x86_64 \
|
|
|
|
mangohud.i686 \
|
2024-09-05 19:25:49 -07:00
|
|
|
libobs_vkcapture.x86_64 \
|
2024-10-08 10:39:17 -07:00
|
|
|
libobs_glcapture.x86_64 \
|
|
|
|
libobs_vkcapture.i686 \
|
|
|
|
libobs_glcapture.i686 && \
|
2023-12-19 00:47:06 -08:00
|
|
|
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/winetricks.desktop && \
|
2024-04-15 17:20:25 -07:00
|
|
|
curl -Lo /tmp/latencyflex.tar.xz $(curl https://api.github.com/repos/ishitatsuyuki/LatencyFleX/releases/latest | jq -r '.assets[] | select(.name| test(".*.tar.xz$")).browser_download_url') && \
|
2023-10-30 10:20:42 -07:00
|
|
|
mkdir -p /tmp/latencyflex && \
|
2024-04-17 19:27:03 -07:00
|
|
|
tar --no-same-owner --no-same-permissions --no-overwrite-dir --strip-components 1 -xvf /tmp/latencyflex.tar.xz -C /tmp/latencyflex && \
|
2023-10-30 10:20:42 -07:00
|
|
|
rm -f /tmp/latencyflex.tar.xz && \
|
2023-10-30 10:47:22 -07:00
|
|
|
cp -r /tmp/latencyflex/wine/usr/lib/wine/* /usr/lib64/wine/ && \
|
2023-10-30 10:35:17 -07:00
|
|
|
rm -rf /tmp/latencyflex && \
|
2024-04-15 17:20:25 -07:00
|
|
|
curl -Lo /usr/bin/latencyflex https://raw.githubusercontent.com/KyleGospo/LatencyFleX-Installer/main/install.sh && \
|
|
|
|
chmod +x /usr/bin/latencyflex && \
|
2023-10-30 13:22:01 -07:00
|
|
|
sed -i 's@/usr/lib/wine/@/usr/lib64/wine/@g' /usr/bin/latencyflex && \
|
|
|
|
sed -i 's@"dxvk.conf"@"/usr/share/latencyflex/dxvk.conf"@g' /usr/bin/latencyflex && \
|
2024-02-13 23:13:27 -08:00
|
|
|
chmod +x /usr/bin/latencyflex && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-11-10 13:19:01 -08:00
|
|
|
|
|
|
|
# Configure KDE & GNOME
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
2024-04-18 23:14:44 -07:00
|
|
|
rpm-ostree install \
|
2024-06-22 12:40:49 -07:00
|
|
|
qt \
|
|
|
|
krdp && \
|
2024-10-19 15:54:00 -07:00
|
|
|
rpm-ostree override remove \
|
|
|
|
plasma-welcome \
|
|
|
|
plasma-welcome-fedora && \
|
2024-04-10 12:20:41 -07:00
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
2024-04-27 22:04:58 -07:00
|
|
|
--from repo=copr:copr.fedorainfracloud.org:ublue-os:staging \
|
2024-04-16 16:58:50 -07:00
|
|
|
kf6-kio-doc \
|
|
|
|
kf6-kio-widgets-libs \
|
|
|
|
kf6-kio-core-libs \
|
|
|
|
kf6-kio-widgets \
|
|
|
|
kf6-kio-file-widgets \
|
|
|
|
kf6-kio-core \
|
|
|
|
kf6-kio-gui && \
|
2024-04-10 12:20:41 -07:00
|
|
|
rpm-ostree install \
|
|
|
|
steamdeck-kde-presets-desktop \
|
2024-06-18 14:34:28 -07:00
|
|
|
wallpaper-engine-kde-plugin \
|
2024-04-10 12:20:41 -07:00
|
|
|
kdeconnectd \
|
|
|
|
kdeplasma-addons \
|
2024-04-16 16:58:50 -07:00
|
|
|
rom-properties-kf6 \
|
2024-04-10 12:20:41 -07:00
|
|
|
joystickwake \
|
2024-06-17 14:53:42 -07:00
|
|
|
fcitx5-mozc \
|
2024-06-24 02:00:24 +10:00
|
|
|
fcitx5-chinese-addons \
|
2024-07-23 21:55:14 -05:00
|
|
|
fcitx5-hangul \
|
2024-04-10 12:20:41 -07:00
|
|
|
ptyxis && \
|
2024-08-23 10:14:20 -07:00
|
|
|
git clone https://github.com/catsout/wallpaper-engine-kde-plugin.git --depth 1 --branch main /tmp/wallpaper-engine-kde-plugin && \
|
2024-06-18 14:34:28 -07:00
|
|
|
kpackagetool6 --type=Plasma/Wallpaper --global --install /tmp/wallpaper-engine-kde-plugin/plugin && \
|
|
|
|
rm -rf /tmp/wallpaper-engine-kde-plugin && \
|
2024-04-10 12:20:41 -07:00
|
|
|
sed -i '/<entry name="launchers" type="StringList">/,/<\/entry>/ s/<default>[^<]*<\/default>/<default>preferred:\/\/browser,applications:steam.desktop,applications:net.lutris.Lutris.desktop,applications:org.gnome.Ptyxis.desktop,applications:org.kde.discover.desktop,preferred:\/\/filemanager<\/default>/' /usr/share/plasma/plasmoids/org.kde.plasma.taskmanager/contents/config/main.xml && \
|
|
|
|
sed -i '/<entry name="favorites" type="StringList">/,/<\/entry>/ s/<default>[^<]*<\/default>/<default>preferred:\/\/browser,steam.desktop,net.lutris.Lutris.desktop,systemsettings.desktop,org.kde.dolphin.desktop,org.kde.kate.desktop,org.gnome.Ptyxis.desktop,org.kde.discover.desktop,system-update.desktop<\/default>/' /usr/share/plasma/plasmoids/org.kde.plasma.kickoff/contents/config/main.xml && \
|
|
|
|
sed -i 's@\[Desktop Action new-window\]@\[Desktop Action new-window\]\nX-KDE-Shortcuts=Ctrl+Alt+T@g' /usr/share/applications/org.gnome.Ptyxis.desktop && \
|
2024-08-28 12:44:57 -07:00
|
|
|
sed -i '/^Comment/d' /usr/share/applications/org.gnome.Ptyxis.desktop && \
|
2024-04-10 12:20:41 -07:00
|
|
|
sed -i 's@Exec=ptyxis@Exec=kde-ptyxis@g' /usr/share/applications/org.gnome.Ptyxis.desktop && \
|
|
|
|
sed -i 's@Keywords=@Keywords=konsole;console;@g' /usr/share/applications/org.gnome.Ptyxis.desktop && \
|
|
|
|
cp /usr/share/applications/org.gnome.Ptyxis.desktop /usr/share/kglobalaccel/org.gnome.Ptyxis.desktop && \
|
2024-08-28 16:20:47 -07:00
|
|
|
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/org.kde.konsole.desktop && \
|
|
|
|
rm -f /usr/share/kglobalaccel/org.kde.konsole.desktop && \
|
2024-08-20 08:46:19 -07:00
|
|
|
setcap 'cap_net_raw+ep' /usr/libexec/ksysguard/ksgrd_network_helper \
|
2024-04-10 12:20:41 -07:00
|
|
|
; else \
|
|
|
|
rpm-ostree override replace \
|
|
|
|
--experimental \
|
|
|
|
--from repo=copr:copr.fedorainfracloud.org:ublue-os:staging \
|
2024-06-22 16:28:28 -07:00
|
|
|
gnome-shell && \
|
2024-04-10 12:20:41 -07:00
|
|
|
rpm-ostree install \
|
|
|
|
nautilus-gsconnect \
|
|
|
|
steamdeck-backgrounds \
|
|
|
|
gnome-randr-rust \
|
|
|
|
gnome-shell-extension-user-theme \
|
|
|
|
gnome-shell-extension-gsconnect \
|
|
|
|
gnome-shell-extension-compiz-windows-effect \
|
2024-04-27 22:04:58 -07:00
|
|
|
gnome-shell-extension-compiz-alike-magic-lamp-effect \
|
2024-04-10 12:20:41 -07:00
|
|
|
gnome-shell-extension-just-perfection \
|
2024-04-20 00:19:23 -07:00
|
|
|
gnome-shell-extension-blur-my-shell \
|
2024-04-10 12:20:41 -07:00
|
|
|
gnome-shell-extension-hanabi \
|
|
|
|
gnome-shell-extension-gamerzilla \
|
|
|
|
gnome-shell-extension-bazzite-menu \
|
|
|
|
gnome-shell-extension-hotedge \
|
|
|
|
gnome-shell-extension-caffeine \
|
|
|
|
rom-properties-gtk3 \
|
2024-06-17 14:53:42 -07:00
|
|
|
ibus-mozc \
|
2024-04-10 12:20:41 -07:00
|
|
|
openssh-askpass && \
|
|
|
|
rpm-ostree override remove \
|
|
|
|
gnome-classic-session \
|
|
|
|
gnome-tour \
|
|
|
|
gnome-extensions-app \
|
2024-09-16 09:48:59 -07:00
|
|
|
gnome-system-monitor \
|
2024-08-26 21:56:56 -07:00
|
|
|
gnome-initial-setup \
|
|
|
|
gnome-shell-extension-background-logo \
|
|
|
|
gnome-shell-extension-apps-menu && \
|
2024-08-07 18:50:22 -07:00
|
|
|
mkdir -p /tmp/tilingshell && \
|
|
|
|
curl -s https://api.github.com/repos/domferr/tilingshell/releases/latest | \
|
|
|
|
jq -r '.assets | sort_by(.created_at) | .[] | select (.name|test("^tilingshell@.*zip$")) | .browser_download_url' | \
|
|
|
|
wget -qi - -O /tmp/tilingshell/tilingshell@ferrarodomenico.com.zip && \
|
2024-09-09 16:52:10 -07:00
|
|
|
curl -Lo /usr/share/thumbnailers/exe-thumbnailer.thumbnailer https://raw.githubusercontent.com/jlu5/icoextract/master/exe-thumbnailer.thumbnailer && \
|
2024-08-07 18:50:22 -07:00
|
|
|
unzip /tmp/tilingshell/tilingshell@ferrarodomenico.com.zip -d /usr/share/gnome-shell/extensions/tilingshell@ferrarodomenico.com && \
|
|
|
|
rm -rf /tmp/tilingshell && \
|
2024-04-10 12:20:41 -07:00
|
|
|
systemctl enable dconf-update.service \
|
|
|
|
; fi && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-11-10 13:19:01 -08:00
|
|
|
|
|
|
|
# Install Gamescope, ROCM, and Waydroid on non-Nvidia images
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
rpm-ostree install \
|
2024-04-29 23:54:21 -07:00
|
|
|
gamescope.x86_64 \
|
|
|
|
gamescope-libs.i686 \
|
2023-12-13 14:50:47 -08:00
|
|
|
gamescope-shaders \
|
2023-11-10 13:19:01 -08:00
|
|
|
rocm-hip \
|
|
|
|
rocm-opencl \
|
|
|
|
rocm-clinfo \
|
|
|
|
waydroid \
|
2024-02-01 17:31:59 -08:00
|
|
|
cage \
|
|
|
|
wlr-randr && \
|
2024-04-10 12:20:41 -07:00
|
|
|
sed -i~ -E 's/=.\$\(command -v (nft|ip6?tables-legacy).*/=/g' /usr/lib/waydroid/data/scripts/waydroid-net.sh && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-07-30 14:13:55 -06:00
|
|
|
|
2024-05-16 00:49:40 -04:00
|
|
|
# Homebrew
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
touch /.dockerenv && \
|
2024-05-16 00:49:40 -04:00
|
|
|
mkdir -p /var/home && \
|
|
|
|
mkdir -p /var/roothome && \
|
|
|
|
curl -Lo /tmp/brew-install https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh && \
|
|
|
|
chmod +x /tmp/brew-install && \
|
|
|
|
/tmp/brew-install && \
|
2024-05-16 08:57:49 -04:00
|
|
|
tar --zstd -cvf /usr/share/homebrew.tar.zst /home/linuxbrew/.linuxbrew && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-05-16 00:49:40 -04:00
|
|
|
ostree container commit
|
2024-05-15 20:01:14 -04:00
|
|
|
|
2024-07-28 19:47:19 -04:00
|
|
|
# Bash Prexec
|
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
2024-07-28 22:41:39 -07:00
|
|
|
curl -Lo /usr/share/bash-prexec https://raw.githubusercontent.com/ublue-os/bash-preexec/master/bash-preexec.sh &&\
|
2024-07-28 19:47:19 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
|
|
|
ostree container commit
|
|
|
|
|
2023-06-18 19:22:17 +00:00
|
|
|
# Cleanup & Finalize
|
2024-04-11 11:59:50 -07:00
|
|
|
COPY system_files/overrides /
|
2024-06-25 12:46:36 -07:00
|
|
|
RUN rm -f /etc/profile.d/toolbox.sh && \
|
2024-07-21 15:38:12 -04:00
|
|
|
mkdir -p /var/tmp && chmod 1777 /var/tmp && \
|
2024-06-15 17:09:31 -07:00
|
|
|
cp --no-dereference --preserve=links /usr/lib/libdrm.so.2 /usr/lib/libdrm.so && \
|
|
|
|
cp --no-dereference --preserve=links /usr/lib64/libdrm.so.2 /usr/lib64/libdrm.so && \
|
2023-11-10 13:19:01 -08:00
|
|
|
sed -i 's@/usr/bin/steam@/usr/bin/bazzite-steam@g' /usr/share/applications/steam.desktop && \
|
2025-01-09 06:23:32 +01:00
|
|
|
echo "Replace steam BPM shortcut action" && \
|
|
|
|
sed -i 's@Exec=steam steam://open/bigpicture@Exec=/usr/bin/bazzite-steam-bpm@g' /usr/share/applications/steam.desktop && \
|
2024-08-07 10:02:32 -07:00
|
|
|
mkdir -p /etc/skel/.config/autostart/ && \
|
|
|
|
cp "/usr/share/applications/steam.desktop" "/etc/skel/.config/autostart/steam.desktop" && \
|
|
|
|
sed -i 's@/usr/bin/bazzite-steam %U@/usr/bin/bazzite-steam -silent %U@g' /etc/skel/.config/autostart/steam.desktop && \
|
2024-01-22 18:59:12 -08:00
|
|
|
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/fish.desktop && \
|
2024-01-25 23:50:08 -08:00
|
|
|
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/nvtop.desktop && \
|
|
|
|
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/btop.desktop && \
|
2024-07-28 09:18:30 -07:00
|
|
|
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/yad-icon-browser.desktop && \
|
2024-06-24 14:20:20 -07:00
|
|
|
sed -i 's/#UserspaceHID.*/UserspaceHID=true/' /etc/bluetooth/input.conf && \
|
2024-08-14 08:12:09 -07:00
|
|
|
sed -i "s/^SCX_SCHEDULER=.*/SCX_SCHEDULER=scx_lavd/" /etc/default/scx && \
|
2024-01-05 15:10:26 -08:00
|
|
|
rm -f /usr/share/vulkan/icd.d/lvp_icd.*.json && \
|
2024-08-07 10:02:32 -07:00
|
|
|
mkdir -p "/etc/profile.d/" && \
|
2023-07-28 00:17:26 -07:00
|
|
|
ln -s "/usr/share/ublue-os/firstboot/launcher/login-profile.sh" \
|
2024-08-07 10:02:32 -07:00
|
|
|
"/etc/profile.d/ublue-firstboot.sh" && \
|
|
|
|
mkdir -p "/etc/xdg/autostart" && \
|
|
|
|
cp "/usr/share/applications/discover_overlay.desktop" "/etc/xdg/autostart/discover_overlay.desktop" && \
|
|
|
|
sed -i 's@Exec=discover-overlay@Exec=/usr/bin/bazzite-discover-overlay@g' /etc/xdg/autostart/discover_overlay.desktop && \
|
2023-12-18 20:03:58 -08:00
|
|
|
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/discover_overlay.desktop && \
|
2023-08-05 19:58:58 -06:00
|
|
|
cp "/usr/share/ublue-os/firstboot/yafti.yml" "/etc/yafti.yml" && \
|
2024-01-14 14:43:57 -08:00
|
|
|
echo "import \"/usr/share/ublue-os/just/80-bazzite.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-02-15 20:25:43 +01:00
|
|
|
echo "import \"/usr/share/ublue-os/just/81-bazzite-fixes.just\"" >> /usr/share/ublue-os/justfile && \
|
|
|
|
echo "import \"/usr/share/ublue-os/just/82-bazzite-apps.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-10-25 21:18:17 -07:00
|
|
|
echo "import \"/usr/share/ublue-os/just/82-bazzite-cdemu.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-02-15 20:25:43 +01:00
|
|
|
echo "import \"/usr/share/ublue-os/just/82-bazzite-sunshine.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-10-25 21:18:17 -07:00
|
|
|
echo "import \"/usr/share/ublue-os/just/82-bazzite-rmlint.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-02-15 20:25:43 +01:00
|
|
|
echo "import \"/usr/share/ublue-os/just/82-bazzite-waydroid.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-02-15 20:03:03 +01:00
|
|
|
echo "import \"/usr/share/ublue-os/just/83-bazzite-audio.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-02-15 19:36:07 +01:00
|
|
|
echo "import \"/usr/share/ublue-os/just/84-bazzite-virt.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-01-20 13:27:25 -08:00
|
|
|
echo "import \"/usr/share/ublue-os/just/85-bazzite-image.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-11-05 16:17:51 +02:00
|
|
|
echo "import \"/usr/share/ublue-os/just/86-bazzite-windows.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-01-22 00:08:15 -08:00
|
|
|
echo "import \"/usr/share/ublue-os/just/90-bazzite-de.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-10-08 12:24:25 +02:00
|
|
|
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
2024-11-17 21:21:58 -08:00
|
|
|
systemctl enable usr-share-sddm-themes.mount && \
|
2024-10-08 12:24:25 +02:00
|
|
|
mkdir -p "/usr/share/ublue-os/dconfs/desktop-kinoite/" && \
|
|
|
|
cp "/usr/share/glib-2.0/schemas/zz0-"*"-bazzite-desktop-kinoite-"*".gschema.override" "/usr/share/ublue-os/dconfs/desktop-kinoite/" && \
|
|
|
|
find "/etc/dconf/db/distro.d/" -maxdepth 1 -type f -exec cp {} "/usr/share/ublue-os/dconfs/desktop-kinoite/" \; && \
|
|
|
|
dconf-override-converter to-dconf "/usr/share/ublue-os/dconfs/desktop-kinoite/zz0-"*"-bazzite-desktop-kinoite-"*".gschema.override" && \
|
2024-10-08 14:50:18 -07:00
|
|
|
rm "/usr/share/ublue-os/dconfs/desktop-kinoite/zz0-"*"-bazzite-desktop-kinoite-"*".gschema.override" \
|
2024-10-08 12:24:25 +02:00
|
|
|
; else \
|
|
|
|
mkdir -p "/usr/share/ublue-os/dconfs/desktop-silverblue/" && \
|
|
|
|
cp "/usr/share/glib-2.0/schemas/zz0-"*"-bazzite-desktop-silverblue-"*".gschema.override" "/usr/share/ublue-os/dconfs/desktop-silverblue/" && \
|
|
|
|
find "/etc/dconf/db/distro.d/" -maxdepth 1 -type f -exec cp {} "/usr/share/ublue-os/dconfs/desktop-silverblue/" \; && \
|
|
|
|
dconf-override-converter to-dconf "/usr/share/ublue-os/dconfs/desktop-silverblue/zz0-"*"-bazzite-desktop-silverblue-"*".gschema.override" && \
|
|
|
|
sed -i 's/\[org.gtk.Settings.FileChooser\]/\[org\/gtk\/settings\/file-chooser\]/g; s/\[org.gtk.gtk4.Settings.FileChooser\]/\[org\/gtk\/gtk4\/settings\/file-chooser\]/g' "/usr/share/ublue-os/dconfs/desktop-silverblue/zz0-00-bazzite-desktop-silverblue-global" && \
|
2024-10-08 14:50:18 -07:00
|
|
|
rm "/usr/share/ublue-os/dconfs/desktop-silverblue/zz0-"*"-bazzite-desktop-silverblue-"*".gschema.override" \
|
2024-10-08 12:24:25 +02:00
|
|
|
; fi && \
|
|
|
|
mkdir -p /tmp/bazzite-schema-test && \
|
|
|
|
find "/usr/share/glib-2.0/schemas/" -type f ! -name "*.gschema.override" -exec cp {} "/tmp/bazzite-schema-test/" \; && \
|
|
|
|
cp "/usr/share/glib-2.0/schemas/zz0-"*".gschema.override" "/tmp/bazzite-schema-test/" && \
|
|
|
|
echo "Running error test for Bazzite Desktop gschema override. Aborting if failed." && \
|
|
|
|
glib-compile-schemas --strict /tmp/bazzite-schema-test && \
|
|
|
|
echo "Compiling gschema to include Bazzite Desktop setting overrides" && \
|
|
|
|
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null && \
|
|
|
|
rm -r /tmp/bazzite-schema-test && \
|
2023-08-10 09:04:05 -06:00
|
|
|
sed -i 's/stage/none/g' /etc/rpm-ostreed.conf && \
|
2023-10-13 14:35:10 -06:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
|
2023-06-23 11:39:07 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
|
2023-08-09 13:07:39 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite-multilib.repo && \
|
2024-01-25 15:10:15 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-staging.repo && \
|
2023-10-09 09:22:49 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \
|
2023-07-03 23:26:12 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-obs-vkcapture.repo && \
|
2023-07-05 12:18:47 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-wallpaper-engine-kde-plugin.repo && \
|
2023-07-25 10:48:05 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ycollet-audinux.repo && \
|
2023-09-06 01:10:07 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-rom-properties.repo && \
|
2023-12-29 23:12:22 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-webapp-manager.repo && \
|
2024-01-06 14:22:27 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_hhd-dev-hhd.repo && \
|
2024-01-13 14:44:23 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_che-nerd-fonts.repo && \
|
2024-02-14 12:13:57 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_sentry-switcheroo-control_discrete.repo && \
|
2024-04-17 19:14:23 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_mavit-discover-overlay.repo && \
|
2024-12-22 08:49:46 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_lizardbyte-beta.repo && \
|
2024-04-22 19:49:23 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_hikariknight-looking-glass-kvmfr.repo && \
|
2023-09-20 14:58:49 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/tailscale.repo && \
|
2023-11-19 19:49:53 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/charm.repo && \
|
2024-10-07 18:30:33 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
|
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-steam.repo && \
|
2024-10-08 01:06:15 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-rar.repo && \
|
2024-10-26 16:47:27 +02:00
|
|
|
sed -i 's#/var/lib/selinux#/etc/selinux#g' /usr/lib/python3.*/site-packages/setroubleshoot/util.py && \
|
2024-08-07 10:02:32 -07:00
|
|
|
mkdir -p /etc/flatpak/remotes.d && \
|
|
|
|
curl -Lo /etc/flatpak/remotes.d/flathub.flatpakrepo https://dl.flathub.org/repo/flathub.flatpakrepo && \
|
2024-05-17 09:26:14 -04:00
|
|
|
systemctl enable brew-dir-fix.service && \
|
2024-05-15 20:47:05 -04:00
|
|
|
systemctl enable brew-setup.service && \
|
2024-09-02 14:44:33 -07:00
|
|
|
systemctl disable brew-upgrade.timer && \
|
|
|
|
systemctl disable brew-update.timer && \
|
2024-10-30 10:33:13 -05:00
|
|
|
systemctl disable displaylink.service && \
|
2024-07-01 22:51:42 -07:00
|
|
|
systemctl enable input-remapper.service && \
|
2023-09-09 10:07:41 -06:00
|
|
|
systemctl enable bazzite-flatpak-manager.service && \
|
2023-06-30 22:54:08 -07:00
|
|
|
systemctl disable rpm-ostreed-automatic.timer && \
|
2023-09-17 12:43:16 -06:00
|
|
|
systemctl enable ublue-update.timer && \
|
2024-01-22 19:01:16 -08:00
|
|
|
systemctl enable incus-workaround.service && \
|
2023-08-08 14:48:45 -07:00
|
|
|
systemctl enable bazzite-hardware-setup.service && \
|
2024-10-07 23:38:49 -07:00
|
|
|
systemctl disable tailscaled.service && \
|
2023-10-13 19:44:10 +02:00
|
|
|
systemctl enable dev-hugepages1G.mount && \
|
2023-08-08 14:48:45 -07:00
|
|
|
systemctl --global enable bazzite-user-setup.service && \
|
2024-01-09 19:31:27 -08:00
|
|
|
systemctl --global enable podman.socket && \
|
2024-02-05 00:40:27 -08:00
|
|
|
systemctl --global enable systemd-tmpfiles-setup.service && \
|
2024-12-29 14:36:18 -08:00
|
|
|
systemctl --global disable sunshine.service && \
|
2023-11-30 08:48:31 -07:00
|
|
|
systemctl disable waydroid-container.service && \
|
2024-08-07 10:02:32 -07:00
|
|
|
curl -Lo /etc/dxvk-example.conf https://raw.githubusercontent.com/doitsujin/dxvk/master/dxvk.conf && \
|
2024-04-15 17:20:25 -07:00
|
|
|
curl -Lo /usr/bin/waydroid-choose-gpu https://raw.githubusercontent.com/KyleGospo/waydroid-scripts/main/waydroid-choose-gpu.sh && \
|
2023-11-30 08:48:31 -07:00
|
|
|
chmod +x /usr/bin/waydroid-choose-gpu && \
|
2024-06-22 14:15:08 -07:00
|
|
|
curl -Lo /usr/lib/sysctl.d/99-bore-scheduler.conf https://github.com/CachyOS/CachyOS-Settings/raw/master/usr/lib/sysctl.d/99-bore-scheduler.conf && \
|
2025-01-01 11:33:56 -08:00
|
|
|
curl -Lo /etc/distrobox/docker.ini https://github.com/ublue-os/toolboxes/raw/refs/heads/main/apps/docker/distrobox.ini && \
|
|
|
|
curl -Lo /etc/distrobox/incus.ini https://github.com/ublue-os/toolboxes/raw/refs/heads/main/apps/docker/incus.ini && \
|
2024-06-25 12:46:36 -07:00
|
|
|
/usr/libexec/containerbuild/image-info && \
|
2024-06-26 14:58:05 -07:00
|
|
|
/usr/libexec/containerbuild/build-initramfs && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-10-08 14:50:18 -07:00
|
|
|
mkdir -p /var/tmp && \
|
|
|
|
chmod 1777 /var/tmp && \
|
2023-09-09 15:30:40 -06:00
|
|
|
ostree container commit
|
|
|
|
|
2024-07-03 13:15:28 -06:00
|
|
|
FROM bazzite AS bazzite-deck
|
2023-06-18 19:22:17 +00:00
|
|
|
|
2023-11-28 08:49:28 -07:00
|
|
|
ARG IMAGE_NAME="${IMAGE_NAME:-bazzite-deck}"
|
|
|
|
ARG IMAGE_VENDOR="${IMAGE_VENDOR:-ublue-os}"
|
|
|
|
ARG IMAGE_FLAVOR="${IMAGE_FLAVOR:-main}"
|
2024-10-08 14:50:18 -07:00
|
|
|
ARG NVIDIA_FLAVOR="${NVIDIA_FLAVOR:-nvidia}"
|
2025-01-01 17:53:45 -08:00
|
|
|
ARG NVIDIA_BASE="${NVIDIA_BASE:-bazzite}"
|
2024-10-18 23:55:13 -07:00
|
|
|
ARG KERNEL_FLAVOR="${KERNEL_FLAVOR:-bazzite}"
|
2024-12-21 16:16:21 -07:00
|
|
|
ARG KERNEL_VERSION="${KERNEL_VERSION:-6.12.5-204.bazzite.fc41.x86_64}"
|
2024-01-06 19:50:50 -08:00
|
|
|
ARG IMAGE_BRANCH="${IMAGE_BRANCH:-main}"
|
2023-11-28 08:49:28 -07:00
|
|
|
ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME:-kinoite}"
|
2024-10-18 15:14:05 -07:00
|
|
|
ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION:-41}"
|
2024-08-02 06:49:50 +02:00
|
|
|
ARG VERSION_TAG="${VERSION_TAG}"
|
|
|
|
ARG VERSION_PRETTY="${VERSION_PRETTY}"
|
2023-06-18 19:22:17 +00:00
|
|
|
|
2023-10-11 11:38:36 -07:00
|
|
|
COPY system_files/deck/shared system_files/deck/${BASE_IMAGE_NAME} /
|
2023-08-01 19:55:25 -06:00
|
|
|
|
2023-07-28 00:17:26 -07:00
|
|
|
# Setup Copr repos
|
2023-10-13 14:35:10 -06:00
|
|
|
RUN sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
|
2023-07-19 15:23:31 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
|
2023-08-09 13:07:39 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-bazzite-multilib.repo && \
|
2023-10-09 09:22:49 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \
|
2023-07-05 12:18:47 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-obs-vkcapture.repo && \
|
2023-07-25 11:13:28 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_kylegospo-wallpaper-engine-kde-plugin.repo && \
|
2024-01-06 14:22:27 -08:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_hhd-dev-hhd.repo && \
|
2024-04-10 12:20:41 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ycollet-audinux.repo && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-06-18 19:22:17 +00:00
|
|
|
|
2023-08-02 16:25:29 -07:00
|
|
|
# Configure KDE & GNOME
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
rpm-ostree override remove \
|
2024-04-28 21:30:32 -07:00
|
|
|
jupiter-sd-mounting-btrfs && \
|
|
|
|
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
2024-04-10 12:20:41 -07:00
|
|
|
rpm-ostree override remove \
|
2024-04-28 21:30:32 -07:00
|
|
|
steamdeck-kde-presets-desktop && \
|
2024-04-10 12:20:41 -07:00
|
|
|
rpm-ostree install \
|
|
|
|
steamdeck-kde-presets \
|
|
|
|
; else \
|
|
|
|
rpm-ostree install \
|
|
|
|
steamdeck-gnome-presets \
|
|
|
|
gnome-shell-extension-caribou-blocker \
|
2024-06-18 21:33:04 -07:00
|
|
|
sddm \
|
2024-04-10 12:20:41 -07:00
|
|
|
; fi && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-08-01 21:04:54 -06:00
|
|
|
|
2023-08-22 12:16:00 -07:00
|
|
|
# Install new packages
|
|
|
|
# Dock updater - done manually due to proprietary parts preventing it from being on Copr
|
|
|
|
# Neptune firmware - done manually due to "TBD" license on needed audio firmware
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
rpm-ostree install \
|
2023-02-09 23:13:40 -08:00
|
|
|
jupiter-fan-control \
|
|
|
|
jupiter-hw-support-btrfs \
|
2025-01-14 13:08:27 -08:00
|
|
|
galileo-mura \
|
2024-04-17 15:10:10 -07:00
|
|
|
steamdeck-dsp \
|
2023-08-17 23:46:10 -07:00
|
|
|
powerbuttond \
|
2023-12-21 00:37:35 -08:00
|
|
|
hhd \
|
2024-04-06 11:25:42 -07:00
|
|
|
hhd-ui \
|
2024-03-14 21:41:25 -07:00
|
|
|
adjustor \
|
2024-09-10 17:27:00 +02:00
|
|
|
acpica-tools \
|
2023-07-25 12:21:53 -07:00
|
|
|
vpower \
|
2023-07-24 12:09:59 -07:00
|
|
|
ds-inhibit \
|
2023-07-30 17:10:29 -07:00
|
|
|
steam_notif_daemon \
|
2023-07-28 00:09:06 -07:00
|
|
|
sdgyrodsu \
|
2023-08-28 23:57:05 -07:00
|
|
|
ibus-pinyin \
|
|
|
|
ibus-table-chinese-cangjie \
|
|
|
|
ibus-table-chinese-quick \
|
2023-09-10 20:32:51 -07:00
|
|
|
socat \
|
2023-09-12 21:05:56 -07:00
|
|
|
zstd \
|
2023-10-27 19:46:54 -06:00
|
|
|
zenity \
|
|
|
|
newt \
|
2024-04-20 22:58:08 -07:00
|
|
|
qt6-qtvirtualkeyboard \
|
2023-11-09 23:45:55 -08:00
|
|
|
xorg-x11-server-Xvfb \
|
2023-07-28 00:09:06 -07:00
|
|
|
python-vdf \
|
2023-07-31 11:16:00 -07:00
|
|
|
python-crcmod && \
|
2023-08-22 12:16:00 -07:00
|
|
|
git clone https://gitlab.com/evlaV/jupiter-dock-updater-bin.git \
|
|
|
|
--depth 1 \
|
|
|
|
/tmp/jupiter-dock-updater-bin && \
|
2024-04-22 23:51:48 -07:00
|
|
|
mv -v /tmp/jupiter-dock-updater-bin/packaged/usr/lib/jupiter-dock-updater /usr/libexec/jupiter-dock-updater && \
|
2024-04-10 12:20:41 -07:00
|
|
|
rm -rf /tmp/jupiter-dock-updater-bin && \
|
2024-06-24 23:45:37 -07:00
|
|
|
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 && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-02-09 11:08:39 -08:00
|
|
|
|
2024-09-24 08:35:05 -07:00
|
|
|
# Install Steam Deck patched UPower, remove Tuned GUI
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
rpm-ostree override replace \
|
2024-02-24 21:56:46 -08:00
|
|
|
--experimental \
|
|
|
|
--from repo=copr:copr.fedorainfracloud.org:kylegospo:bazzite \
|
2023-12-15 09:29:23 -08:00
|
|
|
upower \
|
2024-04-10 12:20:41 -07:00
|
|
|
upower-libs && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-12-02 20:27:53 -08:00
|
|
|
|
2023-11-10 13:19:01 -08:00
|
|
|
# Install Gamescope Session & Supporting changes
|
2024-07-25 22:18:24 -07:00
|
|
|
# Add bootstrap_steam.tar.gz used by gamescope-session (Thanks GE & Nobara Project!)
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
2024-07-25 22:18:24 -07:00
|
|
|
mkdir -p /usr/share/gamescope-session-plus/ && \
|
|
|
|
curl -Lo /usr/share/gamescope-session-plus/bootstrap_steam.tar.gz https://large-package-sources.nobaraproject.org/bootstrap_steam.tar.gz && \
|
2023-09-18 21:17:00 -07:00
|
|
|
rpm-ostree install \
|
2023-10-27 19:21:34 -06:00
|
|
|
gamescope-session-plus \
|
2024-04-10 12:20:41 -07:00
|
|
|
gamescope-session-steam && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-08-01 10:58:10 -07:00
|
|
|
|
2023-02-09 11:08:39 -08:00
|
|
|
# Cleanup & Finalize
|
2024-04-23 20:27:36 -07:00
|
|
|
RUN /usr/libexec/containerbuild/image-info && \
|
2024-08-07 10:02:32 -07:00
|
|
|
mkdir -p "/etc/xdg/autostart" && \
|
|
|
|
mv "/etc/skel/.config/autostart/steam.desktop" "/etc/xdg/autostart/steam.desktop" && \
|
2024-05-10 21:00:53 -07:00
|
|
|
sed -i 's@Exec=waydroid first-launch@Exec=/usr/bin/waydroid-launcher first-launch\nX-Steam-Library-Capsule=/usr/share/applications/Waydroid/capsule.png\nX-Steam-Library-Hero=/usr/share/applications/Waydroid/hero.png\nX-Steam-Library-Logo=/usr/share/applications/Waydroid/logo.png\nX-Steam-Library-StoreCapsule=/usr/share/applications/Waydroid/store-logo.png\nX-Steam-Controller-Template=Desktop@g' /usr/share/applications/Waydroid.desktop && \
|
2023-09-17 09:30:24 -06:00
|
|
|
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
2024-12-29 22:09:25 -08:00
|
|
|
sed -i 's/Exec=.*/Exec=systemctl start return-to-gamemode.service/' /etc/skel/Desktop/Return.desktop && \
|
2025-01-06 18:36:20 -08:00
|
|
|
mkdir -p /usr/share/ublue-os/backup && \
|
|
|
|
mv /usr/share/applications/com.github.maliit.keyboard.desktop /usr/share/ublue-os/backup/com.github.maliit.keyboard.desktop \
|
2023-09-17 09:30:24 -06:00
|
|
|
; fi && \
|
2024-07-01 22:51:42 -07:00
|
|
|
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/input-remapper-gtk.desktop && \
|
2024-08-07 10:02:32 -07:00
|
|
|
cp "/usr/share/ublue-os/firstboot/yafti.yml" "/etc/yafti.yml" && \
|
2023-10-13 14:35:10 -06:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
|
2023-07-19 15:23:31 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
|
2023-07-23 01:59:14 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite-multilib.repo && \
|
2023-02-09 11:08:39 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-latencyflex.repo && \
|
2023-07-03 23:26:12 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-obs-vkcapture.repo && \
|
2023-07-05 12:18:47 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-wallpaper-engine-kde-plugin.repo && \
|
2024-01-06 14:22:27 -08:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_hhd-dev-hhd.repo && \
|
2023-07-25 10:48:05 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ycollet-audinux.repo && \
|
2023-09-03 18:57:39 -06:00
|
|
|
if grep -q "silverblue" <<< "${BASE_IMAGE_NAME}"; then \
|
2023-08-06 15:31:03 -06:00
|
|
|
systemctl disable gdm.service && \
|
2023-09-03 18:57:39 -06:00
|
|
|
systemctl enable sddm.service \
|
2023-08-01 23:05:06 -07:00
|
|
|
; fi && \
|
2024-10-08 12:24:25 +02:00
|
|
|
if grep -q "silverblue" <<< "${BASE_IMAGE_NAME}"; then \
|
|
|
|
mkdir -p "/usr/share/ublue-os/dconfs/deck-silverblue/" && \
|
|
|
|
cp "/usr/share/glib-2.0/schemas/zz0-"*"-bazzite-deck-silverblue-"*".gschema.override" "/usr/share/ublue-os/dconfs/deck-silverblue/" && \
|
|
|
|
find "/etc/dconf/db/distro.d/" -maxdepth 1 -type f -exec cp {} "/usr/share/ublue-os/dconfs/deck-silverblue/" \; && \
|
|
|
|
dconf-override-converter to-dconf "/usr/share/ublue-os/dconfs/deck-silverblue/zz0-"*"-bazzite-deck-silverblue-"*".gschema.override" && \
|
2024-10-08 14:50:18 -07:00
|
|
|
rm "/usr/share/ublue-os/dconfs/deck-silverblue/zz0-"*"-bazzite-deck-silverblue-"*".gschema.override" \
|
2024-11-17 21:21:58 -08:00
|
|
|
; else \
|
|
|
|
systemctl disable usr-share-sddm-themes.mount \
|
2024-10-08 12:24:25 +02:00
|
|
|
; fi && \
|
|
|
|
mkdir -p /tmp/bazzite-schema-test && \
|
|
|
|
find "/usr/share/glib-2.0/schemas/" -type f ! -name "*.gschema.override" -exec cp {} "/tmp/bazzite-schema-test/" \; && \
|
|
|
|
cp "/usr/share/glib-2.0/schemas/zz0-"*".gschema.override" "/tmp/bazzite-schema-test/" && \
|
|
|
|
echo "Running error test for Bazzite Deck gschema override. Aborting if failed." && \
|
|
|
|
glib-compile-schemas --strict /tmp/bazzite-schema-test && \
|
|
|
|
echo "Compiling gschema to include Bazzite Deck setting overrides" && \
|
|
|
|
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null && \
|
|
|
|
rm -r /tmp/bazzite-schema-test && \
|
2024-10-21 18:33:24 +02:00
|
|
|
echo "Removing Steam BPM workaround .desktop file" && \
|
|
|
|
{ rm -v /usr/share/applications/bazzite-steam-bpm.desktop || true; } && \
|
2023-09-12 16:36:22 -06:00
|
|
|
systemctl enable bazzite-autologin.service && \
|
2024-04-18 23:36:15 -07:00
|
|
|
systemctl enable wireplumber-workaround.service && \
|
2023-12-17 13:41:24 -08:00
|
|
|
systemctl enable wireplumber-sysconf.service && \
|
2024-04-23 16:35:31 -07:00
|
|
|
systemctl enable pipewire-workaround.service && \
|
|
|
|
systemctl enable pipewire-sysconf.service && \
|
2023-07-24 12:09:59 -07:00
|
|
|
systemctl enable ds-inhibit.service && \
|
2023-10-06 16:55:13 -07:00
|
|
|
systemctl enable cec-onboot.service && \
|
|
|
|
systemctl enable cec-onpoweroff.service && \
|
|
|
|
systemctl enable cec-onsleep.service && \
|
2024-03-18 16:18:25 +01:00
|
|
|
systemctl enable bazzite-tdpfix.service && \
|
2025-01-04 18:16:13 +02:00
|
|
|
systemctl enable bazzite-grub-boot-success.timer && \
|
|
|
|
systemctl enable bazzite-grub-boot-success.service && \
|
2023-11-23 10:27:57 -08:00
|
|
|
systemctl --global disable sdgyrodsu.service && \
|
2025-01-04 18:16:13 +02:00
|
|
|
systemctl --global disable grub-boot-success.timer && \
|
|
|
|
systemctl disable grub-boot-indeterminate.service && \
|
2024-07-01 22:51:42 -07:00
|
|
|
systemctl disable input-remapper.service && \
|
2023-09-17 12:43:16 -06:00
|
|
|
systemctl disable ublue-update.timer && \
|
2023-11-23 10:27:57 -08:00
|
|
|
systemctl disable jupiter-fan-control.service && \
|
|
|
|
systemctl disable vpower.service && \
|
|
|
|
systemctl disable jupiter-biosupdate.service && \
|
|
|
|
systemctl disable jupiter-controller-update.service && \
|
|
|
|
systemctl disable batterylimit.service && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
|
|
|
mkdir -p /var/tmp && chmod 1777 /var/tmp && \
|
2023-02-09 11:08:39 -08:00
|
|
|
ostree container commit
|
2023-11-30 08:48:31 -07:00
|
|
|
|
2024-09-04 18:01:46 -07:00
|
|
|
FROM ghcr.io/ublue-os/akmods-${NVIDIA_FLAVOR}:${KERNEL_FLAVOR}-${FEDORA_MAJOR_VERSION}-${KERNEL_VERSION} AS nvidia-akmods
|
2024-07-03 13:15:28 -06:00
|
|
|
|
2025-01-01 17:53:45 -08:00
|
|
|
FROM ${NVIDIA_BASE} AS bazzite-nvidia
|
2023-11-30 08:48:31 -07:00
|
|
|
|
|
|
|
ARG IMAGE_NAME="${IMAGE_NAME:-bazzite-nvidia}"
|
|
|
|
ARG IMAGE_VENDOR="${IMAGE_VENDOR:-ublue-os}"
|
|
|
|
ARG IMAGE_FLAVOR="${IMAGE_FLAVOR:-nvidia}"
|
2024-10-08 14:50:18 -07:00
|
|
|
ARG NVIDIA_FLAVOR="${NVIDIA_FLAVOR:-nvidia}"
|
2025-01-01 17:53:45 -08:00
|
|
|
ARG NVIDIA_BASE="${NVIDIA_BASE:-bazzite}"
|
2024-10-18 23:55:13 -07:00
|
|
|
ARG KERNEL_FLAVOR="${KERNEL_FLAVOR:-bazzite}"
|
2024-12-21 16:16:21 -07:00
|
|
|
ARG KERNEL_VERSION="${KERNEL_VERSION:-6.12.5-204.bazzite.fc41.x86_64}"
|
2024-01-06 18:53:36 -08:00
|
|
|
ARG IMAGE_BRANCH="${IMAGE_BRANCH:-main}"
|
2023-11-30 08:48:31 -07:00
|
|
|
ARG BASE_IMAGE_NAME="${BASE_IMAGE_NAME:-kinoite}"
|
2024-10-18 15:14:05 -07:00
|
|
|
ARG FEDORA_MAJOR_VERSION="${FEDORA_MAJOR_VERSION:-41}"
|
2024-08-02 06:49:50 +02:00
|
|
|
ARG VERSION_TAG="${VERSION_TAG}"
|
|
|
|
ARG VERSION_PRETTY="${VERSION_PRETTY}"
|
2023-11-30 08:48:31 -07:00
|
|
|
|
|
|
|
# Fetch NVIDIA driver
|
2024-01-01 18:03:09 -08:00
|
|
|
COPY system_files/nvidia/shared system_files/nvidia/${BASE_IMAGE_NAME} /
|
2023-11-30 08:48:31 -07:00
|
|
|
|
|
|
|
# Remove everything that doesn't work well with NVIDIA
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
rpm-ostree override remove \
|
2023-11-30 08:48:31 -07:00
|
|
|
rocm-hip \
|
|
|
|
rocm-opencl \
|
2024-01-03 15:44:52 -08:00
|
|
|
rocm-clinfo && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-11-30 08:48:31 -07:00
|
|
|
|
|
|
|
# Install NVIDIA driver
|
2024-07-21 15:38:12 -04:00
|
|
|
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
|
|
|
|
--mount=type=bind,from=nvidia-akmods,src=/rpms,dst=/tmp/akmods-rpms \
|
2024-10-07 21:03:58 -07:00
|
|
|
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
|
2024-10-07 23:27:26 -07:00
|
|
|
rpm-ostree install \
|
|
|
|
mesa-vdpau-drivers.x86_64 \
|
|
|
|
mesa-vdpau-drivers.i686 && \
|
2024-07-21 15:38:12 -04:00
|
|
|
curl -Lo /tmp/nvidia-install.sh https://raw.githubusercontent.com/ublue-os/hwe/main/nvidia-install.sh && \
|
2024-03-28 14:47:40 -07:00
|
|
|
chmod +x /tmp/nvidia-install.sh && \
|
2024-06-27 09:08:33 -07:00
|
|
|
IMAGE_NAME="${BASE_IMAGE_NAME}" /tmp/nvidia-install.sh && \
|
2024-06-25 12:46:36 -07:00
|
|
|
rm -f /usr/share/vulkan/icd.d/nouveau_icd.*.json && \
|
2024-07-17 07:19:38 -07:00
|
|
|
ln -s libnvidia-ml.so.1 /usr/lib64/libnvidia-ml.so && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
2024-04-10 12:20:41 -07:00
|
|
|
ostree container commit
|
2023-11-30 08:48:31 -07:00
|
|
|
|
|
|
|
# Cleanup & Finalize
|
2024-06-25 12:46:36 -07:00
|
|
|
RUN echo "import \"/usr/share/ublue-os/just/95-bazzite-nvidia.just\"" >> /usr/share/ublue-os/justfile && \
|
2024-10-07 21:03:58 -07:00
|
|
|
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
|
2024-10-08 12:24:25 +02:00
|
|
|
if grep -q "silverblue" <<< "${BASE_IMAGE_NAME}"; then \
|
|
|
|
mkdir -p "/usr/share/ublue-os/dconfs/nvidia-silverblue/" && \
|
|
|
|
cp "/usr/share/glib-2.0/schemas/zz0-"*"-bazzite-nvidia-silverblue-"*".gschema.override" "/usr/share/ublue-os/dconfs/nvidia-silverblue/" && \
|
|
|
|
dconf-override-converter to-dconf "/usr/share/ublue-os/dconfs/nvidia-silverblue/zz0-"*"-bazzite-nvidia-silverblue-"*".gschema.override" && \
|
2024-10-08 14:50:18 -07:00
|
|
|
rm "/usr/share/ublue-os/dconfs/nvidia-silverblue/zz0-"*"-bazzite-nvidia-silverblue-"*".gschema.override" \
|
2024-10-08 12:24:25 +02:00
|
|
|
; fi && \
|
|
|
|
mkdir -p /tmp/bazzite-schema-test && \
|
|
|
|
find "/usr/share/glib-2.0/schemas/" -type f ! -name "*.gschema.override" -exec cp {} "/tmp/bazzite-schema-test/" \; && \
|
|
|
|
cp "/usr/share/glib-2.0/schemas/zz0-"*".gschema.override" "/tmp/bazzite-schema-test/" && \
|
|
|
|
echo "Running error test for Bazzite Nvidia gschema override. Aborting if failed." && \
|
|
|
|
glib-compile-schemas --strict /tmp/bazzite-schema-test && \
|
|
|
|
echo "Compiling gschema to include Bazzite Nvidia setting overrides" && \
|
|
|
|
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null && \
|
|
|
|
rm -r /tmp/bazzite-schema-test && \
|
2024-07-21 15:38:12 -04:00
|
|
|
mkdir -p /var/tmp && chmod 1777 /var/tmp && \
|
2024-04-21 08:07:56 -07:00
|
|
|
/usr/libexec/containerbuild/image-info && \
|
2024-06-26 14:58:05 -07:00
|
|
|
/usr/libexec/containerbuild/build-initramfs && \
|
2024-07-21 15:38:12 -04:00
|
|
|
/usr/libexec/containerbuild/cleanup.sh && \
|
|
|
|
mkdir -p /var/tmp && chmod 1777 /var/tmp && \
|
2023-11-30 08:48:31 -07:00
|
|
|
ostree container commit
|