First off, I’m using Fedora 35. I want to use Fedora + Steam Big Picture mode [SBP] to game from my couch and be able to shutdown the system without needing to grab my keyboard. I have nvidia graphics and I’m using the latest version of the driver from negativo17 [and x11]. I am using the steam package from rpmfusion.
When I select “Turn Off System” from the options in SBP, nothing happens. I decided to open steam in a terminal and monitor the output, and I found that when I push the button, it throws
Failed to open connection to "system" message bus: Failed to connect to socket
/home/aria/anaconda3/var/run/dbus/system_bus_socket: No such file or directory
So, naturally I tried to run it with system python [after using conda deactivate] – and it worked! Now I’m confused as to why Steam is using anaconda [I still want to use anaconda in terminals…], and I don’t know how to get it to do so by default [the .desktop file]. Any help is appreciated.
For anaconda I’m unsure if there is another way to install, but I downloaded the .sh installer from their website and ran
bash anaconda_installer.sh
and I said ‘yes’ to ‘Do you wish the installer to initialize Anaconda3 by running conda init?’
I installed anaconda first, as I use this computer for work before realizing I could game on it too.
You are confusing Anaconda the installer with Anaconda the data science distribution. Anaconda the data science distribution is proprietary and not included in Fedora repos.
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/aria/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/aria/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/aria/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/aria/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
To Jeff, I apologize for not being clear that I’m discussing the python anaconda, not fedora’s installer. It’s easy to forget that they are called the same thing.
Really, I guess I’m wondering if it’s possible for applications to be forced to use system python instead of anaconda python without changing the fact that when I open a terminal (to run code), anaconda is the default python.
If an app is installed in a python virtual environment as it seems your Anaconda may be, then launching it is in the virtual environment and mostly independent from the system environment. I have experience in that fact with using octoprint on my rpi4 on Ubuntu.
When you launch the app the way you posted it seems to have created a venv during the install so the python bits it needs are all there in the venv.
Installing steam with dnf from the rpmfusion repo does the same thing. Steam creates its own environment under which it runs.
I have not tried steam since I upgraded from F34 to F36 (still beta) but steam worked well under 34 and does its own updates each time launched.
For open source projects, system packages do modify usage to be explicit /usr/bin/python3, but Steam isn’t, so it will find python in PATH. There is no virtual environment involved here.
You can modify the path that Steam sees by:
copying /usr/share/applications/steam.desktop to ~/.local/share/applications, then
modifying the Exec line to modify the execution in a way that works.
I think a reasonable default path would be /usr/lib64/ccache:/usr/local/bin:/usr/bin:/usr/local/sbin:/usr/sbin. So set Exec to: