feat(deck): Enable Wayland by default! (#129)

* feat(deck): Enable Wayland by default!

With the flip of a switch

* chore: Add /usr/bin/bazzite-steam wrapper for handling extest LD_PRELOAD dynamically

* chore: Use steam-runtime wrapper for deck builds

* chore: Move bazzite-steam-runtime to deck only files

* fix: Correct issue with .desktop file copying

* fix: Correct name of deckswap-on script in Yafti

* chore(readme): Cleanup, mention Wayland change

---------

Co-authored-by: Kyle Gospodnetich <me@kylegospodneti.ch>
This commit is contained in:
RJ Trujillo 2023-08-09 18:38:38 -06:00 committed by GitHub
parent c056f73581
commit 9597496265
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 19 additions and 11 deletions

View File

@ -272,7 +272,7 @@ RUN rm /usr/share/applications/winetricks.desktop && \
ln -s /usr/bin/steamos-logger /usr/bin/steamos-warning && \
mkdir -p "/etc/xdg/autostart" && \
cp "/usr/share/applications/steam.desktop" "/etc/xdg/autostart" && \
sed -i 's@/usr/bin/steam-runtime %U@/usr/bin/steam-runtime -silent %U@g' /etc/xdg/autostart/steam.desktop && \
sed -i 's@/usr/bin/steam-runtime %U@/usr/bin/bazzite-steam-runtime -silent %U@g' /etc/xdg/autostart/steam.desktop && \
cp "/usr/share/ublue-os/firstboot/yafti.yml" "/etc/yafti.yml" && \
sed -i 's/#HandlePowerKey=poweroff/HandlePowerKey=suspend/g' /etc/systemd/logind.conf && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \

View File

@ -59,6 +59,7 @@ or for devices with Nvidia GPUs:
Variant designed for usage as an alternative to SteamOS on the Steam Deck, available as `bazzite-deck`:
- Directly boots to Gamemode matching SteamOS's behavior.
- Uses Wayland on the desktop with [full support for Steam input](https://github.com/Supreeeme/extest).
- Features ported versions of most SteamOS packages, including drivers, firmware updaters, and fan controllers [from the evlaV repository](https://gitlab.com/evlaV).
- Patched Mesa for proper framerate control from Gamescope.
- Comes with patches from [SteamOS BTRFS](https://gitlab.com/popsulfr/steamos-btrfs) for full BTRFS support for the SD card by default.
@ -81,7 +82,6 @@ Variant designed for usage as an alternative to SteamOS on the Steam Deck, avail
- Service for low-risk undervolting of the Steam Deck via [RyzenAdj](https://github.com/FlyGoat/RyzenAdj), see `ryzenadj.service` and `/etc/default/ryzenadj`.
- Service for limiting the max charge level of the battery, see `batterylimit.service` and `/etc/default/batterylimit`. <sup><sub>(Works even when the device is off)</sub></sup>
- Built in support for display overclocking. For example, add `GAMESCOPE_OVERRIDE_REFRESH_RATE=40,70` to `/etc/environment`.
- Use Wayland on the Desktop by adding `DESKTOP_WAYLAND=1` to `/etc/environment`.
**For new installs ISOs can be downloaded from our releases page [here](https://github.com/ublue-os/bazzite/releases).**
@ -94,7 +94,7 @@ To rebase an existing ostree system to this image:
Builds with the GNOME desktop environment are available in both desktop and deck flavors. These builds come with the following additional features:
- [Variable refresh rate support enabled under Wayland](https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/1154).
- Custom menu in the top bar for returning to game mode, launching Steam, and opening a number of useful utilities. (Only on Steam Deck builds)
- Custom menu in the top bar for returning to game mode, launching Steam, and opening a number of useful utilities. <sub><sup>(Only on Steam Deck builds)</sup></sub>
- [GSConnect](https://extensions.gnome.org/extension/1319/gsconnect/) preinstalled and ready to use.
- Features optional Valve-inspired themes matching Vapor and VGUI2 from SteamOS.
- [Optional important user experience fix](https://www.youtube.com/watch?v=nbCg9_YgKgM).

View File

@ -1 +1 @@
DESKTOP_WAYLAND=false
DESKTOP_WAYLAND=true

View File

@ -0,0 +1,7 @@
#!/usr/bin/env bash
if [[ "$XDG_SESSION_TYPE" = "wayland" ]]; then
LD_PRELOAD=/usr/lib/extest/libextest.so /usr/bin/steam-runtime "$*"
else
/usr/bin/steam-runtime "$*"
fi

View File

@ -53,7 +53,7 @@ screens:
description: Adjust ZRAM and configure deckswap
default: false
packages:
- Deck Swap: just --unstable swap-on
- Deck Swap: just --unstable deckswap-on
- Disable ZRAM: just --unstable zram-off
Nix Package Manager:
description: Nix is a powerful package manager for Linux and other Unix systems that makes package management reliable and reproducible

View File

@ -11,11 +11,12 @@ if [[ $BASE_IMAGE_NAME =~ "kinoite" ]]; then
echo 'Running setup for Kinoite on Steam Deck'
echo 'Creating Desktop shortcuts'
cp /usr/share/applications/steam.desktop ~/Desktop
cp /usr/share/applications/steam.desktop ~/Desktop/steam.desktop
sed -i 's@Steam (Runtime)@Steam@g' ~/Desktop/steam.desktop
cp /etc/skel.d/Desktop/Return.desktop ~/Desktop
cp /usr/share/applications/lutris.desktop ~/Desktop
cp /usr/share/applications/yafti.desktop ~/Desktop
sed -i 's@/usr/bin/steam-runtime %U@/usr/bin/bazzite-steam-runtime %U@g' ~/Desktop/steam.desktop
cp /etc/skel.d/Desktop/Return.desktop ~/Desktop/Return.desktop
cp /usr/share/applications/lutris.desktop ~/Desktop/lutris.desktop
cp /usr/share/applications/yafti.desktop ~/Desktop/yafti.desktop
fi
else
echo 'Running setup for Silverblue'

View File

@ -18,9 +18,9 @@ install-bazzite-arch:
distrobox-enter -n bazzite-arch -- ' distrobox-export --bin /usr/bin/steamcmd --export-path ~/.steam'
mv ~/.steam/steamcmd ~/.steam/steamcmd.sh
if [[ ${BASE_IMAGE_NAME} == 'kinoite' ]]; then
cp ~/.local/share/applications/bazzite-arch-steam.desktop ~/Desktop
cp ~/.local/share/applications/bazzite-arch-steam.desktop ~/Desktop/bazzite-arch-steam.desktop
sed -i 's@Steam (Runtime) (on bazzite-arch)@Steam@g' ~/Desktop/bazzite-arch-steam.desktop
cp ~/.local/share/applications/bazzite-arch-net.lutris.Lutris.desktop ~/Desktop
cp ~/.local/share/applications/bazzite-arch-net.lutris.Lutris.desktop ~/Desktop/bazzite-arch-net.lutris.Lutris.desktop
sed -i 's@Lutris (on bazzite-arch)@Lutris@g' ~/Desktop/bazzite-arch-net.lutris.Lutris.desktop
fi
sleep 10