mirror of
https://github.com/ublue-os/bazzite.git
synced 2025-01-27 21:35:24 +00:00
cleanup scripts so they mostly work normally
the extra && \\ are removed, so commands fail on their own and it's easier to debug a failure the if statements which had extra \\ and semi-colons have been cleaned up to look like normal if statements there does seem to be an issue with the current state: Transaction failed: Rpm transaction failed. - file /usr/bin/jupiter-biosupdate from install of gamescope-session-steam-20241206.1a3fdb7-1.fc41.x86_64 conflicts with file from package jupiter-hw-support-btrfs-0.0.git.4990.55663550-1.fc41.x86_64
This commit is contained in:
parent
5a5db71658
commit
2242f3aeb7
@ -73,6 +73,7 @@ ARG VERSION_PRETTY="${VERSION_PRETTY}"
|
||||
|
||||
RUN --mount=type=cache,dst=/var/cache/libdnf5 \
|
||||
--mount=type=cache,dst=/var/cache/rpm-ostree \
|
||||
--mount=type=bind,from=kernel,src=/tmp/rpms,dst=/tmp/kernel-rpms \
|
||||
--mount=type=bind,from=akmods,src=/rpms,dst=/tmp/akmods-rpms \
|
||||
--mount=type=bind,from=akmods-extra,src=/rpms,dst=/tmp/akmods-extra-rpms \
|
||||
--mount=type=bind,from=ctx,source=/,target=/ctx \
|
||||
|
@ -35,81 +35,83 @@ set -ouex pipefail
|
||||
################
|
||||
env
|
||||
|
||||
# removes rpm-ostree cliwrap
|
||||
/ctx/build_files/unwrap
|
||||
|
||||
# copy system files into image
|
||||
rsync -av /ctx/system_files/desktop/shared/ /ctx/system_files/desktop/${BASE_IMAGE_NAME}/ /
|
||||
|
||||
# Setup Copr repos
|
||||
/ctx/build_files/unwrap && \
|
||||
dnf5 -y install dnf5-plugins && \
|
||||
dnf5 -y copr enable kylegospo/bazzite && \
|
||||
dnf5 -y copr enable kylegospo/bazzite-multilib && \
|
||||
dnf5 -y copr enable ublue-os/staging && \
|
||||
dnf5 -y copr enable kylegospo/LatencyFleX && \
|
||||
dnf5 -y copr enable kylegospo/obs-vkcapture && \
|
||||
dnf5 -y copr enable kylegospo/wallpaper-engine-kde-plugin && \
|
||||
dnf5 -y copr enable ycollet/audinux && \
|
||||
dnf5 -y copr enable kylegospo/rom-properties && \
|
||||
dnf5 -y copr enable kylegospo/webapp-manager && \
|
||||
dnf5 -y copr enable hhd-dev/hhd && \
|
||||
dnf5 -y copr enable che/nerd-fonts && \
|
||||
dnf5 -y copr enable hikariknight/looking-glass-kvmfr && \
|
||||
dnf5 -y copr enable mavit/discover-overlay && \
|
||||
dnf5 -y copr enable lizardbyte/beta && \
|
||||
dnf5 -y copr enable rok/cdemu && \
|
||||
dnf5 -y copr enable rodoma92/kde-cdemu-manager && \
|
||||
dnf5 -y copr enable rodoma92/rmlint && \
|
||||
dnf5 -y copr enable ilyaz/LACT && \
|
||||
dnf5 -y install --nogpgcheck --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' terra-release{,-extras} && \
|
||||
curl -Lo /etc/yum.repos.d/tailscale.repo https://pkgs.tailscale.com/stable/fedora/tailscale.repo && \
|
||||
dnf5 -y copr enable kylegospo/bazzite
|
||||
dnf5 -y copr enable kylegospo/bazzite-multilib
|
||||
dnf5 -y copr enable ublue-os/staging
|
||||
dnf5 -y copr enable kylegospo/LatencyFleX
|
||||
dnf5 -y copr enable kylegospo/obs-vkcapture
|
||||
dnf5 -y copr enable kylegospo/wallpaper-engine-kde-plugin
|
||||
dnf5 -y copr enable ycollet/audinux
|
||||
dnf5 -y copr enable kylegospo/rom-properties
|
||||
dnf5 -y copr enable kylegospo/webapp-manager
|
||||
dnf5 -y copr enable hhd-dev/hhd
|
||||
dnf5 -y copr enable che/nerd-fonts
|
||||
dnf5 -y copr enable hikariknight/looking-glass-kvmfr
|
||||
dnf5 -y copr enable mavit/discover-overlay
|
||||
dnf5 -y copr enable lizardbyte/beta
|
||||
dnf5 -y copr enable rok/cdemu
|
||||
dnf5 -y copr enable rodoma92/kde-cdemu-manager
|
||||
dnf5 -y copr enable rodoma92/rmlint
|
||||
dnf5 -y copr enable ilyaz/LACT
|
||||
dnf5 -y install --nogpgcheck --repofrompath 'terra,https://repos.fyralabs.com/terra$releasever' terra-release{,-extras}
|
||||
curl -Lo /etc/yum.repos.d/tailscale.repo https://pkgs.tailscale.com/stable/fedora/tailscale.repo
|
||||
|
||||
dnf5 -y 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 && \
|
||||
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 && \
|
||||
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
|
||||
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
|
||||
curl -Lo /etc/yum.repos.d/negativo17-fedora-rar.repo https://negativo17.org/repos/fedora-rar.repo
|
||||
|
||||
# Install kernel
|
||||
/ctx/build_files/install-kernel && \
|
||||
dnf5 -y install \
|
||||
scx-scheds && \
|
||||
/ctx/build_files/install-kernel
|
||||
dnf5 -y install scx-scheds
|
||||
dnf5 -y swap \
|
||||
--repo copr:copr.fedorainfracloud.org:kylegospo:bazzite \
|
||||
rpm-ostree rpm-ostree && \
|
||||
--repo copr:copr.fedorainfracloud.org:kylegospo:bazzite \
|
||||
rpm-ostree rpm-ostree
|
||||
dnf5 -y swap \
|
||||
--repo copr:copr.fedorainfracloud.org:kylegospo:bazzite \
|
||||
bootc bootc
|
||||
--repo copr:copr.fedorainfracloud.org:kylegospo:bazzite \
|
||||
bootc bootc
|
||||
|
||||
# Setup firmware & hardware packages
|
||||
if [[ "${IMAGE_FLAVOR}" =~ "asus" ]]; then \
|
||||
dnf5 -y copr enable lukenukem/asus-linux && \
|
||||
dnf5 -y 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 && \
|
||||
dnf5 copr disable -y lukenukem/asus-linux \
|
||||
; elif [[ "${IMAGE_FLAVOR}" == "surface" ]]; then \
|
||||
curl -Lo /etc/yum.repos.d/linux-surface.repo https://pkg.surfacelinux.com/fedora/linux-surface.repo && \
|
||||
dnf5 -y swap \
|
||||
if [[ "${IMAGE_FLAVOR}" =~ "asus" ]]; then
|
||||
dnf5 -y copr enable lukenukem/asus-linux
|
||||
dnf5 -y 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
|
||||
dnf5 copr disable -y lukenukem/asus-linux
|
||||
elif [[ "${IMAGE_FLAVOR}" == "surface" ]]; then
|
||||
curl -Lo /etc/yum.repos.d/linux-surface.repo https://pkg.surfacelinux.com/fedora/linux-surface.repo
|
||||
dnf5 -y swap \
|
||||
--allowerasing \
|
||||
libwacom-data libwacom-surface-data && \
|
||||
dnf5 -y install \
|
||||
iptsd \
|
||||
libcamera \
|
||||
libcamera-tools \
|
||||
libcamera-gstreamer \
|
||||
libcamera-ipa \
|
||||
pipewire-plugin-libcamera && \
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/linux-surface.repo \
|
||||
; fi && \
|
||||
libwacom-data libwacom-surface-data
|
||||
dnf5 -y install \
|
||||
iptsd \
|
||||
libcamera \
|
||||
libcamera-tools \
|
||||
libcamera-gstreamer \
|
||||
libcamera-ipa \
|
||||
pipewire-plugin-libcamera
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/linux-surface.repo
|
||||
fi
|
||||
/ctx/build_files/install-firmware
|
||||
|
||||
# Add ublue packages
|
||||
dnf5 -y copr enable ublue-os/akmods && \
|
||||
/ctx/build_files/install-akmods && \
|
||||
dnf5 -y copr enable ublue-os/akmods
|
||||
/ctx/build_files/install-akmods
|
||||
dnf5 -y swap \
|
||||
--repo copr:copr.fedorainfracloud.org:ublue-os:staging \
|
||||
fwupd fwupd && \
|
||||
fwupd fwupd
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-*.repo
|
||||
|
||||
# Install Valve's patched Mesa, Pipewire, Bluez, and Xwayland#
|
||||
@ -117,22 +119,22 @@ sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-*.repo
|
||||
# Tempporary fix for GPU Encoding
|
||||
dnf5 -y swap \
|
||||
--repo terra-extras \
|
||||
mesa-filesystem mesa-filesystem && \
|
||||
mesa-filesystem mesa-filesystem
|
||||
dnf5 -y swap \
|
||||
--repo copr:copr.fedorainfracloud.org:kylegospo:bazzite-multilib \
|
||||
pipewire pipewire && \
|
||||
pipewire pipewire
|
||||
dnf5 -y swap \
|
||||
--repo copr:copr.fedorainfracloud.org:kylegospo:bazzite-multilib \
|
||||
bluez bluez && \
|
||||
bluez bluez
|
||||
dnf5 -y swap \
|
||||
--repo copr:copr.fedorainfracloud.org:kylegospo:bazzite-multilib \
|
||||
xorg-x11-server-Xwayland xorg-x11-server-Xwayland && \
|
||||
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/rpmfusion-*.repo && \
|
||||
xorg-x11-server-Xwayland xorg-x11-server-Xwayland
|
||||
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/rpmfusion-*.repo
|
||||
dnf5 -y install \
|
||||
libaacs \
|
||||
libbdplus \
|
||||
libbluray \
|
||||
libbluray-utils && \
|
||||
libbluray-utils
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-*.repo
|
||||
|
||||
# Remove unneeded packages
|
||||
@ -207,30 +209,32 @@ dnf5 -y install \
|
||||
qemu \
|
||||
libvirt \
|
||||
lsb_release \
|
||||
ublue-update && \
|
||||
mkdir -p /etc/xdg/autostart && \
|
||||
sed -i '1s/^/[include]\npaths = ["\/etc\/ublue-os\/topgrade.toml"]\n\n/' /usr/share/ublue-update/topgrade-user.toml && \
|
||||
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 && \
|
||||
sed -i 's/ --xdg-runtime=\\"${XDG_RUNTIME_DIR}\\"//g' /usr/bin/btrfs-assistant-launcher && \
|
||||
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 && \
|
||||
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/ && \
|
||||
ublue-update
|
||||
|
||||
mkdir -p /etc/xdg/autostart
|
||||
sed -i '1s/^/[include]\npaths = ["\/etc\/ublue-os\/topgrade.toml"]\n\n/' /usr/share/ublue-update/topgrade-user.toml
|
||||
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
|
||||
sed -i 's/ --xdg-runtime=\\"${XDG_RUNTIME_DIR}\\"//g' /usr/bin/btrfs-assistant-launcher
|
||||
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
|
||||
|
||||
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
|
||||
|
||||
# Install Steam & Lutris, plus supporting packages
|
||||
# Downgrade ibus to fix an issue with the Steam keyboard
|
||||
dnf5 -y swap \
|
||||
--repo copr:copr.fedorainfracloud.org:kylegospo:bazzite \
|
||||
ibus ibus && \
|
||||
ibus ibus
|
||||
dnf5 -y install \
|
||||
jupiter-sd-mounting-btrfs \
|
||||
steam \
|
||||
@ -251,22 +255,23 @@ dnf5 -y install \
|
||||
libobs_vkcapture.x86_64 \
|
||||
libobs_glcapture.x86_64 \
|
||||
libobs_vkcapture.i686 \
|
||||
libobs_glcapture.i686 && \
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/winetricks.desktop && \
|
||||
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') && \
|
||||
mkdir -p /tmp/latencyflex && \
|
||||
tar --no-same-owner --no-same-permissions --no-overwrite-dir --strip-components 1 -xvf /tmp/latencyflex.tar.xz -C /tmp/latencyflex && \
|
||||
rm -f /tmp/latencyflex.tar.xz && \
|
||||
cp -r /tmp/latencyflex/wine/usr/lib/wine/* /usr/lib64/wine/ && \
|
||||
rm -rf /tmp/latencyflex && \
|
||||
curl -Lo /usr/bin/latencyflex https://raw.githubusercontent.com/KyleGospo/LatencyFleX-Installer/main/install.sh && \
|
||||
chmod +x /usr/bin/latencyflex && \
|
||||
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 && \
|
||||
libobs_glcapture.i686
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/winetricks.desktop
|
||||
|
||||
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')
|
||||
mkdir -p /tmp/latencyflex
|
||||
tar --no-same-owner --no-same-permissions --no-overwrite-dir --strip-components 1 -xvf /tmp/latencyflex.tar.xz -C /tmp/latencyflex
|
||||
rm -f /tmp/latencyflex.tar.xz
|
||||
cp -r /tmp/latencyflex/wine/usr/lib/wine/* /usr/lib64/wine/
|
||||
rm -rf /tmp/latencyfle
|
||||
curl -Lo /usr/bin/latencyflex https://raw.githubusercontent.com/KyleGospo/LatencyFleX-Installer/main/install.sh
|
||||
chmod +x /usr/bin/latencyflex
|
||||
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
|
||||
chmod +x /usr/bin/latencyflex
|
||||
|
||||
# Configure KDE & GNOME
|
||||
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
||||
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then
|
||||
dnf5 -y install \
|
||||
qt \
|
||||
krdp \
|
||||
@ -279,30 +284,30 @@ if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
||||
fcitx5-mozc \
|
||||
fcitx5-chinese-addons \
|
||||
fcitx5-hangul \
|
||||
ptyxis && \
|
||||
ptyxis
|
||||
dnf5 -y remove \
|
||||
plasma-welcome \
|
||||
plasma-welcome-fedora && \
|
||||
plasma-welcome-fedora
|
||||
dnf5 -y swap \
|
||||
--repo terra-extras \
|
||||
kf6-kio-core kf6-kio-core
|
||||
git clone https://github.com/catsout/wallpaper-engine-kde-plugin.git --depth 1 --branch main /tmp/wallpaper-engine-kde-plugin
|
||||
kpackagetool6 --type=Plasma/Wallpaper --global --install /tmp/wallpaper-engine-kde-plugin/plugin
|
||||
rm -rf /tmp/wallpaper-engine-kde-plugin
|
||||
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
|
||||
sed -i '/^Comment/d' /usr/share/applications/org.gnome.Ptyxis.desktop
|
||||
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
|
||||
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
|
||||
setcap 'cap_net_raw+ep' /usr/libexec/ksysguard/ksgrd_network_helper
|
||||
else
|
||||
dnf5 -y swap \
|
||||
--repo terra-extras \
|
||||
kf6-kio-core kf6-kio-core && \
|
||||
git clone https://github.com/catsout/wallpaper-engine-kde-plugin.git --depth 1 --branch main /tmp/wallpaper-engine-kde-plugin && \
|
||||
kpackagetool6 --type=Plasma/Wallpaper --global --install /tmp/wallpaper-engine-kde-plugin/plugin && \
|
||||
rm -rf /tmp/wallpaper-engine-kde-plugin && \
|
||||
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 && \
|
||||
sed -i '/^Comment/d' /usr/share/applications/org.gnome.Ptyxis.desktop && \
|
||||
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 && \
|
||||
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 && \
|
||||
setcap 'cap_net_raw+ep' /usr/libexec/ksysguard/ksgrd_network_helper \
|
||||
; else \
|
||||
dnf5 -y swap \
|
||||
--repo terra-extras \
|
||||
gnome-shell gnome-shell && \
|
||||
gnome-shell gnome-shell
|
||||
dnf5 -y install \
|
||||
nautilus-gsconnect \
|
||||
steamdeck-backgrounds \
|
||||
@ -320,7 +325,7 @@ if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
||||
gnome-shell-extension-caffeine \
|
||||
rom-properties-gtk3 \
|
||||
ibus-mozc \
|
||||
openssh-askpass && \
|
||||
openssh-askpass
|
||||
dnf5 -y remove \
|
||||
gnome-classic-session \
|
||||
gnome-tour \
|
||||
@ -328,16 +333,16 @@ if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
||||
gnome-system-monitor \
|
||||
gnome-initial-setup \
|
||||
gnome-shell-extension-background-logo \
|
||||
gnome-shell-extension-apps-menu && \
|
||||
mkdir -p /tmp/tilingshell && \
|
||||
gnome-shell-extension-apps-menu
|
||||
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 && \
|
||||
curl -Lo /usr/share/thumbnailers/exe-thumbnailer.thumbnailer https://raw.githubusercontent.com/jlu5/icoextract/master/exe-thumbnailer.thumbnailer && \
|
||||
unzip /tmp/tilingshell/tilingshell@ferrarodomenico.com.zip -d /usr/share/gnome-shell/extensions/tilingshell@ferrarodomenico.com && \
|
||||
rm -rf /tmp/tilingshell && \
|
||||
systemctl enable dconf-update.service \
|
||||
; fi
|
||||
wget -qi - -O /tmp/tilingshell/tilingshell@ferrarodomenico.com.zip
|
||||
curl -Lo /usr/share/thumbnailers/exe-thumbnailer.thumbnailer https://raw.githubusercontent.com/jlu5/icoextract/master/exe-thumbnailer.thumbnailer
|
||||
unzip /tmp/tilingshell/tilingshell@ferrarodomenico.com.zip -d /usr/share/gnome-shell/extensions/tilingshell@ferrarodomenico.com
|
||||
rm -rf /tmp/tilingshell
|
||||
systemctl enable dconf-update.service
|
||||
fi
|
||||
|
||||
# Install Gamescope, ROCM, and Waydroid on non-Nvidia images
|
||||
dnf5 -y install \
|
||||
@ -349,100 +354,102 @@ dnf5 -y install \
|
||||
rocm-clinfo \
|
||||
waydroid \
|
||||
cage \
|
||||
wlr-randr && \
|
||||
wlr-randr
|
||||
sed -i~ -E 's/=.\$\(command -v (nft|ip6?tables-legacy).*/=/g' /usr/lib/waydroid/data/scripts/waydroid-net.sh
|
||||
|
||||
# Homebrew & Bash Prexec
|
||||
touch /.dockerenv && \
|
||||
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 && \
|
||||
tar --zstd -cvf /usr/share/homebrew.tar.zst /home/linuxbrew/.linuxbrew && \
|
||||
touch /.dockerenv
|
||||
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
|
||||
tar --zstd -cvf /usr/share/homebrew.tar.zst /home/linuxbrew/.linuxbrew
|
||||
curl -Lo /usr/share/bash-prexec https://raw.githubusercontent.com/ublue-os/bash-preexec/master/bash-preexec.sh
|
||||
|
||||
# Cleanup & Finalize
|
||||
rsync -av /ctx/system_files/overrides/ /
|
||||
rm -f /etc/profile.d/toolbox.sh && \
|
||||
mkdir -p /var/tmp && chmod 1777 /var/tmp && \
|
||||
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 && \
|
||||
sed -i 's@/usr/bin/steam@/usr/bin/bazzite-steam@g' /usr/share/applications/steam.desktop && \
|
||||
sed -i 's@Exec=steam steam://open/bigpicture@Exec=/usr/bin/bazzite-steam-bpm@g' /usr/share/applications/steam.desktop && \
|
||||
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 && \
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/fish.desktop && \
|
||||
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 && \
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/yad-icon-browser.desktop && \
|
||||
sed -i 's/#UserspaceHID.*/UserspaceHID=true/' /etc/bluetooth/input.conf && \
|
||||
rm -f /usr/share/vulkan/icd.d/lvp_icd.*.json && \
|
||||
mkdir -p "/etc/profile.d/" && \
|
||||
ln -s "/usr/share/ublue-os/firstboot/launcher/login-profile.sh" \
|
||||
"/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 && \
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/discover_overlay.desktop && \
|
||||
cp "/usr/share/ublue-os/firstboot/yafti.yml" "/etc/yafti.yml" && \
|
||||
echo "import \"/usr/share/ublue-os/just/80-bazzite.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
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 && \
|
||||
echo "import \"/usr/share/ublue-os/just/82-bazzite-cdemu.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
echo "import \"/usr/share/ublue-os/just/82-bazzite-sunshine.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
echo "import \"/usr/share/ublue-os/just/82-bazzite-rmlint.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
echo "import \"/usr/share/ublue-os/just/82-bazzite-waydroid.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
echo "import \"/usr/share/ublue-os/just/83-bazzite-audio.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
echo "import \"/usr/share/ublue-os/just/84-bazzite-virt.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
echo "import \"/usr/share/ublue-os/just/85-bazzite-image.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
echo "import \"/usr/share/ublue-os/just/86-bazzite-windows.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
echo "import \"/usr/share/ublue-os/just/90-bazzite-de.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
||||
systemctl enable usr-share-sddm-themes.mount && \
|
||||
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" && \
|
||||
rm "/usr/share/ublue-os/dconfs/desktop-kinoite/zz0-"*"-bazzite-desktop-kinoite-"*".gschema.override" \
|
||||
; 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" && \
|
||||
rm "/usr/share/ublue-os/dconfs/desktop-silverblue/zz0-"*"-bazzite-desktop-silverblue-"*".gschema.override" \
|
||||
; 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/" && \
|
||||
glib-compile-schemas --strict /tmp/bazzite-schema-test && \
|
||||
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null && \
|
||||
rm -r /tmp/bazzite-schema-test && \
|
||||
sed -i 's/stage/none/g' /etc/rpm-ostreed.conf && \
|
||||
dnf5 copr disable -y ublue-os/akmods && \
|
||||
dnf5 copr disable -y kylegospo/bazzite && \
|
||||
dnf5 copr disable -y kylegospo/bazzite-multilib && \
|
||||
dnf5 copr disable -y ublue-os/staging && \
|
||||
dnf5 copr disable -y kylegospo/LatencyFleX && \
|
||||
dnf5 copr disable -y kylegospo/obs-vkcapture && \
|
||||
dnf5 copr disable -y kylegospo/wallpaper-engine-kde-plugin && \
|
||||
dnf5 copr disable -y ycollet/audinux && \
|
||||
dnf5 copr disable -y kylegospo/rom-properties && \
|
||||
dnf5 copr disable -y kylegospo/webapp-manager && \
|
||||
dnf5 copr disable -y hhd-dev/hhd && \
|
||||
dnf5 copr disable -y che/nerd-fonts && \
|
||||
dnf5 copr disable -y mavit/discover-overlay && \
|
||||
dnf5 copr disable -y lizardbyte/beta && \
|
||||
dnf5 copr disable -y hikariknight/looking-glass-kvmfr && \
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/tailscale.repo && \
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/charm.repo && \
|
||||
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 && \
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-rar.repo && \
|
||||
sed -i 's#/var/lib/selinux#/etc/selinux#g' /usr/lib/python3.*/site-packages/setroubleshoot/util.py && \
|
||||
mkdir -p /etc/flatpak/remotes.d && \
|
||||
rm -f /etc/profile.d/toolbox.sh
|
||||
mkdir -p /var/tmp && chmod 1777 /var/tmp
|
||||
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
|
||||
sed -i 's@/usr/bin/steam@/usr/bin/bazzite-steam@g' /usr/share/applications/steam.desktop
|
||||
sed -i 's@Exec=steam steam://open/bigpicture@Exec=/usr/bin/bazzite-steam-bpm@g' /usr/share/applications/steam.desktop
|
||||
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
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/fish.desktop
|
||||
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
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/yad-icon-browser.desktop
|
||||
sed -i 's/#UserspaceHID.*/UserspaceHID=true/' /etc/bluetooth/input.conf
|
||||
sed -i "s/^SCX_SCHEDULER=.*/SCX_SCHEDULER=scx_lavd/" /etc/default/scx
|
||||
rm -f /usr/share/vulkan/icd.d/lvp_icd.*.json
|
||||
mkdir -p "/etc/profile.d/"
|
||||
ln -s "/usr/share/ublue-os/firstboot/launcher/login-profile.sh" "/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
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/discover_overlay.desktop
|
||||
cp "/usr/share/ublue-os/firstboot/yafti.yml" "/etc/yafti.yml"
|
||||
echo "import \"/usr/share/ublue-os/just/80-bazzite.just\"" >> /usr/share/ublue-os/justfile
|
||||
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
|
||||
echo "import \"/usr/share/ublue-os/just/82-bazzite-cdemu.just\"" >> /usr/share/ublue-os/justfile
|
||||
echo "import \"/usr/share/ublue-os/just/82-bazzite-sunshine.just\"" >> /usr/share/ublue-os/justfile
|
||||
echo "import \"/usr/share/ublue-os/just/82-bazzite-rmlint.just\"" >> /usr/share/ublue-os/justfile
|
||||
echo "import \"/usr/share/ublue-os/just/82-bazzite-waydroid.just\"" >> /usr/share/ublue-os/justfile
|
||||
echo "import \"/usr/share/ublue-os/just/83-bazzite-audio.just\"" >> /usr/share/ublue-os/justfile
|
||||
echo "import \"/usr/share/ublue-os/just/84-bazzite-virt.just\"" >> /usr/share/ublue-os/justfile
|
||||
echo "import \"/usr/share/ublue-os/just/85-bazzite-image.just\"" >> /usr/share/ublue-os/justfile
|
||||
echo "import \"/usr/share/ublue-os/just/86-bazzite-windows.just\"" >> /usr/share/ublue-os/justfile
|
||||
echo "import \"/usr/share/ublue-os/just/90-bazzite-de.just\"" >> /usr/share/ublue-os/justfile
|
||||
|
||||
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then
|
||||
systemctl enable usr-share-sddm-themes.mount
|
||||
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"
|
||||
rm "/usr/share/ublue-os/dconfs/desktop-kinoite/zz0-"*"-bazzite-desktop-kinoite-"*".gschema.override"
|
||||
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"
|
||||
rm "/usr/share/ublue-os/dconfs/desktop-silverblue/zz0-"*"-bazzite-desktop-silverblue-"*".gschema.override"
|
||||
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/"
|
||||
glib-compile-schemas --strict /tmp/bazzite-schema-test
|
||||
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null
|
||||
rm -r /tmp/bazzite-schema-test
|
||||
sed -i 's/stage/none/g' /etc/rpm-ostreed.conf
|
||||
dnf5 copr disable -y ublue-os/akmods
|
||||
dnf5 copr disable -y kylegospo/bazzite
|
||||
dnf5 copr disable -y kylegospo/bazzite-multilib
|
||||
dnf5 copr disable -y ublue-os/staging
|
||||
dnf5 copr disable -y kylegospo/LatencyFleX
|
||||
dnf5 copr disable -y kylegospo/obs-vkcapture
|
||||
dnf5 copr disable -y kylegospo/wallpaper-engine-kde-plugin
|
||||
dnf5 copr disable -y ycollet/audinux
|
||||
dnf5 copr disable -y kylegospo/rom-properties
|
||||
dnf5 copr disable -y kylegospo/webapp-manager
|
||||
dnf5 copr disable -y hhd-dev/hhd
|
||||
dnf5 copr disable -y che/nerd-fonts
|
||||
dnf5 copr disable -y mavit/discover-overlay
|
||||
dnf5 copr disable -y lizardbyte/beta
|
||||
dnf5 copr disable -y hikariknight/looking-glass-kvmfr
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/tailscale.repo
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/charm.repo
|
||||
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
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-rar.repo
|
||||
sed -i 's#/var/lib/selinux#/etc/selinux#g' /usr/lib/python3.*/site-packages/setroubleshoot/util.py
|
||||
mkdir -p /etc/flatpak/remotes.d
|
||||
curl -Lo /etc/flatpak/remotes.d/flathub.flatpakrepo https://dl.flathub.org/repo/flathub.flatpakrepo
|
||||
|
||||
systemctl enable brew-dir-fix.service
|
||||
@ -472,8 +479,6 @@ curl -Lo /etc/distrobox/docker.ini https://github.com/ublue-os/toolboxes/raw/ref
|
||||
curl -Lo /etc/distrobox/incus.ini https://github.com/ublue-os/toolboxes/raw/refs/heads/main/apps/docker/incus.ini
|
||||
|
||||
/ctx/build_files/image-info
|
||||
export KERNEL_FLAVOR="${KERNEL_FLAVOR}"
|
||||
/ctx/build_files/build-initramfs
|
||||
|
||||
/ctx/build_files/cleanup
|
||||
/ctx/build_files/finalize
|
||||
|
@ -37,29 +37,29 @@ set -ouex pipefail
|
||||
rsync -av /ctx/system_files/deck/shared/ /ctx/system_files/deck/${BASE_IMAGE_NAME}/ /
|
||||
|
||||
# Setup Copr repos
|
||||
dnf5 -y copr enable ublue-os/akmods && \
|
||||
dnf5 -y copr enable kylegospo/bazzite && \
|
||||
dnf5 -y copr enable kylegospo/bazzite-multilib && \
|
||||
dnf5 -y copr enable kylegospo/LatencyFleX && \
|
||||
dnf5 -y copr enable kylegospo/obs-vkcapture && \
|
||||
dnf5 -y copr enable kylegospo/wallpaper-engine-kde-plugin && \
|
||||
dnf5 -y copr enable hhd-dev/hhd && \
|
||||
dnf5 -y copr enable ublue-os/akmods
|
||||
dnf5 -y copr enable kylegospo/bazzite
|
||||
dnf5 -y copr enable kylegospo/bazzite-multilib
|
||||
dnf5 -y copr enable kylegospo/LatencyFleX
|
||||
dnf5 -y copr enable kylegospo/obs-vkcapture
|
||||
dnf5 -y copr enable kylegospo/wallpaper-engine-kde-plugin
|
||||
dnf5 -y copr enable hhd-dev/hhd
|
||||
dnf5 -y copr enable ycollet/audinux
|
||||
|
||||
# Configure KDE & GNOME
|
||||
dnf5 -y remove \
|
||||
jupiter-sd-mounting-btrfs && \
|
||||
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
||||
jupiter-sd-mounting-btrfs
|
||||
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then
|
||||
dnf5 -y remove \
|
||||
steamdeck-kde-presets-desktop && \
|
||||
steamdeck-kde-presets-desktop
|
||||
dnf5 -y install \
|
||||
steamdeck-kde-presets \
|
||||
; else \
|
||||
steamdeck-kde-presets
|
||||
else
|
||||
dnf5 -y install \
|
||||
steamdeck-gnome-presets \
|
||||
gnome-shell-extension-caribou-blocker \
|
||||
sddm \
|
||||
; fi
|
||||
sddm
|
||||
fi
|
||||
|
||||
# Install new packages
|
||||
# Dock updater - done manually due to proprietary parts preventing it from being on Copr
|
||||
@ -87,14 +87,14 @@ dnf5 -y install \
|
||||
qt6-qtvirtualkeyboard \
|
||||
xorg-x11-server-Xvfb \
|
||||
python-vdf \
|
||||
python-crcmod && \
|
||||
python-crcmod
|
||||
git clone https://gitlab.com/evlaV/jupiter-dock-updater-bin.git \
|
||||
--depth 1 \
|
||||
/tmp/jupiter-dock-updater-bin && \
|
||||
mv -v /tmp/jupiter-dock-updater-bin/packaged/usr/lib/jupiter-dock-updater /usr/libexec/jupiter-dock-updater && \
|
||||
rm -rf /tmp/jupiter-dock-updater-bin && \
|
||||
ln -s /usr/bin/steamos-logger /usr/bin/steamos-info && \
|
||||
ln -s /usr/bin/steamos-logger /usr/bin/steamos-notice && \
|
||||
/tmp/jupiter-dock-updater-bin
|
||||
mv -v /tmp/jupiter-dock-updater-bin/packaged/usr/lib/jupiter-dock-updater /usr/libexec/jupiter-dock-updater
|
||||
rm -rf /tmp/jupiter-dock-updater-bin
|
||||
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
|
||||
|
||||
# Install Steam Deck patched UPower, remove Tuned GUI
|
||||
@ -104,74 +104,78 @@ dnf5 -y swap \
|
||||
|
||||
# Install Gamescope Session & Supporting changes
|
||||
# Add bootstrap_steam.tar.gz used by gamescope-session (Thanks GE & Nobara Project!)
|
||||
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 && \
|
||||
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
|
||||
dnf5 -y install \
|
||||
gamescope-session-plus \
|
||||
gamescope-session-steam
|
||||
|
||||
# Cleanup & Finalize
|
||||
/ctx/build_files/image-info && \
|
||||
mkdir -p "/etc/xdg/autostart" && \
|
||||
mv "/etc/skel/.config/autostart/steam.desktop" "/etc/xdg/autostart/steam.desktop" && \
|
||||
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 && \
|
||||
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
|
||||
sed -i 's/Exec=.*/Exec=systemctl start return-to-gamemode.service/' /etc/skel/Desktop/Return.desktop && \
|
||||
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 \
|
||||
; fi && \
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/input-remapper-gtk.desktop && \
|
||||
cp "/usr/share/ublue-os/firstboot/yafti.yml" "/etc/yafti.yml" && \
|
||||
dnf5 copr disable -y ublue-os/akmods && \
|
||||
dnf5 copr disable -y kylegospo/bazzite && \
|
||||
dnf5 copr disable -y kylegospo/bazzite-multilib && \
|
||||
dnf5 copr disable -y kylegospo/LatencyFleX && \
|
||||
dnf5 copr disable -y kylegospo/obs-vkcapture && \
|
||||
dnf5 copr disable -y kylegospo/wallpaper-engine-kde-plugin && \
|
||||
dnf5 copr disable -y hhd-dev/hhd && \
|
||||
dnf5 copr disable -y ycollet/audinux && \
|
||||
if grep -q "silverblue" <<< "${BASE_IMAGE_NAME}"; then \
|
||||
systemctl disable gdm.service && \
|
||||
systemctl enable sddm.service \
|
||||
; fi && \
|
||||
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" && \
|
||||
rm "/usr/share/ublue-os/dconfs/deck-silverblue/zz0-"*"-bazzite-deck-silverblue-"*".gschema.override" \
|
||||
; else \
|
||||
systemctl disable usr-share-sddm-themes.mount \
|
||||
; 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/" && \
|
||||
glib-compile-schemas --strict /tmp/bazzite-schema-test && \
|
||||
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null && \
|
||||
rm -r /tmp/bazzite-schema-test && \
|
||||
{ rm -v /usr/share/applications/bazzite-steam-bpm.desktop || true; } && \
|
||||
systemctl enable bazzite-autologin.service && \
|
||||
systemctl enable wireplumber-workaround.service && \
|
||||
systemctl enable wireplumber-sysconf.service && \
|
||||
systemctl enable pipewire-workaround.service && \
|
||||
systemctl enable pipewire-sysconf.service && \
|
||||
systemctl enable ds-inhibit.service && \
|
||||
systemctl enable cec-onboot.service && \
|
||||
systemctl enable cec-onpoweroff.service && \
|
||||
systemctl enable cec-onsleep.service && \
|
||||
systemctl enable bazzite-tdpfix.service && \
|
||||
systemctl enable bazzite-grub-boot-success.timer && \
|
||||
systemctl enable bazzite-grub-boot-success.service && \
|
||||
systemctl --global disable sdgyrodsu.service && \
|
||||
systemctl --global disable grub-boot-success.timer && \
|
||||
systemctl disable grub-boot-indeterminate.service && \
|
||||
systemctl disable input-remapper.service && \
|
||||
systemctl disable ublue-update.timer && \
|
||||
systemctl disable jupiter-fan-control.service && \
|
||||
systemctl disable vpower.service && \
|
||||
systemctl disable jupiter-biosupdate.service && \
|
||||
systemctl disable jupiter-controller-update.service && \
|
||||
mkdir -p "/etc/xdg/autostart"
|
||||
mv "/etc/skel/.config/autostart/steam.desktop" "/etc/xdg/autostart/steam.desktop"
|
||||
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
|
||||
|
||||
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then
|
||||
sed -i 's/Exec=.*/Exec=systemctl start return-to-gamemode.service/' /etc/skel/Desktop/Return.desktop
|
||||
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
|
||||
fi
|
||||
|
||||
sed -i 's@\[Desktop Entry\]@\[Desktop Entry\]\nNoDisplay=true@g' /usr/share/applications/input-remapper-gtk.desktop
|
||||
cp "/usr/share/ublue-os/firstboot/yafti.yml" "/etc/yafti.yml"
|
||||
dnf5 copr disable -y ublue-os/akmods
|
||||
dnf5 copr disable -y kylegospo/bazzite
|
||||
dnf5 copr disable -y kylegospo/bazzite-multilib
|
||||
dnf5 copr disable -y kylegospo/LatencyFleX
|
||||
dnf5 copr disable -y kylegospo/obs-vkcapture
|
||||
dnf5 copr disable -y kylegospo/wallpaper-engine-kde-plugin
|
||||
dnf5 copr disable -y hhd-dev/hhd
|
||||
dnf5 copr disable -y ycollet/audinux
|
||||
|
||||
if grep -q "silverblue" <<< "${BASE_IMAGE_NAME}"; then
|
||||
systemctl disable gdm.service
|
||||
systemctl enable sddm.service
|
||||
fi
|
||||
|
||||
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"
|
||||
rm "/usr/share/ublue-os/dconfs/deck-silverblue/zz0-"*"-bazzite-deck-silverblue-"*".gschema.override"
|
||||
else
|
||||
systemctl disable usr-share-sddm-themes.mount
|
||||
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/"
|
||||
glib-compile-schemas --strict /tmp/bazzite-schema-test
|
||||
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null
|
||||
rm -r /tmp/bazzite-schema-test
|
||||
{ rm -v /usr/share/applications/bazzite-steam-bpm.desktop || true; }
|
||||
systemctl enable bazzite-autologin.service
|
||||
systemctl enable wireplumber-workaround.service
|
||||
systemctl enable wireplumber-sysconf.service
|
||||
systemctl enable pipewire-workaround.service
|
||||
systemctl enable pipewire-sysconf.service
|
||||
systemctl enable ds-inhibit.service
|
||||
systemctl enable cec-onboot.service
|
||||
systemctl enable cec-onpoweroff.service
|
||||
systemctl enable cec-onsleep.service
|
||||
systemctl enable bazzite-tdpfix.service
|
||||
systemctl enable bazzite-grub-boot-success.timer
|
||||
systemctl enable bazzite-grub-boot-success.service
|
||||
systemctl --global disable sdgyrodsu.service
|
||||
systemctl --global disable grub-boot-success.timer
|
||||
systemctl disable grub-boot-indeterminate.service
|
||||
systemctl disable input-remapper.service
|
||||
systemctl disable ublue-update.timer
|
||||
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
|
||||
|
||||
/ctx/build_files/image-info
|
||||
/ctx/build_files/cleanup
|
||||
/ctx/build_files/finalize
|
||||
|
@ -44,34 +44,34 @@ dnf5 -y remove \
|
||||
rocm-clinfo
|
||||
|
||||
# Install NVIDIA driver
|
||||
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
|
||||
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo
|
||||
dnf5 -y install \
|
||||
--repo terra-extras \
|
||||
mesa-vdpau-drivers.x86_64 \
|
||||
mesa-vdpau-drivers.i686 && \
|
||||
curl -Lo /tmp/nvidia-install.sh https://raw.githubusercontent.com/ublue-os/hwe/main/nvidia-install.sh && \
|
||||
chmod +x /tmp/nvidia-install.sh && \
|
||||
IMAGE_NAME="${BASE_IMAGE_NAME}" /tmp/nvidia-install.sh && \
|
||||
rm -f /usr/share/vulkan/icd.d/nouveau_icd.*.json && \
|
||||
mesa-vdpau-drivers.i686
|
||||
curl -Lo /tmp/nvidia-install.sh https://raw.githubusercontent.com/ublue-os/hwe/main/nvidia-install.sh
|
||||
chmod +x /tmp/nvidia-install.sh
|
||||
IMAGE_NAME="${BASE_IMAGE_NAME}" /tmp/nvidia-install.sh
|
||||
rm -f /usr/share/vulkan/icd.d/nouveau_icd.*.json
|
||||
ln -s libnvidia-ml.so.1 /usr/lib64/libnvidia-ml.so
|
||||
|
||||
# Cleanup & Finalize
|
||||
echo "import \"/usr/share/ublue-os/just/95-bazzite-nvidia.just\"" >> /usr/share/ublue-os/justfile && \
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
|
||||
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" && \
|
||||
rm "/usr/share/ublue-os/dconfs/nvidia-silverblue/zz0-"*"-bazzite-nvidia-silverblue-"*".gschema.override" \
|
||||
; 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/" && \
|
||||
glib-compile-schemas --strict /tmp/bazzite-schema-test && \
|
||||
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null && \
|
||||
rm -r /tmp/bazzite-schema-test && \
|
||||
/ctx/build_files/image-info && \
|
||||
/ctx/build_files/build-initramfs
|
||||
echo "import \"/usr/share/ublue-os/just/95-bazzite-nvidia.just\"" >> /usr/share/ublue-os/justfile
|
||||
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo
|
||||
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"
|
||||
rm "/usr/share/ublue-os/dconfs/nvidia-silverblue/zz0-"*"-bazzite-nvidia-silverblue-"*".gschema.override"
|
||||
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/"
|
||||
glib-compile-schemas --strict /tmp/bazzite-schema-test
|
||||
glib-compile-schemas /usr/share/glib-2.0/schemas &>/dev/null
|
||||
rm -r /tmp/bazzite-schema-test
|
||||
|
||||
/ctx/build_files/image-info
|
||||
/ctx/build_files/build-initramfs
|
||||
/ctx/build_files/cleanup
|
||||
/ctx/build_files/finalize
|
||||
|
@ -11,4 +11,4 @@ fi
|
||||
QUALIFIED_KERNEL="$(rpm -qa | grep -P 'kernel-(|'"$KERNEL_SUFFIX"'-)(\d+\.\d+\.\d+)' | sed -E 's/kernel-(|'"$KERNEL_SUFFIX"'-)//')"
|
||||
/usr/bin/dracut --no-hostonly --kver "$QUALIFIED_KERNEL" --reproducible --zstd -v --add ostree -f "/lib/modules/$QUALIFIED_KERNEL/initramfs.img"
|
||||
|
||||
chmod 0600 /lib/modules/$QUALIFIED_KERNEL/initramfs.img
|
||||
chmod 0600 "/lib/modules/$QUALIFIED_KERNEL/initramfs.img"
|
Loading…
x
Reference in New Issue
Block a user