You are not logged in.
Recently installed steam in a schroot environment to avoid using multilib using this guide: https://wiki.archlinux.org/index.php/In … bit_System
I was able to install and run Steam and was even able to install and launch a game but with no sound. After installing PulseAudio in the schroot environment I am now unable to launch Steam at all and get the following output:
[jordan@archpc ~]$ steam
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
Running Steam on arch 32-bit
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Failed to create secure directory (/run/user/1000/pulse): Permission denied
PulseAudio connect failed (used only for Mic Volume Control) with error: Access denied
Installing breakpad exception handler for appid(steam)/version(1508910373)
sh: /home/jordan/.local/share/Steam/ubuntu12_32/../ubuntu12_64/gldriverquery: No such file or directory
crash_20171027224346_1.dmp[1808]: Uploading dump (out-of-process)
/tmp/dumps/crash_20171027224346_1.dmp
/home/jordan/.local/share/Steam/steam.sh: line 941: 1788 Segmentation fault (core dumped) $STEAM_DEBUGGER "$STEAMROOT/$STEAMEXEPATH" "$@"
crash_20171027224346_1.dmp[1808]: Finished uploading minidump (out-of-process): success = yes
crash_20171027224346_1.dmp[1808]: response: CrashID=bp-8cdd0577-18d1-4f77-a55b-42ddf2171027
crash_20171027224346_1.dmp[1808]: file ''/tmp/dumps/crash_20171027224346_1.dmp'', upload yes: ''CrashID=bp-8cdd0577-18d1-4f77-a55b-42ddf2171027''
[jordan@archpc ~]$
I've tried mounting according to the instructions in the guide linked above as well as the following page: https://wiki.archlinux.org/index.php/Pu … install.29
But I still get the same error.
Also, when I run "ls /run" I don't see the same files/folders I do when I run "ls /run" in my normal 64-bit environment.
Any ideas?
Offline
Some experiments I've tried:
I was able to install wine and then Steam and was also able to install and run the same game, however without sound as before. Also, terminal shows the same error: Failed to create secure directory (/run/user/1000/pulse): Permission denied.
Afterwards I tried running steam using schroot (instead of schroot-ing in and using "su jordan") using the command "schroot -c Arch32 -p -q steam" and was able to once again launch native steam. Also, the same game was able to run, although without sound. Buried in the terminal output was the following:
Failed to create secure directory (/run/user/1000/pulse): Permission denied
[SDL] Audio driver: alsa
Frequency: 22050
Format: 32784
Channels: 2
Samples: 705
Size of Stereo Sample: 4
SoundSystem started : 22050Hz x 64 sound channels (including 8 music channels)
I've tried googling "Failed to create secure directory (/run/user/1000/pulse): Permission denied" but nothing has worked so far.
I also tried using "su - jordan" within the schroot (as opposed to "su jordan" before launching steam) but Steam fails to start:
...
sh: /home/jordan/.local/share/Steam/steam_msg.sh: No such file or directory
Installing breakpad exception handler for appid(steam)/version(1508910373)
crash_20171029101946_3.dmp[5685]: Uploading dump (out-of-process)
/tmp/dumps/crash_20171029101946_3.dmp
ILocalize::AddFile() failed to load file "public/steambootstrapper_english.txt".
[2017-10-29 10:19:46] Startup - updater built Nov 23 2016 01:05:42
../steamexe/updateui_xwin.cpp (339) : Assertion Failed: Could not open connection to X
../steamexe/main.cpp (525) : Assertion Failed: failed to initialize update status ui, or create initial window
mv: cannot stat '/home/jordan/.steam/registry.vdf': No such file or directory
...
And of course "echo $HOME" shows empty output.
If I try to launch Steam through wine:
[jordan@archpc ~]$ wine ~/.wine/drive_c/Program\ Files/Steam/Steam.exe
fixme:ver:GetCurrentPackageId (0x32e4a0 (nil)): stub
ILocalize::AddFile() failed to load file "public/steambootstrapper_english.txt".
[2017-10-29 11:12:40] Startup - updater built Oct 24 2017 20:50:08
err:winediag:nodrv_CreateWindow Application tried to create a window, but no driver could be loaded.
err:winediag:nodrv_CreateWindow Make sure that your X server is running and that $DISPLAY is set correctly.
..\steamexe\main.cpp (713) : Assertion Failed: failed to initialize update status ui, or create initial window
Assert( Assertion Failed: failed to initialize update status ui, or create initial window ):..\steamexe\main.cpp:713
Using "xhost +si:localuser:jordan" from outside schroot does not fix this. I'm not sure how exactly all this relates to the larger issue.
It's interesting that Steam immediately crashes post-launch since installing PulseAudio, but running steam from schroot command still works, and I haven't been able to piece together why. I can't help but feel like I'm missing something really basic that would allow me to tie all this together, but I'm not really sure where to look. I'm able to get steam running using "schroot -c Arch32 -p -q steam" so maybe focusing on fixing whatever is wrong with pulseaudio would be the best direction. If anyone has any tops/hints/insight/suggestions I would greatly appreciate your comments.
Offline
May have discovered why Steam was able to start with "schroot -c Arch32 -p -q steam". A minute ago I attempted to start steam using the newer schroot command to try and play a game without music. However, steam crashed instantly in the same way as before. After rebooting my machine, I was able to start steam with the new command again. Apparently, each time I start steam, it prevents me from starting it again. Also, login information is not saved so I have to login again each time. So it may be that installing pulseaudio didn't break steam. I can deal with not being able to close steam, but there still is the problem of not having sound.
EDIT: I am no longer able to start steam at all, same error message.
Last edited by Coxie (2017-10-29 18:59:22)
Offline
The audio problem maybe is due because the schroot doesn't get audio permissions, try adding your user to the audio group
gpasswd -a $your_user audioFor the steam errors try to reinstall everything and only install alsa.
Offline
What's your rationale for avoiding multilib? i686 is going to go away in like 2 weeks in which case you'd have to rely on an outdated stack anyway (or switch to multilib). If your reasoning is that you want steam isolated from the rest of your system, there are much saner and more compatible methods.
Offline
What's your rationale for avoiding multilib? i686 is going to go away in like 2 weeks in which case you'd have to rely on an outdated stack anyway (or switch to multilib). If your reasoning is that you want steam isolated from the rest of your system, there are much saner and more compatible methods.
My goal is/was to keep my system totally 64-bit just to keep things from getting too messy in my main environment since I'm relatively new to arch. I like the idea of a chroot jail but I might be in a little over my head for now. What other methods of isolating steam would you recommend?
Offline
The audio problem maybe is due because the schroot doesn't get audio permissions, try adding your user to the audio group
gpasswd -a $your_user audioFor the steam errors try to reinstall everything and only install alsa.
Tried using "gpasswd -a $jordan audio" but it had no effect.
Went ahead and deleted everything, "rm -rf /opt/arch32" and started from scratch using the guide (https://wiki.archlinux.org/index.php/In … bit_System).
Upon starting steam I still get the following error:
[jordan@archpc ~]$ schroot -c Arch32 -p steam
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
Running Steam on arch 32-bit
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
Failed to create secure directory (/run/user/1000/pulse): No such file or directory
PulseAudio connect failed (used only for Mic Volume Control) with error: Access denied
Installing breakpad exception handler for appid(steam)/version(1508910373)
sh: /home/jordan/.local/share/Steam/ubuntu12_32/../ubuntu12_64/gldriverquery: No such file or directory
crash_20171029211758_1.dmp[13158]: Uploading dump (out-of-process)
/tmp/dumps/crash_20171029211758_1.dmp
/home/jordan/.local/share/Steam/steam.sh: line 941: 13138 Segmentation fault (core dumped) $STEAM_DEBUGGER "$STEAMROOT/$STEAMEXEPATH" "$@"
crash_20171029211758_1.dmp[13158]: Finished uploading minidump (out-of-process): success = yes
crash_20171029211758_1.dmp[13158]: response: CrashID=bp-c122314a-3bb5-4654-8443-782e22171029
crash_20171029211758_1.dmp[13158]: file ''/tmp/dumps/crash_20171029211758_1.dmp'', upload yes: ''CrashID=bp-c122314a-3bb5-4654-8443-782e22171029''
pulseaudio was never installed, but libpulse was pulled as a dependency.
Offline
Searching for the web I found this: https://eocanha.org/blog/2013/12/19/usi … vironment/
Maybe the problem is because the graphic driver.
Offline
Coxie: Use "CODE" tags for output, not "QUOTE" tags.
Also -- and this is opinion only -- you are not really accomplishing anything by not using 32-bits libs with your 64-bit install. It's just a fact that 64-bit systems sometimes run 32-bit-only software. If a software application doesn't NEED to be 64-bit, compiling it as such is just wasting memory.
Matt
"It is very difficult to educate the educated."
Offline
About the graphics driver, I have nvidia drivers installed. When running "lspci -nnk | grep -i vga -A3 | grep 'in use'" I get:
[jordan@archpc ~]$ lspci -nnk | grep -i vga -A3 | grep 'in use'
lspci: Unable to load libkmod resources: error -12
Kernel driver in use: nvidia
Kernel driver in use: snd_hda_intelAfter reading the link you posted I decided to try changing "groups" in /etc/schroot/schroot.conf from "users" to "root" so my new config looks like this:
[Arch32]
type=directory
profile=arch32
description=Arch32
directory=/opt/arch32
users=user1,user2,user3,jordan
groups=root
root-groups=root
personality=linux32
aliases=32,defaultAnd I am once again able to load steam using "schroot -c Arch32 -p -q steam" and was able to to install and run Counter-Strike and play in a server. I was also able to exit steam and reload it, and my login info was saved.
However, I still have an error with PulseAudio:
Failed to create secure directory (/run/user/1000/pulse): No such file or directoryInstead of mounting everything before running schroot, I decided to add the following to /etc/schroot/default/fstab as per the link you posted:
/var/lib/dbus /var/lib/dbus none rw,bind 0 0
/home/jordan/.config/pulse /home/jordan/.config/pulse none rw,bind 0 0
/home/jordan/.pulse /home/jordan/.pulse none rw,bind 0 0
/run/user/1000 /run/user/1000 none rw,bind 0 0Running Steam gives the following output. I'm still able to load steam and play counter-strike, but there's no sound.
[jordan@archpc ~]$ schroot -c Arch32 -p steam
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
Running Steam on arch 32-bit
/home/jordan/.local/share/Steam/steam.sh: line 154: VERSION_ID: unbound variable
STEAM_RUNTIME is enabled automatically
Pins up-to-date!
Installing breakpad exception handler for appid(steam)/version(1508910373)
...
Installing breakpad exception handler for appid(steam)/version(1508910373)
Failed to create secure directory (/run/user/1000/pulse): No such file or directory
PulseAudio connect failed (used only for Mic Volume Control) with error: Access denied
Installing breakpad exception handler for appid(steam)/version(1508910373)
sh: /home/jordan/.local/share/Steam/ubuntu12_32/../ubuntu12_64/gldriverquery: No such file or directory
Generating new string page texture 7: 128x256, total string texture memory is 131.07 KB
...
Generating new string page texture 14: 32x256, total string texture memory is 589.82 KB
Installing breakpad exception handler for appid(steam)/version(1508910373)
Installing breakpad exception handler for appid(steam)/version(1508910373)
(steam:14754): libappindicator-WARNING **: Unable to get the session bus: Could not connect: No such file or directoryIt's interesting that I'm getting "No such file or directory" instead of "permission denied". Also, I'm wondering why changing groups from "users" to "root" allows me to run steam now, especially considering steam usually doesn't let you run it as root.
I should also mention that /var/lib/dbus, /home/jordan/.pulse, and /run/user/1000 are all nonexistent or empty in the chroot (/run/user/1000 exists outside of chroot, /home/jordan/.pulse does not, /var/lib/dbus exists but is empty). After running mount to see what's mounted, those directories do not show up:
[root@archpc jordan]# mount
/dev/sdb3 on / type ext4 (rw,relatime,data=ordered)
proc on /proc type proc (rw,relatime)
dev on /dev type devtmpfs (rw,nosuid,relatime,size=4065196k,nr_inodes=1016299,mode=755)
tmpfs on /dev/shm type tmpfs (rw,relatime)
sys on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev)
/dev/sdb3 on /home type ext4 (rw,relatime,data=ordered)So something is causing those directories not to be mounted, although I'm not sure why. The /etc/schroot/default/fstab file states that the mount point will be prefixed by the chroot path (CHROOT_PATH) though echo $CHROOT_PATH shows empty and "set" also shows nothing for CHROOT (there are some schroot env variables but nothing for PATH). I should also mention that PulseAudio is not installed in the chroot.
Last edited by Coxie (2017-10-30 17:04:45)
Offline
Have you tried to play a song or music in the schroot?
I think you need also to add /var/run yo your fstab
/var/run/ /var/run none rw,bind 0 0On the other hand, I don't know how exactly the schroot works, but I think schroot get limited by the hosts system on permissions. Maybe changing from user to root mean to execute the chroot enviroment as root instead of your user.
For the mounting problems maybe is because some error. Have you tried to mount them manually?
Offline
I have tried mounting manually, actually. Mounting /run/user/1000 gives the error that the mountpoint doesn't exist in the chroot (there's no /opt/arch32/run/user/1000). I wonder if running some type of pulseaudio config would generate the directory, or if I'll need to manually create it.
Offline
Try to manually create the directory /opt/arch32/run/user/1000 inside the chroot.
Offline
That is a runtime directory that will be created when your session is up you shouldn't create it manually and it will likely not persist.You might want to read https://www.freedesktop.org/wiki/Softwa … #index37h3 for proper guidance on how to enable pulseaudio from the chroot.
That being said, if your whole reason to install in a 32bit chroot is to not "mess up" your system with multilib libraries, you will make your life much easier if you stop having the notion that multilib libraries are somehow bad for your system, they are not. In fact you will run an outdated stack soon since i686 support is going away and this will likely break in much worse fashion sooner rather than later. If your actual goal is to isolate steam due to security concerns, you might want to try the flatpak version of steam or firejail or a 64bit chroot (but that would feel like an overkill)
Offline
I played around with flatpak yesterday actually. Was able to install steam and run a couple of games without any problems (sound works). I read that there are issues with certain games not working properly, but the few games I tried (one of which was on the list) seemed to work fine. Later today I'll try a couple more games and if those work (as well as login info being saved and saved games loading successfully) then I'll probably just abandon the schroot method.
I've been avoiding multilib because i want to say I've had issues with 32-bit libraries in the past. I don't know what the circumstances were or what problems were occurring. I would really like to start setting up wine soon though, so I may end up enabling it anyway unless there's a way to use chroot without using i686.
Offline
"In the past" is seldom a good measurement for avoiding something in an as quickly changing landscape as computer software. Something that is completely unusable yesterday could have received an update today that made it work just fine. Unless you actively break something (i.e. globally set a LD_LIBRARY_PATH overrides to 32 paths and watching your system burn) 32bit libraries can happily coexist along 64bit libraries (which is why and how a multilib repo exists in the first place)
Offline