Merge remote-tracking branch 'upstream/testing' into from-dconf-to-gschema

This commit is contained in:
fiftydinar 2024-10-08 12:18:37 +02:00
commit 1011450b33
20 changed files with 157 additions and 168 deletions

View File

@ -12,4 +12,4 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Comment filter
uses: DecimalTurn/Comment-Filter@558e9a0b05c9a211a581ee365c90a0a3e3ff9476 #v0.1.3
uses: DecimalTurn/Comment-Filter@9683f002007cc8739893f27123f6d3d857ea7808 #v0.1.4

View File

@ -37,7 +37,7 @@ jobs:
echo "NAME=$name" >> $GITHUB_OUTPUT
- name: Setup Cosign
uses: sigstore/cosign-installer@4959ce089c160fddf62f7b42464195ba1a56d382 # v3.6.0
uses: sigstore/cosign-installer@dc72c7d5c4d10cd6bcb8cf6e3fd625a9e5e537da # v3.7.0
- name: Sign Image
env:

View File

@ -215,7 +215,13 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
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/tailscale.repo https://pkgs.tailscale.com/stable/fedora/tailscale.repo && \
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 && \
sed -i 's@gpgcheck=1@gpgcheck=0@g' /etc/yum.repos.d/tailscale.repo && \
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 && \
/usr/libexec/containerbuild/cleanup.sh && \
ostree container commit
@ -300,12 +306,11 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
/usr/libexec/containerbuild/cleanup.sh && \
ostree container commit
# Add ublue packages, add needed negativo17 repo and then immediately disable due to incompatibility with RPMFusion
# Add ublue packages
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 && \
curl -Lo /etc/yum.repos.d/negativo17-fedora-multimedia.repo https://negativo17.org/repos/fedora-multimedia.repo && \
rpm-ostree install \
/tmp/akmods-rpms/kmods/*kvmfr*.rpm \
/tmp/akmods-rpms/kmods/*xone*.rpm \
@ -321,7 +326,6 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
/tmp/akmods-extra-rpms/kmods/*bmi260*.rpm \
/tmp/akmods-extra-rpms/kmods/*ryzen-smu*.rpm \
/tmp/akmods-extra-rpms/kmods/*evdi*.rpm && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
rpm-ostree override replace \
--experimental \
--from repo=copr:copr.fedorainfracloud.org:ublue-os:staging \
@ -329,18 +333,16 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
fwupd-plugin-flashrom \
fwupd-plugin-modem-manager \
fwupd-plugin-uefi-capsule-data && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-*.repo && \
/usr/libexec/containerbuild/cleanup.sh && \
ostree container commit
# Install Valve's patched Mesa, Pipewire, Bluez, and Xwayland
# Install patched switcheroo control with proper discrete GPU support
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
rpm-ostree override remove \
mesa-va-drivers-freeworld && \
rpm-ostree override replace \
--experimental \
--from repo=copr:copr.fedorainfracloud.org:kylegospo:bazzite-multilib \
mesa-filesystem \
mesa-libxatracker \
mesa-libglapi \
mesa-dri-drivers \
@ -362,12 +364,12 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
bluez-cups \
bluez-libs \
xorg-x11-server-Xwayland && \
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/rpmfusion-*.repo && \
rpm-ostree install \
mesa-va-drivers-freeworld \
mesa-vdpau-drivers-freeworld.x86_64 \
libaacs \
libbdplus \
libbluray && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-*.repo && \
rpm-ostree override replace \
--experimental \
--from repo=copr:copr.fedorainfracloud.org:sentry:switcheroo-control_discrete \
@ -428,8 +430,8 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
yad \
f3 \
pulseaudio-utils \
unrar \
lzip \
rar \
libxcrypt-compat \
mesa-libGLU \
vulkan-tools \
@ -502,23 +504,7 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
pipewire-alsa.i686 \
gobject-introspection \
clinfo \
https://kojipkgs.fedoraproject.org//packages/SDL2/2.30.3/1.fc40/i686/SDL2-2.30.3-1.fc40.i686.rpm && \
sed -i '0,/enabled=1/s//enabled=0/' /etc/yum.repos.d/fedora-updates.repo && \
rpm-ostree install \
mesa-vulkan-drivers.i686 \
mesa-va-drivers-freeworld.i686 \
mesa-vdpau-drivers-freeworld.i686 && \
sed -i '0,/enabled=0/s//enabled=1/' /etc/yum.repos.d/rpmfusion-nonfree-steam.repo && \
sed -i '0,/enabled=1/s//enabled=0/' /etc/yum.repos.d/rpmfusion-nonfree.repo && \
sed -i '0,/enabled=1/s//enabled=0/' /etc/yum.repos.d/rpmfusion-nonfree-updates.repo && \
sed -i '0,/enabled=1/s//enabled=0/' /etc/yum.repos.d/rpmfusion-nonfree-updates-testing.repo && \
rpm-ostree install \
steam && \
sed -i '0,/enabled=1/s//enabled=0/' /etc/yum.repos.d/rpmfusion-nonfree-steam.repo && \
sed -i '0,/enabled=0/s//enabled=1/' /etc/yum.repos.d/rpmfusion-nonfree.repo && \
sed -i '0,/enabled=0/s//enabled=1/' /etc/yum.repos.d/rpmfusion-nonfree-updates.repo && \
sed -i '0,/enabled=0/s//enabled=1/' /etc/yum.repos.d/rpmfusion-nonfree-updates-testing.repo && \
sed -i '0,/enabled=0/s//enabled=1/' /etc/yum.repos.d/fedora-updates.repo && \
rpm-ostree install \
lutris \
umu-launcher \
@ -529,12 +515,16 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
libFAudio.x86_64 \
libFAudio.i686 \
winetricks \
protontricks \
latencyflex-vulkan-layer \
mesa-vulkan-drivers.i686 \
mesa-va-drivers.i686 \
vkBasalt.x86_64 \
vkBasalt.i686 \
mangohud.x86_64 \
mangohud.i686 && \
mangohud.i686 \
obs-vkcapture.x86_64 \
libobs_vkcapture.x86_64 \
libobs_glcapture.x86_64 && \
ln -s wine32 /usr/bin/wine && \
ln -s wine32-preloader /usr/bin/wine-preloader && \
ln -s wineserver64 /usr/bin/wineserver && \
@ -716,30 +706,6 @@ RUN rm -f /etc/profile.d/toolbox.sh && \
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/90-bazzite-de.just\"" >> /usr/share/ublue-os/justfile && \
if grep -q "kinoite" <<< "${BASE_IMAGE_NAME}"; then \
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" && \
# Replace sort-directories-first to be compatible with dconf
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 && \
# Test Bazzite gschema override for errors. If there are no errors, proceed with compiling Bazzite gschema, which includes setting overrides.
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 && \
sed -i 's/stage/none/g' /etc/rpm-ostreed.conf && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_kylegospo-bazzite.repo && \
@ -758,9 +724,9 @@ RUN rm -f /etc/profile.d/toolbox.sh && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/_copr_hikariknight-looking-glass-kvmfr.repo && \
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/rpmfusion-nonfree.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-nonfree-updates.repo && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/rpmfusion-nonfree-updates-testing.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 && \
mkdir -p /etc/flatpak/remotes.d && \
curl -Lo /etc/flatpak/remotes.d/flathub.flatpakrepo https://dl.flathub.org/repo/flathub.flatpakrepo && \
systemctl enable tuned.service && \
@ -769,7 +735,7 @@ RUN rm -f /etc/profile.d/toolbox.sh && \
systemctl disable brew-upgrade.timer && \
systemctl disable brew-update.timer && \
systemctl enable btrfs-dedup@var-home.timer && \
systemctl enable displaylink.service && \
systemctl disable displaylink.service && \
systemctl enable input-remapper.service && \
systemctl unmask bazzite-flatpak-manager.service && \
systemctl enable bazzite-flatpak-manager.service && \
@ -777,7 +743,7 @@ RUN rm -f /etc/profile.d/toolbox.sh && \
systemctl enable ublue-update.timer && \
systemctl enable incus-workaround.service && \
systemctl enable bazzite-hardware-setup.service && \
systemctl enable tailscaled.service && \
systemctl disable tailscaled.service && \
systemctl enable dev-hugepages1G.mount && \
systemctl --global enable bazzite-user-setup.service && \
systemctl --global enable podman.socket && \
@ -923,22 +889,6 @@ RUN /usr/libexec/containerbuild/image-info && \
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" && \
; fi && \
# Test Bazzite gschema override for errors. If there are no errors, proceed with compiling Bazzite gschema, which includes setting overrides.
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 && \
systemctl enable bazzite-autologin.service && \
systemctl enable wireplumber-workaround.service && \
systemctl enable wireplumber-sysconf.service && \
@ -999,6 +949,10 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
# Install NVIDIA driver
RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
--mount=type=bind,from=nvidia-akmods,src=/rpms,dst=/tmp/akmods-rpms \
sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
rpm-ostree install \
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 && \
@ -1009,21 +963,7 @@ RUN --mount=type=cache,dst=/var/cache/rpm-ostree \
# Cleanup & Finalize
RUN echo "import \"/usr/share/ublue-os/just/95-bazzite-nvidia.just\"" >> /usr/share/ublue-os/justfile && \
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 && \
# Test Bazzite gschema override for errors. If there are no errors, proceed with compiling Bazzite gschema, which includes setting overrides.
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 && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo && \
mkdir -p /var/tmp && chmod 1777 /var/tmp && \
/usr/libexec/containerbuild/image-info && \
/usr/libexec/containerbuild/build-initramfs && \

View File

@ -374,4 +374,4 @@ We also ship a config for the popular [pull app](https://github.com/apps/pull) i
- Follow Universal Blue on [Mastodon](https://fosstodon.org/@UniversalBlue).
[**View the full list of Bazzite resources and social presence**](https://universal-blue.discourse.group/docs?topic=8).
[**View the full list of Bazzite resources and social presence**](https://docs.bazzite.gg/Resources/).

View File

@ -1,5 +1,6 @@
app/org.mozilla.firefox/x86_64/stable
app/com.mattjakeman.ExtensionManager/x86_64/stable
app/com.github.Matoking.protontricks/stable
app/io.github.fastrizwaan.WineZGUI/x86_64/stable
app/io.github.dvlv.boxbuddyrs/x86_64/stable
app/it.mijorus.gearlever/x86_64/stable

View File

@ -8,6 +8,7 @@ app/io.github.fastrizwaan.WineZGUI/x86_64/stable
app/io.github.dvlv.boxbuddyrs/x86_64/stable
app/it.mijorus.gearlever/x86_64/stable
app/com.github.tchx84.Flatseal/x86_64/stable
app/com.github.Matoking.protontricks/stable
app/io.github.flattool.Warehouse/x86_64/stable
app/net.davidotek.pupgui2/x86_64/stable
runtime/org.freedesktop.Platform.VulkanLayer.MangoHud/x86_64/23.08

View File

@ -5,7 +5,7 @@
Name: gamescope-legacy
Version: 3.14.2
Release: 3.bazzite
Release: 4.bazzite
Summary: Legacy builds of gamescope, a micro-compositor for video games on Wayland
License: BSD
@ -18,7 +18,7 @@ Source2: https://github.com/Joshua-Ashton/reshade/archive/%{reshade_commi
Patch0: 0001-cstdint.patch
# https://hhd.dev/
Patch1: v2-0001-always-send-ctrl-1-2-to-steam-s-wayland-session.patch
Patch1: v2-0001-steam-overlay-hotkeys.patch
# ChimeraOS
Patch2: legacy-720p.patch

View File

@ -6,7 +6,7 @@
Name: gamescope
Version: 100.%{gamescope_tag}
Release: 2.bazzite
Release: 3.bazzite
Summary: Micro-compositor for video games on Wayland
License: BSD
@ -22,7 +22,7 @@ Patch1: chimeraos.patch
# https://hhd.dev/
Patch2: disable-steam-touch-click-atom.patch
Patch3: v2-0001-always-send-ctrl-1-2-to-steam-s-wayland-session.patch
Patch3: v2-0001-steam-overlay-hotkeys.patch
# https://github.com/ValveSoftware/gamescope/issues/1369
Patch4: revert-299bc34.patch

View File

@ -1,40 +0,0 @@
From 35e001dc59a44227d670c667a85a6ef5472eee58 Mon Sep 17 00:00:00 2001
From: antheas <git@antheas.dev>
Date: Sat, 20 Jul 2024 01:23:19 +0300
Subject: [PATCH v2] always send ctrl+1/2 to steam's wayland session
---
src/wlserver.cpp | 10 +++++++++-
1 file changed, 9 insertions(+), 1 deletion(-)
diff --git a/src/wlserver.cpp b/src/wlserver.cpp
index 1852be9..7de737d 100644
--- a/src/wlserver.cpp
+++ b/src/wlserver.cpp
@@ -369,7 +369,12 @@ static void wlserver_handle_key(struct wl_listener *listener, void *data)
keysym == XKB_KEY_XF86AudioLowerVolume ||
keysym == XKB_KEY_XF86AudioRaiseVolume ||
keysym == XKB_KEY_XF86PowerOff;
- if ( ( event->state == WL_KEYBOARD_KEY_STATE_PRESSED || event->state == WL_KEYBOARD_KEY_STATE_RELEASED ) && forbidden_key )
+
+ // Check for steam keys (ctrl + 1/2)
+ bool is_steamshortcut = (keyboard->wlr->modifiers.depressed & WLR_MODIFIER_CTRL) && (keysym == XKB_KEY_1 ||
+ keysym == XKB_KEY_2);
+
+ if ( ( event->state == WL_KEYBOARD_KEY_STATE_PRESSED || event->state == WL_KEYBOARD_KEY_STATE_RELEASED ) && (forbidden_key || is_steamshortcut) )
{
// Always send volume+/- to root server only, to avoid it reaching the game.
struct wlr_surface *old_kb_surf = wlserver.kb_focus_surface;
@@ -378,6 +383,9 @@ static void wlserver_handle_key(struct wl_listener *listener, void *data)
{
wlserver_keyboardfocus( new_kb_surf, false );
wlr_seat_set_keyboard( wlserver.wlr.seat, keyboard->wlr );
+ // Send modifiers to steam for it to work
+ if (is_steamshortcut)
+ wlr_seat_keyboard_notify_modifiers(wlserver.wlr.seat, &keyboard->wlr->modifiers);
wlr_seat_keyboard_notify_key( wlserver.wlr.seat, event->time_msec, event->keycode, event->state );
wlserver_keyboardfocus( old_kb_surf, false );
return;
--
2.45.2

View File

@ -0,0 +1,44 @@
diff --git a/src/wlserver.cpp b/src/wlserver.cpp
index 3535c9b..d29a3d5 100644
--- a/src/wlserver.cpp
+++ b/src/wlserver.cpp
@@ -290,6 +290,9 @@ static void wlserver_handle_modifiers(struct wl_listener *listener, void *data)
bump_input_counter();
}
+// false if GS_ENABLE_CTRL_12 exists and is 0, true otherwise
+bool env_gs_enable_ctrl_12 = getenv("GS_ENABLE_CTRL_12") ? (getenv("GS_ENABLE_CTRL_12")[0] != '0') : true;
+
static void wlserver_handle_key(struct wl_listener *listener, void *data)
{
struct wlserver_keyboard *keyboard = wl_container_of( listener, keyboard, key );
@@ -310,7 +313,14 @@ static void wlserver_handle_key(struct wl_listener *listener, void *data)
keysym == XKB_KEY_XF86AudioLowerVolume ||
keysym == XKB_KEY_XF86AudioRaiseVolume ||
keysym == XKB_KEY_XF86PowerOff;
- if ( ( event->state == WL_KEYBOARD_KEY_STATE_PRESSED || event->state == WL_KEYBOARD_KEY_STATE_RELEASED ) && forbidden_key )
+
+ // Check for steam overlay key (ctrl/super + 1/2)
+ bool is_steamshortcut =
+ ((env_gs_enable_ctrl_12 && (keyboard->wlr->modifiers.depressed & WLR_MODIFIER_CTRL)) ||
+ (keyboard->wlr->modifiers.depressed & WLR_MODIFIER_LOGO)) &&
+ (keysym == XKB_KEY_1 || keysym == XKB_KEY_2);
+
+ if ( ( event->state == WL_KEYBOARD_KEY_STATE_PRESSED || event->state == WL_KEYBOARD_KEY_STATE_RELEASED ) && (forbidden_key || is_steamshortcut) )
{
// Always send volume+/- to root server only, to avoid it reaching the game.
struct wlr_surface *old_kb_surf = wlserver.kb_focus_surface;
@@ -319,6 +329,13 @@ static void wlserver_handle_key(struct wl_listener *listener, void *data)
{
wlserver_keyboardfocus( new_kb_surf, false );
wlr_seat_set_keyboard( wlserver.wlr.seat, keyboard->wlr );
+ if (is_steamshortcut)
+ {
+ // send ctrl down modifier to trigger the overlay
+ wlr_keyboard_modifiers ctrl_down_modifier;
+ ctrl_down_modifier.depressed = WLR_MODIFIER_CTRL;
+ wlr_seat_keyboard_notify_modifiers(wlserver.wlr.seat, &ctrl_down_modifier);
+ }
wlr_seat_keyboard_notify_key( wlserver.wlr.seat, event->time_msec, event->keycode, event->state );
wlserver_keyboardfocus( old_kb_surf, false );
return;

View File

@ -68,7 +68,9 @@ Name: mesa
Summary: Mesa graphics libraries
%global ver 24.1.7
Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)}
Release: 100.bazzite.{{{ git_dir_version }}}
Epoch: 1
%global orig_release 1%{?dist}
Release: 100.bazzite.%{orig_release}
License: MIT AND BSD-3-Clause AND SGI-B-2.0
URL: http://www.mesa3d.org
@ -232,7 +234,7 @@ Provides: libEGL-devel%{?_isa}
%package dri-drivers
Summary: Mesa-based DRI drivers
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{orig_release}
Requires: %{name}-libglapi%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
%if 0%{?with_va}
Recommends: %{name}-va-drivers%{?_isa}
@ -244,7 +246,7 @@ Recommends: %{name}-va-drivers%{?_isa}
%if 0%{?with_omx}
%package omx-drivers
Summary: Mesa-based OMX drivers
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{orig_release}
%description omx-drivers
%{summary}.
@ -253,7 +255,7 @@ Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{rel
%if 0%{?with_va}
%package va-drivers
Summary: Mesa-based VA-API video acceleration drivers
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{orig_release}
Obsoletes: %{name}-vaapi-drivers < 22.2.0-5
%description va-drivers
@ -263,7 +265,7 @@ Obsoletes: %{name}-vaapi-drivers < 22.2.0-5
%if 0%{?with_vdpau}
%package vdpau-drivers
Summary: Mesa-based VDPAU drivers
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{release}
Requires: %{name}-filesystem%{?_isa} = %{?epoch:%{epoch}:}%{version}-%{orig_release}
%description vdpau-drivers
%{summary}.

View File

@ -1,6 +1,6 @@
%global majorversion 1
%global minorversion 0
%global microversion 7
%global microversion 8
%global apiversion 0.3
%global spaversion 0.2
@ -9,7 +9,7 @@
%global ms_version 0.4.2
# For rpmdev-bumpspec and releng automation
%global baserelease 2
%global baserelease 1
#global snapdate 20210107
#global gitcommit b17db2cebc1a5ab2c01851d29c05f79cd2f262bb
@ -44,8 +44,7 @@
%bcond_without jackserver_plugin
%bcond_without libmysofa
%bcond_without lv2
#bcond_without roc
%bcond_with roc
%bcond_without roc
%endif
%if 0%{?rhel} || ("%{_arch}" == "s390x")
@ -424,26 +423,26 @@ cp %{SOURCE1} subprojects/packagefiles/
%build
%meson \
-D docs=enabled -D man=enabled -D gstreamer=enabled -D systemd=enabled \
-D sdl2=disabled \
-D audiotestsrc=disabled -D videotestsrc=disabled \
-D volume=disabled -D bluez5-codec-aptx=disabled \
-D bluez5-codec-lc3plus=disabled -D bluez5-codec-lc3=enabled \
-D docs=enabled -D man=enabled -D gstreamer=enabled -D systemd=enabled \
-D sdl2=disabled \
-D audiotestsrc=disabled -D videotestsrc=disabled \
-D volume=disabled -D bluez5-codec-aptx=disabled \
-D bluez5-codec-lc3plus=disabled -D bluez5-codec-lc3=enabled \
%ifarch s390x
-D bluez5-codec-ldac=disabled \
-D bluez5-codec-ldac=disabled \
%endif
-D session-managers=[] \
-D rtprio-server=60 -D rtprio-client=55 -D rlimits-rtprio=70 \
%{!?with_jack:-D pipewire-jack=disabled} \
%{!?with_jackserver_plugin:-D jack=disabled} \
%{!?with_libcamera_plugin:-D libcamera=disabled} \
%{?with_jack:-D jack-devel=true} \
%{!?with_alsa:-D pipewire-alsa=disabled} \
%{?with_vulkan:-D vulkan=enabled} \
%{!?with_libmysofa:-D libmysofa=disabled} \
%{!?with_lv2:-D lv2=disabled} \
%{!?with_roc:-D roc=disabled} \
%{!?with_ffado:-D libffado=disabled} \
-D session-managers=[] \
-D rtprio-server=60 -D rtprio-client=55 -D rlimits-rtprio=70 \
%{!?with_jack:-D pipewire-jack=disabled} \
%{!?with_jackserver_plugin:-D jack=disabled} \
%{!?with_libcamera_plugin:-D libcamera=disabled} \
%{?with_jack:-D jack-devel=true} \
%{!?with_alsa:-D pipewire-alsa=disabled} \
%{?with_vulkan:-D vulkan=enabled} \
%{!?with_libmysofa:-D libmysofa=disabled} \
%{!?with_lv2:-D lv2=disabled} \
%{!?with_roc:-D roc=disabled} \
%{!?with_ffado:-D libffado=disabled} \
%{nil}
%meson_build
@ -834,15 +833,21 @@ systemctl --no-reload preset --global pipewire.socket >/dev/null 2>&1 || :
%endif
%changelog
* Thu Sep 19 2024 Wim Taymans <wtaymans@redhat.com> - 1.0.8-1
- Update version to 1.0.8
* Tue Jun 18 2024 Peter Robinson <pbrobinson@fedoraproject.org> - 1.0.7-2
- Rebuild for libcamera 0.3
* Fri May 24 2024 Wim Taymans <wtaymans@redhat.com> - 1.0.7-1
- Update version to 1.0.7
* Thu May 09 2024 Wim Taymans <wtaymans@redhat.com> - 1.0.6-1
- Update version to 1.0.6
* Tue Apr 23 2024 Wim Taymans <wtaymans@redhat.com> - 1.0.5-2
- Enable ROC again
* Mon Apr 15 2024 Wim Taymans <wtaymans@redhat.com> - 1.0.5-1
- Update version to 1.0.5

View File

@ -1,12 +1,13 @@
%define commit 9b12f90b4e113275b5e8ea33a88674275bf3a1c8
%define commit 12ebba1bea5006aaa0493d4d9e5d1ba1fe434ac1
%define tag 1.1.1
%global shortcommit %(c=%{commit}; echo ${c:0:7})
%global build_timestamp %(date +"%Y%m%d")
%global rel_build 1.%{build_timestamp}.%{shortcommit}%{?dist}
%global rel_build 2.%{build_timestamp}.%{shortcommit}%{?dist}
Name: umu-launcher
Version: 1.0
Version: 1.1.1
Release: %{rel_build}
Summary: A tool for launching non-steam games with proton
@ -31,6 +32,7 @@ BuildRequires: python3
Requires: python
Requires: python3
Requires: python3-xlib
Requires: python3-filelock
%description
@ -39,7 +41,7 @@ Requires: python3-xlib
%prep
git clone --single-branch --branch main https://github.com/Open-Wine-Components/umu-launcher.git
cd umu-launcher
git checkout %{commit}
git checkout %{tag}
git submodule update --init --recursive
%build

View File

@ -3,3 +3,6 @@ EDITOR=/usr/bin/vim
# Disable Brew auto-update
HOMEBREW_NO_AUTO_UPDATE=1
# Passthrough ctrl + 1/2 ingame
#GS_ENABLE_CTRL_12=0

View File

@ -86,4 +86,7 @@ EOF
# display the helptext
elif [[ "$1" == "-h" || "$1" == "--h" || "$1" == "-help" || "$1" == "--help" || "$1" == "help" || -z "$1" ]]; then
echo "$helptext"
else
echo "Unsupported Option: $1"
echo "run 'bazzite-rollback-helper help' for more details"
fi

View File

@ -0,0 +1,2 @@
#!/usr/bin/bash
/usr/bin/flatpak run com.github.Matoking.protontricks "$@"

View File

@ -1,7 +1,7 @@
#!/usr/bin/bash
# SCRIPT VERSION
VER=23
VER=24
VER_FILE="/etc/bazzite/flatpak_manager_version"
VER_RAN=$(cat $VER_FILE)
IMAGE_INFO="/usr/share/ublue-os/image-info.json"
@ -26,6 +26,16 @@ fi
flatpak remote-add --if-not-exists --system flathub /etc/flatpak/remotes.d/flathub.flatpakrepo
flatpak remote-modify --system --enable flathub
PROTONTRICKS_SETUP_FILE="/etc/bazzite/protontricks_installed"
if [[ ! -f "$PROTONTRICKS_SETUP_FILE" ]]; then
if ! grep -q "com.github.Matoking.protontricks" <<< $(/usr/bin/flatpak list --app --columns=application); then
flatpak install --system --assumeyes com.github.Matoking.protontricks
touch "$PROTONTRICKS_SETUP_FILE"
else
touch "$PROTONTRICKS_SETUP_FILE"
fi
fi
# Flatpak theming support
flatpak override \
--filesystem=xdg-config/gtk-4.0:ro \
@ -55,6 +65,13 @@ flatpak override \
--device=dri \
dev.goats.xivlauncher
# Fix permissions for Protontricks
flatpak override \
--filesystem=~/.local/share/Steam \
--filesystem=/var/mnt \
--filesystem=/run/media \
com.github.Matoking.protontricks
# Params needed for HW accelerated video on Nvidia (Ignoring hybrid systems)
if [[ $IMAGE_FLAVOR =~ "nvidia" ]] && [ $(grep -o "\-display" <<< $(lshw -C display) | wc -l) -le 1 ] && grep -q "vendor: NVIDIA Corporation" <<< $(lshw -C display); then
flatpak override \

View File

@ -71,6 +71,14 @@ add-user-to-input-group:
fi
sudo usermod -a -G input $USER
# Enable support for DisplayLink
enable-displaylink:
systemctl enable --now displaylink.service
# Enable support for Tailscale
enable-tailscale:
systemctl enable --now tailscaled.service
# Configure watchdog (default: enabled, recovers the system in the event of a malfunction)
configure-watchdog ACTION="":
#!/usr/bin/bash

View File

@ -2,7 +2,7 @@
# Some Gnome extensions don't ship gschema XML, so their settings also need to go in dconf
[org/gnome/desktop/app-folders/folders/GamingUtilities]
apps=['protontricks.desktop', 'discover_overlay_configure.desktop', 'com.vysp3r.ProtonPlus.desktop', 'io.github.benjamimgois.goverlay.desktop', 'com.gerbilsoft.rom-properties.rp-config.desktop', 'input-remapper-gtk.desktop', 'steamos-nested-desktop.desktop', 'hhd-ui.desktop']
apps=['com.github.Matoking.protontricks.desktop', 'discover_overlay_configure.desktop', 'com.vysp3r.ProtonPlus.desktop', 'io.github.benjamimgois.goverlay.desktop', 'com.gerbilsoft.rom-properties.rp-config.desktop', 'input-remapper-gtk.desktop', 'steamos-nested-desktop.desktop', 'hhd-ui.desktop']
name='Gaming Utilities'
translate=false

View File

@ -7,6 +7,7 @@ brew "gh"
brew "glab"
brew "rg"
brew "tealdeer"
brew "trash-cli"
brew "ugrep"
brew "yq"
brew "zoxide"