Merge branch 'testing' into unstable

This commit is contained in:
Kyle Gospodnetich 2024-01-30 11:15:58 -08:00
commit dafa70eca3
28 changed files with 175 additions and 127 deletions

View File

@ -93,7 +93,7 @@ RUN sed -i 's@enabled=0@enabled=1@g' /etc/yum.repos.d/_copr_ublue-os-akmods.repo
/tmp/akmods-rpms/kmods/*ayn-platform*.rpm \
/tmp/akmods-rpms/kmods/*bmi260*.rpm \
/tmp/akmods-rpms/kmods/*bmi323*.rpm \
/tmp/akmods-rpms/kmods/*rtl88xxau*.rpm \
/tmp/akmods-rpms/kmods/*rtl8814au*.rpm \
/tmp/akmods-rpms/kmods/*ryzen-smu*.rpm && \
sed -i 's@enabled=1@enabled=0@g' /etc/yum.repos.d/negativo17-fedora-multimedia.repo

View File

@ -225,7 +225,7 @@ rpm-ostree rebase ostree-unverified-registry:ghcr.io/ublue-os/bazzite-deck-gnome
#### Universal Blue
- Proprietary Nvidia drivers pre-installed.
- Proprietary Nvidia drivers pre-installed. <sub><sup>(Only for Nvidia images)</sup></sub>
- Flathub is enabled by default.
- [`ujust`](https://github.com/casey/just) commands for convenience.
- Multi-media codecs out of the box.
@ -268,7 +268,7 @@ Read the [FAQ](https://universal-blue.discourse.group/docs?topic=33) for details
- [Dual Booting Guide](https://universal-blue.discourse.group/docs?topic=129)
- [Miscellaneous Documentation](https://universal-blue.discourse.group/docs?topic=287)
Find additional documentation surrounding the project [here](https://universal-blue.discourse.group/docs).
Find additional documentation surrounding the project [here](https://universal-blue.discourse.group/docs?category=5).
Check out our [newsletters](https://universal-blue.discourse.group/tag/bazzite-buzz) that get published on a regular basis for updates on the project.

View File

@ -61,7 +61,7 @@
Name: mesa
Summary: Mesa graphics libraries
%global ver 23.3.3
%global ver 23.3.4
Version: %{lua:ver = string.gsub(rpm.expand("%{ver}"), "-", "~"); print(ver)}
Release: 100.bazzite.{{{ git_dir_version }}}
License: MIT AND BSD-3-Clause AND SGI-B-2.0
@ -74,7 +74,6 @@ Source0: https://archive.mesa3d.org/mesa-%{ver}.tar.xz
Source1: Mesa-MLAA-License-Clarification-Email.txt
Patch10: gnome-shell-glthread-disable.patch
Patch11: zink-fix-resizable-bar-detection-logic.patch
Patch12: mesa-meson-c99.patch
# https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26105/

View File

@ -1,18 +1,18 @@
From 39b7df3a64e9cfe9c649cd7cda896cef57ae2270 Mon Sep 17 00:00:00 2001
From 90d0b4fd8cab8d6fa8d92f799073f6022dad9f23 Mon Sep 17 00:00:00 2001
From: Derek Foreman <derek.foreman@collabora.com>
Date: Wed, 20 Sep 2023 10:40:33 -0500
Subject: [PATCH 1/7] vulkan/wsi/wayland: refactor wayland dispatch code
Subject: [PATCH 1/8] vulkan/wsi/wayland: refactor wayland dispatch code
We currently have two similar but different bits of code to dispatch
wayland event queues. Pull out as much common code as possible.
Signed-off-by: Derek Foreman <derek.foreman@collabora.com>
---
src/vulkan/wsi/wsi_common_wayland.c | 399 +++++++++++++++-------------
1 file changed, 208 insertions(+), 191 deletions(-)
src/vulkan/wsi/wsi_common_wayland.c | 397 +++++++++++++++-------------
1 file changed, 208 insertions(+), 189 deletions(-)
diff --git a/src/vulkan/wsi/wsi_common_wayland.c b/src/vulkan/wsi/wsi_common_wayland.c
index 22e26bacbc5..d8ae6e36626 100644
index 5fd9aaf24ae..114337944a9 100644
--- a/src/vulkan/wsi/wsi_common_wayland.c
+++ b/src/vulkan/wsi/wsi_common_wayland.c
@@ -96,6 +96,11 @@ struct wsi_wl_display {
@ -292,7 +292,7 @@ index 22e26bacbc5..d8ae6e36626 100644
- if (!chain->present_ids.dispatch_in_progress)
- break;
- }
-
- assert(!chain->present_ids.dispatch_in_progress);
- chain->present_ids.dispatch_in_progress = true;
-
@ -342,7 +342,7 @@ index 22e26bacbc5..d8ae6e36626 100644
- ret = VK_ERROR_OUT_OF_DATE_KHR;
- goto relinquish_dispatch;
- }
-
- /* Drop the lock around poll, so people can wait whilst we sleep. */
- pthread_mutex_unlock(&chain->present_ids.lock);
-
@ -413,12 +413,12 @@ index 22e26bacbc5..d8ae6e36626 100644
- struct timespec start_time, end_time;
- struct timespec rel_timeout;
- int wl_fd = wl_display_get_fd(wsi_wl_surface->display->wl_display);
-
- timespec_from_nsec(&rel_timeout, info->timeout);
+ uint64_t end_time, time_left, now;
+ bool expired = false;
+ int ret;
- timespec_from_nsec(&rel_timeout, info->timeout);
-
- clock_gettime(CLOCK_MONOTONIC, &start_time);
- timespec_add(&end_time, &rel_timeout, &start_time);
+ if (info->timeout == UINT64_MAX)
@ -539,15 +539,16 @@ index 22e26bacbc5..d8ae6e36626 100644
pthread_mutex_destroy(&chain->present_ids.lock);
}
@@ -2383,18 +2402,16 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
@@ -2386,6 +2405,8 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
chain->drm_modifiers = drm_modifiers_copy;
}
+ chain->queue = wl_display_create_queue(chain->wsi_wl_surface->display->wl_display);
+
if (chain->wsi_wl_surface->display->wp_presentation_notwrapped) {
- if (!wsi_init_pthread_cond_monotonic(&chain->present_ids.list_advanced))
- goto fail;
if (!wsi_init_pthread_cond_monotonic(&chain->present_ids.list_advanced)) {
result = VK_ERROR_OUT_OF_HOST_MEMORY;
@@ -2394,12 +2415,10 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
pthread_mutex_init(&chain->present_ids.lock, NULL);
wl_list_init(&chain->present_ids.outstanding_list);
@ -565,10 +566,10 @@ index 22e26bacbc5..d8ae6e36626 100644
2.42.0
From ad381d34e00a89f1961cf345668b939830ed1d39 Mon Sep 17 00:00:00 2001
From c21b55b27dbb7ac0df850fc92740298f1a2f83d8 Mon Sep 17 00:00:00 2001
From: Derek Foreman <derek.foreman@collabora.com>
Date: Fri, 10 Nov 2023 07:25:35 -0600
Subject: [PATCH 2/7] vulkan/wsi/wayland: Use commit_timing/commit_queue
Subject: [PATCH 2/8] vulkan/wsi/wayland: Use commit_timing/commit_queue
protocol for FIFO
The commit_timing protocol allows us to set a presentation timestamp,
@ -612,7 +613,7 @@ index 9d0db011767..83ad71f06fa 100644
files_vulkan_wsi += wp_files['presentation-time']
files_vulkan_wsi += wp_files['tearing-control-v1']
diff --git a/src/vulkan/wsi/wsi_common_wayland.c b/src/vulkan/wsi/wsi_common_wayland.c
index d8ae6e36626..dd78d98dfce 100644
index 114337944a9..5b2eec168e0 100644
--- a/src/vulkan/wsi/wsi_common_wayland.c
+++ b/src/vulkan/wsi/wsi_common_wayland.c
@@ -41,6 +41,8 @@
@ -865,7 +866,7 @@ index d8ae6e36626..dd78d98dfce 100644
vk_free(pAllocator, (void *)chain->drm_modifiers);
wsi_swapchain_finish(&chain->base);
@@ -2290,6 +2386,15 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
@@ -2291,6 +2387,15 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
wp_tearing_control_v1_destroy(old_chain->tearing_control);
old_chain->tearing_control = NULL;
}
@ -881,7 +882,7 @@ index d8ae6e36626..dd78d98dfce 100644
}
/* Take ownership of the wsi_wl_surface */
@@ -2414,7 +2519,16 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
@@ -2421,7 +2526,16 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
chain->queue);
}
@ -903,10 +904,10 @@ index d8ae6e36626..dd78d98dfce 100644
2.42.0
From dfa0495e9fbe27216cfbcfd3564eeeb1c00a4e6e Mon Sep 17 00:00:00 2001
From 136846b41c96c68415b4541fd8ead392b4b44790 Mon Sep 17 00:00:00 2001
From: Simon Ser <contact@emersion.fr>
Date: Sat, 25 Nov 2023 16:25:58 +0100
Subject: [PATCH 3/7] hack: rip out commit-timing-v1
Subject: [PATCH 3/8] hack: rip out commit-timing-v1
---
src/egl/wayland/wayland-drm/meson.build | 2 +-
@ -941,7 +942,7 @@ index 83ad71f06fa..dba95387975 100644
files_vulkan_wsi += wp_files['presentation-time']
files_vulkan_wsi += wp_files['tearing-control-v1']
diff --git a/src/vulkan/wsi/wsi_common_wayland.c b/src/vulkan/wsi/wsi_common_wayland.c
index dd78d98dfce..1efe9e449e8 100644
index 5b2eec168e0..953be5e1e85 100644
--- a/src/vulkan/wsi/wsi_common_wayland.c
+++ b/src/vulkan/wsi/wsi_common_wayland.c
@@ -42,7 +42,6 @@
@ -1015,7 +1016,7 @@ index dd78d98dfce..1efe9e449e8 100644
vk_free(pAllocator, (void *)chain->drm_modifiers);
wsi_swapchain_finish(&chain->base);
@@ -2391,10 +2378,6 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
@@ -2392,10 +2379,6 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
old_chain->commit_queue = NULL;
old_chain->can_timestamp = false;
}
@ -1026,7 +1027,7 @@ index dd78d98dfce..1efe9e449e8 100644
}
/* Take ownership of the wsi_wl_surface */
@@ -2521,12 +2504,9 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
@@ -2528,12 +2511,9 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
chain->legacy_fifo_ready = true;
struct wsi_wl_display *dpy = chain->wsi_wl_surface->display;
@ -1044,10 +1045,10 @@ index dd78d98dfce..1efe9e449e8 100644
2.42.0
From fbb52f6f45b02583a0b496e4cc34af34251cb1bd Mon Sep 17 00:00:00 2001
From 829608aeae5a8db0f8aab820791df2629830b23b Mon Sep 17 00:00:00 2001
From: Joshua Ashton <joshua@froggi.es>
Date: Wed, 29 Nov 2023 11:06:51 +0000
Subject: [PATCH 4/7] wsi: Use vendored gamescope-commit-queue-v1 protocol
Subject: [PATCH 4/8] wsi: Use vendored gamescope-commit-queue-v1 protocol
---
.../wayland-drm/gamescope-commit-queue-v1.xml | 181 ++++++++++++++++++
@ -1295,7 +1296,7 @@ index dba95387975..fb0fab69ac6 100644
files_vulkan_wsi += wp_files['linux-dmabuf-unstable-v1']
files_vulkan_wsi += wp_files['presentation-time']
diff --git a/src/vulkan/wsi/wsi_common_wayland.c b/src/vulkan/wsi/wsi_common_wayland.c
index 1efe9e449e8..68d9088f936 100644
index 953be5e1e85..30ff69ae223 100644
--- a/src/vulkan/wsi/wsi_common_wayland.c
+++ b/src/vulkan/wsi/wsi_common_wayland.c
@@ -41,7 +41,7 @@
@ -1366,7 +1367,7 @@ index 1efe9e449e8..68d9088f936 100644
vk_free(pAllocator, (void *)chain->drm_modifiers);
@@ -2374,7 +2374,7 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
@@ -2375,7 +2375,7 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
old_chain->tearing_control = NULL;
}
if (old_chain->commit_queue) {
@ -1375,7 +1376,7 @@ index 1efe9e449e8..68d9088f936 100644
old_chain->commit_queue = NULL;
old_chain->can_timestamp = false;
}
@@ -2505,7 +2505,7 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
@@ -2512,7 +2512,7 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
chain->legacy_fifo_ready = true;
struct wsi_wl_display *dpy = chain->wsi_wl_surface->display;
if (dpy->commit_queue_manager) {
@ -1388,10 +1389,10 @@ index 1efe9e449e8..68d9088f936 100644
2.42.0
From f0be8700af09a5a1c94d84c1b3b4ee3096de0b69 Mon Sep 17 00:00:00 2001
From 04afaf13b208f5c58c0b057f3dfc2dfa5c19a334 Mon Sep 17 00:00:00 2001
From: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Date: Fri, 14 Jan 2022 15:58:45 +0100
Subject: [PATCH 5/7] STEAMOS: radv: min image count override for FH5
Subject: [PATCH 5/8] STEAMOS: radv: min image count override for FH5
Otherwise in combination with the vblank time reservation in
gamescope the game could get stuck in low power states.
@ -1400,10 +1401,10 @@ gamescope the game could get stuck in low power states.
1 file changed, 4 insertions(+)
diff --git a/src/util/00-radv-defaults.conf b/src/util/00-radv-defaults.conf
index 0dcec733e52..f0d535df2f8 100644
index 1cbb2e087c9..43488ada6bc 100644
--- a/src/util/00-radv-defaults.conf
+++ b/src/util/00-radv-defaults.conf
@@ -188,5 +188,9 @@ Application bugs worked around in this file:
@@ -189,5 +189,9 @@ Application bugs worked around in this file:
<application name="Rocket League" executable="RocketLeague">
<option name="radv_zero_vram" value="true" />
</application>
@ -1417,10 +1418,10 @@ index 0dcec733e52..f0d535df2f8 100644
2.42.0
From 2ab76c1153f55d82c3f49a25f8f8a1f1e1e74075 Mon Sep 17 00:00:00 2001
From b1c0d3de07bf958317f386585ce541b1c336e929 Mon Sep 17 00:00:00 2001
From: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>
Date: Mon, 21 Feb 2022 18:43:54 +0100
Subject: [PATCH 6/7] STEAMOS: Dynamic swapchain override for gamescope limiter
Subject: [PATCH 6/8] STEAMOS: Dynamic swapchain override for gamescope limiter
---
src/loader/loader_dri3_helper.c | 42 +++++++++++++++++++++++++++++++--
@ -1618,10 +1619,10 @@ index cba1d1c5e7c..6d66387d5be 100644
2.42.0
From f00348f08f42a1ce3be4e71f9fba186fb629c723 Mon Sep 17 00:00:00 2001
From 12cf7ebfcb7e47c1e5d99fe2d2c0b83a03bfa6cb Mon Sep 17 00:00:00 2001
From: Friedrich Vock <friedrich.vock@gmx.de>
Date: Fri, 1 Dec 2023 15:18:44 +0100
Subject: [PATCH 7/7] radv: Enable compute dispatch tunneling
Subject: [PATCH 7/8] radv: Enable compute dispatch tunneling
Compute tunneling can considerably lower the latency of high-priority
compute work. Enabling it is beneficial in cases where high-priority
@ -1635,7 +1636,7 @@ the next frame.
2 files changed, 9 insertions(+)
diff --git a/src/amd/vulkan/radv_device.c b/src/amd/vulkan/radv_device.c
index 1bf900d073c..db5347dc0be 100644
index 247192d8a38..1b7117e08f7 100644
--- a/src/amd/vulkan/radv_device.c
+++ b/src/amd/vulkan/radv_device.c
@@ -969,6 +969,13 @@ radv_CreateDevice(VkPhysicalDevice physicalDevice, const VkDeviceCreateInfo *pCr
@ -1653,7 +1654,7 @@ index 1bf900d073c..db5347dc0be 100644
/* Disable partial preemption for task shaders.
* The kernel may not support preemption, but PAL always sets this bit,
diff --git a/src/amd/vulkan/si_cmd_buffer.c b/src/amd/vulkan/si_cmd_buffer.c
index ecb00d98575..1b5e585ade4 100644
index 86a3c4c4571..eaa88b426d1 100644
--- a/src/amd/vulkan/si_cmd_buffer.c
+++ b/src/amd/vulkan/si_cmd_buffer.c
@@ -113,6 +113,8 @@ si_emit_compute(struct radv_device *device, struct radeon_cmdbuf *cs)
@ -1668,3 +1669,31 @@ index ecb00d98575..1b5e585ade4 100644
--
2.42.0
From fbb5d9e6c4cb7a9b383b4b1ae104ebc1ba52b8bd Mon Sep 17 00:00:00 2001
From: Kyle Gospodnetich <me@kylegospodneti.ch>
Date: Tue, 30 Jan 2024 00:44:58 -0800
Subject: [PATCH 8/8] bazzite: Fix unneeded condition
---
src/vulkan/wsi/wsi_common_wayland.c | 4 ----
1 file changed, 4 deletions(-)
diff --git a/src/vulkan/wsi/wsi_common_wayland.c b/src/vulkan/wsi/wsi_common_wayland.c
index 30ff69ae223..37b226a3993 100644
--- a/src/vulkan/wsi/wsi_common_wayland.c
+++ b/src/vulkan/wsi/wsi_common_wayland.c
@@ -2496,10 +2496,6 @@ wsi_wl_surface_create_swapchain(VkIcdSurfaceBase *icd_surface,
chain->queue = wl_display_create_queue(chain->wsi_wl_surface->display->wl_display);
if (chain->wsi_wl_surface->display->wp_presentation_notwrapped) {
- if (!wsi_init_pthread_cond_monotonic(&chain->present_ids.list_advanced)) {
- result = VK_ERROR_OUT_OF_HOST_MEMORY;
- goto fail_free_wl_chain;
- }
pthread_mutex_init(&chain->present_ids.lock, NULL);
wl_list_init(&chain->present_ids.outstanding_list);
--
2.42.0

View File

@ -1,39 +0,0 @@
From a077c14f150f1c4f670dce381ac2eb548f1a4ac2 Mon Sep 17 00:00:00 2001
From: Alessandro Astone <ales.astone@gmail.com>
Date: Wed, 10 Jan 2024 17:24:30 +0100
Subject: [PATCH] zink: Fix resizable BAR detection logic
This was broken in two ways:
* When looking for the MAX biggest_ram it was actually comparing
a candidate against biggest_vis_ram
* mem_props.memoryTypes[] should be accessed with the memory type
index as found in heap_map
Closes: https://gitlab.freedesktop.org/mesa/mesa/-/issues/10341
Cc: 23.3 <mesa-stable>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/26979>
---
src/gallium/drivers/zink/zink_screen.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/gallium/drivers/zink/zink_screen.c b/src/gallium/drivers/zink/zink_screen.c
index 5a6d17cb4fa3..6697d7ab938c 100644
--- a/src/gallium/drivers/zink/zink_screen.c
+++ b/src/gallium/drivers/zink/zink_screen.c
@@ -3258,10 +3258,10 @@ zink_internal_create_screen(const struct pipe_screen_config *config, int64_t dev
{
uint64_t biggest_vis_vram = 0;
for (unsigned i = 0; i < screen->heap_count[ZINK_HEAP_DEVICE_LOCAL_VISIBLE]; i++)
- biggest_vis_vram = MAX2(biggest_vis_vram, screen->info.mem_props.memoryHeaps[screen->info.mem_props.memoryTypes[i].heapIndex].size);
+ biggest_vis_vram = MAX2(biggest_vis_vram, screen->info.mem_props.memoryHeaps[screen->info.mem_props.memoryTypes[screen->heap_map[ZINK_HEAP_DEVICE_LOCAL_VISIBLE][i]].heapIndex].size);
uint64_t biggest_vram = 0;
for (unsigned i = 0; i < screen->heap_count[ZINK_HEAP_DEVICE_LOCAL]; i++)
- biggest_vram = MAX2(biggest_vis_vram, screen->info.mem_props.memoryHeaps[screen->info.mem_props.memoryTypes[i].heapIndex].size);
+ biggest_vram = MAX2(biggest_vram, screen->info.mem_props.memoryHeaps[screen->info.mem_props.memoryTypes[screen->heap_map[ZINK_HEAP_DEVICE_LOCAL][i]].heapIndex].size);
/* determine if vis vram is roughly equal to total vram */
if (biggest_vis_vram > biggest_vram * 0.9)
screen->resizable_bar = true;
--
GitLab

View File

@ -66,9 +66,9 @@ if command -v ublue-update > /dev/null; then
}
upgrade | fake_progress
# Check if upgrade failed
UPGRADE_CHECK=/tmp/upgrade-check
UPGRADE_CHECK=$(cat /tmp/upgrade-check)
rm /tmp/upgrade-check
if [ ${UPGRADE_CHECK} -eq 0 ]; then
if [ "${UPGRADE_CHECK}" -eq 0 ]; then
touch /tmp/upgrade-installed
else
exit 0 # Upgrade failed

View File

@ -86,8 +86,6 @@ process-scheduler enable=true {
dbus-broker
ds-inhibit
fancontrol.py
fig
fig_desktop
gamemoderun
gamescope
handycon

View File

@ -0,0 +1,3 @@
blacklist bmc150_accel_core
blacklist bmc150_accel_i2c
blacklist bmc150_accel_spi

View File

@ -1,3 +0,0 @@
blacklist bmi150_core
blacklist bmi150_i2c
blacklist bmi150_spi

View File

@ -1,3 +1,6 @@
*Using a handheld other than the Steam Deck?* Be sure to follow our [alternative handheld documentation](https://github.com/ublue-os/bazzite#alternative-handhelds).
*Want to install Decky Loader?* There's a `ujust` command for that! `ujust get-decky`
The updater built into Steam's Game mode has been modified to update Bazzite, Flatpaks, and Distrobox containers.
The updater built into 󰓓 Steam game mode has been modified to update Bazzite, Flatpaks, and Distrobox containers. *Just ignore the changelog.*
*Install a game with Lutris?* Right click on it and `Create steam shortcut` to easily play it in 󰓓 Steam game mode.
*Games missing icons?* The `SteamGridDB` plugin for Decky Loader makes it easy to add missing art - [More info](https://github.com/SteamGridDB/decky-steamgriddb)
*Confused about what games are compatible with Linux?* The `ProtonDB Badges` plugin for Decky Loader adds community-powered game compatibility badges to your entire 󰓓 Steam Library - [More info](https://github.com/OMGDuke/protondb-decky)

View File

@ -1,7 +1,7 @@
#!/usr/bin/bash
# SCRIPT VERSION
VER=18
VER=19
VER_FILE="/etc/bazzite/flatpak_manager_version"
VER_RAN=$(cat $VER_FILE)
IMAGE_INFO="/usr/share/ublue-os/image-info.json"
@ -30,6 +30,7 @@ if grep -qz 'fedora' <<< $(flatpak remotes); then
fi
# Ensure Flathub is enabled
flatpak remote-add --if-not-exists --system flathub /usr/etc/flatpak/remotes.d/flathub.flatpakrepo
flatpak remote-modify --system --enable flathub
# Installed flatpaks

View File

@ -7,7 +7,7 @@ IMAGE_FLAVOR=$(jq -r '."image-flavor"' < $IMAGE_INFO)
FEDORA_VERSION=$(jq -r '."fedora-version"' < $IMAGE_INFO)
# SCRIPT VERSION
HWS_VER=26
HWS_VER=27
HWS_VER_FILE="/etc/bazzite/hws_version"
HWS_VER_RAN=$(cat $HWS_VER_FILE)
@ -42,7 +42,7 @@ if [[ ! -f $INITRAMFS_REBUILD_TRIGGER ]]; then
if [[ -f $KNOWN_IMAGE_NAME_FILE && -f $KNOWN_IMAGE_FLAVOR_FILE && -f $KNOWN_FEDORA_VERSION_FILE && -f $KNOWN_IMAGE_BRANCH_FILE ]]; then
# Run script if image has been rebased
if [[ $IMAGE_NAME = "$KNOWN_IMAGE_NAME" && $IMAGE_FLAVOR = "$KNOWN_IMAGE_FLAVOR" && $FEDORA_VERSION = "$KNOWN_FEDORA_VERSION" && $IMAGE_BRANCH = "$KNOWN_IMAGE_BRANCH" ]]; then
echo "Hardware setup has already run. Exiting..."
echo "Hardware setup v$HWS_VER has already run. Exiting..."
exit 0
fi
fi
@ -108,7 +108,7 @@ fi
# KERNEL ARGUMENTS
echo "Current kargs: $KARGS"
if [[ ":Jupiter:" =~ ":$SYS_ID:" || ":Galileo:" =~ ":$SYS_ID:" ]]; then
if /usr/libexec/hardware/valve-hardware; then
echo "Checking for needed karg changes (Jupiter/Galileo)"
if [[ ! $KARGS =~ "amd_iommu" ]]; then
@ -139,6 +139,13 @@ if [[ ":83E1:" =~ ":$SYS_ID:" ]]; then
fi
fi
if /usr/libexec/hardware/simpledeckytdp-supported-hardware; then
if [[ ! $KARGS =~ "iomem" ]]; then
echo "Adding needed kargs for ryzenadj"
NEEDED_KARGS+=("--append-if-missing=iomem=relaxed")
fi
fi
if [[ $KARGS =~ "nomodeset" ]]; then
echo "Removing nomodeset"
NEEDED_KARGS+=("--delete-if-present=nomodeset")
@ -169,11 +176,11 @@ if [[ $IMAGE_NAME =~ "deck" || $IMAGE_NAME =~ "ally" || $IMAGE_NAME =~ "framegam
systemctl enable --now vpower.service
else
echo "Generic device detected. Performing setup..."
if [[ ":ROG Ally RC71L_RC71L:83E1:G1618-04:G1617-01:G1619-05:AIR Plus:" =~ ":$SYS_ID:" ]]; then
if /usr/libexec/hardware/hhd-supported-hardware; then
echo "HHD supported handheld detected, disabling handycon & ds-inhibit..."
systemctl disable --now handycon.service
systemctl disable --now ds-inhibit.service
elif [[ ":AYANEO GEEK:AYANEO 2:AYANEO 2S:AOKZOE A1 AR07:G1619-04:Win600:" =~ ":$SYS_ID:" ]]; then
elif /usr/libexec/hardware/handycon-supported-hardware; then
echo "HandyGCCS supported handheld detected, enabling handycon & ds-inhibit..."
systemctl enable --now handycon.service
systemctl enable --now ds-inhbit.service

View File

@ -4,16 +4,16 @@ IMAGE_INFO="/usr/share/ublue-os/image-info.json"
IMAGE_NAME=$(jq -r '."image-name"' < $IMAGE_INFO)
BASE_IMAGE_NAME=$(jq -r '."base-image-name"' < $IMAGE_INFO)
FEDORA_VERSION=$(jq -r '."fedora-version"' < $IMAGE_INFO)
SYS_ID="$(cat /sys/devices/virtual/dmi/id/product_name)"
# INIT
BAZZITE_CONFIG_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/bazzite"
mkdir -p "$BAZZITE_CONFIG_DIR"
# SCRIPT VERSION
USER_SETUP_VER=25
USER_SETUP_VER=26
USER_SETUP_VER_FILE="$BAZZITE_CONFIG_DIR/version"
USER_SETUP_FEDORA_VER_FILE="$BAZZITE_CONFIG_DIR/fedora_version"
USER_SETUP_IMAGE_VER_FILE=$BAZZITE_CONFIG_DIR/image_name""
if [[ -f "$HOME/.bazzite-configured" ]]; then
mv -f "$HOME/.bazzite-configured" "$USER_SETUP_VER_FILE"
@ -25,10 +25,11 @@ fi
USER_SETUP_VER_RAN=$(cat $USER_SETUP_VER_FILE)
USER_SETUP_FEDORA_VER_RAN=$(cat $USER_SETUP_FEDORA_VER_FILE)
USER_SETUP_IMAGE_VER_RAN=$(cat $USER_SETUP_IMAGE_VER_FILE)
# Run script if updated
if [[ -f $USER_SETUP_VER_FILE && $USER_SETUP_VER = $USER_SETUP_VER_RAN ]]; then
if [[ -f $USER_SETUP_FEDORA_VER_FILE && $FEDORA_VERSION = $USER_SETUP_FEDORA_VER_RAN ]]; then
if [[ -f $USER_SETUP_FEDORA_VER_FILE && $FEDORA_VERSION = $USER_SETUP_FEDORA_VER_RAN && $BASE_IMAGE_NAME == USER_SETUP_IMAGE_VER_RAN ]]; then
echo "User setup v$USER_SETUP_VER has already run. Exiting..."
exit 0
fi
@ -38,8 +39,8 @@ fi
if grep -qz 'fedora' <<< $(flatpak remotes); then
flatpak remote-delete --user fedora --force
fi
flatpak remote-add --if-not-exists --user flathub /etc/flatpak/remotes.d/flathub.flatpakrepo
flatpak remote-modify --user --enable flathub
flatpak remote-add --if-not-exists --user flathub /usr/etc/flatpak/remotes.d/flathub.flatpakrepo
flatpak remote-modify --user --enable --prio=2 flathub
# Handle privileged tasks
pkexec /usr/libexec/bazzite-privileged-user-setup
@ -115,13 +116,13 @@ fi
# Deck Build Setup
if [[ $IMAGE_NAME =~ "deck" || $IMAGE_NAME =~ "ally" || $IMAGE_NAME =~ "framegame" ]]; then
# HHD Setup
if [[ "ROG Ally RC71L_RC71L:83E1:G1618-04:G1617-01:G1619-05:AIR Plus:" =~ ":$SYS_ID:" ]]; then
if /usr/libexec/hardware/hhd-supported-hardware; then
echo 'Enabling HHD'
pkexec /usr/libexec/bazzite-enable-hhd "$USER"
fi
# SDGyroDSU Setup
if [[ ":Jupiter:Galileo:" =~ ":$SYS_ID:" ]]; then
if /usr/libexec/hardware/valve-hardware; then
systemctl --user enable --now sdgyrodsu.service
else
systemctl --user disable --now sdgyrodsu.service
@ -135,7 +136,7 @@ if [[ $IMAGE_NAME =~ "deck" || $IMAGE_NAME =~ "ally" || $IMAGE_NAME =~ "framegam
rm -f "$AUTOSTART_FOLDER/autostart/bazzite-handle-legion-go-rotation.desktop"
fi
if [[ ":ROG Ally RC71L_RC71L:83E1:Loki Max:G1618-04:" =~ ":$SYS_ID:" ]] && [[ $BASE_IMAGE_NAME =~ "kinoite" ]]; then
if /usr/libexec/hardware/rotation-fix-hardware && [[ $BASE_IMAGE_NAME =~ "kinoite" ]]; then
if [[ ! -f "$AUTOSTART_FOLDER/autostart/bazzite-rotation-fix.desktop" ]]; then
echo 'Adding rotation fix'
mkdir -p "$AUTOSTART_FOLDER/autostart"
@ -151,3 +152,4 @@ fi
echo "Writing state file"
echo $USER_SETUP_VER > $USER_SETUP_VER_FILE
echo $FEDORA_VERSION > $USER_SETUP_FEDORA_VER_FILE
echo $BASE_IMAGE_NAME > $USER_SETUP_IMAGE_VER_FILE

View File

@ -1,7 +0,0 @@
if test -d "$HOME"; then
if test ! -e "$HOME"/.config/no-show-user-motd; then
if test -x "/usr/libexec/ublue-motd"; then
/usr/libexec/ublue-motd
fi
fi
fi

View File

@ -1,6 +1,3 @@
// WARNING: Modifications to this file will not be preserved on upgrade.
// To configure, make a config.kdl file under /etc/system76-scheduler/.
// Version of the configuration file
version "2.0"
@ -87,8 +84,6 @@ process-scheduler enable=true {
chrt
dbus
dbus-broker
fig
fig_desktop
gamemoderun
gamescope
input-remapper-service

View File

@ -1,2 +1,3 @@
# Enable GSP firmware
options nouveau config=NvGspRm=1
# options nouveau config=NvGspRm=1
# Waiting for Kernel 6.7

View File

@ -0,0 +1 @@
SUBSYSTEM=="input", KERNEL=="event*", ATTRS{name}=="*Motion Sensors", TAG+="uaccess"

View File

@ -0,0 +1,8 @@
#!/usr/bin/bash
# Returns true for hardware that is supported by Handycon exclusively.
SYS_ID="$(cat /sys/devices/virtual/dmi/id/product_name)"
if [[ ":AYANEO GEEK:AYANEO 2:AYANEO 2S:AOKZOE A1 AR07:G1619-04:Win600:" =~ ":$SYS_ID:" ]]; then
exit 0
else
exit 1
fi

View File

@ -0,0 +1,8 @@
#!/usr/bin/bash
# Returns true for hardware that is supported by HHD
SYS_ID="$(cat /sys/devices/virtual/dmi/id/product_name)"
if [[ ":ROG Ally RC71L_RC71L:83E1:G1618-04:G1617-01:G1619-05:AIR Plus:" =~ ":$SYS_ID:" ]]; then
exit 0
else
exit 1
fi

View File

@ -0,0 +1,8 @@
#!/usr/bin/bash
# Returns true for hardware that needs a rotation fix in KDE
SYS_ID="$(cat /sys/devices/virtual/dmi/id/product_name)"
if [[ ":ROG Ally RC71L_RC71L:83E1:Loki Max:G1618-04:" =~ ":$SYS_ID:" ]]; then
exit 0
else
exit 1
fi

View File

@ -0,0 +1,8 @@
#!/usr/bin/bash
# Returns true for hardware that is supported by SimpleDeckyTDP
SYS_ID="$(cat /sys/devices/virtual/dmi/id/product_name)"
if [[ ":ROG Ally RC71L_RC71L:83E1:G1618-04:G1617-01:G1619-05:AIR Plus:" =~ ":$SYS_ID:" ]]; then
exit 0
else
exit 1
fi

View File

@ -0,0 +1,8 @@
#!/usr/bin/bash
# Returns true for Valve handhelds
SYS_ID="$(cat /sys/devices/virtual/dmi/id/product_name)"
if [[ ":Jupiter:Galileo:" =~ ":$SYS_ID:" ]]; then
exit 0
else
exit 1
fi

View File

@ -1,7 +1,7 @@
# Welcome to Bazzite 󰊴
󱋩 `%IMAGE_NAME%:%IMAGE_TAG%`
| Command | Description |
| Command | Description |
| ------- | ----------- |
| `ujust` | List all available commands |
| `ujust toggle-user-motd` | Toggle this banner on/off |
@ -9,5 +9,6 @@
󰋼 %TIP%
- [ Report an issue](https://github.com/ublue-os/bazzite/issues)
- [󰈙 Documentation](http://docs.bazzite.gg/)
- [󰙯 Discord](https://discord.bazzite.gg/)
- [󰈙 Documentation](http://docs.bazzite.gg/)
- [󰫑 Mastodon](https://fosstodon.org/@UniversalBlue)

View File

@ -1,4 +1,6 @@
It is **always** better to install packages with Distrobox than to layer them with rpm-ostree. `ujust distrobox` makes it easy!
It is **always** better to install packages with Distrobox rather than layer them with rpm-ostree. `ujust distrobox` makes it easy! - [More about supported packages](https://universal-blue.discourse.group/docs?topic=35)
Packages installed in Distrobox can be exported to appear like any other application - [View documentation](https://github.com/89luca89/distrobox/blob/main/docs/usage/distrobox-export.md).
*Update break something?* You can roll back and pin the previous release or rebase by build date - [View our guide](https://universal-blue.discourse.group/docs?topic=513).
**This isn't a distro**, this is a custom image built on Fedora Technology - [View our mission](https://universal-blue.org/mission/)
*Update break something?* You can roll back and pin the previous release or rebase by build date - [View our guide](https://universal-blue.discourse.group/docs?topic=36).
*This isn't a distro*, this is a custom image built on  Fedora technology - [View our mission](https://universal-blue.org/mission/)
*Looking to dual-boot with  Windows?* [Check out our dual booting guide](https://universal-blue.discourse.group/docs?topic=129).
**Support the app store!** [Donate to  Flatpak](https://opencollective.com/flatpak)

View File

@ -1,7 +1,9 @@
*Installing a Windows game that isn't on Steam?* Lutris is pre-installed and recommended for better handling of wine prefixes.
BTRFS is used by default for external drives, and we recommend that or EXT4 over NTFS - [More info](https://github.com/ValveSoftware/Proton/wiki/Using-a-NTFS-disk-with-Linux-and-Windows).
*Installing a Windows game that isn't on Steam?* Lutris is pre-installed and recommended for better handling of wine prefixes - [View gaming guide](https://universal-blue.discourse.group/docs?topic=31)
BTRFS is used by default for external drives, and we recommend that or EXT4 over NTFS in all circumstances - [More info](https://github.com/ValveSoftware/Proton/wiki/Using-a-NTFS-disk-with-Linux-and-Windows)
*No Flatpak or distro packaging available?* The Gear Lever app is included to make managing and integrating AppImages easy!
Want to control your device from your phone? The KDE Connect app functions with all Bazzite images - [More info](https://kdeconnect.kde.org/)
*Trying to use Feral Gamemode?* System76-Scheduler in Bazzite replaces it, offering automatic nice value adjustments for applications based on the currently focused one and built-in rules.
*Want to control your device from your phone?* The KDE Connect app functions with all Bazzite images - [More info](https://kdeconnect.kde.org/)
*Trying to use Feral Gamemode?* System76-Scheduler in Bazzite replaces it, offering automatic nice value adjustments for applications based on the currently focused window and preconfigured rules - [More info](https://github.com/pop-os/system76-scheduler#scheduler-config)
Discover Overlay is preinstalled, allowing Discord to overlay your games during voice chats - [More info](https://trigg.github.io/Discover/)
*Looking to setup Waydroid?* - [View our documentation](https://universal-blue.discourse.group/docs?topic=32)
*Looking to setup Waydroid?* - [View our documentation](https://universal-blue.discourse.group/docs?topic=32)
Bazzite uses ZSTD compression in BTRFS by default, and deduplicates files across your entire drive. **More space for your games!**
*Have a large library of ROMs to manage?* ROM Properties Page shell extension is installed by default and makes it much easier, with thumbnails and additional info for all of your files.

View File

@ -3,7 +3,7 @@ paths = ["/etc/ublue-os/topgrade.toml"]
[misc]
no_self_update = true
disable = ["self_update", "toolbx", "containers"]
disable = ["self_update", "toolbx", "containers", "shell"]
ignore_failures = ["distrobox", "flatpak", "brew_cask", "brew_formula", "nix", "pip3", "helm", "home_manager", "firmware"]
assume_yes = true
no_retry = false

View File

@ -0,0 +1,13 @@
function fish_greeting
if test -d "$HOME"
if test ! -e "$HOME"/.config/no-show-user-motd
if test -x "/usr/libexec/ublue-motd"
/usr/libexec/ublue-motd
end
end
end
if set -q fish_private_mode
echo "fish is running in private mode, history will not be persisted."
end
end

View File