Download coreboot: Difference between revisions

From coreboot
Jump to navigation Jump to search
(80 intermediate revisions by 13 users not shown)
Line 1: Line 1:
= GNU Arch Repository =
__NOTOC__


LinuxBIOS keeps its development tree in a [http://www.gnuarch.org/ GNU arch] repository. You may need to install GNU arch to be able to download the latest tree. You can find a tar of GNU arch at ftp://ftp.gnu.org/pub/gnu/gnu-arch/.
= Releases =


If you do not want to use GNU arch, please have a look at the Snapshots section below.
coreboot provides no binaries, but there exist some distributions that do so, see [[#coreboot_distributions|below]].


There are source code releases on http://coreboot.org/releases/


== Anonymous access ==
= Accessing the source code through git =


You can check it out as follows (instead of tla you can also use baz):
coreboot uses git and gerrit for source code management. Please see the [[Git]] page on how to work with git and gerrit in coreboot.


<code><pre>
Previously the project used the subversion SCM, some links to it may still be referred to, but are definitely outdated.
  % # get gpg key for checking signed archives
  % wget \
      http://wiki.linuxbios.org/data/arch/linuxbios-developers-keyring.gpg
  % gpg --import < linuxbios-developers-keyring.gpg
  % # now do some one time registrations
  % tla my-id "John Doe <doe@example.com>" # Add your email address here
  % tla register-archive \
        ftp://openbios.org/pub/arch/linuxbios@linuxbios.org--devel
  % # now check out the archive
  % tla get linuxbios@linuxbios.org--devel/freebios--devel--2.0 freebios2
</pre></code>
 
== Developer Access ==
 
=== Prerequisites ===
If you want to get write access to the LinuxBIOS repository, you need the following:
 
* GnuPG key (can be created with gpg --gen-key)
* SSH v2 key (can be created with ssh-keygen -t dsa)
 
=== Gentoo users ===
 
If you are running Gentoo you are going to need to `emerge tla`
 
=== Preparation ===
 
* Get the arch key I created for the import from CVS.
 
  $ wget 'http://wiki.linuxbios.org/data/arch/linuxbios-developers-keyring.gpg'
  $ gpg --import linuxbios-developers-keyring.gpg
 
*  Prepare GNU arch for LinuxBIOS
 
  # Set your default id:
  $ tla my-id "John Doe <doe@example.com>"
 
  # similar to cvs login, tell gnuarch where to find the archive:
  $ tla register-archive sftp://lxbios@openbios.org/srv/arch/linuxbios@linuxbios.org--devel
 
  # prepare gnupg signature checking:
  $ mkdir -p ~/.arch-params/signing
  $ echo "gpg --clearsign" > ~/.arch-params/signing/\=default
  $ echo "gpg --verify-files -" > ~/.arch-params/signing/\=default.check
 
=== Check out ===
 
  $ tla get linuxbios@linuxbios.org--devel/freebios--devel--2.0 freebios2
 
=== Working on the tree ===
 
Now you can start editing the files. The following applies for symlinks and directories as well.
 
*  New files are added with
  $ tla add filename
 
* files can also be renamed using:
  $ tla mv fileA fileB
 
* files can also be renamed using:
  $ tla mv fileA fileB
 
* files can be deleted:
  $ tla rm file
 
When you're done editing/patching:
 
* Look at your changes:
  $ tla changes
or
  $ tla changes --diffs
 
* Check the tree:
 
You can do consistency checks on your tree with:
  $ tla tree-lint
  $ tla inventory -Bu
 
Check if your tree is current:
  $ tla missing
 
This will output a list of missing changesets in your local tree, ie:
 
  patch-15
  patch-16
  patch-17
  patch-18
 
In which case you should do a
  $ tla update
before you commit.
 
=== Commiting ===
 
Write a changelog. PLEASE DO NOT CREATE EMPTY CHANGELOG MESSAGES:
  $ $EDITOR $( tla make-log )
 
Commit your local tree
  $ tla commit
 
This will ask you for your gpg passphrase (and possibly your ssh key
password if you set one). Then it will create a new revision in the
repository.


== Source code browsing ==
== Source code browsing ==


You can also [http://www.openbios.org/cgi-bin/viewarch.cgi/linuxbios@linuxbios.org--devel browse the LinuxBIOS arch repository online].
You can browse the coreboot Git repository online using [http://review.coreboot.org/gitweb?p=coreboot.git gitweb] including its [http://review.coreboot.org/gitweb?p=coreboot.git;a=tree tree view] for accessing the files.
 
See more repositories at http://www.openbios.org/cgi-bin/viewarch.cgi
 
== Snapshots ==
 
There is an archive of snapshots available at snapshots.linuxbios.org. There is a .bz2 tar file that gets updated when the repository changes. Older snapshots are maintained as well.
 
* [http://snapshots.linuxbios.org/ Download snapshots]
 
 


== Mirroring the repository ==
= coreboot distributions =


This is very simple. Do:
While not officially part of the coreboot project, there exist some projects that distribute pre-built (tested) ROM images along with build scripts and user-focused documentation. These "distros" of coreboot will also typically include copies of the source code (or links where to find it) for the version of coreboot used along with payloads such as SeaBIOS, GRUB and so on.


  wget -m ftp://ftp.openbios.org/pub/arch
'''Libreboot'''
* Deblobbed coreboot, officially supporting a handful of devices.
* [http://libreboot.org/ libreboot.org]


Which gives you a snapshot in time of the archive.
'''John Lewis'''
To create a mirror usable by arch:
* Provides coreboot images for several Chromebooks
* [https://johnlewis.ie/custom-chromebook-firmware/rom-download/ johnlewis.ie]


  tla register-archive linuxbios@linxubios.org--devel-SOURCE ftp://openbios.org/pub/arch/linuxbios@linuxbios.org--devel                                                         
= Repositories on coreboot.org =
  tla register-archive linuxbios@linuxbios.org--devel ~/{archives}/linuxbios@linuxbios.org--devel
                                                                                                                                                                                                                                                                                                                                                           
  echo gpg --clearsign > ~/.arch-params/signing/=default
  echo gpg --verify-files - > ~/.arch-params/signing/=default.check
  echo linuxbios@linuxbios.org--devel--SOURCE > ~/.arch-params/signing/linuxbios@linuxbios.org--devel


To update the mirror with the most recent contents:
'''coreboot current Git tree:'''
  tla archive-mirror linuxbios@linuxbios.org --devel
* <nowiki>http://review.coreboot.org/coreboot.git</nowiki>


Just don't do this in an account where you plan to commit to the upstream
'''coreboot v1 (obsolete):'''
archive.
* svn://coreboot.org/coreboot/branches/coreboot-v1
* <nowiki>https://svn.coreboot.org/coreboot/branches/coreboot-v1</nowiki>


== Creating a branch you can edit in local archive ==
'''coreboot v3 (obsolete):'''
* svn://coreboot.org/repository/coreboot-v3
* <nowiki>https://svn.coreboot.org/repository/coreboot-v3</nowiki>


  tla tag -S linuxbios@linuxbios.org--devel/freebios--devel--2.0 you@yourarchive/freebios--devel--2.0
'''[[FILO]]:'''
* <nowiki>http://review.coreboot.org/filo.git</nowiki>


== More on tla ==
'''[[Buildrom]]:'''
* svn://coreboot.org/buildrom/
* <nowiki>https://svn.coreboot.org/buildrom/</nowiki>


* http://www.openbios.org/experience/gnuarch.html
'''[[Distributed and Automated Testsystem]]:'''
* http://wiki.gnuarch.org/
* svn://coreboot.org/testsystem
* <nowiki>https://svn.coreboot.org/testsystem/</nowiki>

Revision as of 20:11, 13 July 2015


Releases

coreboot provides no binaries, but there exist some distributions that do so, see below.

There are source code releases on http://coreboot.org/releases/

Accessing the source code through git

coreboot uses git and gerrit for source code management. Please see the Git page on how to work with git and gerrit in coreboot.

Previously the project used the subversion SCM, some links to it may still be referred to, but are definitely outdated.

Source code browsing

You can browse the coreboot Git repository online using gitweb including its tree view for accessing the files.

coreboot distributions

While not officially part of the coreboot project, there exist some projects that distribute pre-built (tested) ROM images along with build scripts and user-focused documentation. These "distros" of coreboot will also typically include copies of the source code (or links where to find it) for the version of coreboot used along with payloads such as SeaBIOS, GRUB and so on.

Libreboot

  • Deblobbed coreboot, officially supporting a handful of devices.
  • libreboot.org

John Lewis

  • Provides coreboot images for several Chromebooks
  • johnlewis.ie

Repositories on coreboot.org

coreboot current Git tree:

  • http://review.coreboot.org/coreboot.git

coreboot v1 (obsolete):

coreboot v3 (obsolete):

FILO:

  • http://review.coreboot.org/filo.git

Buildrom:

Distributed and Automated Testsystem: