About Steam-Boiler

info:Download steam-boiler to install steam and boiler.
author:Erik Southworth
version:49.1
revision:September 08, 2012
description:Linux Reference Manual

What is Steam-Boiler?

Steam-Boiler is a package-friendly steam distribution. It is one part steam, Valve’s command-line tool for installing and updating game-servers on Linux and one part boiler, a wrapper script for steam that started as a simple run-wrapper and has since gained many features.

Also now with Steam Console Client (c) Valve Corporation.

Why was is written?

Mostly to have a package-friendly steam distribution for any game-server appliance that need be installed only once. Most software utilities only need to be installed on a system once. steam defies this principle with it’s auto-update feature, has many annoyances and behaves poorly in general.

Features

  • boiler requires only a single installation per host. It can be easily used from /usr or /usr/local and still maintains the ability to accept steam self-updates, (no SUID required). Each logon user has control of his own copy of the steam program.
  • The command-line interface is shorter and more flexible. If the command-line arguments are ordered, an update command can be as simple as steam update tf or steam update css.
  • boiler is compatible with standard steam command-line syntax too.
  • No more having to place steam into every server base directory. If envoked with -command update option argument, boiler will automatically create symlinks to represent a steam instance where usually needed next to the hlds_run or srcds_run run-scripts.
  • boiler can find and wipe the glob files. steam --wipe
  • boiler keeps those annoying steam debug messages silent.
  • boiler uses ionice IDLE class schuduler by default to minimize disk thrashing for other running gameservers. (Is this really needed?)
  • boiler will read and output the contents of the steam.inf files. steam version
  • boiler can be used to access both HldsUpdateTool and Steam Console Client (c) Valve Corporation.

And many more...

Requirements

A GNU/Linux or compatible system is needed.

There is nothing to compile, so no compilers are needed.

The following requirements are typically already provided on a Linux system. If the target system is of arch x86_64 the required libs for x86 may need to be installed if it not bi-arch already.

Installation
Requires:
  • A system with the Python programming language.
Boiler
Requires:
  • HldsUpdateTool(steam) ((provided))
  • Steam Console Client(steamcmd) ((provided))
  • coreutils
  • util-linux
  • findutils
HldsUpdateTool(Steam)
Requires:
  • abi: ELF32(SysV x86)
  • soname: ELF32/libc.so.6(SysV x86)
  • soname: ELF32/libdl.so.2(SysV x86)
  • soname: ELF32/libm.so.6(SysV x86)
  • soname: ELF32/libpthread.so.0(SysV x86)
  • uncompress(gzip)
  • tar

Installation

Installing is done by the following three commands:

$ ./configure
$ make
# make install (as root)

The default configure uses --prefix=/usr/local and this works fine. Run ./configure, with some options if you wish. The standard options are documented in the INSTALL file. The most interesting options to set are the usual --prefix=/usr.

For more configuration details run:

$ ./configure --help

If there are any errors during configuration, check your build environment and try to find the error, otherwise file a bug-report on the issue tracker or contact one of the authors.

These files will be installed.

  • ${bindir}/boiler
  • ${bindir}/steam -> ${bindir}/boiler (symlink)
  • ${pkgdatadir}/hldsupdatetool
  • ${mandir}/man6/steam.6
  • ${mandir}/man6/boiler.6

Usage

To run steam the legacy way, just type on a terminal:

$ steam -command CMD [-game NAME] [-dir PATH] [options]

There are a few command line options. See the manual page or run for details:

$ steam

Otherwise to run boiler just type on a terminal:

$ boiler <command> [game] [directory] [options]

There are a few command line options. See the manual page or run for details:

$ boiler --help

Or look into the documention in the doc/ directory.

Mostly, boiler is intended to be an alias for the steam command so, the preferred usage would be as follows:

$ steam <command> [game] [directory] [options]

And so on...You get the idea.

License

Boiler is distributed under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version. A copy of the license can be found in the file COPYING included with the source code of the program. If not, see <http://www.gnu.org/licenses/>.

The HldsUpdateTool(Steam) application (found in the subdirectory hldsupdatetool/) has its own license, which can be found in the file LICENSE included with the program.

Ideas, questions, patches and bug reports

Home page:
http://bitbucket.org/superstition/steam-boiler/wiki/
Primary distribution point:
http://bitbucket.org/superstition/steam-boiler/downloads/
Ideas, questions, patches and bug reports:
http://bitbucket.org/superstition/steam-boiler/issues/

If you add something, or fix a bug, please send a patch (in ‘diff -u’ format) to the issue tracker or one of the authors.

Typical Installation by Example

Assuming you have installed your favorite flavor of Linux and have logged in to a normal user account with ‘sudo’ admin priveleges. The following shell session demonstrates how a typical installation is accomplished. Open a shell terminal and follow these steps.

1. Make directory (if required) and change directory to where local system software downloads are to be stored. Here we call it ‘Source’.

  • $ mkdir -pv ~/Source/steam-boiler
  • $ cd ~/Source/steam-boiler
[~]$ mkdir -pv ~/Source/steam-boiler
mkdir: created directory `/home/user/Source/steam-boiler'
[~]$ cd ~/Source/steam-boiler
[steam-boiler]$

2. Download Steam-Boiler and unpack the tarball. The current release distribution archive is: steam-boiler-49.1.tar.bz2.

[steam-boiler]$ wget http://bitbucket.org/superstition/steam-boiler/downloads/steam-boiler-49.1.tar.bz2
--23:00:58--  steam-boiler-|version|.tar.bz2
           => `steam-boiler-49.1.tar.bz2'
Resolving bitbucket.org... 184.73.244.143
Connecting to bitbucket.org|184.73.244.143|:80... connected.
HTTP request sent, awaiting response... 302 FOUND
Location: http://cdn.bitbucket.org/superstition/steam-boiler/downloads/steam-boiler-49.1.tar.bz2 [following]
--23:00:58--  http://cdn.bitbucket.org/superstition/steam-boiler/downloads/steam-boiler-49.1.tar.bz2
           => `steam-boiler-49.1.tar.bz2'
Resolving cdn.bitbucket.org... 216.137.59.5, 216.137.59.30, 216.137.59.32, ...
Connecting to cdn.bitbucket.org|216.137.59.5|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 2,134,171 (2.0M) [application/x-tar]

100%[================================================================>] 2,134,171     83.74K/s    ETA 00:00

23:01:30 (66.71 KB/s) - `steam-boiler-49.1.tar.bz2' saved [2134171/2134171]

[steam-boiler]$ tar -xvf steam-boiler-49.1.tar.bz2
steam-boiler-49.1/
steam-boiler-49.1/doc/
steam-boiler-49.1/doc/html/
...
steam-boiler-49.1/hldsupdatetool/hldsupdatetool
steam-boiler-49.1/wscript
steam-boiler-49.1/THANKS
[steam-boiler]$

3. Change directory to where the distribution software was unpacked, configure the build settings, build the software and install Steam-Boiler.

  • $ cd steam-boiler-49.1
  • $ ./configure
  • $ make
  • $ sudo make install
[steam-boiler]$ cd steam-boiler-49.1
[steam-boiler-49.1]$ ./configure
Checking for WAF                         : /home/user/Source/steam-boiler/steam-boiler-49.1/waf
Checking for program find                : /usr/bin/find
Checking for program getopt              : /usr/bin/getopt
Checking for program install             : /usr/bin/install
Checking for program ln                  : /bin/ln
'configure' finished successfully (0.013s)
[steam-boiler-49.1]$ make
Waf: Entering directory `/home/user/Source/steam-boiler/steam-boiler-49.1/build'
[1/2] copy: src/boiler.in -> build/default/src/boiler
[2/2] true: src/steam.6 src/boiler.6
Waf: Leaving directory `/home/user/Source/steam-boiler/steam-boiler-49.1/build'
'build' finished successfully (0.049.1s)
[steam-boiler-49.1]$ sudo make install
/home/user/Source/steam-boiler/steam-boiler-49.1/waf install
Waf: Entering directory `/home/user/Source/steam-boiler/steam-boiler-49.1/build'
* installing hldsupdatetool/hldsupdatetool as /usr/local/share/steam-boiler/hldsupdatetool
* installing build/default/src/boiler as /usr/local/bin/boiler
* symlink /usr/local/bin/steam (-> boiler)
* installing src/steam.6 as /usr/local/share/man/man6/steam.6
* installing src/boiler.6 as /usr/local/share/man/man6/boiler.6
Waf: Leaving directory `/home/user/Source/steam-boiler/steam-boiler-49.1/build'
'install' finished successfully (0.149.1s)
[steam-boiler-49.1]$

Hint

configure also accepts some other, not widely useful, options. Run ./configure --help for more details.