Merge branch 'main' into unstable

This commit is contained in:
Kyle Gospodnetich 2023-11-27 10:31:44 -08:00
commit 5dde235711
11 changed files with 171 additions and 30 deletions

View File

@ -0,0 +1,7 @@
Copyright 2023 Joshua Ashton for Valve Software
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

View File

@ -0,0 +1,41 @@
Name: galileo-mura
Version: {{{ git_dir_version }}}
Release: 1%{?dist}
Summary: Utilities for setting and reading mura correction on Galileo
License: MIT
URL: https://github.com/ublue-os/bazzite
Source: https://gitlab.com/evlaV/galileo-mura-extractor/-/archive/main/galileo-mura-extractor-main.tar.gz
BuildRequires: systemd-rpm-macros
BuildRequires: gcc
BuildRequires: meson >= 0.54.0
BuildRequires: ninja-build
%description
Utilities for setting and reading mura correction on Galileo
# Disable debug packages
%define debug_package %{nil}
%prep
%autosetup -n galileo-mura-extractor-main
%build
%meson
%meson_build
%install
%meson_install
# This lists all the files that are included in the rpm package and that
# are going to be installed into target system where the rpm is installed.
%files
%license LICENSE
%attr(4755, root, root) %{_bindir}/galileo-mura-extractor
%{_bindir}/galileo-mura-setup
# Finally, changes from the latest release of your application are generated from
# your project's Git history. It will be empty until you make first annotated Git tag.
%changelog
{{{ git_dir_changelog }}}

View File

@ -1,18 +1,16 @@
diff --git a/etc/systemd/system/steamos-automount@.service b/etc/systemd/system/steamos-automount@.service diff --git a/etc/systemd/system/steamos-automount@.service b/etc/systemd/system/steamos-automount@.service
index dd700da..152e231 100644 index 96e8818..33038bc 100644
--- a/etc/systemd/system/steamos-automount@.service --- a/etc/systemd/system/steamos-automount@.service
+++ b/etc/systemd/system/steamos-automount@.service +++ b/etc/systemd/system/steamos-automount@.service
@@ -14,6 +14,7 @@ @@ -14,5 +14,6 @@ Description=Mount removable drive %i
[Service] [Service]
Type=oneshot Type=oneshot
RemainAfterExit=true RemainAfterExit=true
+EnvironmentFile=/etc/default/steamos-btrfs +EnvironmentFile=/etc/default/steamos-btrfs
ExecStart=-/usr/libexec/steamos-automount add %i ExecStart=-/usr/libexec/steamos-automount add %i
ExecStop=-/usr/libexec/steamos-automount remove %i ExecStop=-/usr/libexec/steamos-automount remove %i
ExecReload=-/usr/libexec/steamos-automount retrigger %i
diff --git a/usr/lib/hwsupport/format-device.sh b/usr/lib/hwsupport/format-device.sh diff --git a/usr/lib/hwsupport/format-device.sh b/usr/lib/hwsupport/format-device.sh
index b136413..d3cbb16 100755 index 566eea2..d6803ff 100755
--- a/usr/lib/hwsupport/format-device.sh --- a/usr/lib/hwsupport/format-device.sh
+++ b/usr/lib/hwsupport/format-device.sh +++ b/usr/lib/hwsupport/format-device.sh
@@ -2,6 +2,8 @@ @@ -2,6 +2,8 @@
@ -24,10 +22,11 @@ index b136413..d3cbb16 100755
# If the script is not run from a tty then send a copy of stdout and # If the script is not run from a tty then send a copy of stdout and
# stderr to the journal. In this case stderr is also redirected to stdout. # stderr to the journal. In this case stderr is also redirected to stdout.
if ! tty -s; then if ! tty -s; then
diff --git a/usr/lib/hwsupport/steamos-automount.sh b/usr/lib/hwsupport/steamos-automount.sh
index 6dd3a2f..ca1c5ca 100755
--- a/usr/lib/hwsupport/steamos-automount.sh --- a/usr/lib/hwsupport/steamos-automount.sh
+++ b/usr/lib/hwsupport/steamos-automount.sh +++ b/usr/lib/hwsupport/steamos-automount.sh
@@ -77,6 +77,7 @@ @@ -66,6 +66,7 @@ do_mount()
dev_json=$(lsblk -o PATH,LABEL,FSTYPE --json -- "$DEVICE" | jq '.blockdevices[0]') dev_json=$(lsblk -o PATH,LABEL,FSTYPE --json -- "$DEVICE" | jq '.blockdevices[0]')
ID_FS_LABEL=$(jq -r '.label | select(type == "string")' <<< "$dev_json") ID_FS_LABEL=$(jq -r '.label | select(type == "string")' <<< "$dev_json")
ID_FS_TYPE=$(jq -r '.fstype | select(type == "string")' <<< "$dev_json") ID_FS_TYPE=$(jq -r '.fstype | select(type == "string")' <<< "$dev_json")
@ -35,7 +34,7 @@ index b136413..d3cbb16 100755
#### SteamOS Btrfs Begin #### #### SteamOS Btrfs Begin ####
if [[ -f /etc/default/steamos-btrfs ]]; then if [[ -f /etc/default/steamos-btrfs ]]; then
@@ -120,6 +121,7 @@ @@ -109,6 +110,7 @@ do_mount()
UDISKS2_ALLOW='uid=$UID,gid=$GID,umask,dmask,fmask,locale,norecover,ignore_case,windows_names,compression,nocompression,big_writes,nls,nohidden,sys_immutable,sparse,showmeta,prealloc' UDISKS2_ALLOW='uid=$UID,gid=$GID,umask,dmask,fmask,locale,norecover,ignore_case,windows_names,compression,nocompression,big_writes,nls,nohidden,sys_immutable,sparse,showmeta,prealloc'
OPTS="${STEAMOS_BTRFS_SDCARD_NTFS_MOUNT_OPTS:-rw,noatime,lazytime,uid=1000,gid=1000,big_writes,umask=0022,ignore_case,windows_names}" OPTS="${STEAMOS_BTRFS_SDCARD_NTFS_MOUNT_OPTS:-rw,noatime,lazytime,uid=1000,gid=1000,big_writes,umask=0022,ignore_case,windows_names}"
FSTYPE="lowntfs-3g" FSTYPE="lowntfs-3g"
@ -43,7 +42,7 @@ index b136413..d3cbb16 100755
if [[ ! -f /etc/filesystems ]] || ! grep -q '\b'"${FSTYPE}"'\b' /etc/filesystems; then if [[ ! -f /etc/filesystems ]] || ! grep -q '\b'"${FSTYPE}"'\b' /etc/filesystems; then
echo "${FSTYPE}" >> /etc/filesystems echo "${FSTYPE}" >> /etc/filesystems
fi fi
@@ -132,7 +134,7 @@ @@ -121,7 +123,7 @@ do_mount()
if [[ -f "${udisks2_mount_options_conf}" && ! -f "${udisks2_mount_options_conf}.orig" ]]; then if [[ -f "${udisks2_mount_options_conf}" && ! -f "${udisks2_mount_options_conf}.orig" ]]; then
mv -f "${udisks2_mount_options_conf}"{,.orig} mv -f "${udisks2_mount_options_conf}"{,.orig}
fi fi

View File

@ -328,3 +328,13 @@ index 1a46251..73f2a3d 100755
import evdev import evdev
import threading import threading
diff --git a/usr/bin/jupiter-initial-firmware-update b/usr/bin/jupiter-initial-firmware-update
index 1a46251..73f2a3d 100755
--- jupiter-initial-firmware-update
+++ jupiter-initial-firmware-update
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/usr/bin/sh
set -euo pipefail

View File

@ -1,5 +1,7 @@
%define packagename jupiter-hw-support %define packagename jupiter-hw-support
%define packagever jupiter-20231115.1 %define packagever jupiter-3.5-20231115.1
%global _default_patch_fuzz 2
Name: %{packagename}-btrfs Name: %{packagename}-btrfs
Version: {{{ git_dir_version }}} Version: {{{ git_dir_version }}}
Release: 1%{?dist} Release: 1%{?dist}
@ -7,11 +9,11 @@ Summary: Steam Deck Hardware Support Package
License: GPLv3 License: GPLv3
URL: https://github.com/ublue-os/bazzite URL: https://github.com/ublue-os/bazzite
Source: https://gitlab.com/evlaV/%{packagename}/-/archive/jupiter-20230927.2/%{packagename}-%{packagever}.tar.gz Source: https://gitlab.com/evlaV/%{packagename}/-/archive/%{packagever}/%{packagename}-%{packagever}.tar.gz
Patch0: fedora.patch Patch0: fedora.patch
Patch1: selinux.patch Patch1: selinux.patch
Patch2: https://gitlab.com/popsulfr/steamos-btrfs/-/raw/main/files/usr/lib/hwsupport/steamos-automount.sh.patch.old.20231104103824.20231031.1000 Patch2: https://gitlab.com/popsulfr/steamos-btrfs/-/raw/v1.2.6.20231104/files/usr/lib/hwsupport/steamos-automount.sh.patch.old.20231104103824.20231031.1000
Patch3: https://gitlab.com/popsulfr/steamos-btrfs/-/raw/main/files/usr/lib/hwsupport/format-device.sh.patch.old.20230922091429.20230915.100 Patch3: https://gitlab.com/popsulfr/steamos-btrfs/-/raw/v1.2.6.20231104/files/usr/lib/hwsupport/format-device.sh.patch.old.20230922091429.20230915.100
Patch4: user.patch Patch4: user.patch
Patch5: bazzite-btrfs.patch Patch5: bazzite-btrfs.patch
Patch6: systemd-run.patch Patch6: systemd-run.patch
@ -33,6 +35,8 @@ Requires: e2fsprogs
Requires: f3 Requires: f3
BuildRequires: systemd-rpm-macros BuildRequires: systemd-rpm-macros
BuildRequires: xcursorgen
BuildRequires: sed
%description %description
SteamOS 3.0 Steam Deck Hardware Support Package SteamOS 3.0 Steam Deck Hardware Support Package
@ -41,7 +45,7 @@ SteamOS 3.0 Steam Deck Hardware Support Package
%define debug_package %{nil} %define debug_package %{nil}
%prep %prep
%autosetup -p1 -n jupiter-hw-support-jupiter-20230927.2-faaccd721214cbb705bdcba8d3eddfdec1ef4e3b %autosetup -p1 -n %{packagename}-%{packagever}
%build %build
@ -64,6 +68,8 @@ cp -rv usr/lib/udev %{buildroot}%{_prefix}/lib/udev
cp -rv usr/bin/* %{buildroot}%{_bindir} cp -rv usr/bin/* %{buildroot}%{_bindir}
cp -rv usr/lib/systemd/system/* %{buildroot}%{_unitdir} cp -rv usr/lib/systemd/system/* %{buildroot}%{_unitdir}
cp -rv etc/* %{buildroot}%{_sysconfdir} cp -rv etc/* %{buildroot}%{_sysconfdir}
sed -i 's@steamos-cursor.png@usr/share/steamos/steamos-cursor.png@g' usr/share/steamos/steamos-cursor-config
xcursorgen usr/share/steamos/steamos-cursor-config %{buildroot}%{_datadir}/icons/steam/cursors/default
# Remove unneeded files # Remove unneeded files
rm %{buildroot}%{_sysconfdir}/default/grub-steamos rm %{buildroot}%{_sysconfdir}/default/grub-steamos
rm %{buildroot}%{_datadir}/jupiter_bios_updater/h2offt-g rm %{buildroot}%{_datadir}/jupiter_bios_updater/h2offt-g
@ -94,6 +100,7 @@ rm -rf %{buildroot}%{_datadir}/alsa
%{_bindir}/amd_system_info %{_bindir}/amd_system_info
%{_bindir}/foxnet-biosupdate %{_bindir}/foxnet-biosupdate
%{_bindir}/jupiter-biosupdate %{_bindir}/jupiter-biosupdate
%{_bindir}/jupiter-initial-firmware-update
%{_bindir}/jupiter-check-support %{_bindir}/jupiter-check-support
%{_bindir}/jupiter-controller-update %{_bindir}/jupiter-controller-update
%{_bindir}/steamos-polkit-helpers/* %{_bindir}/steamos-polkit-helpers/*

View File

@ -1,5 +1,5 @@
diff --git a/usr/bin/steamos-polkit-helpers/steamos-priv-write b/usr/bin/steamos-polkit-helpers/steamos-priv-write diff --git a/usr/bin/steamos-polkit-helpers/steamos-priv-write b/usr/bin/steamos-polkit-helpers/steamos-priv-write
index 907133b..6ba1dd8 100755 index 296996e..ae0ae3e 100755
--- a/usr/bin/steamos-polkit-helpers/steamos-priv-write --- a/usr/bin/steamos-polkit-helpers/steamos-priv-write
+++ b/usr/bin/steamos-polkit-helpers/steamos-priv-write +++ b/usr/bin/steamos-polkit-helpers/steamos-priv-write
@@ -2,6 +2,9 @@ @@ -2,6 +2,9 @@
@ -12,19 +12,31 @@ index 907133b..6ba1dd8 100755
if [[ $EUID -ne 0 ]]; if [[ $EUID -ne 0 ]];
then then
exec pkexec --disable-internal-agent "$0" "$@" exec pkexec --disable-internal-agent "$0" "$@"
@@ -12,16 +15,19 @@ @@ -12,21 +15,25 @@ WRITE_VALUE="$2"
function CommitWrite() function CommitWrite()
{ {
- if [ ! -z "$WRITE_VALUE" ]
- then
- echo "commit: $WRITE_VALUE -> $WRITE_PATH" | systemd-cat -t p-steamos-priv-write -p warning
- echo "$WRITE_VALUE" > "$WRITE_PATH"
+ if [[ ":Jupiter:" =~ ":$SYS_ID:" || ":Galileo:" =~ ":$SYS_ID:" || "$ENABLE_HARDWARE_CONTROL_ON_NON_DECK_HARDWARE" = 1 ]]; then + if [[ ":Jupiter:" =~ ":$SYS_ID:" || ":Galileo:" =~ ":$SYS_ID:" || "$ENABLE_HARDWARE_CONTROL_ON_NON_DECK_HARDWARE" = 1 ]]; then
echo "commit: $WRITE_VALUE -> $WRITE_PATH" | systemd-cat -t p-steamos-priv-write -p warning + if [ ! -z "$WRITE_VALUE" ]
- echo "$WRITE_VALUE" > "$WRITE_PATH" + then
chmod a+w "$WRITE_PATH" + echo "commit: $WRITE_VALUE -> $WRITE_PATH" | systemd-cat -t p-steamos-priv-write -p warning
+ echo "$WRITE_VALUE" > "$WRITE_PATH" + chmod a+w "$WRITE_PATH"
+ echo "$WRITE_VALUE" > "$WRITE_PATH"
+ fi
+
+ echo "chmod a+w: $WRITE_PATH" | systemd-cat -t p-steamos-priv-write -p warning
+ else + else
+ echo "commit: Skipped - see /etc/default/steam-hardware-control" | systemd-cat -t p-steamos-priv-write -p warning + echo "commit: Skipped - see /etc/default/steam-hardware-control" | systemd-cat -t p-steamos-priv-write -p warning
+ fi fi
exit 0 -
- chmod a+w "$WRITE_PATH"
- echo "chmod a+w: $WRITE_PATH" | systemd-cat -t p-steamos-priv-write -p warning
+
exit 0
} }
function DeclineWrite() function DeclineWrite()
@ -34,8 +46,8 @@ index 907133b..6ba1dd8 100755
exit 1 exit 1
} }
@@ -32,15 +38,90 @@ @@ -40,15 +47,90 @@ if [[ "$WRITE_PATH" == /dev/drm_dp_aux0 ]]; then
fi
if [[ "$WRITE_PATH" == /sys/class/drm/card*/device/power_dpm_force_performance_level ]]; then if [[ "$WRITE_PATH" == /sys/class/drm/card*/device/power_dpm_force_performance_level ]]; then
- CommitWrite - CommitWrite

View File

@ -0,0 +1,50 @@
Name: steamdeck-dsp
Version: {{{ git_dir_version }}}
Release: 1%{?dist}
Summary: Steamdeck Audio Processing
License: GPLv2
URL: https://github.com/ublue-os/bazzite
Source: https://gitlab.com/evlaV/valve-hardware-audio-processing/-/archive/main/valve-hardware-audio-processing-main.tar.gz
BuildRequires: make
BuildRequires: faust
BuildRequires: faust-tools
BuildRequires: boost-devel
BuildRequires: lv2-devel
BuildRequires: g++
%description
Steamdeck Audio Processing
# Disable debug packages
%define debug_package %{nil}
%prep
%autosetup -n valve-hardware-audio-processing-main
%build
%make_build FAUSTINC="/usr/include/faust" FAUSTLIB="/usr/share/faust"
%install
%make_install DEST_DIR="%{buildroot}"
mkdir -p %{buildroot}%{_datadir}/licenses/%{name}/
cp LICENSE %{buildroot}%{_datadir}/licenses/%{name}/LICENSE
# This lists all the files that are included in the rpm package and that
# are going to be installed into target system where the rpm is installed.
%files
%license LICENSE
%{_prefix}/lib/firmware/amd/*
%{_prefix}/lib/lv2/svg/valve_deck_*
%{_prefix}/lib/lv2/valve_*
%{_datadir}/alsa/ucm2/conf.d/acp5x/*.conf
%{_datadir}/alsa/ucm2/conf.d/sof-nau8821-max/*.conf
%{_datadir}/pipewire/pipewire.conf.d/*.conf
%{_datadir}/wireplumber/bluetooth.lua.d/*.lua
%{_datadir}/wireplumber/main.lua.d/*.lua
%{_datadir}/wireplumber/scripts/*.lua
# Finally, changes from the latest release of your application are generated from
# your project's Git history. It will be empty until you make first annotated Git tag.
%changelog
{{{ git_dir_changelog }}}

View File

@ -354,21 +354,31 @@ unhide-grub:
# Install Deck HD BIOS # Install Deck HD BIOS
install-deckhd-bios: install-deckhd-bios:
#!/usr/bin/env bash #!/usr/bin/env bash
RESOLUTION=$(sudo lshw -json -c display | jq -r .[]."configuration"."resolution") SYS_ID="$(cat /sys/devices/virtual/dmi/id/product_name)"
if [[ "${RESOLUTION}" = "1200,1920" ]]; then if [[ ":Jupiter:" =~ ":$SYS_ID:" ]]; then
RESOLUTION=$(sudo lshw -json -c display | jq -r .[]."configuration"."resolution")
if [[ "${RESOLUTION}" = "1200,1920" ]]; then
sudo systemctl mask --now jupiter-biosupdate.service sudo systemctl mask --now jupiter-biosupdate.service
wget -q https://deckhd.com/downloads/install.sh -O /tmp/deckhd-install.sh wget -q https://deckhd.com/downloads/install.sh -O /tmp/deckhd-install.sh
chmod +x /tmp/deckhd-install.sh chmod +x /tmp/deckhd-install.sh
sudo ./tmp/deckhd-install.sh sudo ./tmp/deckhd-install.sh
else else
echo "Unable to detect DeckHD. Aborting..." echo "Unable to detect DeckHD. Aborting..."
fi
else
echo "This is only applicable to LCD Steam Decks with the DeckHD screen. Aborting..."
fi fi
# Enable BIOS & Firmware update services for the Steam Deck # Enable BIOS & Firmware update services for the Steam Deck
enable-deck-bios-firmware-updates: enable-deck-bios-firmware-updates:
#!/usr/bin/env bash #!/usr/bin/env bash
sudo systemctl enable jupiter-biosupdate.service SYS_ID="$(cat /sys/devices/virtual/dmi/id/product_name)"
sudo systemctl enable jupiter-controller-update.service if [[ ":Jupiter:" =~ ":$SYS_ID:" || ":Galileo:" =~ ":$SYS_ID:" ]]; then
sudo systemctl enable jupiter-biosupdate.service
sudo systemctl enable jupiter-controller-update.service
else
echo "This is only applicable to Valve's Steam Deck. Aborting..."
fi
# Disable Steam Deck BIOS updates # Disable Steam Deck BIOS updates
disable-bios-updates: disable-bios-updates:

View File

@ -158,6 +158,9 @@ if [[ $IMAGE_NAME =~ "deck" || $IMAGE_NAME =~ "ally" || $IMAGE_NAME =~ "framegam
if [[ "${RESOLUTION}" = "1200,1920" ]]; then if [[ "${RESOLUTION}" = "1200,1920" ]]; then
echo "Jupiter with DeckHD detected, disabling BIOS updates..." echo "Jupiter with DeckHD detected, disabling BIOS updates..."
systemctl disable --now jupiter-biosupdate.service systemctl disable --now jupiter-biosupdate.service
elif [[ "$(awk '/MemTotal/{print $(NF-1)}' /proc/meminfo)" == "31664740" ]]; then
echo "Jupiter with 32GB RAM detected, disabling BIOS updates..."
systemctl disable --now jupiter-biosupdate.service
else else
echo "Jupiter hardware detected, skipping further setup..." echo "Jupiter hardware detected, skipping further setup..."
fi fi