Getting started

Start by following the getting started guide for users. After following that guide, you should have the LSR source and its dependencies on your system and lsr will be installed.

Developing new extensions

To develop new extension perks, devices and monitors, run the installed LSR and use the command line switches to register a new extension, create a profile, associate an extension with a profile, etc. The extension source will be in the user home directory. See the GaimPerkTutorial for an example of Perk development.

Running without installing for core development

You do not need to install LSR to develop and test it. In fact, installing, making a code change, and reinstalling defeats a core benefit of using an interpreted language: no compile step! Running from the source directory is the best approach when developing the core and will do everything an installed copy does. To work this way, check out lsr from SVN, run autogen and make and then

cd lsr/src
chmod +x AEMain.py
./AEMain.py --init-global
./AEMain.py --init-profiles
./AEMain.py -p developer # to run under the devel profile, for example

Subsequently make your code changes and then run the AEMain.py again.

Remember to run the autogen.sh script before trying to run AEMain.py. If you forget this step, some of the .py source files will be missing since they are generated from .py.in files by autotools.

Choosing an IDE

The use of a integrated development environment (IDE) for Python is a matter of taste. Some Python developers prefer the use of a common text editor over a bulky environment to keep the code-run-test-fix cycle short and simple. Others believe that an IDE with a good debugger and code browser can save time locating bugs, navigating between code components, and getting an overview of the whole project. Both approaches have advantages and disadvantages. You should choose a setup that works best for you. The following are some resources for choosing a Python IDE:

IDE Configuration

IDEs such as Wing will need to have their Python Path (sys.path) set so that LSR's imported modules and packages are found. This can be achieved by specifying an absolute (full) path to ..../lsr/src. e.g. '/home/steve/projects/lsr/src'.

Attic/LSR/DevelopmentSetup (last edited 2013-11-21 22:56:10 by WilliamJonMcCann)