DOC: slightly shorten and re-structure the "Contributing" tutorial
- prefer lower headline levels, more structuring - turn some headlines into bullet lists - cross-link to the "Building Lumiera" tutorial
This commit is contained in:
parent
a2c27dbcaa
commit
39230436a3
4 changed files with 67 additions and 77 deletions
|
|
@ -24,7 +24,7 @@ This proposal stems from an discussion on the Mailinglist starting with the
|
||||||
quote from Walter Murch "Marble and Clay".
|
quote from Walter Murch "Marble and Clay".
|
||||||
+
|
+
|
||||||
It is thought to be in support and to complement nasa's
|
It is thought to be in support and to complement nasa's
|
||||||
[wiki:self:../DelectusShotEvaluator Delectus Shot Evaluator]
|
link:DelectusShotEvaluator.html[Delectus Shot Evaluator]
|
||||||
|
|
||||||
The central Idea is to remove the difference between "viewing", i.e. the media
|
The central Idea is to remove the difference between "viewing", i.e. the media
|
||||||
viewer and the timeline/Sequence on the other hand. Lumiera is designed to
|
viewer and the timeline/Sequence on the other hand. Lumiera is designed to
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
Documentation
|
Documentation
|
||||||
=============
|
=============
|
||||||
|
|
||||||
// Menu : append child 'doxy'
|
|
||||||
|
|
||||||
This documentation section contains documentation for both users and developers.
|
This documentation section contains documentation for both users and developers.
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -48,9 +48,9 @@ libraries to link against. These packages are ususally named `-devel` or `-dev`.
|
||||||
For Debian based systems, e.g. Ubuntu, you can install these packages as follows:
|
For Debian based systems, e.g. Ubuntu, you can install these packages as follows:
|
||||||
|
|
||||||
-------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------
|
||||||
sudo apt-get install build-essential autoconf scons valgrind libtool git-core \
|
sudo apt-get install build-essential scons git-core valgrind intltool \
|
||||||
libboost-dev libboost-program-options-dev libboost-regex-dev libboost-filesystem-dev \
|
libboost-dev libboost-program-options-dev libboost-regex-dev libboost-filesystem-dev \
|
||||||
libgavl-dev libgdl-1-dev libgtkmm-2.4-dev librsvg2-dev libxv-dev
|
libgavl-dev libgtkmm-2.4-dev librsvg2-dev libxv-dev
|
||||||
-------------------------------------------------------------------------------------
|
-------------------------------------------------------------------------------------
|
||||||
|
|
||||||
Optionally, you may also want to install the *gtk2-engines* package.
|
Optionally, you may also want to install the *gtk2-engines* package.
|
||||||
|
|
|
||||||
|
|
@ -2,54 +2,57 @@ Contributing to Lumiera
|
||||||
=======================
|
=======================
|
||||||
:Author: Benny <Benny.Lyons@gmx.net>
|
:Author: Benny <Benny.Lyons@gmx.net>
|
||||||
:Date: Oct 2013
|
:Date: Oct 2013
|
||||||
|
:toc:
|
||||||
|
|
||||||
|
|
||||||
Introduction
|
|
||||||
------------
|
|
||||||
|
|
||||||
This document is aimed at helping newcomers to contribute quickly to the
|
This document is aimed at helping newcomers to contribute quickly to the
|
||||||
project.
|
project.
|
||||||
|
|
||||||
There are two major obstacles faced by people new to Lumiera:
|
There are two major obstacles faced by people new to Lumiera:
|
||||||
|
|
||||||
- _how_ can I contribute to Lumiera
|
- _how_ can I contribute to Lumiera
|
||||||
- _where_, i.e., in which areas of Lumiera, can I contribute
|
- _where_ can I contribute, i.e., in which areas of Lumiera.
|
||||||
|
|
||||||
Git plays a fundamental role in Lumiera. It features as one of the main
|
Git plays a fundamental role in Lumiera. It features as one of the main
|
||||||
methods in making contributions to Lumiera. For this reason we provide a
|
methods in making contributions to Lumiera. For this reason we provide a
|
||||||
short Lumiera specific introduction on Git. This is less of a Git introduction,
|
short Lumiera specific introduction on Git. This is less of a Git introduction,
|
||||||
and more of how-to-obtain Lumiera code and publish your changes to the Lumiera
|
and more of how-to-obtain Lumiera code and publish your changes to the Lumiera
|
||||||
community. While Git is not the only means of making your contributions
|
community. While Git is not the only means of making your contributions
|
||||||
avialable to the project, it is the method of choice if you were to become more
|
available to the project, it is the method of choice if you were to become more
|
||||||
involved in the project. Of course, cou may also post your work to the
|
involved in the project. Of course, you may also post your work to the
|
||||||
Lumiera mailing list, or simply ask one of the regular developers.
|
Lumiera mailing list, or simply ask one of the regular developers.
|
||||||
|
|
||||||
Lumiera is an ambituous project. While many areas of the project are involved and
|
Lumiera is an ambitious project. While many areas of the project are involved and
|
||||||
require considerable experience, some sections require less experience whereas
|
require considerable experience, some sections require less experience whereas
|
||||||
certain aspects might be ideal to new programmers. Thus we attempt here to
|
certain aspects might be ideal to new programmers. Thus we attempt here to
|
||||||
describe a number of areas in the project to assist you in selecting an area in
|
describe a number of areas in the project to assist you in selecting an area in
|
||||||
which you might like to make a contribution.
|
which you might like to make a contribution.
|
||||||
Of course, you are more than welcome--and even encouraged--to select other areas
|
Of course, you are more than welcome--and even encouraged--to select other areas
|
||||||
in Lumiera toawards which you would like to contribute.
|
in Lumiera towards which you would like to contribute.
|
||||||
|
|
||||||
|
|
||||||
|
How to contribute to Lumiera
|
||||||
|
----------------------------
|
||||||
|
|
||||||
Git: Essentials for Lumiera
|
Git: Essentials for Lumiera
|
||||||
---------------------------
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
All files in the Lumiera project are managed by *Git*. Although Git was
|
All files in the Lumiera project are managed by *Git*, the distributed sourcecode
|
||||||
primarily brought to life to manage source code, it plays a fundamental role in
|
management software. Although Git was primarily brought to life to manage source
|
||||||
the Lumiera project. It is central to communication and contribution in the
|
code, it plays a fundamental role in the Lumiera project. It is central to
|
||||||
project. If you'd like to contribute to Lumiera, you will have to acquire some
|
communication and contribution in the project. If you'd like to contribute to
|
||||||
understanding of Git at some stage or other. Please note, this is not the only
|
Lumiera, you will have to acquire some understanding of Git at some stage or
|
||||||
way to contribute to Lumiera, you can always send direct contributions to the
|
other. Please note, this is not the only way to contribute to Lumiera, you can
|
||||||
mailing list.
|
always send direct contributions to the mailing list.
|
||||||
|
|
||||||
The Lumiera project uses an infrastructure based on *Git*, the distibuted
|
The Lumiera project uses an infrastructure based on Git. This deliberately
|
||||||
sourcecode management software. This deliberately places the barrier for
|
places the barrier for contributing very low: Everyone works on his own
|
||||||
contributing very low: No formal ``commit permission'' is necessary; you can
|
repository, no formal ``commit permission'' is necessary; you can start
|
||||||
start right away and present your first results to the _mob repository_.
|
right away and present your first results to the _mob repository_.
|
||||||
|
|
||||||
One very useful place to begin with using Git is the following:
|
First steps with Git
|
||||||
link:http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html[basic Git tutorial at Kernel.org].
|
^^^^^^^^^^^^^^^^^^^^
|
||||||
|
One very useful place to begin with learning Git is the
|
||||||
|
link:http://www.kernel.org/pub/software/scm/git/docs/gittutorial.html[basic Git tutorial at Kernel.org]. +
|
||||||
For more specific questions, you might consulte a link:http://gitref.org/[Git reference]
|
For more specific questions, you might consulte a link:http://gitref.org/[Git reference]
|
||||||
|
|
||||||
In the following, we assume you have set up Git on your system. If you are
|
In the following, we assume you have set up Git on your system. If you are
|
||||||
|
|
@ -57,7 +60,7 @@ experiencing problems with Git, just ask the Lumiera community.
|
||||||
|
|
||||||
|
|
||||||
Letting People Know Who You Are
|
Letting People Know Who You Are
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
$ git config --global user.name "Your Name Comes Here"
|
$ git config --global user.name "Your Name Comes Here"
|
||||||
|
|
@ -65,32 +68,40 @@ $ git config --global user.email you@yourdomain.example.com
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
Obtaining Lumiera Code
|
Obtaining Lumiera Code
|
||||||
~~~~~~~~~~~~~~~~~~~~~~
|
^^^^^^^^^^^^^^^^^^^^^^
|
||||||
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
$ git clone git://git.lumiera.org/LUMIERA
|
$ git clone git://git.lumiera.org/LUMIERA
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
If everything goes ok, you should have the Lumiera source code. However, you do
|
If everything goes ok, you should have the Lumiera source code. So the next step
|
||||||
not have enough code to build as there are some external packages missing that
|
will be to learn how to build Lumiera from source code. Please refer to the
|
||||||
are required to build Lumiera.
|
link:building.html[building-Lumiera tutorial] for a more in-depth description
|
||||||
|
of the necessary steps. The next section gives a brief summary of this process.
|
||||||
|
|
||||||
Obtaining Packages Required by Lumiera
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
Build Lumiera from source
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
Apart from the Lumiera source code, you'll require additional packages to build
|
Apart from the Lumiera source code, you'll require additional packages to build
|
||||||
Lumiera. These additional packages are of two kinds:
|
Lumiera. These additional packages are of two kinds:
|
||||||
|
|
||||||
- Packages not normally part of your distribution
|
Packages normally available with your distribution::
|
||||||
- Packages normally available with your distrubtion
|
for a Debian based system (including Mint, Ubuntu and similar flavours),
|
||||||
|
you should be able to install the necessary dependencies with the command
|
||||||
|
+
|
||||||
|
------------------------------------------------------------
|
||||||
|
sudo apt-get install build-essential scons git-core valgrind intltool \
|
||||||
|
libboost-dev libboost-program-options-dev libboost-regex-dev libboost-filesystem-dev \
|
||||||
|
libgavl-dev libgtkmm-2.4-dev librsvg2-dev libxv-dev
|
||||||
|
------------------------------------------------------------
|
||||||
|
Packages not normally part of your distribution::
|
||||||
|
there are two packages most likely not available with your operating system
|
||||||
|
distribution, so you'll need to obtain the source code for these packages
|
||||||
|
and compile them yourself:
|
||||||
|
|
||||||
There are two packages most likely not available with your operating system
|
- *NoBug* -- a diagnostics library
|
||||||
distribution, so you'll need to obtain the source code for these packages and
|
+
|
||||||
compile: +NoBug+ and +Gdl+.
|
|
||||||
|
|
||||||
|
|
||||||
NoBug
|
|
||||||
^^^^^
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
git clone git://git.pipapo.org/nobug
|
git clone git://git.pipapo.org/nobug
|
||||||
cd nobug
|
cd nobug
|
||||||
|
|
@ -100,9 +111,8 @@ mkdir build && cd build
|
||||||
make
|
make
|
||||||
sudo make install
|
sudo make install
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
- *GDL* -- a window docking library
|
||||||
Gdl
|
+
|
||||||
^^^
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
git clone git://git.lumiera.org/gdl-package
|
git clone git://git.lumiera.org/gdl-package
|
||||||
cd gdl-package
|
cd gdl-package
|
||||||
|
|
@ -111,43 +121,23 @@ make
|
||||||
sudo make install
|
sudo make install
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
Additional Packages
|
Start the Lumiera build process::
|
||||||
^^^^^^^^^^^^^^^^^^^
|
|
||||||
We'll describe obtaining the following packages for Debian, for other Linux
|
|
||||||
distributions, please refer to our mailing list.
|
|
||||||
|
|
||||||
------------------------------------------------------------
|
|
||||||
sudo apt-get install build-essential autoconf scons valgrind libtool git-core \
|
|
||||||
libboost-dev libboost-program-options-dev libboost-regex-dev libboost-filesystem-dev \
|
|
||||||
libgavl-dev libgdl-1-dev libgtkmm-2.4-dev librsvg2-dev libxv-dev
|
|
||||||
------------------------------------------------------------
|
|
||||||
|
|
||||||
|
|
||||||
Please refer to the
|
|
||||||
link:building.html[building-lumiera tutorial] on how to obtain all packages to
|
|
||||||
build Lumiera.
|
|
||||||
|
|
||||||
|
|
||||||
Building Lumiera
|
|
||||||
~~~~~~~~~~~~~~~~
|
|
||||||
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
cd LUMIERA
|
cd LUMIERA
|
||||||
scons
|
scons
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
If Lumiera is built correctly on your system, you should be able to shoot up
|
If Lumiera is built correctly on your system, you should be able to shoot up
|
||||||
the Lumiera GUI.
|
the Lumiera GUI with the command
|
||||||
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
cd target
|
target/lumiera
|
||||||
lumiera
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
Congratulations! Now we can move on to making contributions.
|
Congratulations! Now we can move on to making contributions.
|
||||||
|
|
||||||
Contributing Your Efforts to the Lumiera Community
|
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
|
Contribute your efforts to the Lumiera community
|
||||||
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
So you are ready to go.
|
So you are ready to go.
|
||||||
|
|
||||||
|
|
@ -186,7 +176,7 @@ Git to use emacs:
|
||||||
$ git config --global core.editor emacs
|
$ git config --global core.editor emacs
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
||||||
Then while commiting, do not use the +-m+ option. Your editor will appear,
|
Then while committing, do not use the +-m+ option. Your editor will appear,
|
||||||
after you issue the +git commit+ command, and prompt you to enter your comments.
|
after you issue the +git commit+ command, and prompt you to enter your comments.
|
||||||
Enter, as your first line, a one line summary of less than 60 characters in
|
Enter, as your first line, a one line summary of less than 60 characters in
|
||||||
length (some applications use this line for various purposes and longer entries
|
length (some applications use this line for various purposes and longer entries
|
||||||
|
|
@ -197,13 +187,13 @@ changes.
|
||||||
|
|
||||||
|
|
||||||
Publishing Your Contribution
|
Publishing Your Contribution
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||||
So all changes made up to now have been local to your own working environment.
|
So all changes made up to now have been local to your own working environment.
|
||||||
The next thing to do is to make your work available to the Lumiera community.
|
The next thing to do is to make your work available to the Lumiera community.
|
||||||
|
|
||||||
Check that you didn't break anything, by running the testsuite.
|
Check that you didn't break anything, by running the testsuite.
|
||||||
|
|
||||||
Finally you can +push+ your changes to the Lumiera server on the 'mob'
|
Finally you can *push* your changes to the Lumiera server on the 'mob'
|
||||||
repository:
|
repository:
|
||||||
|
|
||||||
------------------------------------------------------------
|
------------------------------------------------------------
|
||||||
|
|
@ -213,8 +203,9 @@ $ git push git://git.lumiera.org/lumiera/mob master:refs/heads/YOURNAME
|
||||||
This creates a new branch +YOURNAME+ on the mob repository.
|
This creates a new branch +YOURNAME+ on the mob repository.
|
||||||
|
|
||||||
Check that indeed your changes are public by visiting
|
Check that indeed your changes are public by visiting
|
||||||
link:http://Lumiera.org/gitweb[the Git-Web]. The lumiera/mob
|
link:http://Lumiera.org/gitweb[the Git-Web]: +
|
||||||
repository should indicate [green]#right now# as its ``Last Change'' entry.
|
The lumiera/mob repository should indicate
|
||||||
|
[green]#right now# as its ``Last Change'' entry.
|
||||||
|
|
||||||
Thereafter, notify the other developers on the mailing list and they may examine
|
Thereafter, notify the other developers on the mailing list and they may examine
|
||||||
your code into the main project line.
|
your code into the main project line.
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue