Trying downgrade, but package 'steam' depends on 'steam-devices', which doesn't exist (anymore)

Since the last update to the Steam-client I’m running into issues with certain games because of a missing ‘steamservice.so’ file. Because this got introduced in version 1.0.0.78-5, I’d like to try to downgrade the ‘steam’ package to an older version I still have locally cached on disk (version 1.0.0.78-4 to be specific).
But when I try to downgrade steam, it refers to dependency ‘steam-devices’ being unresolved. What I can find about that package is that it doesn’t exist (anymore). Apparently it’s been replaced by the ‘game-devices-udev’ package which I found out via: How to install or uninstall "game-devices-udev" on Manjaro ?, where it says:

Repository : community
Name : game-devices-udev
...
Provides : steam-devices
Depends On : udev
Optional Deps : None
Conflicts With : steam-devices
Replaces : steam-devices
...

I do have that ‘game-devices-udev’ package installed:

% sudo pacman -Q game-devices-udev
game-devices-udev 0.22-2

When I try to downgrade steam, I get this output:

% sudo pacman -U /var/cache/pacman/pkg/steam-1.0.0.78-4-x86_64.pkg.tar.zst
loading packages...
resolving dependencies...
warning: cannot resolve "steam-devices", a dependency of "steam"
:: The following package cannot be upgraded due to unresolvable dependencies:
      steam

:: Do you want to skip the above package for this upgrade? [y/N] n
error: failed to prepare transaction (could not satisfy dependencies)
:: unable to satisfy dependency 'steam-devices' required by steam

I’m not sure what the error is here.

  • Should ‘steam-devices’ still be available? or,
  • Should the ‘steam’ package not depend on ‘steam-devices’ anymore?

Is it possible to fix this locally by some hack in the ‘steam’ package registry so it doesn’t depend on ‘steam-devices’ anymore? Or can I fake that package by building some dummy thing locally and package it as ‘steam-devices’?

I understand downgrading is frowned upon and for good reason. But since the steam-client is a typical ‘leaf’-package (I don’t expect other packages depending on ‘steam’), I’m willing to take the risk for this specific experiment :slight_smile:

Without commenting on the idea as a whole and such…

Maybe the best option is steam-devices-git in the AUR?

https://aur.archlinux.org/packages/steam-devices-git

XY Problem detected: You’re asking about your attempted solution rather than your actual problem. This leads to enormous amounts of wasted time and energy, both on the part of people asking for help, and on the part of those providing help.

Downgrading steam will not accomplish anything. The package is mostly a few scripts that download and install it. Your actual Steam installation is in ~/.local/share/Steam/.

Problem: ‘steam’ depends on package ‘steam-devices’, which doesn’t exist and is nowhere to be found.
Gut feeling: feels like a bug of the ‘steam’ package, depending on a non-existing package.
Question a: is my gut feeling correct?
Question b: if so, where can I report that bug?

You misunderstand.

Problem:

Your attempted solution:

No, it doesn’t.

No.

game-devices-udev used to provide, conflict with and replace steam-devices.

If there is no dependency then why does pacman complain about a ‘steam-devices’ dependency missing/unresolvable? (genuine question).

warning: cannot resolve "steam-devices", a dependency of "steam"
:: The following package cannot be upgraded due to unresolvable dependencies:
      steam

:: Do you want to skip the above package for this upgrade? [y/N] n
error: failed to prepare transaction (could not satisfy dependencies)
:: unable to satisfy dependency 'steam-devices' required by steam

steam used to depend on steam-devices which game-devices-udev used to provide. The dependency was removed and game-devices-udev is now an optional dependency.

1 Like