Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/bash
- # hl2-optimus.sh
- # hl2.sh modified for Source games and optirun/primusrun
- # http://steamcommunity.com/groups/LinuxOptimus
- #
- # EXPERIMENTAL!
- # Version: 12/12/12-B
- # Valve's stuff goes here
- GAMEROOT=$(cd "${0%/*}" && echo $PWD)
- STEAMPATH=$(readlink ~/.steampath)
- export LD_LIBRARY_PATH="${GAMEROOT}"/bin:$LD_LIBRARY_PATH
- if [ ! -z ${STEAMPATH} ]; then
- export LD_LIBRARY_PATH="$(dirname ${STEAMPATH})":$LD_LIBRARY_PATH
- fi
- ulimit -n 2048
- export __GL_THREADED_OPTIMIZATIONS=1
- cd "$GAMEROOT"
- # Our library path
- export LD_LIBRARY_PATH=$(cd ../../.. && echo $PWD)/ubuntu12_32:$LD_LIBRARY_PATH
- # Guess game and id
- if [ -d tf_beta ]; then
- gameid=520
- game="-game tf_beta"
- elif [ -d tf ]; then
- gameid=440
- game="-game tf"
- elif [ -d hl2mp ]; then
- gameid=320
- game="-game hl2mp"
- elif [ -d lostcoast ]; then
- gameid=340
- game="-game lostcoast"
- elif [ -d episodic ]; then
- gameid=380
- game="-game episodic"
- elif [ -d ep2 ]; then
- gameid=420
- game="-game ep2"
- elif [ -d hl1 ]; then
- gameid=280
- game="-game hl1"
- elif [ -d portal ]; then
- gameid=400
- game="-game portal"
- elif [ -d portal2 ]; then
- gameid=620
- game="-game portal2"
- elif [ -d left4dead ]; then
- gameid=500
- game="-game left4dead"
- elif [ -d left4dead2 ]; then
- gameid=550
- game="-game left4dead2"
- elif [ -d cstrike_beta ]; then
- gameid=260
- game="-game cstrike_beta"
- elif [ -d cstrike ]; then
- gameid=240
- game="-game cstrike"
- elif [ -d dodsbeta ]; then
- gameid=302
- game="-game dodsbeta"
- elif [ -d dod ]; then
- gameid=300
- game="-game dod"
- elif [ -d garrysmod ]; then
- gameid=4000
- game="-game garrysmod"
- elif [ -d garrysmodbeta ]; then
- gameid=4010
- game="-game garrysmodbeta"
- elif [ -d hl2 ]; then
- echo "Warning: Only hl2 game folder detected. Guessing you want hl2."
- gameid=220
- game=""
- else
- echo "Could not find a valid game."
- exit
- fi
- # Allow user to decide vblank_mode
- # Disabled by default due to input lag for some people
- if [ -z $vblank_mode ]; then
- vblank_mode=0
- fi
- # Check if user has force disabled primus
- if [ -z $use_primus ]; then
- use_primus=1
- fi
- # Make sure primus is installed
- if [ $use_primus -eq 1 ]; then
- if command -v primusrun &>/dev/null; then
- echo "Primus has been detected and will be used. Launch with 'use_primus=0 $0' to disable."
- echo "Try disabling if you experience stuttering, graphical/font glitches, or other issues."
- use_primus=1
- else
- use_primus=0
- fi
- fi
- # Place guessed id to steam_appid.txt
- # Needed when launching away from Steam
- echo $gameid>steam_appid.txt
- # Launch!
- if [ $use_primus -eq 1 ]; then
- vblank_mode=$vblank_mode primusrun ./hl2_linux $game -steam -novid "$@"
- else
- optirun ./hl2_linux $game -steam -novid "$@"
- fi
- # Remote steam_appid.txt in case it was guessed wrong
- rm steam_appid.txt
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement