## Bugs Please [[file bugs|https://bugs.launchpad.net/lightdm]] for problems/feature requests. ## Building from trunk Development is done on Launchpad. To check out the trunk branch you will need to [[install Bazaar|http://wiki.bazaar.canonical.com/Download]]. Building LightDM from trunk: bzr branch lp:lightdm cd lightdm ./autogen.sh make make install ## Contributing changes For committing changes back you will need a [[Launchpad account|https://help.launchpad.net/YourAccount/NewAccount]] (free) and to agree to the [[Canonical contributor license agreement|http://www.canonical.com/contributor-license-agreement]]. Making changes: bzr branch lp:lightdm my-branch-name cd my-branch-name (make changes) bzr commit bzr push lp:~my-lp-username/lightdm/my-branch-name Then go to https://code.launchpad.net/~my-lp-username/lightdm/my-branch-name and select "Propose for merging". Your merge proposal will be reviewed by the LightDM development team which often requires some changes to be made by you. You should push your updates to the same branch: bzr commit bzr push Once accepted your proposal will be merged by us into the LightDM trunk and be in the next release. Congratulations! ## Greeter Development To develop a greeter you write against the liblightdm library. Two variants are provided - one for GObject based projects and one for Qt based projects. Language bindings are provided for Vala and GObject introspection (i.e. Python, Javascript etc). For API documentation either install your distribution provided liblightdm development packages or see [[online documentation|http://people.ubuntu.com/~robert-ancell/lightdm/reference/]]. You can test greeters either by installing them or running `lightdm --test-mode` which allows you to run LightDM inside your session using Xephyr.