Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package steam for openSUSE:Factory:NonFree checked in at 2023-05-12 20:31:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory:NonFree/steam (Old) and /work/SRC/openSUSE:Factory:NonFree/.steam.new.1533 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "steam" Fri May 12 20:31:03 2023 rev:54 rq:1086548 version:1.0.0.78 Changes: -------- --- /work/SRC/openSUSE:Factory:NonFree/steam/steam.changes 2023-03-17 16:59:51.192294303 +0100 +++ /work/SRC/openSUSE:Factory:NonFree/.steam.new.1533/steam.changes 2023-05-12 20:31:04.264012293 +0200 @@ -1,0 +2,13 @@ +Thu May 11 13:50:59 UTC 2023 - Callum Farmer <[email protected]> + +- Update to version 1.0.0.78: + * Build using updated Steam client: + - Client timestamp 1682708537 (2023-04-28) + - Steam Runtime (scout) version 0.20230118.0 + * Update steam-devices subproject up to 2023-04-12: + - steam-input: Add Razer Raiju Ultimate + - steam-input: Add Sony DualShock 3 (Playstation 3) controller + - steamvr: Provide access to Valve Index (28de:2102) serial + port + +------------------------------------------------------------------- Old: ---- steam_1.0.0.76.tar.gz New: ---- steam_1.0.0.78.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ steam.spec ++++++ --- /var/tmp/diff_new_pack.B0JfKl/_old 2023-05-12 20:31:05.508019434 +0200 +++ /var/tmp/diff_new_pack.B0JfKl/_new 2023-05-12 20:31:05.512019457 +0200 @@ -36,7 +36,7 @@ %endif \ %{nil} Name: steam -Version: 1.0.0.76 +Version: 1.0.0.78 Release: 0 Summary: Installer for Valve's digital software distribution service # "Limited Installation License" ++++++ steam_1.0.0.76.tar.gz -> steam_1.0.0.78.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/bin_steam.sh new/steam-launcher/bin_steam.sh --- old/steam-launcher/bin_steam.sh 2023-03-01 19:59:10.000000000 +0100 +++ new/steam-launcher/bin_steam.sh 2023-05-09 21:50:56.000000000 +0200 @@ -18,7 +18,7 @@ echo "bin_steam.sh[$$]: $*" >&2 || : } -export STEAMSCRIPT_VERSION=1.0.0.76 +export STEAMSCRIPT_VERSION=1.0.0.78 # Set up domain for script localization export TEXTDOMAIN=steam diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/bin_steamdeps.py new/steam-launcher/bin_steamdeps.py --- old/steam-launcher/bin_steamdeps.py 2023-03-01 19:55:55.000000000 +0100 +++ new/steam-launcher/bin_steamdeps.py 2023-05-09 21:47:12.000000000 +0200 @@ -13,18 +13,13 @@ import os import re import shlex +import shutil import subprocess import sys from steam_launcher.launcherutils import run_subprocess try: - from shlex import quote -except ImportError: - # Python 3.2 (not really supported but let's not deliberately break it) - from pipes import quote - -try: import typing except ImportError: pass @@ -54,6 +49,17 @@ 'XDG_CURRENT_DESKTOP', ) +APT_GET_INSTALL = [ + 'apt-get', + 'install', + # Make sure that multiarch skew or other broken dependencies don't end up + # removing packages that are essential for the OS or desktop environment + # to run; Steam not working is less bad than the desktop not working. + '--no-remove', + # Workaround for https://bugs.debian.org/1034790 + '-oAPT::Get::AutomaticRemove=false', +] + _arch = None _foreign_architectures = None @@ -439,8 +445,7 @@ ["gnome-terminal", "--disable-factory", "-t", title, "--"]), ] for (program, commandLine) in programs: - if subprocess.call(['which', program], - stdout=subprocess.PIPE) == 0: + if shutil.which(program) is not None: return commandLine # Fallback if no GUI terminal program is available @@ -606,14 +611,8 @@ update_apt() - # Install the packages using the option "--no-remove" to avoid - # unexpected dependencies cycle that end up removing packages that are - # essential for the OS to run logger.debug('Installing packages: %s...', ' '.join(packages)) - cp = run_subprocess( - ['apt-get', 'install', '--no-remove'] + packages, - universal_newlines=True, - ) + cp = run_subprocess(APT_GET_INSTALL + packages, universal_newlines=True) return cp.returncode @@ -677,6 +676,7 @@ ### def main(): + # type: (...) -> int logging.basicConfig() logging.getLogger().setLevel(logging.INFO) @@ -757,7 +757,7 @@ if 'STEAM_LAUNCHER_VERBOSE' in os.environ: logging.getLogger().setLevel(logging.DEBUG) - logger.debug('Run as: %s', ' '.join([quote(a) for a in sys.argv])) + logger.debug('Run as: %s', ' '.join([shlex.quote(a) for a in sys.argv])) if args.debug_dump_os_release: os_release.dump() @@ -790,8 +790,10 @@ ) return cp.returncode - packages = sorted(filter(None, args.install.split(' '))) - return update_packages(packages, args.install_confirmation) + to_update = sorted( + filter(None, args.install.split(' ')) + ) # type: typing.List[str] + return update_packages(to_update, args.install_confirmation) if args.dry_run: logger.debug('Dry-run mode, avoiding side-effects') @@ -911,6 +913,7 @@ # listed in the steamdeps.txt file. If they are not available we # just inform the user about it and continue. for additional_pkg in ( + 'steam-launcher', 'steam-libs-amd64:amd64', 'steam-libs-i386:i386', 'xdg-desktop-portal', @@ -1006,7 +1009,8 @@ if args.dry_run: print( - 'Would run: apt-get install --no-remove {}'.format( + 'Would run: {} {}'.format( + ' '.join(APT_GET_INSTALL), ' '.join(sorted(to_install)) ) ) Binary files old/steam-launcher/bootstraplinux_ubuntu12_32.tar.xz and new/steam-launcher/bootstraplinux_ubuntu12_32.tar.xz differ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/client-versions.json new/steam-launcher/client-versions.json --- old/steam-launcher/client-versions.json 2023-03-01 19:59:10.000000000 +0100 +++ new/steam-launcher/client-versions.json 2023-05-09 21:50:55.000000000 +0200 @@ -1,4 +1,4 @@ { - "client_version": "1676336721", - "runtime_version": "0.20221019.0" + "client_version": "1682708537", + "runtime_version": "0.20230118.0" } diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/com.valvesoftware.Steam.metainfo.xml new/steam-launcher/com.valvesoftware.Steam.metainfo.xml --- old/steam-launcher/com.valvesoftware.Steam.metainfo.xml 2023-03-01 19:55:55.000000000 +0100 +++ new/steam-launcher/com.valvesoftware.Steam.metainfo.xml 2023-05-09 21:47:12.000000000 +0200 @@ -32,6 +32,8 @@ </screenshots> <launchable type="desktop-id">steam.desktop</launchable> <releases> + <release version="1.0.0.78" date="2023-05-09"/> + <release version="1.0.0.77" date="2023-05-09"/> <release version="1.0.0.76" date="2023-03-01"/> <release version="1.0.0.75" date="2022-07-12"/> <release version="1.0.0.74" date="2021-12-01"/> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/debian/README.source new/steam-launcher/debian/README.source --- old/steam-launcher/debian/README.source 2023-03-01 19:55:55.000000000 +0100 +++ new/steam-launcher/debian/README.source 2023-05-09 21:47:12.000000000 +0200 @@ -105,7 +105,7 @@ a new version number. * Trigger the Gitlab-CI pipeline on the default branch with - the `STEAM_LAUNCHER_CI_PROMOTE` CI variable set to `public`. + the `STEAM_LAUNCHER_CI_ACTION` CI variable set to `public`. This will copy the staging beta to be the public beta (and also the staging stable to the public stable). @@ -113,12 +113,12 @@ -------------------------------------- * Trigger the Gitlab-CI pipeline on the default branch with - the `STEAM_LAUNCHER_CI_PROMOTE` CI variable set to `staging-stable`. + the `STEAM_LAUNCHER_CI_ACTION` CI variable set to `staging-stable`. This will copy the staging beta to staging stable. * *Really* the last chance to test :-) * Trigger the Gitlab-CI pipeline on the default branch with - the `STEAM_LAUNCHER_CI_PROMOTE` CI variable set to `public`. + the `STEAM_LAUNCHER_CI_ACTION` CI variable set to `public`. This will copy the staging stable to be the public stable (and also the staging beta to the public beta). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/debian/changelog new/steam-launcher/debian/changelog --- old/steam-launcher/debian/changelog 2023-03-01 19:55:55.000000000 +0100 +++ new/steam-launcher/debian/changelog 2023-05-09 21:47:12.000000000 +0200 @@ -1,3 +1,50 @@ +steam (1:1.0.0.78) beta; urgency=medium + + * Specifically require gnome-terminal, konsole or xterm, and don't accept + x-terminal-emulator. We require a terminal emulator that can be told to + wait until the command it is running has exited, and that isn't the + case for all x-terminal-emulator implementations, resulting in Steam + trying to start before its dependencies have been installed, which will + fail. (Reopens: steam-for-linux#9350) + + -- Simon McVittie <[email protected]> Tue, 09 May 2023 20:46:27 +0100 + +steam (1:1.0.0.77) beta; urgency=medium + + * Build using updated Steam client: + - Client timestamp 1682708537 (2023-04-28) + - Steam Runtime (scout) version 0.20230118.0 + * Update steam-devices subproject up to 2023-04-12: + - steam-input: Add Razer Raiju Ultimate + (steam-devices#31, thanks to @IAmTheRedSpy) + - steam-input: Add Sony DualShock 3 (Playstation 3) controller + (steam-devices#43, thanks to Jonatas Esteves) + - steamvr: Provide access to Valve Index (28de:2102) serial port + (steam-devices#44, thanks to Joshua Ashton) + * Packaging: + - Depend on Python 3.4. + This was available in Debian since version 8 (EOL long ago), in Ubuntu + since 14.04 (EOL), and in SteamOS 2 (EOL). + - Depend on pkexec in preference to policykit-1, avoiding installation + of a deprecated transitional package on Debian >= 12 and + Ubuntu >= 22.04. Older versions that only have policykit-1 still work. + * steamdeps installer script: + - Turn off autoremovals when steamdeps runs apt, avoiding + a failure to install dependencies if autoremovals were enabled + system-wide (steam-for-linux#9350) + - Accept any x-terminal-emulator as a terminal (steam-for-linux#9265) + - Try harder to tell apt's conflict resolution heuristic + that removing steam-launcher is not a good solution + (followup for steam-for-linux#9301) + - Remove compatibility with Python 3.2 + - Use shutil.which instead of which(1), for better efficiency and to + avoid deprecation warnings in some versions + * CI: + - Test steamdeps on Ubuntu 16.04 + - Test steamdeps on Debian 12 + + -- Simon McVittie <[email protected]> Tue, 09 May 2023 16:25:00 +0100 + steam (1:1.0.0.76) beta; urgency=medium [ Simon McVittie ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/debian/control new/steam-launcher/debian/control --- old/steam-launcher/debian/control 2023-03-01 19:55:55.000000000 +0100 +++ new/steam-launcher/debian/control 2023-05-09 21:47:12.000000000 +0200 @@ -33,10 +33,10 @@ file, libc6 (>= 2.15), libnss3 (>= 2:3.26), - policykit-1, - python3, + pkexec | policykit-1, + python3 (>= 3.4), python3-apt, - xterm | gnome-terminal | konsole | x-terminal-emulator, + xterm | gnome-terminal | konsole, xz-utils, zenity Recommends: steam-libs-amd64, diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/subprojects/steam-devices/60-steam-input.rules new/steam-launcher/subprojects/steam-devices/60-steam-input.rules --- old/steam-launcher/subprojects/steam-devices/60-steam-input.rules 2023-03-01 19:55:55.000000000 +0100 +++ new/steam-launcher/subprojects/steam-devices/60-steam-input.rules 2023-05-09 21:47:12.000000000 +0200 @@ -10,6 +10,12 @@ # Valve HID devices over bluetooth hidraw KERNEL=="hidraw*", KERNELS=="*28DE:*", MODE="0660", TAG+="uaccess" +# DualShock 3 over USB hidraw +KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="0268", MODE="0660", TAG+="uaccess" + +# DualShock 3 over bluetooth hidraw +KERNEL=="hidraw*", KERNELS=="*054C:0268*", MODE="0660", TAG+="uaccess" + # DualShock 4 over USB hidraw KERNEL=="hidraw*", ATTRS{idVendor}=="054c", ATTRS{idProduct}=="05c4", MODE="0660", TAG+="uaccess" @@ -72,6 +78,12 @@ # Razer Raiju PS4 Controller Tournament Edition over bluetooth hidraw KERNEL=="hidraw*", KERNELS=="*1532:100A*", MODE="0660", TAG+="uaccess" +# Razer Raiju Ultimate over USB +KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="1004", MODE="0660", TAG+="uaccess" + +# Razer Raiju Ultimate over PC Bluetooth +KERNEL=="hidraw*", KERNELS=="*1532:1009*", MODE="0660", TAG+="uaccess" + # Razer Panthera Arcade Stick KERNEL=="hidraw*", ATTRS{idVendor}=="1532", ATTRS{idProduct}=="0401", MODE="0660", TAG+="uaccess" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/subprojects/steam-devices/60-steam-vr.rules new/steam-launcher/subprojects/steam-devices/60-steam-vr.rules --- old/steam-launcher/subprojects/steam-devices/60-steam-vr.rules 2023-03-01 19:55:55.000000000 +0100 +++ new/steam-launcher/subprojects/steam-devices/60-steam-vr.rules 2023-05-09 21:47:12.000000000 +0200 @@ -23,3 +23,5 @@ KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2150", MODE="0660", TAG+="uaccess" KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2300", MODE="0660", TAG+="uaccess" KERNEL=="hidraw*", SUBSYSTEM=="hidraw", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2301", MODE="0660", TAG+="uaccess" + +SUBSYSTEM=="tty", ATTRS{idVendor}=="28de", ATTRS{idProduct}=="2102", MODE="0660", TAG+="uaccess" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/steam-launcher/tests/bin_steamdeps.py new/steam-launcher/tests/bin_steamdeps.py --- old/steam-launcher/tests/bin_steamdeps.py 2023-03-01 19:55:55.000000000 +0100 +++ new/steam-launcher/tests/bin_steamdeps.py 2023-05-09 21:47:12.000000000 +0200 @@ -17,6 +17,8 @@ class SteamdepsTestCase(unittest.TestCase): def test_dependencies(self): + self.maxDiff = None + # Whitespace separated list pkgs_to_install = os.environ.get('SL_TEST_PKGS_TO_INSTALL', '') # Whitspace separated list @@ -25,6 +27,10 @@ 'SL_TEST_REQUIRED_PKGS', '', ) + already_installed = os.environ.get( + 'SL_TEST_ALREADY_INSTALLED', '' + ).split() + output_message = os.environ.get('SL_TEST_OUTPUT_MESSAGE', '') if ( @@ -67,20 +73,20 @@ install_pkgs_list = sorted(filter(None, pkgs_to_install.split(' '))) # The output is already sorted stderr_list = [x for x in stderr_list if x.startswith('Package ')] + expected = [ + 'Package {} needs to be installed'.format(pkg) + for pkg in install_pkgs_list + if pkg not in already_installed + ] - self.assertEqual(len(install_pkgs_list), len(stderr_list)) - - for pkg, expected in zip(install_pkgs_list, stderr_list): - self.assertEqual( - 'Package {} needs to be installed'.format(pkg), - expected - ) + self.assertEqual(stderr_list, expected) for line in stdout_list: if line.startswith('Would run: apt-get ') and required_pkgs: self.assertEqual( line, ('Would run: apt-get install --no-remove ' + + '-oAPT::Get::AutomaticRemove=false ' + ' '.join(sorted(required_pkgs.split()))), ) break @@ -90,15 +96,13 @@ '"Would run: apt-get" not found on stdout' ) - missing_pkgs_list = sorted(filter(None, missing_pkgs.split(' '))) + # Allow missing packages to appear here more than once to make it + # easier to write the tests, and use a set to uniquify + missing_pkgs_list = sorted(set(filter(None, missing_pkgs.split(' ')))) # The output is already sorted stdout_list = [x for x in stdout_list if x.startswith('- ')] - - for pkg, expected in zip(missing_pkgs_list, stdout_list): - self.assertEqual( - '- {}'.format(pkg), - expected - ) + expected = ['- {}'.format(pkg) for pkg in missing_pkgs_list] + self.assertEqual(stdout_list, expected) if output_message: self.assertIn(output_message, cp.stdout)
