Clarifies licensing for the project.
[mediagoblin.git] / docs / hackinghowto.rst
CommitLineData
00fdc7bd
WKG
1===============
2 Hacking HOWTO
3===============
4
56d507b6
WKG
5So you want to hack on GNU MediaGoblin
6======================================
7
8First thing to do is check out the Web site where we list all the
9project infrastructure including:
10
11* the mailing list
12* the IRC channel
13* the bug tracker
14
15Additionally, we have information on how to get involved, who to talk
16to, what needs to be worked on, and other things besides!
17
18
19How to set up an environment for hacking
20========================================
21
22The following assumes you have these things installed:
23
241. virtualenv:
25
26 http://pypi.python.org/pypi/virtualenv
27
282. virtualenv wrapper:
29
30 http://www.doughellmann.com/projects/virtualenvwrapper/
31
323. git:
33
34 http://git-scm.com/
35
36
37Follow these steps:
38
391. clone the repository::
40
41 git clone http://git.gitorious.org/mediagoblin/mediagoblin.git
42
432. create a virtual environment::
44
45 mkvirtualenv mediagoblin
46
473. if that doesn't put you in the virtual environment you created,
48 then do::
49
50 workon mediagoblin
51
524. run::
53
54 python setup.py develop
55
56
57When you want to work on GNU MediaGoblin, make sure to enter your
58virtual environment::
59
60 workon mediagoblin
61
62Any changes you make to the code will show up in your virtual
63environment--there's no need to continuously run ``python setup.py
64develop``.
65
66
67Running the test suite
68======================
69
70Run::
71
72 python setup.py test
73
74
75Creating a new file
76===================
77
908dee6b 78All new files need to have license/copyright information.
56d507b6 79
908dee6b 80The following kinds of files get the GNU AGPL header:
56d507b6 81
908dee6b
WKG
82* Python files
83* JavaScript files
84* templates
85* other files with code in them
56d507b6 86
908dee6b 87The following files get a CC BY header:
56d507b6 88
908dee6b 89* CSS files
56d507b6 90
908dee6b
WKG
91The following files don't get a header because that's hard, but are
92under the CC BY license:
93
94* image files
95* video files