You can view the source code in Mira's Bazaar repository (hosted by Launchpad) using our web-based Bazaar browsing system, powered by loggerhead.
If you wish to build Mira from its source code and perhaps work on it, you will need to set up your programming environment accordingly. Please see our instructions on which software and libraries to install for either Windows or Linux.
To download the latest version of Mira you will need to use a program called Bazaar (bzr). If this program is not already installed and the instructions below fail for you, please see our guide on installing Bazaar.
If you are using Linux or a UNIX-based Operating System, run the following commands from a terminal window:
mkdir ~/mira cd ~/mira bzr branch lp:mira/trunk
If you don't want to check out the whole revision history (and make the checkout much faster) you can use the following bzr command instead:
bzr co --lightweight lp:mira/trunk
The build process can get quite messy because it creates a lot of files, so we recommend creating separate build directories outside the Mira branch, such as the following:
mkdir ~/mira/build-client/ mkdir ~/mira/build-server/
Now, to build and run the latest version of the Mira Client, you could run:
cd ~/mira/build-client/ cmake ../trunk/mira-client/ make ./bin/mira-client
Then, to build and run the latest version of the Mira Server:
cd ~/mira/build-server/ cmake ../trunk/mira-server/ make ./bin/mira-server
Please read our testing process instructions for information on how Mira's developers conduct tests on the project's code.
To check the current list of bugs, please see our bug tracker. To submit a bug report, please first check that the bug you wish to submit is not already known and, if it is not, then we would appreciate it if you could report it in as much detail as possible.
If you wish to contribute code or patches to Mira's client or server you must first complete and submit our Individual Contributor Licence Agreement form. This does not apply to the development of Mira Utilities, the documentation for which can be found here.
Once you have completed this form, you will be granted commit access to Mira's repository and be able to check in patches and code. Before you can push your changes to Mira's repository, you will need to configure Bazaar and your Launchpad account appropriately.
If you haven't already done so, visit Launchpad and create an account. Once you have done that, you will need to create an SSH key pair to use with Launchpad - this will be used to secure your Bazaar connection to the Launchpad server.
Finally, make sure Bazaar knows who you are by running the following commands (make sure to replace the details with your own):
bzr whoami 'My Name <my.name@mailserver.com>' bzr launchpad-login yourLaunchpadUsername
You are now ready to commit your changes to Mira's repository. For more information, please read the Using Bazaar with Launchpad tutorial or the Useful Bazaar Techniques for Developers page.
Mira's developers follow a selection of coding guidelines in order to maintain consistency throughout the source code. If you wish to contribute to Mira - and would like us to merge your contribution with the project's code as soon as possible - it is thoroughly advisable to follow our coding standards, whose text is available here.
Mira has registered the #mira channel on the FreeNode.net network. To connect to the network, use an IRC client such as xChat (Linux), mIRC (Windows) or Colloquy (Mac OS X).
If you would like to discuss some code which you have written, or perhaps an aspect of Mira's development or a feature which you would like to see implemented in Mira then please do not hesistate to join our IRC channel!
We have scheduled IRC sessions to discuss certain development topics. These sessions are all archived for future reference.
Another discussion medium which some prefer to the forum is Mira's development mailing list, and you'll probably find that most of the active discussions are conducted on the mailing list but the final decisions are announced on the discussion forums.
To subscribe to Mira's development mailing list, please visit this website and follow the instructions: Mira-Development mailing list
If, on the other hand, you would just like to hear announcements when a new version of Mira is announced or a milestone is achieved, please subscribe to Mira's Notification List instead.
Our developers also use the proprietary Voice over IP and Instant Messaging client Skype from time to time to have conference calls to discuss features which all of the developers must be absolutely clear about, or just to have a casual chat whether the topic of focus is Mira or not.
We also archive our notes from the conferences for future reference.
Discussion