File:  [DVB] / linuxtv.org / repo / repo.html
Revision 1.9: download - view: text, annotated - select for diffs
Wed Jul 8 14:30:45 2015 UTC (8 years, 11 months ago) by mchehab
Branches: MAIN
CVS tags: HEAD
Update files

<h1>
Public Git, Mercurial and CVS Access
<br><font size=1>[ <a href=#main>main</a>| <a href=#git>git</a> | <a href=#mercurial>mercurial</a> | <a href=#cvs>cvs</a> | <a href=#build>build</a> ]</font>
</h1>

<a name=main></a>
<h2>Access main repositories via web browser</h2>

<p>The <a href="http://git.linuxtv.org/cgit.cgi/media_tree.git">media tree</a>
contains the latest drivers for V4L/DVB and Remote Controller.</p>
<p>The <a href="http://git.linuxtv.org/cgit.cgi/v4l-utils.git">v4l-utils tree</a>
contains the latest libv4l and other userspace tools for V4L/DVB and Remote 
Controllers.</p>
<p>The <a href="http://git.linuxtv.org/cgit.cgi/dtv-scan-tables.git/">dtv scan tables tree</a> 
contains the latest digital TV physical channel/transponders files used for digital TV applications.</p>
<p>The <a href="http://git.linuxtv.org/cgit.cgi/tvtime.git">TVtime tree</a> 
contains the latest version of TVtime userspace 
application.</p>
<p>The <a href="http://git.linuxtv.org/cgit.cgi/xawtv3.git">xawtv3 tree</a> 
contains the latest version of xawtv version 3 userspace 
application.</p>
<p>The <a href="http://git.linuxtv.org/cgit.cgi/xawtv4.git">xawtv4 tree</a>
contains the latest version of xawtv version 4 userspace 
application.</p>

<p>The <a href="http://git.linuxtv.org/cgit.cgi/media_build.git">media build tree</a>
contains a building system that allows its compilation with older kernels, 
for <b>test</b>, plus a system to download the latest drivers.
Don't use it for production, as the backport procces is to
just check if compilation doesn't break with older kernels. The drivers might
not work properly, as they're not consistently tested on older kernels.</p>

<p>All the above repositories, plus other repositories with developer experimental trees are available at:
<a href=http://git.linuxtv.org/cgit.cgi/>http://git.linuxtv.org</a>.</p>
<p>Legacy developer repositores are available at:
<a href="http://linuxtv.org/hg">http://linuxtv.org/hg</a>,
<a href="http://linuxtv.org/cgi-bin/viewvc.cgi/">http://linuxtv.org/cgi-bin/viewvc.cgi/</a> and
<a href="http://linuxtv.org/cgi-bin/viewvc.cgi/?root=v4l">http://linuxtv.org/cgi-bin/viewvc.cgi/?root=v4l</a>.
</p>

<a name=git></a>
<h2>Checkout of a git repository</h2>

<p>The procedure to retrieve a git repository is generally described together with
the corresponding repository.</p>

<p>In order to get the latest sources from git from a drivers tree, you need to 
first clone from Linus git tree, and then add a remote pointing to the tree yo
need.</p>
<p>
For example, to clone the master development repository, 
install <a href="http://www.kernel.org/pub/software/scm/git/">git</a>, and run:</p>
<pre>
	git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git media
	cd media
	git remote add linuxtv git://linuxtv.org/media_tree.git
	git remote update
	git checkout -b media-master linuxtv/master
</pre>
<p>If you want to clone a different repository, just replace the URL at the
<blockquote>
<code>git remote add</code> line above.</p>
</blockquote>
In order to update your repository, you should do:
<pre>
        git remote update
	git pull . linuxtv/master
</pre>
<p>And to put your work on the top of a stanging branch:</p>
<pre>
	git rebase linuxtv/master
</pre>

<hr>

<h2>Checkout Legacy repositories on Mercurial (like V4L-DVB dvb-apps)</h2>

<p>To acquire the sources, you must first have mercurial installed<a href=repo#reqpython>*</a>.
<br>Some Linux distributions already include it. If yours doesn't, you can
<a href=http://www.selenic.com/mercurial/wiki/index.cgi/BinaryPackages>download a binary package</a> or
<a href=http://www.selenic.com/mercurial/wiki/index.cgi/Download>retrieve the source</a>.</p>

<p>To retrieve the v4l-dvb source tree:
<pre>
hg clone <a href=http://linuxtv.org/hg/v4l-dvb>http://linuxtv.org/hg/v4l-dvb</a>
</pre></p>
<p>To update the sources later on:
<pre>
cd v4l-dvb
hg pull -u <a href=http://linuxtv.org/hg/v4l-dvb>http://linuxtv.org/hg/v4l-dvb</a>
</pre></p>

<p>To retrieve the dvb-apps source tree:
<pre>
hg clone <a href=http://linuxtv.org/hg/dvb-apps>http://linuxtv.org/hg/dvb-apps</a>
</pre></p>

<a name=reqpython></a>
<p>*requires python-2.3 or later.</p>

<a name=build></a>
<h2>How to build the v4l-dvb kernel modules from the backport tree</h2>

The v4l-dvb tree is backwards compatable against recent vanilla kernels.
Kernel version 2.6.10 or later is required to build the dvb modules, and
version 2.6.12 or later is required to build support for hybrid devices.
<ol>
<li>Change into the v4l-dvb directory:<br><pre>cd v4l-dvb</pre></li>
<li>Build the modules:<br><pre>make</pre></li>
<li>Install the modules:<br><pre>make install</pre></li>
<li>If you get errors in relation to unresolved symbols,
    please try to reboot before filing an error report.</li>
</ol>
<i>optional:</i>
<ul>
<li>To clean the source tree:<br><pre>make clean</pre></li>
<li>To clean the build configuration:<br><pre>make distclean</pre></li>
<li>To remove (rmmod) all modules at once from the running kernel (in memory):<br><pre>make unload</pre></li>
<li>To insert (insmod) all modules at once into the running kernel, without the need to install them:<br><pre>make load</pre></li>
<li>To perform the two commands above in a single step:<br><pre>make reload</pre></li>
</ul>

<hr>

<a name=cvs></a>
<h2>Browse the Legacy CVS Repository Online</h2>

<p>You can browse the files in the CVS repository with viewcvs. You can also
download on-the-fly generated tarballs, but please use this feature sparingly
as it puts a high load on the machine. If you find yourself downloading the
newest sources regularly you should consider using anon-cvs access, as described above.</p>
<p>To browse the video4linux CVS select the "v4l" tree in the upper right
of the viewcvs page, or use the link below.</p>

<p><a href="/cgi-bin/viewcvs.cgi/">viewcvs DVB</a></p>
<p><a href="/cgi-bin/viewcvs.cgi/?root=v4l">viewcvs video4linux</a></p>

<h2>Checkout the legacy v4l-dvb CVS tree</h2>

<p><tt>cvs -d :pserver:anonymous@cvs.linuxtv.org:/cvs/video4linux login</tt><br>
<small>(use an empty password)</small></p>
<p><tt>cvs -z3 -d :pserver:anonymous@cvs.linuxtv.org:/cvs/video4linux co -P v4l-dvb</tt></p>

<h2>Checkout the legacy dvb-kernel CVS tree</h2>

<p><tt>cvs -d :pserver:anonymous@cvs.linuxtv.org:/cvs/linuxtv login</tt><br>
<small>(use an empty password)</small></p>
<p><tt>cvs -z3 -d :pserver:anonymous@cvs.linuxtv.org:/cvs/linuxtv co -P dvb-kernel</tt><br>

<p>If you want to check out the current drivers for the 2.4 kernel:<br>
<tt>cvs -z3 -d :pserver:anonymous@cvs.linuxtv.org:/cvs/linuxtv co -P -rlinux_2_4 dvb-kernel</tt><p>

<h2>Checkout the legacy dvb-apps or other DVB CVS modules</h2>
<p><tt>cvs -d :pserver:anonymous@cvs.linuxtv.org:/cvs/linuxtv login</tt><br>
<small>(use an empty password)</small></p>
<p><tt>cvs -z3 -d :pserver:anonymous@cvs.linuxtv.org:/cvs/linuxtv co -P dvb-apps</tt><br>

<small>(Replace "dvb-apps" with the name of any other module that you want to retrieve.
Look in <a href="/cgi-bin/viewcvs.cgi">viewcvs</a> to see which modules exist)</small</p>

<h2>Checkout the legacy video4linux CVS tree</h2>

<p><tt>cvs -d :pserver:anonymous@cvs.linuxtv.org:/cvs/video4linux login</tt></p>
<p><tt>cvs -d :pserver:anonymous@cvs.linuxtv.org:/cvs/video4linux co -P v4l-kernel</tt></p>

<h2>Update</h2>

<p>You can later update your sources by running:</p>
<p><tt>cvs -z3 up -dP</tt></p>

LinuxTV legacy CVS <linuxtv.org/cvs>