CINXE.COM
Canoeboot – Free, Libre BIOS/UEFI boot firmware
<!DOCTYPE html> <html lang="en" dir="ltr"> <head> <meta charset="utf-8"> <meta name="description" content="Canoeboot is a free/opensource BIOS/UEFI boot firmware distribution based on coreboot with GNU boot loader GRUB, SeaBIOS and U-Boot, for booting GNU/Linux/BSD."> <meta name="keywords" content="libreboot, coreboot, canoeboot, opensource, libre, free software, bios, uefi"> <meta name="generator" content="pandoc"> <meta name="viewport" content="width=device-width, initial-scale=1.0, user-scalable=yes"> <link rel="icon" type="image/x-icon" href="/favicon.ico"> <link rel="canonical" href="https://canoeboot.org/" /> <!-- anti-social media tags --> <meta property="og:title" content="Canoeboot – Free, Libre BIOS/UEFI boot firmware"> <meta property="og:type" content="article" /> <meta property="og:image" content="https://av.canoeboot.org/t60logo.jpg"> <meta property="og:url" content="https://canoeboot.org/"> <meta name="twitter:card" content="summary_large_image"> <meta property="og:description" content="Canoeboot – Free, Libre BIOS/UEFI boot firmware"> <meta property="og:site_name" content="Canoeboot – Free, Libre BIOS/UEFI boot firmware"> <meta name="twitter:image:alt" content="Canoeboot – Free, Libre BIOS/UEFI boot firmware"> <title>Canoeboot – Free, Libre BIOS/UEFI boot firmware</title> <link rel="stylesheet" href="/global.css"> <link rel="stylesheet" href=""> <link rel="alternate" type="application/rss+xml" title="RSS Feed" href="/feed.xml"/> </head> <body> <div class="page"> <header> <div class="title" onclick="location.href='/';"> <p class="title-logo"> <a href="/"><img loading="lazy" class="title-logo" alt="Canoeboot logo" src="/favicon.ico" /></a> </p> <h1 class="title">Free, Libre BIOS/UEFI boot firmware</h1> </div> <ul> <li><a href="/">Home</a></li> <li><a href="/about.html">About</a></li> <li><a href="/faq.html">FAQ</a></li> <li style="font-size:1.3em;"><strong><a href="/download.html">Download</a></strong></li> <li><a href="/git.html">Git</a></li> <li style="font-size:1.3em;"><strong><a href="/docs/install/">Install</a></strong></li> <li><a href="/docs/">Docs</a></li> <li><a href="/news/">News</a></li> <li><a href="https://codeberg.org/canoeboot/cbmk/issues">Bugs</a></li> <li><a href="/contact.html">Contact</a></li> <li><a href="/other.html">Other coreboot distros</a></li> </ul> <hr/> </header> <nav id="TOC"> <h2>Navigate this page:</h2> <ul> <li><a href="#overview-of-canoeboot-design">Overview of Canoeboot design</a></li> <li><a href="#why-use-canoeboot">Why use Canoeboot?</a></li> <li><a href="#canoeboot-is-not-a-fork-of-coreboot">Canoeboot is not a fork of coreboot</a> <ul> <li><a href="#how-to-help-canoeboot">How to help Canoeboot</a></li> <li><a href="#translations-needed-for-canoeboot.org">Translations needed, for canoeboot.org</a></li> </ul></li> </ul> </nav> <div class="pagetext"> <p><a href="./">English</a> | <a href="index.de.html">Deutsch</a> | <a href="index.fr.html">Français</a> | <a href="index.it.html">Italiano</a> | <a href="index.uk.html">українська</a> | <a href="index.zh-cn.html">简体中文</a></p> <p><em>Canoeboot</em> is a <em><a href="docs/maintain">coreboot distribution</a></em> (coreboot distro), in the same way that Parabola is a <em>GNU/Linux distribution</em>. Canoeboot provides <a href="https://writefreesoftware.org/">free</a> (<em>libre</em>) boot firmware based on coreboot, replacing proprietary BIOS/UEFI firmware on <a href="docs/install/#which-systems-are-supported-by-canoeboot">specific Intel/AMD x86 and ARM based motherboards</a>, including laptop and desktop computers; one may also regard it as an <em>Open Source</em> project, but we call it <em>Free Software</em>. It initialises the hardware (e.g. memory controller, CPU, peripherals) and starts a bootloader for your operating system. <a href="docs/linux/">GNU/Linux</a> and <a href="docs/bsd/">BSD</a> are well-supported. Help is available via <a href="https://web.libera.chat/#canoeboot">#canoeboot</a> on <a href="https://libera.chat/">Libera</a> IRC.</p> <p><img loading="lazy" tabindex=1 class="r" alt="Lenovo Thinkpad T60 with Canoeboot" src="https://av.canoeboot.org/t60logo.jpg" /><span class="f"><img loading="lazy" alt="Lenovo ThinkPad T60 with Canoeboot" src="https://av.canoeboot.org/t60logo.jpg" /></span></p> <p>Canoeboot provides GNU boot loader “<a href="docs/linux/">GRUB</a>” and SeaBIOS payloads on x86/x86_64 Intel/AMD motherboards, and a <a href="docs/uboot/">U-Boot UEFI payload</a> <em>for coreboot</em> on ARM64(Aarch64) motherboards. An <a href="docs/uboot/uboot-x86.html">x86/x86_64 U-Boot UEFI payload</a> is also available on some boards. The x86, x86_64 and arm64 U-Boot payloads provide a lightweight UEFI boot implementation. Canoeboot’s <a href="docs/maintain/">design</a> incorporates all of these payloads in a single image, and you choose one at boot time.</p> <p>Canoeboot is a <em>special fork</em> of <a href="https://libreboot.org/">Libreboot</a>, maintained in parallel to it by the same developer (Leah Rowe), who maintains both projects. Canoeboot <a href="news/policy.html">removes all binary blobs</a> from coreboot, in adherence to the <em>GNU Free System Distribution Guidelines</em> (GNU FSDG), unlike Libreboot which has a more pragmatic <a href="https://libreboot.org/news/policy.html">Binary Blob Reduction Policy</a>. Canoeboot is provided for <a href="https://writefreesoftware.org/learn">Free Software</a> purists, who <em>only</em> want Free Software, regardless of technical details. <a href="news/policy.html#more-detailed-insight-about-microcode">Canoeboot even removes CPU microcode updates</a>, regardless of the negative impact this can have on system stability.</p> <p><strong>NEW RELEASE: The latest release is Canoeboot 20250107, released on 7 January 2025. See: <a href="news/canoeboot20250107.html">Canoeboot 20250107 release announcement</a>.</strong></p> <p><em>We</em> believe the freedom to <a href="https://writefreesoftware.org/">study, share, modify and use software</a>, without any restriction, is one of the fundamental human rights that everyone must have. In this context, <em>software freedom</em> matters. Your freedom matters. Education matters. <a href="https://en.wikipedia.org/wiki/Right_to_repair">Right to repair</a> matters; Canoeboot lets you continue to use your hardware, with continued firmware updates. All of this is <em>why</em> Canoeboot exists.</p> <div class="h"><h2 id="overview-of-canoeboot-design">Overview of Canoeboot design</h2><a aria-hidden="true" href="#overview-of-canoeboot-design">[link]</a></div> <p><img loading="lazy" tabindex=1 class="l" alt="U-Boot x86 coreboot payload" style="max-width:25%;" src="https://av.vimuser.org/x200-uboot.jpg" /><span class="f"><img loading="lazy" alt="U-Boot x86 coreboot payload" src="https://av.vimuser.org/x200-uboot.jpg" /></span></p> <p>Canoeboot provides <a href="https://coreboot.org/">coreboot</a> for <a href="https://doc.coreboot.org/getting_started/architecture.html">machine initialisation</a>, which then jumps to a <a href="https://doc.coreboot.org/payloads.html">payload</a> in the boot flash; coreboot works with many payloads, which boot your operating system e.g. GNU/Linux/BSD.</p> <p>Canoeboot makes coreboot easy to use for non-technical users, by providing a <a href="docs/maintain/">fully automated build system</a>, <a href="docs/build/">automated build process</a> and <a href="docs/install/">user-friendly installation instructions</a>, in addition to regular <a href="download.html">binary releases</a> that provide pre-compiled ROM images for installation on supported hardware. Without automation such as that provided by Canoeboot, coreboot would be inaccessible for most users; you can also still <a href="docs/maintain/">reconfigure</a> Canoeboot however you wish.</p> <div class="h"><h2 id="why-use-canoeboot">Why use Canoeboot?</h2><a aria-hidden="true" href="#why-use-canoeboot">[link]</a></div> <p><img loading="lazy" tabindex=1 class="r" src="https://av.vimuser.org/uboot-canoe.png" /><span class="f"><img loading="lazy" src="https://av.vimuser.org/uboot-canoe.png" /></span></p> <p>If you’re already inclined towards free software, maybe already a coreboot user, Canoeboot makes it easier to either get started or otherwise maintain coreboot on your machine, via build automation. It provides regular tested releases, pre-assembled, often with certain patches on top of coreboot (and other code) to ensure stability. By comparison, coreboot uses a rolling-release model, with a snapshot of the codebase every few months; it is very much developer-oriented, whereas Canoeboot is specifically crafted for end users. In other words, the purpose of Canoeboot is to <em>Just Work</em>. Direct configuration and installation of coreboot is also possible, but Canoeboot makes it <em>much</em> easier.</p> <p>Canoeboot gives you <a href="https://writefreesoftware.org/">Free Software</a> that you otherwise can’t get with most other boot firmware, plus faster boot speeds and <a href="docs/linux/grub_hardening.html">better security</a>. It’s extremely powerful and <a href="docs/maintain/">configurable</a> for many use cases. If you’re unhappy with the restrictions (not to mention, security issues) imposed on you by proprietary BIOS vendors, then Canoeboot is one possible choice for you. Since it inherits coreboot, it doesn’t have any known backdoors in the code, nor does it contain legacy cruft from the 1980s. Canoeboot provides a sleek, fast boot experience for GNU/Linux/BSD systems, based on coreboot which is regularly audited and improved.</p> <p>Canoeboot is more reliable than proprietary firmware. Many people use proprietary (non-libre) boot firmware, even if they use <a href="https://www.openbsd.org/">a libre OS</a>. Proprietary firmware often <a href="faq.html#intel">contains</a> <a href="faq.html#amd">backdoors</a>, and can be buggy. The Canoeboot project was founded in October 2023, with the express purpose of making coreboot firmware accessible for non-technical users; the Libreboot project, upon which Canoeboot is based, was founded for the same reason, in December 2013.</p> <p>Canoeboot is a community-oriented project, with a focus on helping users escape proprietary boot firmware; we ourselves want to live in a world where all software is <a href="https://writefreesoftware.org/">free</a>, and so, Canoeboot is an effort to help get closer to that world. Unlike the big vendors, we don’t try to stifle you in any way, nor do we see you as a security threat; we regard the ability to use, study, modify and redistribute software freely to be a human right that everyone must have. Extended to computers, these are products that you purchased, and so you should have the freedom to change them in any way you like. When you see Intel talk about their <em>Boot Guard</em> (which prevents coreboot by only letting firmware signed by them be executed) or other vendors imposing similar restrictions, and you hear them talk about “security”, they are only talking about <em>their</em> security, not yours. In the Canoeboot project, it is reversed; we see Intel Boot Guard and similar such technologies as an attack on your freedom over your own property (your computer), and so, we make it our mission to help you <a href="https://trmm.net/TOCTOU/">wrest</a> back such control.</p> <div class="h"><h2 id="canoeboot-is-not-a-fork-of-coreboot">Canoeboot is not a fork of coreboot</h2><a aria-hidden="true" href="#canoeboot-is-not-a-fork-of-coreboot">[link]</a></div> <p><img loading="lazy" tabindex=1 class="r" style="max-width:15%;" alt="Dell Latitude E6400 with Canoeboot" src="https://av.canoeboot.org/e6400/e6400-seabios.jpg" /><span class="f"><img loading="lazy" alt="Dell Latitude E6400 with Canoeboot" src="https://av.canoeboot.org/e6400/e6400-seabios.jpg" /></span></p> <p>In fact, Canoeboot tries to stay as close to <em>stock</em> coreboot as possible, for each board, but with many different types of configuration provided automatically by the Canoeboot build system.</p> <p>In the same way that <em>Trisquel GNU/Linux</em> is a <em>GNU/Linux distribution</em>, Canoeboot is a <em>coreboot distribution</em>. If you want to build a ROM image from scratch, you otherwise have to perform expert-level configuration of coreboot, GRUB and whatever other software you need, to prepare the ROM image. With <em>Canoeboot</em>, you can literally download from Git or a source archive, and run a simple script, and it will build entire ROM images. An automated build system, named <code>cbmk</code> (CanoeBoot MaKe), builds these ROM images automatically, without any user input or intervention required. Configuration has already been performed in advance.</p> <p>If you were to build regular coreboot, without using Canoeboot’s automated build system, it would require a lot more intervention and decent technical knowledge to produce a working configuration.</p> <p>Regular binary releases of Canoeboot provide these ROM images pre-compiled, and you can simply install them, with no special knowledge or skill except the ability to follow <a href="docs/install/">simplified instructions, written for non-technical users</a>.</p> <div class="h"><h3 id="how-to-help-canoeboot">How to help Canoeboot</h3><a aria-hidden="true" href="#how-to-help-canoeboot">[link]</a></div> <p>You <em>can</em> submit patches directly to Canoeboot if you want to. However, please keep the following in mind:</p> <p>The <a href="https://libreboot.org/tasks/">Libreboot tasks page</a> lists tasks that could (will) be worked on. It will be updated over time as more tasks are added/completed. If you want to help, you could pick one of these tasks and work on it.</p> <p><img loading="lazy" tabindex=1 class="l" style="max-width:25%;" src="https://av.canoeboot.org/e6400/e6400xfr-seabios.jpg" /><span class="f"><img loading="lazy" src="https://av.canoeboot.org/e6400/e6400xfr-seabios.jpg" /></span></p> <p>Canoeboot <em>tracks Libreboot</em>, on a per-commit basis. This is done by Leah Rowe, who also maintains Libreboot, but Canoeboot only merges those changes that are conducive to a zero-blob setup; for example, a change pertaining to boards that require Intel ME firmware would not be imported into Canoeboot. Libreboot changes are cherry-picked, so that Canoeboot remains in relative sync at all times. This may seem extreme, but the way it’s done actually minimizes development overhead completely, and you can read about that process on the <a href="about.html">about</a> page.</p> <p>Unless you want to work on a feature that is truly specific to Canoeboot, that Libreboot genuinely doesn’t have, then you should contribute directly to Canoeboot. Otherwise, it is our preference that you submit to <em>Libreboot</em> first; however, if you’re ideologically uncomfortable with Libreboot, you may submit to Canoeboot and your changes will (if conducive to Libreboot development) also be cherry-picked into Libreboot; the usual development workflow is the other way around, as described above.</p> <p>The <em>single</em> biggest way you can help is to <em>add</em> new motherboards in Libreboot, by submitting a config. Anything coreboot supports can be integrated in Libreboot, with ROM images provided in releases. If the board is <a href="news/policy.html">suitable</a> for Canoeboot, it will then also be merged in Canoeboot. See:</p> <ul> <li><a href="https://libreboot.org/docs/maintain/testing.html">Apply to become a Libreboot board maintainer/tester</a></li> <li><a href="https://libreboot.org/docs/maintain/porting.html">Libreboot porting guide for new motherboards</a></li> <li><a href="https://libreboot.org/docs/maintain/">Libreboot build system documentation</a></li> <li><a href="docs/maintain/">Canoeboot build system documentation</a></li> </ul> <p>After that, there is build system maintenance (see above), and <em>documentation</em> which we take seriously. Documentation is critical, in any project.</p> <p><em>User support</em> is also critical. Stick around on IRC, and if you’re competent to help someone with their issue (or wily enough to learn with them), that is a great service to the project. A lot of people also ask for user support on the <code>r/canoeboot</code> subreddit.</p> <p>You can check bugs listed on the <a href="https://codeberg.org/libreboot/lbmk/issues">Libreboot bug tracker</a>; please also check the <a href="https://codeberg.org/canoeboot/cbmk/issues">Canoeboot bug tracker</a>.</p> <p>If you spot a bug and have a fix, <a href="git.html">here are instructions for how to send Canoeboot patches</a>, and you can also report it. Also, this entire website is written in Markdown and hosted in a <a href="https://codeberg.org/canoeboot/cbwww">separate repository</a> where you can send patches.</p> <p>The above links, in the previous paragraph, are to Canoeboot resources. Again, please submit to Libreboot first, if that seems more appropriate, and your changes will be cherry-picked into Canoeboot. Please look at <a href="https://libreboot.org/git.html">Libreboot’s Git page</a> and <a href="https://codeberg.org/libreboot/lbwww">Libreboot’s lbwww repository</a> where you can send patches.</p> <p>Any and all development discussion and user support are all done on the IRC channel. More information is on the <a href="contact.html">contact page</a>.</p> <div class="h"><h3 id="translations-needed-for-canoeboot.org">Translations needed, for canoeboot.org</h3><a aria-hidden="true" href="#translations-needed-for-canoeboot.org">[link]</a></div> <p>If you want to help with translations, you can translate pages, update existing translations and submit your translated versions. For instructions, please read:</p> <p><a href="https://libreboot.org/news/translations.html">How to submit translations for libreboot.org</a></p> <p>You can also adapt these instructions for the Canoeboot website. Where a page is identical on both projects, it may make sense to submit a translation there, otherwise please also send to Canoeboot simultaneously if that seems wise; otherwise, simply sending translations to Libreboot will be appreciated, and your translation will be adapted for canoeboot.org.</p> <p>Even if someone is already working on translations in a given language, we can always use multiple people. The more the merrier!</p> <div id="footer"> <hr /> <ul> <li><a href="/git.html">Edit this page</a></li> <li><a href="/news/policy.html">Binary Blob Extermination Policy</a></li> <li><a href="/who.html">Who develops Canoeboot?</a></li> <li><a href="/license.html">License</a></li> <li><a href="/template-license.html">Template</a></li> <li><a href="/contrib.html">Authors</a></li> </ul> <hr /> </div> <p>Markdown file for this page: <a href="https://canoeboot.org/index.md" class="uri">https://canoeboot.org/index.md</a></p> <p><a href="/feed.xml">Subscribe to RSS for this site</a></p> <p><a href="/sitemap.html">Site map</a></p> <p>This HTML page was generated by the <a href="https://libreboot.org/docs/sitegen/">Libreboot Static Site Generator</a>.</p> </div> </div> </body> </html>