-
-
Notifications
You must be signed in to change notification settings - Fork 13.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
steam: decimate #341219
base: master
Are you sure you want to change the base?
steam: decimate #341219
Conversation
I was under the impression that native Linux titles do not necessarily use the steam-supplied runtime by default. Only Steam itself and games that explicitly opt into it use the steam-managed runtime. AFAIK, even Proton has only started using the linux runtime since version 6. If all of that is still true, this would break old native Linux games that rely on the runtime's old libraries and likely Proton <6. If I'm wrong about Proton, we could think about putting the runtime only in the non-small steam. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ce7e49b
to
76d4b70
Compare
So I asked myself: how much worse can we do? And the answer is, yes. This removes, like, most of our Steam package, and replaces it with how Valve intended the runtime to work - no |
Drafting for now because of the IFD, I'll try to get the buildEnv changes going for the next staging cycle if people agree with this overall approach. |
76d4b70
to
253f386
Compare
253f386
to
c6a6a7c
Compare
if [ -f /etc/NIXOS ]; then # Check only useful on NixOS | ||
${mesa-demos-i686}/bin/glxinfo 2>&1 | grep -q Error | ||
# If there was an error running glxinfo, we know something is wrong with the configuration | ||
if [ $? -eq 0 ]; then | ||
cat <<EOF > /dev/stderr | ||
** | ||
WARNING: Steam is not set up. Add the following options to /etc/nixos/configuration.nix | ||
and then run \`sudo nixos-rebuild switch\`: | ||
{ | ||
hardware.graphics.enable32Bit = true; | ||
hardware.pulseaudio.support32Bit = true; | ||
} | ||
** | ||
EOF |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should at least move it into the description
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think this check has actually ever worked properly tbh.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it worked after I fixed it in 7f97252
26ea751
to
353db8b
Compare
buildEnv bits going to staging: #341371 |
Can you try running the whole thing with |
That looks cut off... |
was |
It's also missing any attempts to load gdk-pixbuf. Can you try |
|
Does have some glib entries though
|
This is still very strange. Can you try |
|
This is very weird. Do you have any LD_* variables set in your environment maybe? |
Nothing
|
Neither |
Just as sanity check this does work with XDG
|
And if you run it with |
Actually, here's another crazy idea. What if you remove ~/.local/share/Steam and try to rebootstrap? |
will attempt, currently learning some gdb in hopes of getting a better clue of what is happening.
well didn't help much :|
|
Yeah, those are breakpad dumps, not something you can immediately shove into gdb. Actually, here's another crazy idea: what if you |
this caused steam to redownload something (not a lot) but still crashed
this caused steam to redownload about 468 MB but also crashed |
|
How about |
Oh this is more interesting
will attempt on xorg instead of wayland |
|
https://app.cachix.org/cache/steam-gcc14-gnome47 < uploaded result of https://github.com/fabianhjr/nixpkgs/tree/steam-issue < commit involved |
Use the most recent bootstrapper script.
8b54be7
to
207d534
Compare
nixfmt'ed the hacked up buildenv so CI can stop being red and scary. |
Description of changes
This basically removes everything that's not actually necessary for Steam itself or the runtime, simplifying the package massively.
This has the side effect of potentially breaking people's uses of
steam-run
, which was used as a generic "escape hatch" for a lot of FHS-y things. Those need to be checked. Currently known users:minigalaxy
(unmaintained, last touched by @ozkutuk),playonlinux
(@pasqui23)game-rs
(@Amanse)itch
(@pasqui23)xivlauncher
(@sersorrel, @witchof0x20)godot
(update script ingodot/3/mono/update-glue-version.sh
, @Rotaerk, @Twey)steam-tui
(probably fine, @legendofmiracles, @dmadisetti)protontricks
(probably fine, @kira-bruneau)We might also want to build a generic
fhs-run
or whatever wrapper, long term?Things done
nix.conf
? (See Nix manual)sandbox = relaxed
sandbox = true
nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD"
. Note: all changes have to be committed, also see nixpkgs-review usage./result/bin/
)Add a 👍 reaction to pull requests you find important.