Download coreboot
The wiki is being retired!
Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to https://doc.coreboot.org/. Contributions welcome!
Introduction
LinuxBIOS keeps its development tree in a 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/.
If you do not want to use GNU arch, please have a look at the Snapshots section below.
Anonymous access
You can check it out as follows (instead of tla you can also use baz):
% # get gpg key for checking signed archives
% wget \
http://www.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
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
You can also browse the LinuxBIOS arch repository online.
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.
Mirroring the repository
This is very simple. Do:
wget -m ftp://ftp.openbios.org/pub/arch
Which gives you a snapshot in time of the archive. To create a mirror usable by arch:
tla register-archive linuxbios@linxubios.org--devel-SOURCE ftp://openbios.org/pub/arch/linuxbios@linuxbios.org--devel 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:
tla archive-mirror linuxbios@linuxbios.org --devel
Just don't do this in an account where you plan to commit to the upstream archive.
Creating a branch you can edit in local archive
tla tag -S linuxbios@linuxbios.org--devel/freebios--devel--2.0 you@yourarchive/freebios--devel--2.0