Monotone Repository
From coreboot
Introduction
Patrick Georgi started a monotone repository for his work on GRUB2. Other coreboot related projects that have no other available hosting could also be managed there.
It is available at coreboot.org (default netsync port), and can be anonymously checked out. Write access is granted on request, ask Patrick Georgi. There's also a web frontend to the repository, which also provides tarballs without requiring a checkout or even the monotone client.
CIA.vc also tracks it, just in case you want stats, or an RSS feed of commits.
GRUB2
org.coreboot.grub2.allpatches is probably the most interesting branch for most users. If you want a version as close to the upstream code as possible, org.coreboot.grub2.mkimage-elf-streaming is the right one - it's cvs plus elf streaming, and nothing else.
Open branches:
- org.coreboot.grub2
- cvs: roughly mirrors the grub2 cvs repository (manually updated, not attempt to split into original changesets) - this is without any changes, like the elf streaming patch needed for coreboot v3!!
- diskimage-mod: a tool to create a grub2 module that contains the contents of the (memdisk) device (usually a filesystem, or diskimage)
- file-open-hook: allows code to hook into grub_file_open and veto opening files
- hashing: more appropriately called "crypto", it provides a public key based signature facility for files loaded by grub2. Uses file-open-hook to enforce valid signatures
- larfs: access a lar image as a filesystem
- memdisk-for-coreboot: patches (memdisk) in grub2 to work with coreboot
- mkimage-elf-streaming: our classic "streaming elf needs that header at the beginning" patch (see GRUB2 page)
- serialport: configure the grub2 serial code using values in lbtable
- usb: (Work in progress) Port of the FILO/Etherboot USB code
- allpatches: merges all of the above in a big, fat package.
Repository Access
You can also check out the code directly using 'mtn'
Create a repository named grub2.mtn, that's a single file that can live anywhere.
mtn -d grub2.mtn db init
Download the repository from the server's branches org.coreboot.grub2* to the local repository:
mtn -d grub2.mtn pull openbios.org org.coreboot.grub2\*
Check out to the directory grub2-usb with the head revision of org.coreboot.grub2.usb
mtn -d grub2.mtn -b org.coreboot.grub2.usb co grub2-usb
In grub2-usb:
mtn pull # updated default branches from default server mtn update # or mtn up: updates to current HEAD revision in the current branch mtn status # oder mtn st: Show changed files mtn diff # Show diff of changed files
