Download coreboot: Difference between revisions

From coreboot
Jump to navigation Jump to search
(76 intermediate revisions by 13 users not shown)
Line 1: Line 1:
= GNU Arch Repository =
__NOTOC__
'''Note: These snapshots are for people, who use Linux as operating system and are able to build software from the source code.'''


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/.
We provide some images for the [[QEMU]] emulator to test coreboot (and some [[Payloads|payloads]]) on your Linux, Mac OS X, and Windows computers (without having to do any hardware changes). But please note that these images can '''not''' be used on any mainboard, they will only work in [[QEMU]]!


If you do not want to use GNU arch, please have a look at the Snapshots section
== Snapshots ==
 
== Anonymous access ==
 
You can check it out as follows (instead of tla you can also use baz):


<code><pre>
There is an archive of coreboot snapshots available at [http://qa.coreboot.org/ qa.coreboot.org]. A new tar.bz2 file is created whenever the repository changes.
  % # 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 ==
= Git =


=== Prerequisites ===
coreboot has switched to using Git for version control. Please see the [[Git]] page for much useful information on how to work with Git and gerrit in coreboot.
If you want to get write access to the LinuxBIOS repository, you need the following:


* GnuPG key (can be created with gpg --gen-key)
Old subversion repository references that still apply will continue to be kept here.
* SSH v2 key (can be created with ssh-keygen -t dsa)


=== Gentoo users ===
== Git clone ==


If you are running Gentoo you are going to need to `emerge tla`
coreboot keeps its development tree in a [http://git-scm.com/ Git] repository.


=== Preparation ===
=== Anonymous access ===


* Get the arch key I created for the import from CVS.
To clone the coreboot repository (ca. 120 MB data as of 04/2012):


   $ wget 'http://wiki.linuxbios.org/data/arch/linuxbios-developers-keyring.gpg'
   $ git clone http://review.coreboot.org/p/coreboot
  $ gpg --import linuxbios-developers-keyring.gpg


*  Prepare GNU arch for LinuxBIOS
If you want the <span style="color: #ff0000">obsolete, unsupported, and experimental</span> '''coreboot v3''' tree (ca. 18 MB data as of 11/2009):


  # Set your default id:
   $ svn co svn://coreboot.org/repository/coreboot-v3
   $ 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 ===
If you want the '''old, unmaintained and unsupported coreboot v1''' tree (ca. 47 MB data as of 10/2008):


   $ tla get linuxbios@linuxbios.org--devel/freebios--devel--2.0 freebios2
   $ svn co svn://coreboot.org/coreboot/branches/coreboot-v1


=== Working on the tree ===
=== Developer access with write permission ===


Now you can start editing the files. The following applies for symlinks and directories as well.
Please see our wiki page about [[Git]] for all the details.
 
*  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 ==
== Repositories on coreboot.org ==


This is very simple. Do:
'''coreboot current Git tree:'''
* <nowiki>http://review.coreboot.org/coreboot.git</nowiki>


  wget -m ftp://ftp.openbios.org/pub/arch
'''coreboot v1 (obsolete):'''
* svn://coreboot.org/coreboot/branches/coreboot-v1
* <nowiki>https://svn.coreboot.org/coreboot/branches/coreboot-v1</nowiki>


Which gives you a snapshot in time of the archive.
'''coreboot v3 (obsolete):'''
To create a mirror usable by arch:
* svn://coreboot.org/repository/coreboot-v3
* <nowiki>https://svn.coreboot.org/repository/coreboot-v3</nowiki>


  tla register-archive linuxbios@linxubios.org--devel-SOURCE ftp://openbios.org/pub/arch/linuxbios@linuxbios.org--devel                                                         
'''[[FILO]]:'''
  tla register-archive linuxbios@linuxbios.org--devel ~/{archives}/linuxbios@linuxbios.org--devel
* <nowiki>http://review.coreboot.org/filo.git</nowiki>
                                                                                                                                                                                                                                                                                                                                                           
  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:
'''[[Buildrom]]:'''
  tla archive-mirror linuxbios@linuxbios.org --devel
* svn://coreboot.org/buildrom/
* <nowiki>https://svn.coreboot.org/buildrom/</nowiki>


Just don't do this in an account where you plan to commit to the upstream
'''[[Distributed and Automated Testsystem]]:'''
archive.
* svn://coreboot.org/testsystem
* <nowiki>https://svn.coreboot.org/testsystem/</nowiki>


== Creating a branch you can edit in local archive ==
== Coreboot distributions ==


  tla tag -S linuxbios@linuxbios.org--devel/freebios--devel--2.0 you@yourarchive/freebios--devel--2.0
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.


== More on tla ==
'''Libreboot'''
* Deblobbed coreboot, officially supporting a handful of devices.
* [http://libreboot.org/ libreboot.org]


* http://www.openbios.org/experience/gnuarch.html
'''John Lewis'''
* http://wiki.gnuarch.org/
* Provides coreboot images for several Chromebooks
* [https://johnlewis.ie/custom-chromebook-firmware/rom-download/ johnlewis.ie]

Revision as of 20:11, 18 September 2014

Note: These snapshots are for people, who use Linux as operating system and are able to build software from the source code.

We provide some images for the QEMU emulator to test coreboot (and some payloads) on your Linux, Mac OS X, and Windows computers (without having to do any hardware changes). But please note that these images can not be used on any mainboard, they will only work in QEMU!

Snapshots

There is an archive of coreboot snapshots available at qa.coreboot.org. A new tar.bz2 file is created whenever the repository changes.

Git

coreboot has switched to using Git for version control. Please see the Git page for much useful information on how to work with Git and gerrit in coreboot.

Old subversion repository references that still apply will continue to be kept here.

Git clone

coreboot keeps its development tree in a Git repository.

Anonymous access

To clone the coreboot repository (ca. 120 MB data as of 04/2012):

 $ git clone http://review.coreboot.org/p/coreboot

If you want the obsolete, unsupported, and experimental coreboot v3 tree (ca. 18 MB data as of 11/2009):

 $ svn co svn://coreboot.org/repository/coreboot-v3

If you want the old, unmaintained and unsupported coreboot v1 tree (ca. 47 MB data as of 10/2008):

 $ svn co svn://coreboot.org/coreboot/branches/coreboot-v1

Developer access with write permission

Please see our wiki page about Git for all the details.

Source code browsing

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

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:

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