A quick strace on steam reveals its doing it in the worst possible way:
getuid32() -> getpwuid()

Because I actually have a impending use for changing this, I wrote a 
dirty hack to let you change this with an env var:
http://infernalsoul.net/Junk/Dump/ffff.c

compile with:
     gcc -m32 -fPIC ffff.c -shared -Wl,-soname,ffff.so -o ffff.so

place in folder with steam and use with:

export LD_LIBRARY_PATH="/path/to/steam:$LD_LIBRARY_PATH"
export FFFF_OVERRIDE_HOME="/directory/steam/should/use/as/home"
env LD_PRELOAD="ffff.so" /path/to/steam/steam -command update etc ...

example:

cd ~/hlds/
export LD_LIBRARY_PATH=".:$LD_LIBRARY_PATH"
export FFFF_OVERRIDE_HOME="$PWD/srv1"
env LD_PRELOAD="ffff.so" ./steam -command update -dir srv1 -game tf

- Neph

On 12/13/2009 08:12 AM, Thomas Hjorth wrote:
> Thanks, but it doesnt work either...
>
> in hlds_run i have added ->
> export HOME=$(pwd)
> export STEAMHOME=$(pwd)
> echo $HOME
> echo $STEAMHOME
>
> Using hlds_rnu + args gives me this ->
>
> /home/gamesrv1
> /home/gamesrv1
> Auto detecting CPU
> Using Pentium II Optimised binary.
> Auto-restarting the server on crash
> Updating server using Steam.
> Checking bootstrapper version ...
> Failed to create directory /home/hldsuser/.steam
> Sun Dec 13 17:06:03 CET 2009: Steam Update failed, ignoring.
>
> So hlds_run doesnt care for $HOME nor $STEAMHOME
> Its still looking into /home/hldsuser which I removed for the purpose of
> debugging...
>
> So, and other ideas about setting a users homedir, which hlds_run will
> honor?
>
> ./Thomas
>
>
> On Sun, 2009-12-13 at 22:02 +0800, Shane Arnold wrote:
>    
>> STEAMHOME = `pwd`<= current working directory
>> STEAMHOME = /path/to/home
>>
>> echo '$STEAMHOME is the current path'
>>
>> On 13/12/2009 9:20 PM, Thomas Hjorth wrote:
>>      
>>> Hi all
>>>
>>> I tried setting $HOME in a number of ways... latest was adding an
>>> "export HOME=$(pwd)" in the beginning of hlds_run, but it still goes
>>> with the users regular $HOME, which means that all the server started
>>> with the same user is fighting about the same $HOME/.steam folder.
>>>
>>> Any ideas to set $HOME correctly or force hlds_run to use a specific
>>> homedir?
>>>
>>> Regards
>>> Thomas Hjorth
>>> DSRack.com
>>>
>>>
>>>
>>> _______________________________________________
>>> To unsubscribe, edit your list preferences, or view the list archives, 
>>> please visit:
>>> http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>>>
>>>        
>> _______________________________________________
>> To unsubscribe, edit your list preferences, or view the list archives, 
>> please visit:
>> http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>>      
>
> _______________________________________________
> To unsubscribe, edit your list preferences, or view the list archives, please 
> visit:
> http://list.valvesoftware.com/mailman/listinfo/hlds_linux
>    


_______________________________________________
To unsubscribe, edit your list preferences, or view the list archives, please 
visit:
http://list.valvesoftware.com/mailman/listinfo/hlds_linux

Reply via email to