User Tools

Site Tools


projects:crazyflie:pc_utils:dev_guide

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
projects:crazyflie:pc_utils:dev_guide [2013-03-14 22:53]
macke
projects:crazyflie:pc_utils:dev_guide [2021-06-24 16:52] (current)
kimberly
Line 1: Line 1:
-====== Installing ====== +<WRAP center round important 60%> 
-===== Fedora ===== +This page has deprecated and will be archived. Please go to [[https://www.bitcraze.io/]]. 
-Tested with Fedora 16Note that this will pull in **lot** of dependencies.+</WRAP> 
 +====== PC utils development guide ====== 
 + 
 +===== Installing ===== 
 +This guide will help you get up and started with working with and contributing code to the Crazyflie Python Client: Getting the source code, installing it in your home profile for testing and contributing them back, if wished, to the source repository. 
 + 
 +==== Getting the source code ==== 
 +The sources for the Crazyflie Python client are hosted in a [[https://github.com/bitcraze/crazyflie-clients-python | Git repository on GitHub]]. In order to start working with them, visit the repository and make your own copy by forking it (button at the top right of the page)If you don't have a GitHub account, you may need to sign up for one. 
 + 
 +After forking the repository, you have a complete copy of the code and all its history on GitHub. You can clone this repository using Git: 
 <code> <code>
-sudo yum install qt-devel+git clone [[https://address_to_your_fork]]
 </code> </code>
  
-====== Coding standard ======+Git will make a subdirectory in the directory that you execute the command in and clone the repository there. 
 + 
 +==== Installing the sources in your home profile ==== 
 +When developing with the Crazyflie Python client, it is helpful to develop, run and test the code in a user profile rather than installing it with root permissions system-wide. This way you can test changes without needing to reinstall into root-owned directories. The best way to do this is to simply execute the Python client from its path where you're developing it. 
 + 
 +However, you might want to install the client like a "normal" program. To do this, you can either add the repository's bin/ folder to your search path or you can use the  Python setup script in the root folder of the repository: 
 + 
 +<code> 
 +python setup.py install --user 
 +</code> 
 + 
 +This installs the sources into your user profile (e.g. in ~/.local). If you want to be able to run the Python client, you can either execute it straight from the sources, or from the executable installed in your profile (e.g. ~/.local/bin/cfclient), or you can add the installation path to your profile's search path: 
 + 
 +<code> 
 +export PATH=$PATH:~/.local/bin  # Only valid if the binary is really installed here! 
 +</code> 
 + 
 +If you don't use the setup script, but want to be able to add the repository's bin folder to your search path, replace "~/.local/bin" with the corresponding folder in your repository. This path can be added permanently to your search path by adding the above line to your ~/.bashrc file. 
 + 
 +==== Testing changes ==== 
 +Now that everything's set to go, code away! Don't forget to test the code after you're done. If you used the setup script earlier on to install the Python client in your profile, just repeat the installation and the new sources will be used. 
 + 
 +==== Contributing your changed code ==== 
 +If you've tested your changes and everything's running well, you might want to contribute the code you've created back to the main repository. If you plan on doing this, remember to commit frequently and write descriptive commit messages that make merging easier later on. Then push the code back to your Git repository on GitHub with: 
 + 
 +<code> 
 +git push 
 +</code> 
 + 
 +The buttons on the top left left you compare the code you've written with Bitcraze's main repository. If you think that these changes are good for others too, you can open up a pull request and ask that the Bitcraze developers merge your code into the main development line. They'll review the code and, if they like it, pull it in. Congratulations, you've just contributed code to the Crazyflie Python Client! 
 + 
 +===== Coding standard =====
 Currently this code is pretty messy but it's being modified to follow [[http://www.python.org/dev/peps/pep-0008/|PEP-8]] and [[http://www.python.org/dev/peps/pep-0257/|PEP-257]]. See [[codingstandard:index#coding_standard_for_Python|coding standard]] for more info. Currently this code is pretty messy but it's being modified to follow [[http://www.python.org/dev/peps/pep-0008/|PEP-8]] and [[http://www.python.org/dev/peps/pep-0257/|PEP-257]]. See [[codingstandard:index#coding_standard_for_Python|coding standard]] for more info.
  
projects/crazyflie/pc_utils/dev_guide.1363298005.txt.gz · Last modified: 2015-07-15 16:30 (external edit)